我将 Tesseract 用于 OCR 目的,并且我在“ fin.user-words ”中添加了一些额外的单词(我想避免创建一个新的单词列表并用它替换tessdata/fin.word-dawg)。现在,我在命令提示符下成功了:
>tesseract image.png result -l fin TestConfig
其中 TestConfig (位于.../tessdata/configs下的 Tesseract 配置文件)抑制系统字典并强制 Tesseract 加载我的话:
load_system_dawg F
load_freq_dawg F
user_words_suffix user-words
我正在尝试在 Java 中复制上述命令行过程,但似乎 Tesseract 忽略了配置选项。这是我正在使用的 Java 代码的一部分:
public static TestTesseract(BufferedImage image) {
Tesseract instance = Tesseract.getInstance();
instance.setLanguage("fin");
instance.setTessVariable("load_system_dawg", "F");
instance.setTessVariable("load_freq_dawg", "F");
instance.setTessVariable("user_words_suffix", "user-words");
try {
String result = instance.doOCR(image);
System.out.println(result);
} catch (TesseractException e) {
System.err.println(e.getMessage());
}
}
以下是我能找到的最接近我的问题;但是,我找不到setConfigs方法:
instance.setConfigs(Arrays.asList("bazaar");