拉普拉斯OpenCV Android无法正常工作

时间:2015-05-16 09:37:06

标签: android opencv image-processing

我正在尝试在我的应用中使用拉普拉斯:

Bitmap result = source.copy(source.getConfig(), true);
Utils.bitmapToMat(source, in);
Imgproc.Laplacian(in, out, 3, 3, 1, 0);
Utils.matToBitmap(out, result);

但是我收到以下错误:

E/cv::error()﹕ OpenCV Error: Assertion failed (src.type() == CV_8UC1 || src.type() == CV_8UC3 || src.type() == CV_8UC4) in void Java_org_opencv_android_Utils_nMatToBitmap2(JNIEnv*, jclass, jlong, jobject, jboolean)

1 个答案:

答案 0 :(得分:1)

根据documentation Mat仅接受CV_8U CV_16S深度Imgproc.Laplacian。在您的示例中,您将输出深度指定为Imgproc.Laplacian(in, out, CvType.CV_8U, 3, 1, 0); Utils.matToBitmap(out, result); 。您应该为ContentProvider指定输出深度,如下所示:

ContentObserver

有关拉普拉斯语的信息,请参阅documentation