ระบบ OCR ที่ดีที่สุดและง่ายที่สุดคืออะไร


77

ฉันต้องการสแกนเอกสารจำนวนมากที่ฉันได้นอนด้วยความยุ่งยากน้อยที่สุด ฉันต้องการแปลงเป็นรูปภาพโดยใช้ Simple Scan จากนั้นแปลงเป็นข้อความโดยใช้ OCR มีแอพ OCR ที่ดีกับ GUI ที่จะให้ผลลัพธ์ที่ดีในการกดปุ่มหรือไม่?


เราต้องการการทำใหม่ในชุดนี้จริงๆ หลายสิ่งหลายอย่างที่เก่า / เสื่อมราคา / ... ไม่มีการทดสอบแบบหนึ่งซับ ส่วนใหญ่คัดลอกผลลัพธ์ / รายการที่นี่ ไม่มีการประกันคุณภาพ
LéoLéopold Hertz 준영

ในปี 2561 โซลูชัน OCR ที่ง่ายที่สุดคือการใช้ ocr api ออนไลน์ : Google Vision OCR, Azure OCR หรือ OCR.space OCR API ฟรีทั้งหมดล้วนให้ผลลัพธ์ OCR ที่มีคุณภาพสูงแน่นอนว่าเฉพาะกรณีแอปพลิเคชัน / กรณีการใช้งานของคุณอนุญาตให้โซลูชันคลาวด์ .
Nic Endo

คำตอบ:


70
  • GOCR จาก เป็นโปรแกรม OCR (Optical Character Recognition) โปรแกรมจะแปลงรูปภาพที่สแกนของข้อความกลับไปเป็นไฟล์ข้อความ

  • CLARAเป็นอีกหนึ่งตัวเลือกกราฟิกที่ดี

  • OCRAD จาก คือ OCR สามารถใช้เป็นแอปพลิเคชันคอนโซลแบบสแตนด์อโลนหรือเป็นแบ็คเอนด์ไปยังโปรแกรมอื่น ๆ

  • KOOKA จาก เป็นแอปพลิเคชัน KDE แต่ใช้งานได้ดีนอกจากนี้คุณต้องติดตั้งโปรแกรม OCR จริงเช่น GOCR และ OCRAD หลังจากติดตั้ง Kooka และโปรแกรม OCR คุณจะต้องชี้ Kooka ไปยังตำแหน่งติดตั้ง OCR เพื่อให้สามารถใช้งานได้ แปลง JPEG เป็นข้อความ

  • OCRFeeder จาก เป็นการวิเคราะห์เลย์เอาต์เอกสารและระบบรู้จำอักขระด้วยแสง

  • Tesseract จาก เป็นโปรแกรมบรรทัดคำสั่งและมันเป็นเรื่องง่ายมากที่จะ use.You สามารถติดตั้งแพคเกจภาษา Tesseract-OCR-engจาก ที่นี่

ดูที่หน้านี้

หมายเหตุ:
เพื่อรันเทอร์มินัลtesseract goto และพิมพ์ดังต่อไปนี้

tesseract imagefile.tif outputfile.txt

Tesseract สามารถอ่านไฟล์ TIFF เท่านั้น - หากคุณมี JPEG หรือ PDF หรืออะไรก็ตามคุณจะต้องแปลงไฟล์ นอกจากนี้ส่วนขยายชื่อไฟล์ต้องเป็น. tif ไม่ใช่. tiff มิฉะนั้นจะเกิดข้อผิดพลาด tesseract


1
หากภาษาที่คุณพูดไม่ใช่ภาษาอังกฤษ ส่วนขยายสำหรับภาษาอื่น ๆ คืออะไร?
Vassilis

3
@Vassilis: ระบบ OCR เป็นภาษาที่ไม่ขึ้นกับใคร อย่างไรก็ตามหากตัวอักษรของคุณไม่มีตัวอักษรละติน 1 (เช่น Cyrillic) ก็อาจจะพลาด
OpenNingia

2
@OpenNingia: ภาษามีความสำคัญแม้ว่าจะมีระบบการเขียนโดยใช้ตัวอักษรละตินเท่านั้น มันช่วยให้ OCR แยกแยะระหว่างตัวอักษรที่ไม่ชัดเจน
Frédéric Grosshans

