Tess4j不使用它的tessdata文件夹

我正在使用tess4j(Tesseract的Java包装器)。我也安装了普通的Tesseract。我不确定tess4j是如何工作的,但是由于它带有tessdata文件夹,因此我可以假设您会将语言数据文件放在那里。但是,仅当语言数据文件位于“真实的”

tessdata文件夹(与tesseract一起提供的文件夹,而不是tess4j)中时,tess4j才能工作。如果删除该文件夹,则会收到以下错误消息:

Error opening data file C:\Program Files\Tesseract-OCR\tessdata/jpn.trained

data

Please make sure the TESSDATA_PREFIX environment variable is set to the par

ent directory of your "tessdata" directory.

Failed loading language 'jpn'

Tesseract couldn't load any languages!

#

# A fatal error has been detected by the Java Runtime Environment:

#

# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x631259dc, pid=5108, tid=

10148

#

# JRE version: 7.0_06-b24

# Java VM: Java HotSpot(TM) Client VM (23.2-b09 mixed mode, sharing windows

-x86 )

# Problematic frame:

# C [libtesseract302.dll+0x59dc] STRING::strdup+0x467c

#

# Failed to write core dump. Minidumps are not enabled by default on client

versions of Windows

#

# An error report file with more information is saved as:

# D:\School\Programs\OCRTest\v1.0.0\hs_err_pid5108.log

#

# If you would like to submit a bug report, please visit:

# http://bugreport.sun.com/bugreport/crash.jsp

# The crash happened outside the Java Virtual Machine in native code.

# See problematic frame for where to report the bug.

#

这是否意味着我需要安装Tesseract才能使用tess4j?为什么?或者是maby,我的tess4j

tessdata文件夹放在错误的位置(当前与我的.java文件一起使用,tess4j jars位于我设置了类路径的lib文件夹中)。

回答:

让您TESSDATA_PREFIX environment variable指向Tess4j的tessdata文件夹。

通常,您是在系统上的安装过程中设置这些变量的,但您可能会在这里找到解决方案:如何通过Java设置环境变量?

您必须在运行您的应用程序的系统上执行此操作,因为tessdata .dll依赖于此环境变量。

以上是 Tess4j不使用它的tessdata文件夹 的全部内容, 来源链接: utcz.com/qa/418528.html

回到顶部