0

我正在开发基于 OCR 的Android应用程序。我正在使用 Tesseract 库。我的应用程序在索尼爱立信 Xperia Arc S设备上运行良好。但是,相同的应用程序在我的Samsung Galaxy Tab 8.9上崩溃了。我不确定为什么会这样。以下是代码片段:

TessBaseAPI baseApi = new TessBaseAPI();

baseApi.init(Environment.getExternalStorageDirectory().toString() + "/tesseract/", "eng",TessBaseAPI.OEM_DEFAULT); 
baseApi.setImage(bitmap);

String recognizedText=baseApi.getUTF8Text();    //App Crashes here

如何解决?

不幸的是,logCat 没有报告任何错误。

以下是我在 logCat 中看到的输出:

02-12 09:57:20.720: I/Tesseract(native)(5577): Initialized Tesseract API with language=eng
02-12 09:57:20.720: D/dalvikvm(5577): Trying to load lib /data/data/com.project.meter_reader/lib/liblept.so 0x4074d618
02-12 09:57:20.720: D/dalvikvm(5577): Shared lib '/data/data/com.project.meter_reader/lib/liblept.so' already loaded in same CL 0x4074d618
02-12 09:57:21.030: D/dalvikvm(5577): Trying to load lib /data/data/com.project.meter_reader/lib/liblept.so 0x4074d618
02-12 09:57:21.030: D/dalvikvm(5577): Shared lib '/data/data/com.project.meter_reader/lib/liblept.so' already loaded in same CL 0x4074d618
02-12 09:57:24.160: I/dalvikvm(5577): threadid=4: reacting to signal 3
02-12 09:57:24.160: I/dalvikvm(5577): Wrote stack traces to '/data/anr/traces.txt'

baseApi.getUTF8Text()应用程序显示一个空白屏幕并停止响应时,调试器就会分离。

4

1 回答 1

1

我在本机库中使用 Tesseract 3.0.19 时遇到了类似的问题。将 tess-data 更新到 3.02 版对我有帮助。

于 2013-09-27T12:32:52.353 回答