13
คำถาม / คำตอบดังกล่าวทำให้เกิดความสับสนขึ้น Askubuntu บุคคลนั้นถามถึง "สิ่งที่ดีที่สุดและง่ายที่สุดในการแก้ปัญหา OCR" ไม่ใช่ "แอพ OCR ทั้งหมดสำหรับ Linux" คืออะไร โซลูชันนี้ไม่ควรได้รับการยอมรับ! สับสนจริงๆและไม่เป็นประโยชน์
Alin Andrei

1
Ubuntu ปัจจุบันtesseract(3.04.00 บน Ubuntu 15.10) ไม่มีปัญหากับPNGไฟล์อินพุต มันยอมรับJPGไฟล์ แต่ให้ผลลัพธ์ที่แย่กว่านั้นสำหรับไฟล์อย่างที่คาดหวังจากการบีบอัดส่วนเพิ่มเติม
Volker Siegel

10

มีเครื่องมือบรรทัดคำสั่ง OCR ยอดนิยมจำนวนหนึ่งที่คุณสามารถใช้ (ฉันไม่แน่ใจว่าพวกเขามี GUI):

  • Tesseract ( ReadMe , คำถามที่พบบ่อย ) (Python)

    มีให้สำหรับ: Tesseract .NET , Tesseract iOS

    OCR Engine ที่พัฒนาขึ้นที่ HP Labs ระหว่างปี 1985 และ 1995 ... และตอนนี้ที่ Google Tesseract น่าจะเป็นโปรแกรมโอเพ่นซอร์ส OCR ที่แม่นยำที่สุด

    การใช้งาน:

    tesseract [inputFile] [outputFile] [-l optionalLanguageFile] [PathTohOCRConfigFile]
    
  • GOCR

    การรับรู้อักขระโอเพนซอร์ซ มันจะแปลงรูปภาพที่สแกนของข้อความกลับเป็นไฟล์ข้อความ GOCR สามารถใช้กับ front-end ที่แตกต่างกันซึ่งทำให้ง่ายต่อการพอร์ตไปยัง OS และสถาปัตยกรรมที่แตกต่างกัน สามารถเปิดรูปแบบภาพที่แตกต่างกันมากมายและคุณภาพได้รับการปรับปรุงในชีวิตประจำวัน

  • OCRopus ™ ( คำถามที่พบบ่อย ) (เขียนเป็น Python, NumPy และ SciPy)

    ระบบ OCR มุ่งเน้นไปที่การใช้การเรียนรู้ของเครื่องขนาดใหญ่เพื่อจัดการกับปัญหาในการวิเคราะห์เอกสารที่มีการวิเคราะห์รูปแบบแบบเสียบได้การจดจำตัวอักษรแบบเสียบได้การสร้างแบบจำลองภาษาธรรมชาติทางสถิติและความสามารถแบบหลายภาษา

    เอ็นจิ้น OCRopus นั้นใช้สองโครงการวิจัย: ตัวรู้จำลายมือประสิทธิภาพสูงที่พัฒนาขึ้นในช่วงกลางทศวรรษที่ 90 และได้รับการปรับใช้โดยสำนักสำรวจสำมะโนประชากรของสหรัฐและวิธีการวิเคราะห์เลย์เอาต์ประสิทธิภาพสูง

    OCRopus ได้รับการพัฒนาโดย Google และมีจุดประสงค์เพื่อการแปลงเอกสารจำนวนมากในปริมาณสูง เราคาดหวังว่ามันจะเป็นระบบ OCR ที่ยอดเยี่ยมสำหรับแอพพลิเคชั่นอื่น ๆ อีกมากมาย

  • Tessnet2 (โอเพนซอร์ส, OCR, Tesseract, .NET, DOTNET, C #, VB.NET, C ++ / CLI)

    Tesseract เป็นโปรแกรมโอเพ่นซอร์ส C ++ Tessnet2 เป็น. NET แอสเซมบลีที่เปิดเผยวิธีง่าย ๆ ในการทำ OCR Tessnet2 อยู่ภายใต้ใบอนุญาต Apache 2 (เช่น tesseract) ซึ่งหมายความว่าคุณสามารถใช้งานได้ตามที่คุณต้องการรวมอยู่ในผลิตภัณฑ์เชิงพาณิชย์

ไม่กี่คน: ABBYY CLI OCR สำหรับ Linux , Asprise OCR

สำหรับรายการที่สมบูรณ์ยิ่งขึ้นให้ตรวจสอบ: รายการซอฟต์แวร์รู้จำอักขระด้วยแสงที่ Wikipedia

ดูเพิ่มเติมที่: wanghaisheng/awesome-ocr- รายการที่รวบรวมไว้ของทรัพยากร OCR ที่มีแนวโน้มที่ GitHub


9

ลินุกซ์อัจฉริยะ OCR วิธีการแก้ปัญหา

ข้อจำกัดความรับผิดชอบ - ฉันมีส่วนเกี่ยวข้องอย่างใกล้ชิดกับการพัฒนาโซลูชัน opensource นี้

Lios สามารถแปลงการพิมพ์เป็นข้อความโดยใช้สแกนเนอร์หรือกล้อง

นอกจากนี้ยังสามารถสร้างข้อความออกจากภาพที่สแกนจากแหล่งอื่นเช่น Pdf, รูปภาพหรือโฟลเดอร์ที่มีรูปภาพ

โปรแกรมได้รับการเข้าถึงโดยรวมสำหรับผู้พิการทางสายตา

เนื่องจากฉันมีการเชื่อมต่ออย่างใกล้ชิดฉันจะชอบความคิดเห็น


เอกสารเกี่ยวกับการใช้งานอยู่ที่ไหน ไลออสไม่ได้ใช้งานง่ายอย่างที่ฉันหวังไว้
coder

โครงการที่มีการย้ายที่นี่
Suzana

เป็นไปได้ไหมที่จะรันผ่าน command line เฉพาะในโหมด headless บนเซิร์ฟเวอร์?
Deadlock

8

Gscan2PDF

OCR ใน PDF หลายหน้าหรือเอกสารที่สแกน

นี่อาจเป็นวิธีที่ง่ายที่สุด Gscan2pdf เป็นเครื่องมือกราฟิกที่ช่วยให้คุณไม่เพียง แต่สแกนไฟล์ แต่ยังนำเข้าไฟล์และดำเนินการ OCR ติดตั้งgscan2pdf จากที่นี่ ติดตั้ง gscan2pdfจาก Ubuntu Software Center หรือรันคำสั่งนี้ในเทอร์มินัล:

sudo apt-get install gscan2pdf
  • เรียกใช้ gscan2pdf
  • นำเข้าไฟล์ PDF (Ctrl + O)
  • ทางเลือก: เครื่องมือ> ล้างข้อมูล
  • เลือกเครื่องมือ> บันทึก OCR (Ctrl + S)

Gscan2PDF สามารถใช้เอ็นจิน OCR ที่ปรับแต่งเองได้ค่าเริ่มต้นคือ tesseract-ocr

คุณอาจพิจารณาเลือกภาษาที่เหมาะสม ในกรณีนั้นคุณจะต้องติดตั้งtesseract-ocr-LANGแพคเกจLANGรหัสภาษา ISO 639-2 สามตัวอักษรอยู่ที่ไหน ตอนนี้คุณมี 108 ภาษาใน 16.04 repo


ฉันไม่สามารถทำอะไรกับซอฟต์แวร์นี้ ไม่มีการตรวจจับที่เพียงพอเลย มันจะเป็นการดีถ้าคุณได้รับตัวอย่างทดสอบเกี่ยวกับแอพก่อนที่จะแนะนำ
LéoLéopold Hertz 준영

gscan2pdf อย่างน้อย 16.04 ไม่มีตัวเลือก Ctrl + i ทางลัด การเปิดไฟล์ pdf จะระบุ "หน้าเว็บที่จะแตกไฟล์" อย่างถูกต้อง แต่การเลือก "ตกลง" ไม่ได้ทำอะไร
user75505

3

ฉันมีเพียงประสบความสำเร็จ (ใต้ 16.04) กับpdfocr.rb นี่คือรายการในUbuntu วิกิ

นี่คือ ppaแต่ที่เก็บ 16.04 ไม่ได้รับการอัพเดต สคริปต์ทับทิมด้านบนจาก GitHub แต่ยังคงใช้งานได้กับ 16.04

คุณสามารถดาวน์โหลดได้จาก Github คุณจะต้องติดตั้งแพ็คเกจต่อไปนี้:

ruby tesseract-ocr pdftk exactimage

จากนั้นสร้างไฟล์ pdfocr.rb และรัน:

./pdfocf.rb -i source.pdf -o output.pdf

เป็นทางเลือกคุณสามารถใช้-l LANGพารามิเตอร์ ในกรณีนั้นคุณจะต้องติดตั้งtesseract-ocr-LANGแพคเกจLANGรหัสภาษา ISO 639-2 สามตัวอักษรอยู่ที่ไหน ตอนนี้คุณมี 108 ภาษาใน 16.04 repo


3

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

pypdfocr your_document.pdf

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

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

sudo apt install tesseract-ocr 
pip install pypdfocr 

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

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

ocrmypdf in.pdf out.pdf

ติดตั้ง:

pip install ocrmypdf

หรือ

apt install ocrmypdf

นี่เป็นเครื่องมือที่น่าสนใจมากแม้ว่าฉันคิดว่า OP ต้องการเครื่องมือ GUI ในการสร้างไฟล์ข้อความไม่ใช่แซนวิช PDF มันจะดีถ้าคุณสามารถรวมเว็บไซต์ของโครงการ
Andrea Lazzarotto

@ AndreaLazzarotto ใช่ฉันเห็น แต่เนื่องจากคำสั่งนั้นเรียบง่ายฉันจึงเดาว่ามีหลายคนที่สามารถใช้เครื่องนี้ได้ ดังนั้นฉันจึงควรรวมวิธีแก้ปัญหาไว้ที่นี่
Eduard Florinescu

1
เป็นเรื่องบังเอิญเมื่อเร็ว ๆ นี้ฉันค้นพบ "ocrmypdf" คุณตรวจสอบมันออกมา? มันเป็นเรื่องดีมาก. :)
Andrea Lazzarotto

