วิธีการ OCR ไฟล์ PDF และรับข้อความที่เก็บไว้ใน pdf?


23

ก่อนอื่นขออภัยหากมีการถามก่อนหน้านี้ - ฉันค้นหาในขณะที่โพสต์ที่มีอยู่ แต่ไม่สามารถหาการสนับสนุน

ฉันสนใจวิธีแก้ปัญหาสำหรับ Fedora ไปยัง OCR เป็น pdf ที่ไม่สามารถค้นหาได้หลายตัวและเพื่อเปลี่ยน pdf นี้เป็นไฟล์ pdf ใหม่ที่มีเลเยอร์ข้อความด้านบนของภาพ ใน Mac OSX หรือ Windows เราสามารถใช้ Adobe Acrobat แต่บน Linux โดยเฉพาะกับ Fedora

https://snippets.webaware.com.au/howto/pdf-ocr-linux/ดูเหมือนจะอธิบายวิธีแก้ปัญหา - แต่น่าเสียดายที่ฉันหลงทางเมื่อเรียกภาพที่แน่นอน


มีปัญหากับสคริปต์ pdfocr ที่ดีที่หน้าเว็บที่คุณกำลังลิงก์ไปยังคำแนะนำ: มันอาศัย pdftk ซึ่งเลิกใช้เป็นหลัก (ด้วยเหตุผลสองประการคือการพึ่งพา libgcj และ iText5 +) ดังนั้นวิธีการแก้ปัญหาที่แตกต่างกันเป็นสิ่งจำเป็นอยู่แล้ว ...
แม็กซิม

คำตอบ:


24

วิธีที่ดีที่สุดและง่ายที่สุดคือการใช้pypdfocrมันไม่ได้เปลี่ยนแปลง PDF pypdfocr เป็นลิงค์โมดูลหลามที่นี่

pypdfocr your_document.pdf

ในตอนท้ายคุณจะมีอีก your_document_ocr.pdfวิธีที่คุณต้องการด้วยข้อความที่ค้นหาได้ แอพไม่เปลี่ยนคุณภาพของภาพ เพิ่มขนาดของไฟล์เล็กน้อยโดยการเพิ่มข้อความซ้อนทับ

ฉันคิดว่าคำสั่งนั้นง่ายมากที่ไม่ต้องการ GUI ใด ๆ อาจติดตั้ง pypdfocr เป็น verbose อีกเล็กน้อย:

sudo dnf -y install tesseract 
pip install pypdfocr 

อัปเดต 3 พฤศจิกายน 2018:

pypdfocrไม่ได้รับการสนับสนุนอีกต่อไปตั้งแต่ปี 2559 และฉันสังเกตเห็นปัญหาบางอย่างเนื่องจากไม่มีการพูดถึง ocrmypdf( โมดูล ) ทำงานที่คุ้นเคยและสามารถใช้ดังนี้:

ocrmypdf in.pdf out.pdf

ติดตั้ง:

pip install ocrmypdf

หรือ

sudo apt install ocrmypdf  #ubuntu
sudo dnf -y install ocrmypdf #fedora

ทำไมคุณถึงติดตั้ง (ใช้ apt) ocrmypdf ใน ubuntu แต่ติดตั้ง tessaract ใน fedora? ฉันคิดว่าคุณพิมพ์ผิด
iuridiniz

@iuridiniz แก้ไขแล้ว มันเป็นความผิดพลาดที่ลื่นไหลใน
Eduard Florinescu

8

หลังจากเรียนรู้ว่า tesseract สามารถสร้างไฟล์ PDF ที่ค้นหาได้ฉันพบแซนด์วิชสคริปต์: http://www.tobias-elze.de/pdfsandwich/

หลังจากติดตั้งการพึ่งพา (นี่อาจไม่ใช่รายการที่สมบูรณ์)

sudo dnf install svn ocaml unpaper tesseract

ฉันทำตามคำแนะนำของสคริปต์เพื่อรวบรวมจากแหล่งที่มา

รวบรวมจากแหล่งต่าง ๆ

pdfsandwich เป็นซอฟต์แวร์โอเพนซอร์ซ (ใบอนุญาต: GPL) คุณสามารถดาวน์โหลดแหล่งที่มาไม่ว่าจะเป็นแพคเกจ. tar.bz2 จากพื้นที่ดาวน์โหลดบนเว็บไซต์โครงการหรือตรวจสอบโดยการโค่นล้ม:

