新聞中心
最近工作中有需求需要用python對圖片中的文字進(jìn)行識別,調(diào)研了一下,選擇了tesseract,

成都創(chuàng)新互聯(lián)是少有的成都網(wǎng)站制作、成都做網(wǎng)站、營銷型企業(yè)網(wǎng)站、微信平臺小程序開發(fā)、手機(jī)APP,開發(fā)、制作、設(shè)計(jì)、賣友情鏈接、推廣優(yōu)化一站式服務(wù)網(wǎng)絡(luò)公司,于2013年開始,堅(jiān)持透明化,價(jià)格低,無套路經(jīng)營理念。讓網(wǎng)頁驚喜每一位訪客多年來深受用戶好評
目前在github上有50.5k個(gè)star!python可以調(diào)用,安裝也十分方便,pip install pytesseract 即可。如果沒有Pillow 包,還需要執(zhí)行pip install Pillow。
核心代碼
讀取圖片中文字信息的核心api如下:
from PIL import Image
import pytesseract
captcha_text = pytesseract.image_to_string(Image.open("d:/tmp/img4.png"), lang='chi_sim')
print(captcha_text)上面這段代碼中需要解釋的是如果圖片中有中文字符則需要添加參數(shù)lang='chi_sim',并在安裝的過程中添加識別中文的字符庫,后面會講到!
運(yùn)行代碼遇到的問題
直接運(yùn)行上面的代碼,會遇到下面的問題
raise TesseractNotFoundError()
pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your PATH. See README file for more information.我們來分析一下這個(gè)錯(cuò)誤!錯(cuò)誤提示tesseract沒有安裝,但是我們明明已經(jīng)執(zhí)行了pip install pytesseract,那么問題會出在哪里呢?
我們需要先了解一下pytesseract,它是一款用于光學(xué)字符識別(OCR)的python工具,即從圖片中識別出和“讀取”其中嵌入的文字,底層使用的是Google的Tesseract-OCR 引擎,pytesseract只是對Tesseract-OCR的一層封裝!看到這里我們就能夠理解 ,運(yùn)行python代碼
pytesseract.image_to_string() 報(bào)錯(cuò)的原因了!因?yàn)槲业腜C上并沒有安裝Tesseract-OCR,pytesseract是無法調(diào)用Tesseract-OCR的api為我們干活的!
安裝Tesseract-OC
Tesseract-OCR windows 版本的下載鏈接如下:https://github.com/UB-Mannheim/tesseract/wiki
下載成功后,只需默認(rèn)安裝,在安裝的過程中,如果想對其他國家語言文字識別可以選擇相對應(yīng)的語言包,如下圖
安裝成功后配置路徑 C:\Program Files\Tesseract-OCR 到環(huán)境變量中即可。
再次運(yùn)行,正常執(zhí)行!大家可以自己做一張文字圖片的截圖查看效果。
復(fù)雜的登錄校驗(yàn)碼無法識別
另外我測試了Tesseract-OCR對復(fù)雜校驗(yàn)碼的識別情況,如下圖:
結(jié)論是:復(fù)雜的校驗(yàn)碼仍然無法識別。
文章題目:沒看錯(cuò)!一行Python代碼就可以幫您獲取圖片中的文字信息
標(biāo)題鏈接:http://www.5511xx.com/article/coiggdi.html


咨詢
建站咨詢
