【问题标题】:Tensorflow Lite Custom Object detection Model Error in Android appAndroid应用程序中的Tensorflow Lite自定义对象检测模型错误
【发布时间】:2021-03-01 17:40:40
【问题描述】:

您能帮忙解决这个错误吗?

我正在根据文档在 Android 应用程序中使用 TensorFlow Lite 测试自定义对象检测模型,但是当库尝试识别图像时出现错误。

我正在使用 Tensorflow lite 示例应用程序: https://github.com/tensorflow/examples/tree/master/lite/examples/object_detection/android

使用任务库: https://www.tensorflow.org/lite/inference_with_metadata/task_library/object_detector

依赖版本 implementation 'org.tensorflow:tensorflow-lite-task-vision:0.1.0'

执行此方法时,出现此错误:

方法 List<Detection> results = objectDetector.detect(TensorImage.fromBitmap(bitmap));

错误

Abort message: 'JNI DETECTED ERROR IN APPLICATION: JNI NewStringUTF called with pending exception java.lang.NoSuchMethodError: no static method Lorg/tensorflow/lite/support/label/Category;.create(Ljava/lang/String;Ljava/lang/String;F)Lorg/tensorflow/lite/support/label/Category;"
        at java.util.List org.tensorflow.lite.task.vision.detector.ObjectDetector.detectNative(long, java.nio.ByteBuffer, int, int, int) (ObjectDetector.java:-2)
        at java.util.List org.tensorflow.lite.task.vision.detector.ObjectDetector.detect(org.tensorflow.lite.support.image.TensorImage, org.tensorflow.lite.task.core.vision.ImageProcessingOptions) (ObjectDetector.java:312)
        at java.util.List org.tensorflow.lite.task.vision.detector.ObjectDetector.detect(org.tensorflow.lite.support.image.TensorImage) (ObjectDetector.java:292)
        at java.util.List org.tensorflow.lite.examples.detection.tflite.TFLiteObjectDetectionAPIModel.recognizeImage(android.graphics.Bitmap) (TFLiteObjectDetectionAPIModel.java:87)
        at void org.tensorflow.lite.examples.detection.DetectorActivity$2.run() (DetectorActivity.java:187)
        at void android.os.Handler.handleCallback(android.os.Message) (Handler.java:938)
        at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:99)
        at void android.os.Looper.loop() (Looper.java:223)
        at void android.os.HandlerThread.run() (HandlerThread.java:67)
    
        in call to NewStringUTF
        from java.util.List org.tensorflow.lite.task.vision.detector.ObjectDetector.detectNative(long, java.nio.ByteBuffer, int, int, int)'```

【问题讨论】:

    标签: java android tensorflow tensorflow-lite object-detection-api


    【解决方案1】:

    此问题已在 2021 年 1 月修复,不包含在 0.1.0 中。请尝试 Jcenter(不是 Maven)的夜间版本,看看它是否有效。

    org.tensorflow:tensorflow-lite-task-vision:0.0.0-nightly-SNAPSHOT
    

    我们很快就会在四月发布一个新的稳定版本。请继续关注!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-29
      • 1970-01-01
      • 2021-05-22
      • 1970-01-01
      • 2018-12-01
      • 2019-11-12
      • 2021-06-14
      相关资源
      最近更新 更多