Tesseract 路径错误

Path error with Tesseract

我以为我的 Tesseract 可以在我的 Win 7 机器上运行:

from PIL import Image
import pytesseract

pytesseract.pytesseract.tesseract_cmd = 'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'

tessdata_dir_config = '--tessdata-dir "C:\Program Files (x86)\Tesseract-OCR\tessdata"'

myFile = r"D:\temp\OCR\rightness_of_rendering.tif"

print(pytesseract.image_to_string(Image.open(myFile)))

tesseract.exe 位于 C:\Program Files (x86)\Tesseract-OCR\tesseract.exe

eng.traineddata 位于 C:\Program Files (x86)\Tesseract-OCR\tessdata

我得到的错误是

D:\LearnPython>D:\LearnPython\ocr_test.py
Traceback (most recent call last):
  File "D:\LearnPython\ocr_test.py", line 14, in <module>
    print(pytesseract.image_to_string(Image.open(myFile)))
  File "C:\Python27\lib\site-packages\pytesseract\pytesseract.py", line 125, in
image_to_string
    raise TesseractError(status, errors)
pytesseract.pytesseract.TesseractError: (1, u'Error opening data file \Program
Files (x86)\Tesseract-OCR\eng.traineddata')

D:\LearnPython>

这是一个目录,所以我有点困惑如何设置它才能正常工作。

来自 pytesseract github page

tessdata_dir_config = '--tessdata-dir "<replace_with_your_tessdata_dir_path>"'
# Example config: '--tessdata-dir "C:\Program Files (x86)\Tesseract-OCR\tessdata"'
# It's important to add double quotes around the dir path.

pytesseract.image_to_string(image, lang='chi_sim', config=tessdata_dir_config)

请注意,您需要在 image_to_string 通话中提供 config=tessdata_dir_config

因此,如果您使用的是工程数据,它将是

print(pytesseract.image_to_string(Image.open(myFile), lang='eng', config=tessdata_dir_config))