0

一般来说,我对 tesseract 和 OCR 是全新的。我正在开发一个 android 应用程序只是为了进行实验。

我正在阅读可以通过设置引擎模式来提高准确性:

/** Run Tesseract only - fastest */
    public static final int OEM_TESSERACT_ONLY = 0;

    /** Run Cube only - better accuracy, but slower */
    public static final int OEM_CUBE_ONLY = 1;

    /** Run both and combine results - best accuracy */
    public static final int OEM_TESSERACT_CUBE_COMBINED = 2;

    /** Default OCR engine mode. */
    public static final int OEM_DEFAULT = 3;

所以在我的代码中启动它是这样的:

 TessBaseAPI baseApi = new TessBaseAPI();
    baseApi.setDebug(true);
    baseApi.init(DATA_PATH, lang, enginMode);
    Log.v("NUMBER LINES","*************************************************** "+baseApi.getWords());
    baseApi.setImage(bitmap);
   // baseApi.setPageSegMode(baseApi.OEM_TESSERACT_CUBE_COMBINED);
    String recognizedText = baseApi.getUTF8Text();

    baseApi.end();

但如果我设置engineMode为除OEM_TESSERACT_ONLY我的应用程序崩溃之外的任何内容并给出以下错误:

Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1);

也有人知道如何通过行或单词来重申结果吗?

4

0 回答 0