1. 程式人生 > >tesseract執行程式碼過程中出現的問題

tesseract執行程式碼過程中出現的問題

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