【问题标题】:How to follow fatal signal 11 (SIGSEGV)如何遵循致命信号 11 (SIGSEGV)
【发布时间】:2012-10-21 20:40:27
【问题描述】:

我正在开发一个带有用于 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();

有什么想法吗?

【问题讨论】:

  • 它是否始终适用于某些图像,但始终无法用于其他图像?如果是这样,您应该发布成功和失败案例的示例图片。

标签: android tesseract segmentation-fault


【解决方案1】:

好吧,我找不到确切的方法,但我所做的只是在每一行之后打印 Log 语句,如果有时失败,那么会一直记录到该点将被打印。因此,让您知道没有日志存在的那一行导致了错误。

【讨论】:

  • 谢谢,我没说,但我知道哪条线失败了,我现在就编辑我的问题……但我不想现在哪条线失败了(因为我知道.. :))我想知道为什么失败...
  • 所以你正在使用 ndk 从那里获取一些字符串 ryt??
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-05
  • 1970-01-01
相关资源
最近更新 更多