安装 tesserocr 遇到的坑
环境:
- win10
- python3.7
一、安装 Tesserocr 准备
tesserocr 是 Python 的一个 OCR 识别库,但其实是对 tesseract 做的一层 Python API 封装,所以它的核心是 tesseract。因此,在安装 tesserocr 之前,我们需要先安装 tesseract。
tesseract 下载地址:http://digi.bib.uni-mannheim.de/tesseract
在 Windows 下,首先需要下载 tesseract,它为 tesserocr 提供了支持。
在选择下载什么版本之前,我们需要去查看 tesserocr 的版本。选择安装包时,tesserocr 和 tesseract 的版本要匹配,如 “tesserocr v2.2.2 (tesseract 4.0.0 master)” 释放,表明 “tesserocr-2.2.2” 要配合 “tesseract 4.0.0 master” 使用。如果 tesserocr 与 tesseract 间版本不匹配,识别结果中会出现非预期字符。例如,若是将 “tesserocr-2.2.2” 与 “tesseract 3.5.2” 搭配使用,结果中便会出现非预期字符。
python 查看当前版本支持的 .whl 包。
AMD64
import pip._internal
print(pip._internal.pep425tags.get_supported())
WIN32
import pip
print(pip.pep425tags.get_supported())
结果如图:
tesserocr 下载地址:https://github.com/simonflueckiger/tesserocr-windows_build/releases
所以我们这里选择下载 tesserocr v2.3.1 和 tesseract 3.05.02。
二、安装 Tesserocr
安装 tesseract 可以比较简单,我们介绍一下关于 tesserocr 的安装过程。
比如说:
把下载下来的 tesserocr 安装包放在 python 安装路径里,在该目录下打开 dos 窗口。
运行 pip3 install tesserocr-2.3.1-cp37-cp37m-win_amd64.whl 即可成功。
三、验证
下面我们以如图所示的图片为样例进行测试。
我是在 Pycharm 中测试的,测试代码如下:
import tesserocr
from PIL import Image
image = Image.open('image.png')
print(tesserocr.image_to_text(image))
关于报错:
使用tesserocr.file_to_text("path")报错Failed to init API, possibly an invalid tessdata path
解决方法有多种,详细介绍可以参考:https://blog.csdn.net/qq_38410428/article/details/82700006
如果还未解决,我本人遇到的问题是,必须要将 python 项目放置与 python 安装包同一个跟目录下。
python 安装包位于 D:\Soft_Install\Python37,因此这段程序必须也放在 D 盘。