我已经在我的
pytesseract
中安装了 venv
模块,并且想要从德语图像中提取文本。
从以下位置执行此脚本 pytesseract 并将语言设置为德语
import cv2
import pytesseract
try:
from PIL import Image
except ImportError:
import Image
print(pytesseract.image_to_string(Image.open('test.jpg')))
print(pytesseract.image_to_string(Image.open('test.jpg'), lang='ger'))
这给了我
raise TesseractError(proc.returncode, get_errors(error_string))
pytesseract.pytesseract.TesseractError: (1, 'Tesseract Open Source OCR Engine v3.05.00dev with Leptonica
Error opening data file C:\\Program Files (x86)\\Tesseract-OCR/tessdata/ger.traineddata
Please make sure the TESSDATA_PREFIX environment variable is set to the parent directory of your "tessdata" directory. Failed loading language \'ger\' Tesseract couldn\'t load any languages! Could not initialize tesseract.')
我在[tessdoc/Data-Files]上找到了语言数据(https://github.com/tesseract-ocr/tessdoc/blob/master/Data-Files.md)
到目前为止我只找到了 Linux 的指南如何在 16.04 上为 Tesseract 安装新的语言包
我需要将语言文件移动到我的
pyteseract
站点包中的哪里才能使脚本正常工作?
有两种方法。
apt-get install tesseract-ocr-YOUR_LANG_CODE
例如-在我的例子中是孟加拉语,所以我安装了-
apt-get install tesseract-ocr-ben
或安装所有语言 -
apt-get install tesseract-ocr-all
.这对我的 Ubuntu 环境有用。
TESSDATA_PREFIX
。您可以从这里下载语言包:https://github.com/tesseract-ocr/tessdata
.下载数据包后,您还可以以编程方式将环境变量设置为
import os
os.putenv('TESSDATA_PREFIX','path/to/your/tessdata/file'
我发现的最好方法:
tesseract-ocr-w64-setup-v5.0.0-rc1.20211030.exe
。fas.traineddata
。tessreact_ocr
安装位置,例如:C:\Program Files\Tesseract-OCR\tessdata
traineddata
名称。对于波斯语,我使用 lang='fas'
。在德国网站上找到了执行此操作的指南Python Texterkennung:Bild zu Text mit PyTesseract in Windows
我只是 apt-get 安装,没有设置 env TESSDATA_PREFIX。它可以工作
apt-get install tesseract-ocr-YOUR_LANG_CODE