python識別圖片文字的幾種方式

說一說場景,電腦不能裝qq 微信后,都沒有比較便捷的工具,不方便截圖提取文字。目前網(wǎng)上收了一下 ,主要是利用pytesseract進(jìn)行。這是一個基于 Google 的 Tesseract-OCR 引擎的 Python 封裝,是一個功能強(qiáng)大的 OCR 工具(OCR回是Optical Character Recognition的縮寫,光學(xué)字符識別 的意思。),能夠?qū)崿F(xiàn)圖像中文字的識別。無論是從圖片中提取文本信息,還是實(shí)現(xiàn)圖像轉(zhuǎn)文字的自動化處理,pytesseract 都能夠輕松勝任。

一、環(huán)境準(zhǔn)備,庫安裝

1. 安裝 pytesseract 庫

首先,我們需要安裝 pytesseract 庫。在安裝之前,請確保你已經(jīng)安裝了 Tesseract OCR 引擎。
下載地址:https://digi.bib.uni-mannheim.de/tesseract/

image.png

安裝tesseract ,檢驗(yàn)版本是否安裝tesseract -v


image.png

2. 讀取圖片

讀取圖片路徑若有漢字,會識別不到圖片,大家可以試試
pytesseract.pytesseract.tesseract_cmd = r'D:\soft\tesseract\tesseract.exe'
image_path = r'D:\develop\demo\screenshot.png'
im=Image.open(image_path)

3. 文字識別

方案①
text = pytesseract.image_to_string(im, lang='chi_sim')
print(text)

方案②
另外介紹一種通過cv2去識別圖片的方法,僅供參考,識別準(zhǔn)確率各不相同
pytesseract.pytesseract.tesseract_cmd = r'D:\soft\tesseract\tesseract.exe'
image_path = r'D:\develop\demo\screenshot.png'#路徑不能帶中午
image = cv2.imread(image_path)
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
text = pytesseract.image_to_string(gray_image, lang='chi_sim')
print(text)

方案③easyocr模塊
reader = easyocr.Reader(['ch_sim', 'en'])
result = reader.readtext(image_path)
for (bbox, text, prob) in result:
print(f' {text}')

安裝easyocr模塊,比較麻煩,需要下載對應(yīng)的大模型
安裝庫
pip install easyocr -i https://pypi.mirrors.ustc.edu.cn/simple/
執(zhí)行easyocr.Reader()時需要將模型加載到內(nèi)存中,需要一定時間,只需要運(yùn)行一次(會先下載列表中相關(guān)的語言包)??梢韵螺d程序到對應(yīng)目錄

image.png

不確定EasyOCR 模型,可以使用多久,目錄下有一個lic授權(quán),不知道有沒有定義。

對比 一下截圖,差異不大,主要還是根據(jù)圖片內(nèi)容的復(fù)雜性來說,會呈現(xiàn)出不同差異,導(dǎo)致提取的文字不準(zhǔn)確。easyocr 屬于進(jìn)階版吧,后期也將進(jìn)行優(yōu)化升級改造


image.png

后期將進(jìn)行截圖+識別方案,目前也沒有好的思考,比較簡單的方案就是截圖保存目錄后觸發(fā)提出功能,
最方面的還是微信方式,截圖后點(diǎn)擊翻譯,在旁邊提取對應(yīng)的文字,欲知后事如何,靜待后期分享吧!歡迎一起吐槽,一個不專業(yè)的IT狗學(xué)習(xí)開發(fā)的進(jìn)程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容