如何更改Tika传递给Tesseract OCR的语言参数



当前我正在使用tika-app-1.16.jar来ocr我的pdfs(与tesseract结合使用时):java -jar tika-app-1.16.jar/tmp/testing/input.pdf

但是,默认情况下它仅支持英语。我想找到一种通过其他语言的方法。

文档:

使用OCR解析器时Tika将使用以下默认设置:

  • Tesseract安装路径=""
  • 语言词典=; Eng;
  • 页面细分模式=&quord;
  • minmum文件尺寸= 0
  • 最大文件尺寸= 2147483647
  • 超时= 120

要更改这些设置,您可以在tika-parser/src/src/main/resources/org/apache/tika/parser/ocr中修改现有的tesseractrocconfig.properties文件,或者通过创建自己的并将其放置在您的类路径上的软件包org/apache/tika/parser/ocr。

值得注意的是,当使用Tika-App或Tika-Server Jars的可执行罐之一时,这样做会要求您在不使用-jar命令的情况下执行它们。例如,分别针对Tika-App或Tika-Server的以下内容:

java -cp/path/to/your/classpath:/path/to/tika-app-x.x.jar org.apache.tika.cli.tikacli

java -cp/path/to/your/classpath:/path/to/tika-server-1.7-snapshot.jar org.apache.tika.server.server.tikaservercli

对于Tika应用的用户,除了Sytem属性和环境变量之外,还可以使用-Config = [tika-config.xml]选项,以选择其他Tika config xml文件来使用

对于Tika服务器的用户,除了Sytem属性和环境变量外,您还可以使用-c [tika-config.xml]或-config [tika-config.xml]选项来选择其他不同tika config xml文件要使用

但是,我无法找到可以改变Tesseract OCR使用的语言的Tika-config.xml的工作示例。有任何示例可用吗?

我正在使用next" crutch" - 替换原始 tesseract 带有带有同名的bash脚本的文件,替换运行参数=)

我/usr/bin/tesseract文件:

#!/bin/sh
args=$@
args=${args/eng/rus} #replace eng => rus 
export TESSDATA_PREFIX=/usr/share/tesseract/
# tesseract_ori <-- original tesseract 
/usr/bin/tesseract_ori $args >> /tmp/tess.log 2>&1

最新更新