Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
TensorFlow+;AndroidScanner-Canned';“找不到”;libopencv_java3.so“;_Android_Opencv_Tensorflow_Java Native Interface - Fatal编程技术网

TensorFlow+;AndroidScanner-Canned';“找不到”;libopencv_java3.so“;

TensorFlow+;AndroidScanner-Canned';“找不到”;libopencv_java3.so“;,android,opencv,tensorflow,java-native-interface,Android,Opencv,Tensorflow,Java Native Interface,我在结合Tensorflow和AndroidScanner时遇到问题 我使用Tensorflow在摄影机提要上显示覆盖。我用相机拍了一张照片,然后把它发送到服务器。它起作用了 现在我导入了,我想用新导入的模块使用拍摄的照片并对其进行裁剪/变换。它崩溃了。当我打开ScanActivity(从AndroidScannerDemo)时,它尝试加载opencv,但从未成功。错误消息如下所示: FATAL EXCEPTION: main Process: fr.pacifica.insuranc

我在结合Tensorflow和AndroidScanner时遇到问题

我使用Tensorflow在摄影机提要上显示覆盖。我用相机拍了一张照片,然后把它发送到服务器。它起作用了

现在我导入了,我想用新导入的模块使用拍摄的照片并对其进行裁剪/变换。它崩溃了。当我打开ScanActivity(从AndroidScannerDemo)时,它尝试加载opencv,但从未成功。错误消息如下所示:

FATAL EXCEPTION: main Process: fr.pacifica.insurancechat.debug, PID: 2139 java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/fr.pacifica.insurancechat.debug-OI_d1EANbiczpZEwAHYdkw==/base.apk"],nativeLibraryDirectories=[/data/app/fr.pacifica.insurancechat.debug-OI_d1EANbiczpZEwAHYdkw==/lib/arm64, /data/app/fr.pacifica.insurancechat.debug-OI_d1EANbiczpZEwAHYdkw==/base.apk!/lib/arm64-v8a, /system/lib64, /system/vendor/lib64]]] couldn't find "libopencv_java3.so" at java.lang.Runtime.loadLibrary0(Runtime.java:1011) at java.lang.System.loadLibrary(System.java:1657) at com.scanlibrary.ScanActivity.(ScanActivity.java:125) at java.lang.Class.newInstance(Native Method) at android.app.Instrumentation.newActivity(Instrumentation.java:1190) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2837) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3046) at android.app.ActivityThread.-wrap11(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1688) at android.os.Handler.dispatchMessage(Handler.java:105) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6809) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767) 致命异常:主 进程:fr.pacifica.insurancechat.debug,PID:2139 java.lang.UnsatifiedLinkError:dalvik.system.PathClassLoader[DexPathList[[zip文件”/data/app/fr.pacifica.insurancechat.debug-OI_d1EANbiczpZEwAHYdkw===/base.apk],NativeLibrary目录=无法找到“libopencv_java3.so” 位于java.lang.Runtime.loadLibrary0(Runtime.java:1011) 位于java.lang.System.loadLibrary(System.java:1657) 在com.scanlibrary.ScanActivity.(ScanActivity.java:125) 位于java.lang.Class.newInstance(本机方法) 位于android.app.Instrumentation.newActivity(Instrumentation.java:1190) 在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2837)上 位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3046) 位于android.app.ActivityThread.-wrap11(未知来源:0) 在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1688)上 位于android.os.Handler.dispatchMessage(Handler.java:105) 位于android.os.Looper.loop(Looper.java:164) 位于android.app.ActivityThread.main(ActivityThread.java:6809) 位于java.lang.reflect.Method.invoke(本机方法) 在com.android.internal.os.Zygote$MethodAndArgsCaller.run上(Zygote.java:240) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
当我从gradle/code中删除TensorFlow引用时,导入的模块工作得很好。

您导入的项目只生成32位版本的libScanner.so,因此只使用32位版本的libopencv_java3.so。在短期内,您可以保留它,只设置它

android {
  defaultConfig {
    ndk {
      abiFilters 'armeabi-v7a'
    }
  }
}
这将导致您的APK在arm64设备上以32位模式运行

从长远来看,您也应该将扫描仪库更新为内置64位。这可能会显著提高性能


从2019年8月起,Play Store中的所有应用都需要64位支持

我在一些手机上遇到了同样的问题(64位处理器)

这是每个Arquit体系结构所需的LIB。您可以下载它并手动导入


效果非常好,我将在项目中添加一条说明,说明它存在性能问题(这是一个POC,目前不相关)。Thx!@nidhi很可能,您的问题与此不完全相同。请随意提出单独的问题并提供更多详细信息。