1. 介紹
介紹使用 python 進行圖像的文字識別,將圖像中的文字提取出來,可以幫助我們完成很多有趣的事情。
2. 必備工具
- tesseract-ocr
下載地址: https://github.com/UB-Mannheim/tesseract/wiki
tesseract-ocr 是一個開源的圖片OCR識別庫, 功能及其強大,支持多國語言。
更高級的用法,它還支持機器學習算法,通過訓練的方式,使OCR識別更加智能化及准確。
- python 庫
使用安裝 pytesseract 和 pillow 庫:
pip install pytesseract
pip install pillow
3. 開發使用
使用 python 配合 tesseract 識別文字中的圖像可以非常簡單,幾行代碼就可以搞定。
例如,識別下面這張圖片:
首先導入 pytesseract 和 pillow 庫
import pytesseract
from PIL import Image
然后指定 tesseract 目錄:
pytesseract.pytesseract.tesseract_cmd = 'f:/tessert/tesseract.exe'
然后使用 pillow 庫加載圖片:
img = Image.open('test.png')
最后使用 tesseract 識別圖像的文字:
text = pytesseract.image_to_string(img, lang='chi_sim')
print(text)
最后的結果是:
可以看到,有偏差,但是基本上都識別出來了。
4. 總結
這里只是入門級的介紹,當然還有問題,比如彩色圖像識別一般效果不好,對比度低的圖像識別也不一定好,這就需要我們對圖片進行處理后再來識別。比如提取灰度圖片,銳化圖片等操作,具體涉及到的是數字圖像處理的領域了,這個后面有機會再討論。