मैं एक पीडीएफ से पाठ कैसे निकालूं जो एक सूचकांक के साथ नहीं बनाया गया था? यह सब पाठ है, लेकिन मैं कुछ भी खोज या चयन नहीं कर सकता। मैं कुबंटू चल रहा हूं, और ओकुलर में यह सुविधा नहीं है।
मैं एक पीडीएफ से पाठ कैसे निकालूं जो एक सूचकांक के साथ नहीं बनाया गया था? यह सब पाठ है, लेकिन मैं कुछ भी खोज या चयन नहीं कर सकता। मैं कुबंटू चल रहा हूं, और ओकुलर में यह सुविधा नहीं है।
जवाबों:
मुझे Cuneiform OCR सिस्टम के BSD- लाइसेंस प्राप्त लिनक्स पोर्ट के साथ सफलता मिली है।
कोई बाइनरी पैकेज उपलब्ध नहीं लगता है, इसलिए आपको इसे स्रोत से बनाने की आवश्यकता है। ImageMagick C ++ पुस्तकालयों को अनिवार्य रूप से किसी भी इनपुट छवि प्रारूप के लिए समर्थन स्थापित करने के लिए सुनिश्चित करें (अन्यथा यह केवल बीएमपी स्वीकार करेगा)।
हालांकि यह एक संक्षिप्त README फ़ाइल के अलावा अनिवार्य रूप से अनिर्दिष्ट प्रतीत होता है, मैंने OCR परिणामों को काफी अच्छा पाया है। इसके बारे में अच्छी बात यह है कि यह एचसीआर प्रारूप में ओसीआर पाठ के लिए स्थिति की जानकारी को आउटपुट कर सकता है , ताकि पीडीएफ फाइल की छिपी परत में पाठ को सही स्थिति में वापस लाना संभव हो सके। इस तरह से आप "खोज योग्य" PDF बना सकते हैं जिससे आप टेक्स्ट कॉपी कर सकते हैं।
मैंने मूल छवि-केवल PDF और OCR परिणामों में से PDF को पुनः बनाने के लिए hocr2pdf का उपयोग किया है । अफसोस की बात है कि यह प्रोग्राम मल्टी-पेज पीडीएफ बनाने के लिए समर्थन नहीं करता है, इसलिए आपको उन्हें संभालने के लिए एक स्क्रिप्ट बनानी पड़ सकती है:
#!/bin/bash
# Run OCR on a multi-page PDF file and create a new pdf with the
# extracted text in hidden layer. Requires cuneiform, hocr2pdf, gs.
# Usage: ./dwim.sh input.pdf output.pdf
set -e
input="$1"
output="$2"
tmpdir="$(mktemp -d)"
# extract images of the pages (note: resolution hard-coded)
gs -SDEVICE=tiffg4 -r300x300 -sOutputFile="$tmpdir/page-%04d.tiff" -dNOPAUSE -dBATCH -- "$input"
# OCR each page individually and convert into PDF
for page in "$tmpdir"/page-*.tiff
do
base="${page%.tiff}"
cuneiform -f hocr -o "$base.html" "$page"
hocr2pdf -i "$page" -o "$base.pdf" < "$base.html"
done
# combine the pages into one PDF
gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile="$output" "$tmpdir"/page-*.pdf
rm -rf -- "$tmpdir"
कृपया ध्यान दें कि उपरोक्त लिपि बहुत ही अल्पविकसित है। उदाहरण के लिए, यह किसी भी पीडीएफ मेटाडेटा को बरकरार नहीं रखता है।
aspell check --mode=html "$base.html"
क्यूनिफॉर्म चलाने के ठीक बाद स्क्रिप्ट में कुछ जोड़कर ।
देखें कि क्या pdftotext आपके लिए काम करेगा। यदि यह आपकी मशीन पर नहीं है, तो आपको poppler-utils पैकेज स्थापित करना होगा
sudo apt-get install poppler-utils
आपको उपयोग का pdf टूलकिट भी मिल सकता है ।
विकिपीडिया पर यहाँ पीडीएफ सॉफ्टवेयर की पूरी सूची है ।
संपादित करें: चूंकि आपको ओसीआर क्षमताओं की आवश्यकता है, इसलिए मुझे लगता है कि आपको एक अलग तरह की कोशिश करनी होगी। (यानी मैं एक Linux pdf2text कनवर्टर नहीं पा सकता जो OCR करता है)।
पीडीएफ को इमेज में बदलें
gs: नीचे दिए गए कमांड को मल्टीफ़िगर पीडीएफ को अलग-अलग टिफ़ फ़ाइलों में बदलना चाहिए।
gs -SDEVICE = tiffg4 -r600x600 -sPAPERSIZE = letter -sOutputFile = फ़ाइल नाम_% 04d.tif -dNOPAUSE -dBATCH - filename
ImageMagik उपयोगिताओं : ImageMagik का उपयोग करने के बारे में SuperUser साइट पर अन्य प्रश्न हैं जिनका उपयोग आप रूपांतरण करने में मदद करने के लिए कर सकते हैं।
foo.pdf को बदलिए foo.png
छवि को ओसीआर के साथ पाठ में बदलें
विकिपीडिया की OCR सॉफ्टवेयर की सूची से लिया गया
Google डॉक्स अब आपकी अपलोड की गई छवि / पीडीएफ दस्तावेजों को पाठ में बदलने के लिए ओसीआर का उपयोग करेगा । मुझे इसके साथ अच्छी सफलता मिली है।
वे ओसीआर प्रणाली का उपयोग कर रहे हैं जो कि विशाल Google पुस्तक परियोजना के लिए उपयोग की जाती है ।
हालांकि, यह ध्यान दिया जाना चाहिए कि प्रसंस्करण के लिए केवल 2 एमबी के आकार के पीडीएफ को स्वीकार किया जाएगा।
अद्यतन
1. इसे आज़माने के लिए, वेब ब्राउज़र से Google डॉक्स पर <2MB का PDF अपलोड करें।
2. अपलोड किए गए दस्तावेज़ पर राइट क्लिक करें और "Google डॉक्स के साथ खोलें" पर क्लिक करें।
... Google डॉक्स एक ही नाम से टेक्स्ट और आउटपुट को एक नई फ़ाइल में बदल देगा लेकिन Google डॉक्स एक ही फ़ोल्डर में टाइप होता है।
गीज़ा कोवाक्स ने एक उबंटू पैकेज बनाया है जो मूल रूप से एक स्क्रिप्ट का उपयोग hocr2pdf
करता है जैसा कि जुक्का ने सुझाव दिया था, लेकिन चीजों को सेटअप करने के लिए थोड़ा तेज़ बनाता है।
पैकेज पर विवरण के साथ गीज़ा के उबंटू फोरम पोस्ट से ...
रिपॉजिटरी को जोड़ना और उबंटू में स्थापित करना
sudo add-apt-repository ppa:gezakovacs/pdfocr
sudo apt-get update
sudo apt-get install pdfocr
किसी फ़ाइल पर ocr चलाना
pdfocr -i input.pdf -o output.pdf
कोड के लिए GitHub रिपॉजिटरी https://github.com/gkovacs/pdfocr/
pypdfocr
इसका उपयोग करने के लिए सबसे अच्छा और आसान तरीका है कि यह पीडीएफ नहीं बदलता है
pypdfocr your_document.pdf
अंत में आपके पास एक your_document_ocr.pdf
और तरीका होगा जिसे आप खोजे गए पाठ के साथ चाहते हैं। एप्लिकेशन छवि की गुणवत्ता को नहीं बदलता है। ओवरले टेक्स्ट को जोड़कर फ़ाइल का आकार थोड़ा बढ़ाता है।
pypdfocr
2016 के बाद से अब समर्थित नहीं है और मैंने मानसिक रूप से नहीं होने के कारण कुछ समस्याओं पर ध्यान दिया। ocrmypdf
( मॉड्यूल ) एक सहज काम करता है और इस तरह से इस्तेमाल किया जा सकता है:
ocrmypdf in.pdf out.pdf
स्थापित करने के लिए:
pip install ocrmypdf
या
apt install ocrmypdf
PDFBeads मेरे लिए अच्छा काम करता है। यह धागा " एक पीडीएफ फाइल में कनवर्ट की गई छवियाँ बदलें " मुझे मिला और चल रहा है। B & w पुस्तक स्कैन के लिए, आपको निम्न करने की आवश्यकता है:
नए फ़ोल्डर में, चलाएं
pdfbeads * > ../Output.pdf
यह माता-पिता की निर्देशिका में कोलाकृत, OCR'd PDF डाल देगा।
टेसेरेक्ट का उपयोग कर एक और स्क्रिप्ट:
#!/bin/bash
# Run OCR on a multi-page PDF file and create a txt with the
# extracted text in hidden layer. Requires tesseract, gs.
# Usage: ./pdf2ocr.sh input.pdf output.txt
set -e
input="$1"
output="$2"
tmpdir="$(mktemp -d)"
# extract images of the pages (note: resolution hard-coded)
gs -SDEVICE=tiff24nc -r300x300 -sOutputFile="$tmpdir/page-%04d.tiff" -dNOPAUSE -dBATCH -- "$input"
# OCR each page individually and convert into PDF
for page in "$tmpdir"/page-*.tiff
do
base="${page%.tiff}"
tesseract "$base.tiff" $base
done
# combine the pages into one txt
cat "$tmpdir"/page-*.txt > $output
rm -rf -- "$tmpdir"
Asprise OCR लाइब्रेरी लिनक्स के अधिकांश संस्करणों पर काम करता है। यह पीडीएफ इनपुट और आउटपुट को खोज पीडीएफ के रूप में ले सकता है।
यह एक वाणिज्यिक पैकेज है। के एक मुक्त प्रतिलिपि डाउनलोड यहाँ लिनक्स के लिए Asprise ओसीआर एसडीके और यह इस तरह से चलाएँ:
aocr.sh input.pdf pdf
नोट: स्टैंडअलोन 'पीडीएफ' आउटपुट फॉर्मेट को निर्दिष्ट करता है।
अस्वीकरण: मैं उत्पाद के ऊपर उत्पादन करने वाली कंपनी का कर्मचारी हूं।
PDF फ़ाइल से पाठ सामग्री निकालने के लिए Apache PDFBox की कोशिश करें। पीडीएफ फाइलों में एम्बेडेड छवियों के मामले में पाठ को निकालने के लिए लिनक्स के लिए एबीबीवाई फाइनएयर इंजन सीएलआई का उपयोग करें।