svn checkout svn://svn.code.sf.net/p/pdfsandwich/code/trunk/src pdfsandwich

หากติดตั้ง OCaml บนระบบของคุณคุณสามารถรวบรวมและติดตั้งดังนี้:

cd pdfsandwich
./configure
make
sudo make install

และตอนนี้ทำให้ฉันวิ่งได้

sandwich multipaged-non-searchable.pdf

ส่งผลให้เป็นไฟล์ PDF ที่ค้นหาได้


สำหรับคำถามที่เกี่ยวข้อง แต่แยกจากกันโปรดสร้างคำถามนี้ที่unix.stackexchange.com/questions/306051/…
ingli

1
FWIW: pdfsandwich ยังมีอยู่ในที่เก็บแพกเกจ apt ของ Ubuntu สิ่งรบกวนอื่น ๆ อาจมีเช่นกัน
ลอเรนซ์ Gonsalves

unix.stackexchange.com/questions/471985/…ข้อเสนอแนะใด ๆ
Deepak Umredkar

เพียงแค่มาข้ามfedoramagazine.org/4-cool-new-projects-try-copr-october-2018แสดงแพคเกจ COPR สำหรับฟางที่แพคเกจ pdfsandwich
ingli

3

เครื่องมือง่าย ๆ ที่มีในอูบุนตูคือ 'ocrfeeder' ซึ่งช่วยให้การสร้าง PDF ด้วยข้อความ OCR ซ้อนทับบนเอกสารต้นฉบับ มันทำให้การใช้งานของ Tesseract รวมทั้งเครื่องมือ OCR อื่น ๆ (ไม่แน่ใจว่าที่) และให้สำหรับการหมุนภาพ / 'unpaper' ฯลฯ เช่นกัน


1

ฉันมีปัญหาเดียวกันนี้ดังนั้นฉันจึงเขียนสิ่งนี้ในช่วงสุดสัปดาห์ ลองยิงดูสิ มันใช้งานได้ดี! tesseractมันเป็นห่อหุ้มรอบที่เรียบง่าย ใช้pdftoppmในการแปลง PDF เป็นไฟล์ TIFF จำนวนมากจากนั้นจะใช้tesseractเพื่อดำเนินการ OCR (Optical Character Recognition) กับพวกเขาและสร้าง PDF ที่ค้นหาได้เป็นผลลัพธ์ ไฟล์ชั่วคราวระดับกลางทั้งหมดจะถูกลบโดยอัตโนมัติเมื่อสคริปต์เสร็จสมบูรณ์

รหัสที่มา: https://github.com/ElectricRCAircraftGuy/PDF2SearchablePDF

คำแนะนำในการติดตั้งและใช้งานpdf2searchablepdf:

ทดสอบกับ Ubuntu 18.04 ในวันที่ 11 พฤศจิกายน 2019

ติดตั้ง:

git clone https://github.com/ElectricRCAircraftGuy/PDF2SearchablePDF.git
./PDF2SearchablePDF/install.sh

sudo apt update
sudo apt install tesseract-ocr

ใช้:

pdf2searchablepdf mypdf.pdf

ตอนนี้คุณจะมีไฟล์ PDF ชื่อmypdf_searchable.pdfซึ่งมีข้อความที่ค้นหาได้!

เสร็จสิ้น มันไม่มีการอ้างอิงแบบไพ ธ อนเนื่องจากมันเขียนในรูปแบบ bash ทั้งหมด

ข้อมูลอ้างอิงหรือแหล่งข้อมูลที่เกี่ยวข้อง:

  1. PDF2SearchablePDF : https://github.com/ElectricRCAircraftGuy/PDF2SearchablePDF
  2. /ubuntu/473843/how-to-turn-a-pdf-into-a-text-searchable-pdf/1187881#1187881
  3. /ubuntu/16268/whats-the-best-simplest-ocr-solution
  4. /ubuntu/150100/extracting-embedded-images-from-a-pdf/1187844#1187844
  5. pdfsandwich : wrapper ซอฟต์แวร์ทางเลือกฉันเพิ่งค้นพบว่ามันคุ้มค่าที่จะเช็คเอาท์ด้วย! http://www.tobias-elze.de/pdfsandwich/
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.