Python2實(shí)現(xiàn)的圖片文本識(shí)別功能詳解
本文實(shí)例講述了Python2實(shí)現(xiàn)的圖片文本識(shí)別功能。分享給大家供大家參考,具體如下:
這里需要用到python的幾個(gè)庫(kù),分別是pytesser,以及pytesser的依賴(lài)庫(kù)PIL。python的版本建議用2.7或者2.7一下的都行,不建議用python3以上的,因?yàn)閜ython3不向下兼容,所以有很多python2的東西它不支持
pytesser下載的話(huà),我直接在pycharm里面下全是失敗,用DOS的命令行下也是失敗,所以還是自己直接去google下吧
地址:http://code.google.com/p/pytesser/downloads/list
如果打不開(kāi)上面的網(wǎng)址的話(huà)可以從我的資源里面下載,點(diǎn)擊此處本站下載。
下載好了之后安裝,步驟:
1. 解壓pytesser ,將解壓后的文件復(fù)制到Python安裝目錄的Lib\site-packages下,直接使用,比如我的安裝目錄是:C:\Python27\Lib\site-packages。
2. 這里我建立好的pytesser目錄為C:\Python27\Lib\site-packages\pytesser\
3. 接下來(lái)打開(kāi)pytesser文件夾,將pytesser.py修改成__init__.py,然后打開(kāi)py文件進(jìn)行修改:
①.import Image
改為:from PIL import Image
②.tesseract_exe_name = 'tesseract'
—>tesseract_exe_name = 'C:\\Python27\\Lib\\site-packges\\pytesser\\tesseract
,注意雙斜杠,否則可能因?yàn)檗D(zhuǎn)義字符報(bào)錯(cuò)
接下來(lái)就是下載PIL了。這個(gè)我在pycharm里面也是下載失敗,提示沒(méi)有找到適合python版本的PIL。
可以在DOS命令行下用命令下:pip install Pillow
這里要注意的是如果要直接在DOS下用pip命令的話(huà)要先把pip的路徑加到環(huán)境變量path里面去,例如我的pip路徑:“D:\python2.7.13\Scripts\”
注:小編嘗試后發(fā)現(xiàn)
PIL
安裝很麻煩,推薦下載exe直接安裝具體可至PIL官網(wǎng)查找對(duì)應(yīng)安裝版本:http://pythonware.com/products/pil/
全部下載完之后就可以開(kāi)始拿圖片測(cè)試了。這里我們先拿上面下載的pytesser壓縮包里面給的測(cè)試圖片來(lái)測(cè)試
代碼如下:
from pytesser import * img=Image.open("D:\\fnord.tif") #我這里是直接把圖片復(fù)制在d盤(pán)下??梢噪S意更改。如果是d盤(pán)下的XX文件夾,路徑就是:d:\XX\\fnord.tif #一些對(duì)python不熟悉的小伙伴要注意的是這個(gè)路徑只有最后一個(gè)斜杠要改成雙斜杠,前面的都是單斜杠,如果不是這樣的話(huà)在pycharm里面就會(huì)報(bào)一些看不懂的錯(cuò)誤,百度到死都不知道怎么解決。 print image_to_string(img)
或者可以寫(xiě)成:
print image_file_to_string("D:\\fnord.tif")
這里需要注意一下,直接運(yùn)行上面的代碼的話(huà)可能會(huì)報(bào)一個(gè)找不到Image類(lèi)的錯(cuò)誤,具體我也不是很清楚,可能是因?yàn)閜ytesser只支持PIL的Image類(lèi)吧,因此我們還要改一個(gè)東西,就是上面步驟3中pytesser包里面__init__.py 文件的第一行:import Image
改成from PIL import Image
。如圖:
這時(shí)候就可以看到輸出結(jié)果:
大功告成。
最后說(shuō)一下這個(gè)方法的一些缺點(diǎn),就是識(shí)別率不高,要圖片里面的文字很清晰才可以識(shí)別出來(lái),要想提高識(shí)別率的話(huà)還要對(duì)圖片進(jìn)行一些操作,這里就不詳細(xì)說(shuō)啦,請(qǐng)大家自行百度。
更多關(guān)于Python相關(guān)內(nèi)容可查看本站專(zhuān)題:《Python數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Python圖片操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門(mén)與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python如何實(shí)現(xiàn)播放本地音樂(lè)并在web頁(yè)面播放
這篇文章主要為大家詳細(xì)介紹了Python如何實(shí)現(xiàn)播放本地音樂(lè)并在web頁(yè)面播放,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-02-02PyTorch加載模型model.load_state_dict()問(wèn)題及解決
這篇文章主要介紹了PyTorch加載模型model.load_state_dict()問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2023-02-02Django的URLconf中使用缺省視圖參數(shù)的方法
這篇文章主要介紹了Django的URLconf中使用缺省視圖參數(shù)的方法,Django是最著名的Python的web開(kāi)發(fā)框架,需要的朋友可以參考下2015-07-07pycharm 取消默認(rèn)的右擊運(yùn)行unittest的方法
今天小編就為大家分享一篇pycharm 取消默認(rèn)的右擊運(yùn)行unittest的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-11-11Python實(shí)現(xiàn)猜拳與猜數(shù)字游戲的方法詳解
本文將為大家介紹兩個(gè)用Python語(yǔ)言實(shí)現(xiàn)的小案例:猜拳游戲與數(shù)字猜猜猜小游戲,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-04-04Sklearn調(diào)優(yōu)之網(wǎng)格搜索與隨機(jī)搜索原理詳細(xì)分析
這篇文章主要介紹了Sklearn調(diào)優(yōu)之網(wǎng)格搜索與隨機(jī)搜索原理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-02-02使用Python實(shí)現(xiàn)Excel文件轉(zhuǎn)換為SVG格式
SVG(Scalable Vector Graphics)是一種基于XML的矢量圖像格式,這種格式在Web開(kāi)發(fā)和其他圖形應(yīng)用中非常流行,提供了一種高效的方式來(lái)呈現(xiàn)復(fù)雜的矢量圖形,本文將介紹如何使用Python轉(zhuǎn)換Excel文件為SVG格式,需要的朋友可以參考下2024-07-07