1

我将 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

参考:http ://tesseract-ocr.googlecode.com/svn/trunk/doc/tesseract.1.html#_config_files_and_augmenting_with_user_data

我正在尝试在 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");

强制 Tesseract 匹配模式(连续四位数字)

4

1 回答 1

0

setConfig方法是自 Tess4J v1.4 以来的新方法(请参阅doc)。

instance.setConfigs(Arrays.asList("TestConfig");
于 2015-01-28T13:30:31.077 回答