tesseract執行程式碼過程中出現的問題
阿新 • • 發佈:2019-01-04
1.pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it’s not in your path
解決辦法:
方法1[推薦]: 將tesseract.exe新增到環境變數PATH中,
例如: D:\Tesseract-OCR,預設路徑為C:\Program Files (x86)\Tesseract-OCR
注意: 為了使環境變數生效,需要關閉cmd視窗或是關閉pycharm等ide重新啟動
方法2: 修改pytesseract.py檔案,指定tesseract.exe安裝路徑
# CHANGE THIS IF TESSERACT IS NOT IN YOUR PATH, OR IS NAMED DIFFERENTLY
tesseract_cmd = 'C:\\Program Files (x86)\\Tesseract-OCR\\tesseract.exe‘
方法3: 在實際執行程式碼中指定
新增如下程式碼;將tesseract.exe路徑新增到程式碼中
pytesseract.pytesseract.tesseract_cmd = 'D:\\nn\Tesseract-OCR\\tesseract.exe'
以上三種方法都嘗試了,最後發現第三種方法奏效!
附上測試程式碼:
try:
import Image
except ImportError:
from PIL import Image
import pytesseract
pytesseract.pytesseract.tesseract_cmd = 'D:\\Tesseract-OCR\\tesseract.exe'
print('識別出的結果如下:')
print(pytesseract.image_to_string(Image.open('18.png')))
# print(pytesseract.image_to_string(Image.open('test-european.jpg'), lang='fra'))
2.pytesseract.pytesseract.TesseractError: (1, ‘Error opening data file \nn\Tesseract-OCR\eng.traineddata Please make sure the TESSDATA_PREFIX environment variable is set to your “tessdata” directory. Failed loading language ‘eng’ Tesseract couldn’t load any languages! Could not initialize tesseract.’)
解決辦法:
新增如下程式碼;將tesseract.exe路徑新增到程式碼中
os.environ['TESSDATA_PREFIX'] = 'D:\\nn\Tesseract-OCR\\tessdata'
3.Failed loading language ‘eng’ Tesseract couldn’t load any languages! Could not initialize tesseract.
解決辦法:
重新安裝tesseract,我的電腦安裝的3.6,安裝4.0後,又出現以上2的問題,然後按照2的解決辦法解決後,程式碼就可以成功執行!
http://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-setup-4.00.00dev.exe