5

私は顔認識をコンパイルし、LG Leon (armv7I) で正常に実行されました。同様の CPU アーキテクチャ (armv7I) を持つMyPhone UNOにアプリをインストールすると、次のエラーが発生します。

06-03 22:09:41.538 30619-30619/org.opencv.javacv.facerecognition E/AndroidRuntime: FATAL EXCEPTION: main
Process: org.opencv.javacv.facerecognition, PID: 30619
java.lang.UnsatisfiedLinkError: dlopen failed: library "../../lib/libtbb.so" not found
    at java.lang.Runtime.loadLibrary(Runtime.java:372)
    at java.lang.System.loadLibrary(System.java:1076)
    at com.googlecode.javacpp.Loader.loadLibrary(Loader.java:593)
    at com.googlecode.javacpp.Loader.load(Loader.java:489)
    at com.googlecode.javacpp.Loader.load(Loader.java:431)
    at com.googlecode.javacv.cpp.opencv_core.<clinit>(opencv_core.java:136)
    at java.lang.Class.classForName(Native Method)
    at java.lang.Class.forName(Class.java:324)
    at com.googlecode.javacpp.Loader.load(Loader.java:453)
    at com.googlecode.javacv.cpp.opencv_imgproc.<clinit>(opencv_imgproc.java:97)
    at java.lang.Class.classForName(Native Method)
    at java.lang.Class.forName(Class.java:324)
    at com.googlecode.javacpp.Loader.load(Loader.java:453)
    at com.googlecode.javacv.cpp.opencv_highgui.<clinit>(opencv_highgui.java:85)
    at java.lang.Class.classForName(Native Method)
    at java.lang.Class.forName(Class.java:324)
    at com.googlecode.javacpp.Loader.load(Loader.java:453)
    at com.googlecode.javacv.cpp.opencv_calib3d.<clinit>(opencv_calib3d.java:94)
    at java.lang.Class.classForName(Native Method)
    at java.lang.Class.forName(Class.java:324)
    at com.googlecode.javacpp.Loader.load(Loader.java:453)
    at com.googlecode.javacv.cpp.opencv_contrib.<clinit>(opencv_contrib.java:104)
    at org.opencv.javacv.facerecognition.PersonRecognizer.<init>(PersonRecognizer.java:44)
    at org.opencv.javacv.facerecognition.FdActivity$1.onManagerConnected(FdActivity.java:109)
    at org.opencv.android.AsyncServiceHelper$3.onServiceConnected(AsyncServiceHelper.java:320)
    at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1223)
    at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1240)
    at android.os.Handler.handleCallback(Handler.java:739)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:148)
    at android.app.ActivityThread.main(ActivityThread.java:5417)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
 Caused by: java.lang.UnsatisfiedLinkError: dlopen failed: library "../../lib/libtbb.so" not found
    at java.lang.Runtime.loadLibrary(Runtime.java:372)
    at java.lang.System.loadLibrary(System.java:1076)
    at com.googlecode.javacpp.Loader.loadLibrary(Loader.java:593)
    at com.googlecode.javacpp.Loader.load(Loader.java:481)
    at com.googlecode.javacpp.Loader.load(Loader.java:431) 
    at com.googlecode.javacv.cpp.opencv_core.<clinit>(opencv_core.java:136) 
    at java.lang.Class.classForName(Native Method) 
    at java.lang.Class.forName(Class.java:324) 
    at com.googlecode.javacpp.Loader.load(Loader.java:453) 
    at com.googlecode.javacv.cpp.opencv_imgproc.<clinit>(opencv_imgproc.java:97) 
    at java.lang.Class.classForName(Native Method) 
    at java.lang.Class.forName(Class.java:324) 
    at com.googlecode.javacpp.Loader.load(Loader.java:453) 
    at com.googlecode.javacv.cpp.opencv_highgui.<clinit>(opencv_highgui.java:85) 
    at java.lang.Class.classForName(Native Method) 
    at java.lang.Class.forName(Class.java:324) 
    at com.googlecode.javacpp.Loader.load(Loader.java:453) 
    at com.googlecode.javacv.cpp.opencv_calib3d.<clinit>(opencv_calib3d.java:94) 
    at java.lang.Class.classForName(Native Method) 
    at java.lang.Class.forName(Class.java:324) 
    at com.googlecode.javacpp.Loader.load(Loader.java:453) 
    at com.googlecode.javacv.cpp.opencv_contrib.<clinit>(opencv_contrib.java:104) 
    at org.opencv.javacv.facerecognition.PersonRecognizer.<init>(PersonRecognizer.java:44) 
    at org.opencv.javacv.facerecognition.FdActivity$1.onManagerConnected(FdActivity.java:109) 
    at org.opencv.android.AsyncServiceHelper$3.onServiceConnected(AsyncServiceHelper.java:320) 
    at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1223) 
    at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1240) 
    at android.os.Handler.handleCallback(Handler.java:739) 
    at android.os.Handler.dispatchMessage(Handler.java:95) 
    at android.os.Looper.loop(Looper.java:148) 
    at android.app.ActivityThread.main(ActivityThread.java:5417) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

(Android Studioによって逆コンパイルされている)を調べたcom.googlecode.javacv.cpp.opencv_contribところ、linkpathの値はlinkpath = {"../lib/"}.

これは、エラーに関する問題のように思われる場合があります。

javacv.jar をコンパイルして、ここを微調整する方法はありますか?

この部分でエラーが発生するのは間違っているかもしれませんが、他にどこにあるのか分かりますか?

4

0 に答える 0