我从OpenCV样本编译了教程2 - 混合处理演示。我对它进行了以下更改,以便在没有OpenCV包管理器的情况下工作。
添加了一个静态部分来初始化OpenCV:
static {
if (!OpenCVLoader.initDebug()) {
// Handle initialization error
Log.i(TAG, "OpenCVLoader Failed");
} else {
Log.i(TAG, "OpenCVLoader Succeeded");
System.loadLibrary("mixed_process");
}
}
删除了mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
@Override
public void onResume()
{
super.onResume();
}
运行应用时出现此错误:
错误:
08-19 13:21:35.455: E/AndroidRuntime(2388): java.lang.UnsatisfiedLinkError: No implementation found for long org.opencv.core.Mat.n_Mat(int, int, int) (tried Java_org_opencv_core_Mat_n_1Mat and Java_org_opencv_core_Mat_n_1Mat__III)
如何解决此错误?
答案 0 :(得分:1)
我想出了自己,问题是我没有在我的应用程序中加载libopencv_java3.so。我修好后工作正常。
static {
if (!OpenCVLoader.initDebug()) {
// Handle initialization error
Log.i(TAG, "OpenCVLoader Failed");
} else {
Log.i(TAG, "OpenCVLoader Succeeded");
System.loadLibrary("CameraVision");
System.loadLibrary("opencv_java3");
}
}