【问题标题】:Reading text from image with Pytesseract does not work使用 Pytesseract 从图像中读取文本不起作用
【发布时间】:2019-11-11 11:56:34
【问题描述】:

我想从车牌图像中读取字母和数字。我正在使用Python,并且我已经读到我可以使用pytesseract 来做到这一点。

我写了一个简单的代码,但我得到了一个错误:

    raise TesseractNotFoundError()
pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your path

我不知道如何解决这个问题,这是我的代码:

import cv2
import pytesseract

img = cv2.imread('image.jpg')
cv2.imshow('original', img)
cv2.waitKey(0)

text = pytesseract.image_to_string(img, config='')
print("Detected Number is:", text)

这是图片:

我已经安装了 pytesseract。 当我运行这个时:

import importlib.util
print(importlib.util.find_spec('pytesseract'))

我明白了:

ModuleSpec(name='pytesseract', loader=<_frozen_importlib_external.SourceFileLoader object at 0x02F8F070>, origin='C:\\Users\\Pc\\AppData\\Local\\Programs\\Python\\Python36-32\\lib\\site-packages\\pytesseract\\__init__.py', submodule_search_locations=['C:\\Users\\Pc\\AppData\\Local\\Programs\\Python\\Python36-32\\lib\\site-packages\\pytesseract'])

【问题讨论】:

  • 做一个pip install pytesseract
  • 我已经这样做了
  • 你是在windows机器上吗?
  • 是的,我已经更新了问题,请检查一下
  • 尝试像这样为 tesseract 添加路径,pytesseract.pytesseract.tesseract_cmd = r'&lt;full_path_to_your_tesseract_executable&gt;'

标签: python opencv python-tesseract


【解决方案1】:

好像没有安装pytesseract。

试试看:

import importlib.util
print(importlib.util.find_spec('ytesseract'))

如果未安装,您将获得:无

如果你有,它会显示目录,这是我,问我有没有pandas:

ModuleSpec(name='pandas', loader=<_frozen_importlib_external.SourceFileLoader object at 0x03E66F90>, origin='C:\\Users\\XXX\\AppData\\Local\\Programs\\Python\\Python36-32\\lib\\site-packages\\pandas\\__init__.py', submodule_search_locations=['C:\\Users\\XXX\\AppData\\Local\\Programs\\Python\\Python36-32\\lib\\site-packages\\pandas'])

pytesseract 需要 tessaract 和 tessaract-ocr,对于 tesseract:

pip install tesseract

对于 tessaract-ocr:

 https://github.com/UB-Mannheim/tesseract/wiki

执行安装。我的安装在 'C:/Program Files/'

然后我把它粘贴到了我的 Pytho 开发界面中:

  pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files/Tesseract-OCR/tesseract'

我执行了你的代码:

  text = pytesseract.image_to_string(img, config='')

然后打印返回:

  Detected Number is: 7

这不是预期的输出,但至少“pytesseract.pytesseract.TesseractNotFoundError:”消失了。

【讨论】:

  • 由于某种原因我在我的电脑上找不到 pytesseract,当我去搜索并输入“pytesseract”时,它说找不到
  • pytesseract 在 python 文件夹中,当我问你导入 importlib.util/print(importlib.util.find_spec('pytesseract')) 时,你打印了它。但是 tesseract-ocr 必须从这里“github.com/UB-Mannheim/tesseract/wiki”下载并安装。安装后,您会在电脑的某处看到它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-13
  • 1970-01-01
  • 2020-10-28
相关资源
最近更新 更多