|
物理世界和數(shù)字世界的信息轉換是數(shù)字化發(fā)展的一個技術內容。而光學字符識別(Optical Character Recognition:簡稱OCR)正是其中之一。 OCR是指電子設備(例如掃描儀或數(shù)碼相機)檢查紙上打印的字符,通過檢測暗、亮的模式確定其形狀,然后用字符識別方法將形狀翻譯成計算機文字的過程。OCR常常被用于:證件識別、車牌識別、pdf文檔轉換為Word、拍照識別、截圖識別、網(wǎng)絡圖片識別、無人駕駛、無紙化辦公、稿件編輯校對、物流分揀、文檔檢索、字幕識別、文獻資料檢索等領域。特別是在業(yè)務流程自動化領域OCR是RPA的一個重要技術組成,起到重要作用。
隨著AI技術的發(fā)展,目前開源市場出現(xiàn)了許多非常優(yōu)秀的OCR項目。下面介紹目前比較流行的開源OCR項目,這些項目能夠為您OCR技術選型或者OCR模型算法研究提供參考。 01 Tesseracthttps://github.com/tesseract-ocr/tesseract
Tesseract是一個非常經(jīng)典的開源OCR引擎,最初由Hewlett-Packard開發(fā),現(xiàn)在由Google維護。Tesseract以其準確性和多功能性而聞名,可以提取數(shù)據(jù)并將掃描的文檔、圖像和手寫文字轉換為機器理解的文本。Tesseract支持100多種語言,并兼容多種操作系統(tǒng),并且提供了非常方便的命令行界面。
優(yōu)勢:
缺點:
02Tesseract.jshttps://tesseract./
Tesseract.js是一個基于TesseractOCR的Web瀏覽器OCR軟件。你可以在瀏覽器中使用它,并且非常易用。與Tesseract OCR一樣,它也支持多種語言,包括中文。
03 OCRopushttps://github.com/ocropus
OCRopus是由Google開發(fā)的OCR相關工具集合,它擴展了Tesseract OCR引擎的功能。它提供了布局分析、文本識別和樣本數(shù)據(jù)生成的高級功能。 另外,OCRopus可以從命令行通過指定輸入的圖像來執(zhí)行它。它會將識別的文本直接輸出到標準輸出,或者將其作為hOCR(基于HTML)代碼寫入文件,然后可以將其轉換為可搜索的PDF。如果需要更精確的控制,可以在命令行上指定選項來執(zhí)行特定操作。
優(yōu)勢:
? 缺點
04GOCRhttps://jocr./
GOCR是在GNU通用公共許可證下開發(fā)的開源OCR引擎。它能夠識別各種圖像文件格式中的文本內容,并支持多種語言和操作平臺。 雖然它的準確性可能無法超過其他OCR引擎,但GOCR的優(yōu)勢是非常簡單易用。 優(yōu)勢
缺點
4. CuneiForm CuneiForm是一個開源的OCR,專門用于將掃描的文檔和圖像轉換為可編輯的文本。 它的主要目標是提供準確的OCR結果,同時具有比較靈活的輸入源和輸出格式。CuneiForm還支持多種語言,并兼容各種操作系統(tǒng)。 ?優(yōu)勢
缺點
05Ocradhttps://www./software/ocrad/
Ocrad以其簡單性和識別速度而聞名,它提供了一個輕量級的OCR解決方案,主要以識別印刷文本而聞名。它旨在提供一個簡單高效的OCR解決方案,側重文本識別提取的速度和易用性。 優(yōu)勢
缺點
06Ocrad.jshttp:///ocrad.js/demo.html
Ocrad.js是一個基于Ocrad的瀏覽器的OCR軟件。在JavaScript中使用它。支持的圖像格式包括JPEG、PNG、GIF、BMP、SVG、NetBPM等。 它非常簡單易用,只需要通過調用OCRAD的函數(shù)即可實現(xiàn)對img標簽的識別。雖然在識別精度方面比Tesseract.js遜色,但Ocard的優(yōu)勢是它的模型文件比Tesseract小30倍以上。 07GImage Readerhttps://github.com/manisandro/gImageReader
GImage Reader工具它能夠識別多種語言以及各種圖像文件格式的文本,使其適合從掃描的文檔、屏幕截圖或者照片中提取文本;并且它提供了一個簡單直觀的用戶界面,允許您快速加載圖像并獲得文本結果。 優(yōu)勢
缺點
08Capture2Texthttps://capture2text./
Capture2Text是一個基于命令行的Windows OCR軟件。它支持多種語言,包括日語。它不僅能識別水平的字符,還能識別垂直的字符??梢栽谀阈枰臅r候使用windows命令行調用OCR命令,識別出的文本將被保存進剪貼板。 09 NDLOCRhttps://github.com/ndl-lab
NDLOCR日本國立國會圖書館開源的ocr項目,比較適合古籍中一些復雜排版的ocr識別。比較適合日本語言的識別。 另外,它也支持在識別的文本中備注漢字讀音、刪除非字符,以及在廣告區(qū)域讀取字符的功能。還采取了一些有趣的舉措,例如:根據(jù)年齡提高識別準確性。 項目只適合研究學習,至于實際的漢字識別用場景難以使用。 10 OCRmyPDF https://github.com/ocrmypdf/OCRmyPDF
OCRmyPDF是一個專門用于PDF的OCR識別軟件,它能夠將識別到的文本信息作為透明的文本添加到PDF中。因此,您可以在PDF中搜索文本。 如果您將其用于沒有文本信息的PDF,則可以進行搜索,從而增加了方便性。由于它基于Tesseract OCR引擎進行文本識別,因此也支持中文。
11EasyOCRhttps://github.com/JaidedAI/EasyOCR
EasyOCR基于機器學習(CRNN)實現(xiàn)OCR功能。它能夠識別超過80種語言的文字,包括簡體中文和繁體中文。它是使用python開發(fā)的,因此使用Python調用也非常簡單。例如: 識別包含中文的圖片 import easyocrreader = easyocr.Reader(['ch_sim','en']) # this needs to run only once to load the model into memoryreader.readtext('chinese.jpg', detail = 0)識別結果為: ['愚園路', '西', '東', '315', '309', 'Yuyuan Rd.', 'W', 'E']
更多的例子可以通過以下這個網(wǎng)址進行測試: https://www./easyocr/ 12 kraken https://github.com/mittagessen/kraken
kraken是一個由Python開發(fā)的OCR軟件,主要用于非拉丁字符的識別。它支持從右到左書寫的語言,例如阿拉伯語,也支持從上到下書寫的語言,例如日語。可以從命令行運行OCR識別PDF、JPEG和TIFF等格式的文件。 它的特點包括:
以上介紹的這些OCR軟件可以為項目的OCR技術選型或者OCR研發(fā)提供一個參考。另外,在一些垂直領域業(yè)務應用的時候也可以結合自身業(yè)務需求自主訓練識別模型來提高應用效果。隨著AI技術的發(fā)展,OCR識別準確性也將不斷提高。 |
|
|