当前位置: 首页 > 面试题库 >

Tess4j不使用它的tessdata文件夹

澹台华采
2023-03-14
问题内容

我正在使用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。它不包括适用于Mac的.dylib文件,所以我已经构建了自己的泰瑟拉克特,并且正在使用泰瑟拉克特构建中的.dylib。我能够毫无问题地加载本机库,并且我相信正确链接了Tess4J库,因为我可以毫无问题地导入它。但是,当我尝试使用以下命令创建 Tesseract 的新实例时: 我得到以下错误: 我能想到的唯一可能的问题是,我的Mac Tesseract安装版本

  • 我正在尝试解决Tess4J安装问题, 1我在WEB-INF\win32-x86 2中创建了一个文件夹,并将libtesseract302.dll和liblept168.dll放在那里,然后将其添加到java构建路径中的源代码/本机库中。当我运行时发现错误 注意,我已经检查了我使用的是32 jvm 所以我肯定 问题 如何修复这个错误? 如果我在安装台4j中犯了错误,请告诉我如何修复?

  • 我有一本书。当我使用cmd命令运行jar文件时,该文件运行良好: java-cpmyjar.jarMain ClassName 现在我创造了。exe文件使用launch4j。但是当我双击exe文件时,它没有运行。它没有显示任何错误或输出。我在launch4j中没有使用“飞溅”选项。我应该用它来做这个。exe文件运行?请帮助我们如何运行。exe文件。我可以看到我的日志文件。exe文件,由launch

  • 我必须在数据库中存储的文档中搜索,这些文档中有图像,所以我使用tess4j来读取这些图像。在使用eclipse的windows中,项目可以与tess4j一起工作,如果我在windows7中的Tomcat6.35中部署应用程序,项目也可以工作,我可以正确地使用tess4j进行搜索。sous windows,1)我在tomcat lib/shared中添加了jar文件,2)tessdata和dll文件

  • 我有一个方法,它接受源地址、目标地址和,然后它通过giver source文件夹,用ArrayList项检查每个文件,如果它们有相同的名称,那么它就用完全相同的文件夹结构复制目标(因此它需要文件夹)。在这里之前一切都有效。但如果ArrayList的项是文件夹名,则会出现错误。有些怎么找不到那个文件夹,然后出现错误。 在我的另一个mathchine中,我得到了同样的错误,但它是而不是。 所以任何让它

  • 我使用tess4j api来读取数字图像。 代码如下: 程序将数字读取为错误。无法找到问题。 输出: 1 1 3 251 问候,瓦苏