tesserocr 是 python 的一個 OCR 庫,windows 下安裝 tesserocr 直接用 pip 安裝是不可以的,會報錯,只能用 .whl 的方式安裝。安裝 .whl 時,可能遇到 failed to create process 報錯,pip 版本等級過低,中文路徑無法識別等問... ...
tesserocr 是 python 的一個 OCR 庫,它是對 tesseract 做的一層 Python API 封裝,所以他的核心是tesseract。
tesseract 的安裝見 https://www.cnblogs.com/gl1573/p/9876397.html
windows 下安裝 tesserocr 是一個坑爹的事情,直接用 pip 安裝是不可以的,會報錯,只能用 .whl 的方式安裝。據說 pip 的方式只能用於 Linux 系統,沒驗證過。
whl 下載地址:https://github.com/simonflueckiger/tesserocr-windows_build/releases
網站中列出了 tesserocr 和 tesseract 版本的對應關係,選擇對應的版本,否則會出現非預期字元。
安裝 whl 時要註意幾個問題。
1、報如下錯誤:
報這個錯誤的原因是改動了python 的目錄名稱或位置。我用 pycharm 每個項目都是單獨的配置,並且我改動過了項目名稱導致了這個問題。
解決辦法:找到修改 python 所在的目錄,打開 scripts 目錄,找到 pip-script.py 文件,將第一行的路徑改正確了就可以了。
2、python3.6 預設自帶的 pip 版本是9.0.1,版本太低,需要升級。升級後,pip-script.py 文件中的版本號也要更改,否則依然認為你沒更新。
3、當路徑中包含中文時,可能會出現編碼問題。
這個問題比較奇怪,中文路徑可以肯定的是允許的,實際驗證過,應該是 pip-script.py 的文件編碼問題,但是我嘗試了更改編碼方式,也不行。這問題目前有兩個解決方案,一是把路徑改成英文的,二是從別的可以包含中文路徑的地方把 pip-script.py 拷過來改。
安裝完成後就可以使用了,示例如下:
import tesserocr
from PIL import Image
img = Image.open('1.png')
result = tesserocr.image_to_text(img)
print(result)