一文了解文字識別OCR開源框架的對比
前言:
OCR文字識別在目前有著比較好的應(yīng)用,也出現(xiàn)了很多的文字識別軟件,但軟件是面向用戶的。對于我們技術(shù)人員來說,有時難免需要在計算機視覺任務(wù)中加入文字識別,如車牌號識別,票據(jù)識別等,因此軟件對我們是沒用的,我們需要自己實現(xiàn)文字識別。
在文字識別方面,主要有兩款主流的開源框架Tesseract和EasyOCR。本文討論了 Tesseract 和 EasyOCR 使用 Python API 之間的主要區(qū)別,包括安裝、使用示例、準確率和推理速度方面的對比。
更多內(nèi)容請關(guān)注公眾號CV技術(shù)指南,專注于計算機視覺的技術(shù)總結(jié),最新技術(shù)跟蹤。
使用示例
Tesseract
安裝: pip install pytesseract pillow
使用示例:
from PIL import Image import pytesseract text=pytesseract.image_to_string(Image.open(filename)) print(text) |
這只是一個簡單的使用示例,在實際應(yīng)用中,圖像并非理想情況,還需要對圖像進行一定的預(yù)處理以更好地識別。如去除椒鹽噪聲,去除干擾物,如在車牌識別中還會利用矩形框檢測框出車牌所在位置,并放大,以更好地進行車牌號識別。
EasyOCR
安裝:pip install easyocr
使用示例
import easyocr reader = easyocr.Reader(['ch_sim', 'en']) text = reader.readtext('filename') print(text) |
注:easyocr還會輸出文字在圖片中的坐標。
準確率
在參考鏈接[2]中進行了一項實驗,使用1000張含字母的圖片和1000張含數(shù)字的圖片分別使用Tesseract和EasyOCR進行測試。
含字母的輸入圖像如下圖所示:
含數(shù)字的輸入圖像如下圖所示:
經(jīng)過測試得出下面兩個開源框架的準確率對比
如上圖所示,Tesseract 在字母識別方面做得更好,而 EasyOCR 在數(shù)字識別方面做得更好。
此外,它們在識別某些字符時存在完全不同的問題。例如,Tesseract 傾向于將諸如 29977.23 之類的東西識別為 2997.23,或者將carrier 識別為 cartier。另一方面,EasyOCR 更有可能將 94268.1 識別為 94268,或者advances 識別為 atvances。這兩個單詞識別的舉例表明這兩個框架對單個字母的識別傾向。
推理速度
在速度方面,Tesseract 在 CPU 上的表現(xiàn)優(yōu)于 EasyOCR,而 EasyOCR 在 GPU 上的表現(xiàn)更好。
結(jié)論
Tesseract 在字母識別方面表現(xiàn)更好,而 EasyOCR 在數(shù)字方面表現(xiàn)更好。如果圖片包含大量字母,可以考慮 Tesseract。此外,EasyOCR 的輸出是小寫的。如果大寫對處理很重要,還應(yīng)該使用 Tesseract。另一方面,如果圖片中包含大量數(shù)字,建議 EasyOCR。
在公眾號中回復(fù)關(guān)鍵字 “技術(shù)總結(jié)” 可獲取以下文章的匯總pdf。
更多內(nèi)容請關(guān)注公眾號CV技術(shù)指南,專注于計算機視覺的技術(shù)總結(jié),最新技術(shù)跟蹤。

請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
最新活動更多
推薦專題
- 1 AI 眼鏡讓百萬 APP「集體失業(yè)」?
- 2 大廠紛紛入局,百度、阿里、字節(jié)搶奪Agent話語權(quán)
- 3 深度報告|中國AI產(chǎn)業(yè)正在崛起成全球力量,市場潛力和關(guān)鍵挑戰(zhàn)有哪些?
- 4 上海跑出80億超級獨角獸:獲上市公司戰(zhàn)投,干人形機器人
- 5 國家數(shù)據(jù)局局長劉烈宏調(diào)研格創(chuàng)東智
- 6 下一代入口之戰(zhàn):大廠為何紛紛押注智能體?
- 7 百億AI芯片訂單,瘋狂傾銷中東?
- 8 Robotaxi新消息密集釋放,量產(chǎn)元年誰在領(lǐng)跑?
- 9 格斗大賽出圈!人形機器人致命短板曝光:頭腦過于簡單
- 10 一文看懂視覺語言動作模型(VLA)及其應(yīng)用