使用pytess执行OCR时出错

2024-04-18 23:02:37 发布

您现在位置:Python中文网/ 问答频道 /正文

FileNotFoundError: [WinError 2] The system cannot find the file specified.
During handling of the above exception, another exception occurred: pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your path.  

我正在使用Pycharm社区并尝试安装OCR的tesseract。 我的代码如下:

^{pr2}$

Tags: theexceptionnotfindsystemfilespecifiedhandling
1条回答
网友
1楼 · 发布于 2024-04-18 23:02:37

是的,我只换了一行就把问题解决了。在

我们必须提供pytesseract exe的可执行路径

在pytesseract.pytesseract.tesseract_命令='C:\Program Files(x86)\t清除OCR\tesseract.exe文件'

代码如下:

def get_string(img_path):
    # Read image with opencv
    img = cv2.imread(img_path)

    # Convert to gray
    img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

    # Apply dilation and erosion to remove some noise
    kernel = np.ones((1, 1), np.uint8)
    img = cv2.dilate(img, kernel, iterations=1)
    img = cv2.erode(img, kernel, iterations=1)

    # Write image after removed noise
    cv2.imwrite(src_path + "removed_noise.png", img)

    #  Apply threshold to get image with only black and white
    # img = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 31, 2)

    # Write the image after apply opencv to do some ...
    cv2.imwrite(src_path + "thres.png", img)

    # Recognize text with tesseract for python
    pytesseract.pytesseract.tesseract_cmd = 'C:\\Program Files (x86)\\Tesseract-OCR\\tesseract.exe'
    result = pytesseract.image_to_string(Image.open(src_path + "thres.png"))

    # Remove template file
    # os.remove(temp)

    return result

相关问题 更多 >