Opencv4Android 不满意的链接器错误时刻
Opencv4Android Unsatisfied Linker Error Moments
当我尝试 运行 我的 android 应用程序时出现以下错误:
java.lang.UnsatisfiedLinkError:未找到 double[] org.opencv.imgproc.Imgproc.moments_1(long) 的实现(已尝试 Java_org_opencv_imgproc_Imgproc_moments_11 和 Java_org_opencv_imgproc_Imgproc_moments_11__J)
这是出现问题的代码:
Imgproc.findContours(temp, contours, hierarchy, Imgproc.RETR_EXTERNAL, Imgproc.CHAIN_APPROX_SIMPLE);
if(contours.size() > 0) {
int numObjects = contours.size();
if (numObjects < MAX_OBJECTS) {
for (int i = 0; i < contours.size(); i++) {
//moments causing unsatisfied linker error
Moments moment = Imgproc.moments((Mat)contours.get(i));
double area = moment.m00;
}
}
}
谁能帮我解决这个问题?提前致谢!
这似乎是 OpenCV 3.0 和 3.1 的某些本机库的遗漏错误。在修复之前,建议的解决方法是使用 java 代码来计算力矩。参见 this thread。
当我尝试 运行 我的 android 应用程序时出现以下错误:
java.lang.UnsatisfiedLinkError:未找到 double[] org.opencv.imgproc.Imgproc.moments_1(long) 的实现(已尝试 Java_org_opencv_imgproc_Imgproc_moments_11 和 Java_org_opencv_imgproc_Imgproc_moments_11__J)
这是出现问题的代码:
Imgproc.findContours(temp, contours, hierarchy, Imgproc.RETR_EXTERNAL, Imgproc.CHAIN_APPROX_SIMPLE);
if(contours.size() > 0) {
int numObjects = contours.size();
if (numObjects < MAX_OBJECTS) {
for (int i = 0; i < contours.size(); i++) {
//moments causing unsatisfied linker error
Moments moment = Imgproc.moments((Mat)contours.get(i));
double area = moment.m00;
}
}
}
谁能帮我解决这个问题?提前致谢!
这似乎是 OpenCV 3.0 和 3.1 的某些本机库的遗漏错误。在修复之前,建议的解决方法是使用 java 代码来计算力矩。参见 this thread。