3

OCR用のopencvとtesseractを使用して、Androidアプリを開発しています。guat.amの基本的な OCR のコードを少し使用しました。

Bitmap bmp = Bitmap.createBitmap(ima.cols(), ima.rows(), Bitmap.Config.ARGB_8888);
        Utils.matToBitmap(imagethre, bmp,true);

        TessBaseAPI baseApi = new TessBaseAPI();
        baseApi.setDebug(true);
        baseApi.init(DATA_PATH, lang);
        baseApi.setImage(bmp);
        String recognizedText = baseApi.getUTF8Text();

これはパスや言語などの問題ではありません。これは機能しますが、一部の画像では機能するが、他の画像では機能しない場合があるためです...

そのエラーをたどって何が起こっているのかを知るにはどうすればよいですか?

投稿したコードの最後の行でアプリがクラッシュする

デバッグ TessBaseApi.class、具体的には次の行を呼び出すと、アプリがクラッシュすることがわかりました。

String text = nativeGetUTF8Text();

何か案が?

4

1 に答える 1

0

まあ、私はそれを行う正確な方法を見つけることができませんでしたが、私が行った方法は、すべての行の後にログステートメントを印刷するだけで、時々失敗すると、ポイントまでログが印刷されます。そのため、ログが存在しない行がエラーの原因であったことをお知らせします。

于 2012-10-21T22:13:30.367 に答える