隨著科技的發展,OCR場景隨處可見,很多App也集成如身份證識別,銀行卡識別的功能,包括微信都支持截圖文件中的文字提取。現在,各大廠商均有提供各種場景的OCR識別的API。但是,有時候我們也想自己來折騰一下。這時候,就可以借助一些主流開源框架來快速達到我們的目的。
OCR引擎
tesseract
Tesseract,一款由HP實驗室開發由google維護的開源OCR引擎,開源,免費,支持多語言,多平臺;
??https://github.com/tesseract-ocr/tesseract.git??
tesseract.js
js版本的Tesseract OCR,支持一百多種語言,使用也是非常簡單,可以用npm安裝,也可以直接在頁面引用js
??https://github.com/naptha/tesseract.js.git??
PaddleOCR
PaddleOCR是百度開源一套OCR,旨在打造一套豐富、領先、且實用的OCR工具庫,助力開發者訓練出更好的模型,并應用落地。
??https://github.com/PaddlePaddle/PaddleOCR.git??
EasyOCR
EasyOCR是用Python/ target=_blank class=infotextkey>Python編寫基于Tesseract的OCR識別庫,用于圖像識別輸出文本,目前支持80多種語言。
??https://github.com/JaidedAI/EasyOCR.git??
mmocr
MMOCR 是基于 PyTorch 和 mmdetection 的開源工具箱,專注于文本檢測,文本識別以及相應的下游任務,如關鍵信息提取。
??https://github.com/open-mmlab/mmocr.git??
simple-ocr-opencv
基于opencv 和numpy開源的OCR識別引擎
??https://github.com/goncalopp/simple-ocr-opencv.git??
OCR工具
OCRmyPDF
OCRmyPDF是基于tesseract-ocr開發、訓練的文字識別提取的開源項目
??https://github.com/ocrmypdf/OCRmyPDF.git??
Umi-OCR
基于 PaddleOCR 實現的一款開源的文字識別工具,
一般開源項目,識別率肯定沒有商用的那么高,只有通過訓練自己的字庫來提高識別率。文字識別場景,有時候就會涉及到圖片處理,這里又會關聯到其它強大的圖像處理開源項目,如:OpenCV。這些項目中,PaddleOCR相對來說會更符合我們常見的業務場景,也支持我們自己去訓練。