tess4j версия 4.0.0-SNAPSHOT. Неверный доступ к памяти, когда я установил oem на 2 или 3.

TESSDATA_PREFIX устанавливается в родительскую папку папки tessdata командной строки tesseract 4.0.0 (C:\Program Files (x86)\Tesseract-OCR). Тессеракт командной строки выдает разумный результат во всех четырех режимах механизма распознавания.

Вот мой код:

package tessTest;

import java.util.ArrayList;
import java.util.List;

import net.sourceforge.tess4j.*;
import net.sourceforge.tess4j.ITesseract.RenderedFormat;

public class MainClass {
    public static void main(String[] argv) {


        ITesseract instance = new Tesseract1();  
         List<RenderedFormat> formats = new ArrayList<RenderedFormat>();
         formats.add(RenderedFormat.PDF);

        try {
            instance.setPageSegMode(1);
            instance.setOcrEngineMode(2);
            instance.setTessVariable("textonly_pdf", "1");
            instance.createDocuments("D:\\Documents\\Malverne.jpeg",
                                     "D:\\Documents\\testOCR", formats);
        } catch (TesseractException e) {
            System.err.println(e.getMessage());
        }   
    }

}

С помощью setOcrEngineMode(1) или setOcrEngineMode(0) он создает PDF, как и ожидалось. С setOcrEngineMode(2) и setOcrEngineMode(3) это приводит к следующей ошибке:

Exception in thread "main" java.lang.Error: Invalid memory access
    at net.sourceforge.tess4j.TessAPI1.TessBaseAPIProcessPages(Native Method)
    at net.sourceforge.tess4j.Tesseract1.createDocuments(Tesseract1.java:542)
    at net.sourceforge.tess4j.Tesseract1.createDocuments(Tesseract1.java:517)
    at net.sourceforge.tess4j.Tesseract1.createDocuments(Tesseract1.java:484)
    at tessTest.MainClass.main(MainClass.java:21)
Detected 358 diacritics
contains_unichar_id(unichar_id):Error:Assert failed:in file 
c:\projects\github\tesseract-ocr\ccutil\unicharset.h, line 513

Кажется, это проблема с этим конкретным образом, так как на других изображениях OEM 2 отлично работает с tess4j 4.0.0. Я знаю, что предварительная обработка изображения, вероятно, поможет, но я работаю над проектом, в котором пользователи должны будут регулярно распознавать многие тысячи изображений, только некоторые из которых похожи на эту, так что предварительная обработка выполняется специально для каждого конкретного случая. Кейс-база недопустима.

Это изображение, о котором идет речь: http://malvernetheatre.org/wp-content/uploads/2012/07/Malverne-Community-Theatre-Newspaper-Reviews-14-page-0.jpg

Любая помощь будет принята с благодарностью. Спасибо заранее.

0 ответов

Другие вопросы по тегам