@AndreaLazzarotto ดูเหมือนว่าเป็นทางเลือกที่ดีที่คุณอาจต้องการที่จะโพสต์คำตอบ;) ผมจะพยายามออกมาให้ดูวิธีการทำงาน :)
เอดูอาร์ Florinescu

@AndreaLazzarotto ดูเหมือนจะไม่ตรงไปตรงมาที่จะติดตั้ง ocrmypdf บน Ubuntu 16.04 github.com/jbarlow83/OCRmyPDF/issues/118
Eduard Florinescu

3

เพียงเพราะมันใช้งานได้ดีมากและควรอยู่ในรายการ:


ตัวอย่างgimageReaderจากภาพหน้าจอ:

ป้อนคำอธิบายรูปภาพที่นี่

มันอยู่ใน repos (ตอบเมื่อวันที่ 18.10 แต่ใช้มานานแล้ว)


เมื่อฉันเปิดตัว gimageReader ครั้งแรกมันทำให้ฉันมีข้อความ "ไม่มีภาษา" สำหรับ tesseract คำตอบ " ฉันจะติดตั้งชุดภาษาใหม่สำหรับคำตอบtesseract " ล้มเหลวในการแสดงรายการengเป็นตัวเลือก ... แต่ฉันทำงานออกมา! :) การวิ่งsudo apt install tesseract-ocr-engในเครื่องก็ทำได้ มันจะดีถ้านี่เป็นเอกสารในไฟล์ช่วยเหลือของ gimageReader หรือ "README" บน github ... หรือที่อื่น ชอบที่นี่บางที
Dɑvïd

1

gscan2pdf รวมถึงเครื่องมือ ocr ที่แตกต่างกัน 3 แบบ คุณสามารถสแกนไปที่โปรแกรมหรือนำเข้า pdf ของคุณไปยังโปรแกรม ฉันพบว่าเครื่องยนต์ Tesseract ใช้งานได้ดีและใช้งานง่ายมาก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.