【问题标题】:Unable to deploy ssd mobilenet v1 fpn on android无法在 android 上部署 ssd mobilenet v1 fpn
【发布时间】:2020-01-30 04:50:20
【问题描述】:

我正在使用默认的 ssd mobilenet v1 fpn 模型进行对象检测。它在我的笔记本电脑上运行得非常好,但是当我尝试在 android 上部署 tflite 文件时,它给了我错误:

拒绝重新初始化以前失败的类 java.lang.Class: java.lang.NoClassDefFoundError: 解析失败: Landroid/view/View$OnUnhandledKeyEventListener; 在 void androidx.core.view.ViewCompat.setOnApplyWindowInsetsListener(android.view.View, androidx.core.view.OnApplyWindowInsetsListener) (ViewCompat.java:2203) 在 android.view.ViewGroup androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:637) 在 void androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:518) 在 void androidx.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:466) 在 void androidx.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:140) 在无效 org.tensorflow.lite.examples.detection.CameraActivity.onCreate(android.os.Bundle) (CameraActivity.java:95) 在 void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:6984) 在 void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1235) 在 android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2783) 在 void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:2909) 在 void android.app.ActivityThread.-wrap11(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:-1) 在 void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1606) 在 void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:105) 在 void android.os.Looper.loop() (Looper.java:164) 在 void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6592) 在 java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2) 在 void com.android.internal.os.Zygote$MethodAndArgsCaller.run() (Zygote.java:240) 在 void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:769) 原因:java.lang.ClassNotFoundException:在路径上找不到类“android.view.View$OnUnhandledKeyEventListener”:DexPathList [[zip 文件“/data/app/org.tensorflow.lite.examples.detection-4snPFSE9sc16tBhI7Elm9g== /base.apk"],nativeLibraryDirectories=[/data/app/org.tensorflow.lite.examples.detection-4snPFSE9sc16tBhI7Elm9g==/lib/arm, /system/fake-libs, /data/app/org.tensorflow.lite .examples.detection-4snPFSE9sc16tBhI7Elm9g==/base.apk!/lib/armeabi-v7a, /system/lib, /system/vendor/lib]] 在 java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:93) 在 java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379) 在 java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312) 在 void androidx.core.view.ViewCompat.setOnApplyWindowInsetsListener(android.view.View, androidx.core.view.OnApplyWindowInsetsListener) (ViewCompat.java:2203) 在 android.view.ViewGroup androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:637) 在 void androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:518) 在 void androidx.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:466) 在 void androidx.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:140) 在无效 org.tensorflow.lite.examples.detection.CameraActivity.onCreate(android.os.Bundle) (CameraActivity.java:95) 在 void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:6984) 在 void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1235) 在 android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2783) 在 void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:2909) 在 void android.app.ActivityThread.-wrap11(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:-1) 在 void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1606) 在 void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:105) 在 void android.os.Looper.loop() (Looper.java:164) 在 void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6592) 在 java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2) 在 void com.android.internal.os.Zygote$MethodAndArgsCaller.run() (Zygote.java:240) 在 void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:769)

A/libc:致命信号 6 (SIGABRT),tid 25346 中的代码 -6(推理)

但是当我使用 ssd mobilenet v1 时,应用程序运行得非常好

谁能指导我怎么做?任何帮助都会很棒

【问题讨论】:

  • 如果您能稍微描述一下您的问题并发布错误日志,将会很有帮助。

标签: android tensorflow


【解决方案1】:

在 android 上部署 ssd mobilenet v1 fpn 存在一些问题。

请参考 TF API 中的未解决问题 (https://github.com/tensorflow/models/issues/5298)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-12-18
    • 2020-03-26
    • 2020-02-23
    • 1970-01-01
    • 1970-01-01
    • 2018-09-22
    • 2018-11-07
    • 1970-01-01
    相关资源
    最近更新 更多