Python2.7+pytesser圖片文字識別功能

原文地址:http://blog.csdn.net/lanfan_11/article/details/45558573python

原文已經寫的很詳細了,結合本身操做中的一些錯誤和感悟,整理了一下,造成了下面的文章。數據庫

-----------------------------------------------------------------------------------------------------------------函數

測試中須要將圖片上的數字提取出來,和數據庫的數字比較,判斷圖片上的數字是否正確。工具

網上查了下相關資料,瞭解到pytesser是谷歌OCR開源項目的一個模塊,在Python中導入這個模塊便可將圖片中的文字轉換成文本。測試

pytesser調用了tesseract。當在Python中調用pytesser模塊時,pytesser又用tesseract識別圖片中的文字。故安裝的時候不須要安裝tesseract。網站

具體安裝步驟以下:google

首先,安裝Python2.7版本
而後,安裝PIL工具,下載的地址是:http://www.pythonware.com/products/pil/,pytesser的使用須要PIL庫的支持。 選擇安裝python對應的版本。
接着下載pytesser,下載的地址是:http://code.google.com/p/pytesser/downloads/listspa

因爲code.google.com網站關閉了,因此,只能在csdn上下載了。下面是csdn的下載網址:http://download.csdn.net/download/pyliang_2008/5564135.net

最後,安裝pytesser :
一、解壓pytesser ,將解壓後的文件複製到Python裝目錄的Lib\site-packages下,直接使用,好比個人安裝目錄是:C:\Python27\Lib\site-packages。
二、把2個目錄添加到環境變量之中。 注:若不添加環境變量,僅僅是執行第3步,執行import pytesser的時候能夠導入成功,可是不能使用模塊的任何函數,使用時會報函數錯誤。
C:\Python27\Lib\site-packages
C:\Python27\Lib\site-packages\pytesser-v0.0.1 調試

 

三、還要在C:\Python27\Lib\site-packages下面添加.pth 文件(pytesser-v0.0.1.pth),這個文件裏面,只有 「pytesser-v0.0.1」字符串。

 注:若只執行第2步,不執行第3步,則import pytesser時會提示沒有此模塊。

 另外: 爲了美觀,能夠將pytesser-v0.0.1修改成pytesser。可是對應的相關位置都須要進行修改。

完成以上步驟以後,就能夠編寫圖片文本識別的Python腳本了。

新建一個test.py的文件,複製下面的代碼:

  1. from pytesser import *
  2. im = Image.open('D:\\fonts_test.png')
  3. print im
  4. bg = Image.new("RGB",im.size,(255,255,255)) #轉換圖片格式,不轉換提示錯誤
  5. print bg
  6. bg.paste(im,im)
  7. print im
  8. text = image_to_string(bg)
  9. print text
  10. #如下代碼存在問題,未調試經過。
  11. text = image_file_to_string('fonts_test.png', graceful_errors=True)
  12. print "Using image_file_to_string():"
  13. print text

 

將pytesser路徑下的fonts_test.png 圖片複製到test.py的存放位置,能夠執行下試試效果。

相關文章
相關標籤/搜索