如何在 Windows 上为 Tesseract 安装新的语言包
How do I install a new language pack for Tesseract on Windows
我已经在我的 venv 中安装了 pytesseract 模块,想从德语文件中提取文本
从
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 sidepackage 中的语言文件移动到哪里才能使脚本正常工作?
在德国网站上找到了执行此操作的指南Python Texterkennung: Bild zu Text mit PyTesseract in Windows
有两种方法。
1。为您的语言安装相应的 tesseract 包 -
apt-get install tesseract-ocr-YOUR_LANG_CODE
例如-在我的例子中是孟加拉语,所以我安装了-
apt-get install tesseract-ocr-ben
或安装所有语言 -
apt-get install tesseract-ocr-all
.
这对我有用 Ubuntu 环境。
2。错误消息本身中提到了另一种方法。添加指向语言包的环境变量 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
。
- 打开 https://github.com/tesseract-ocr/tessdata 并下载您的语言。例如,对于波斯语下载
fas.traineddata
.
- 将下载的文件复制到
tessreact_ocr
安装位置,如:C:\Program Files\Tesseract-OCR\tessdata
- 不要忘记使用
traineddata
语言名称。对于波斯语,我使用 lang='fas'
.
我已经在我的 venv 中安装了 pytesseract 模块,想从德语文件中提取文本
从 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 sidepackage 中的语言文件移动到哪里才能使脚本正常工作?
在德国网站上找到了执行此操作的指南Python Texterkennung: Bild zu Text mit PyTesseract in Windows
有两种方法。
1。为您的语言安装相应的 tesseract 包 -
apt-get install tesseract-ocr-YOUR_LANG_CODE
例如-在我的例子中是孟加拉语,所以我安装了-
apt-get install tesseract-ocr-ben
或安装所有语言 -
apt-get install tesseract-ocr-all
.
这对我有用 Ubuntu 环境。
2。错误消息本身中提到了另一种方法。添加指向语言包的环境变量 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
。 - 打开 https://github.com/tesseract-ocr/tessdata 并下载您的语言。例如,对于波斯语下载
fas.traineddata
. - 将下载的文件复制到
tessreact_ocr
安装位置,如:C:\Program Files\Tesseract-OCR\tessdata
- 不要忘记使用
traineddata
语言名称。对于波斯语,我使用lang='fas'
.