猿问

如何对openCV中的图片应用gussian模糊?

我是一个完整的初学者,openCV所以如果我的问题很愚蠢,请原谅。基本上我正在尝试gussianBlur在 openCv 中申请,但它显示了一个奇怪的错误,我不明白为什么?


代码:


Mat tmp = new Mat (bitmap.getWidth(), bitmap.getHeight(), CvType.CV_8UC4);

Utils.bitmapToMat(bitmap, tmp);

//Imgproc.cvtColor(tmp, tmp, Imgproc.COLOR_RGB2HSV_FULL);

Imgproc.GaussianBlur(tmp,tmp,new org.opencv.core.Size(2,2),0,0);

Utils.matToBitmap(tmp,bitmap);

imgView.setImageBitmap(null);

imgView.setImageBitmap(bitmap);

错误:


CvException [org.opencv.core.CvException: cv::Exception: /hdd2/buildbot/slaves/slave_ardbeg1/50-SDK/opencv/modules/imgproc/src/smooth.cpp:816: error: (-215) ksize.width > 0 && ksize.width % 2 == 1 && ksize.height > 0 && ksize.height % 2 == 1 in function cv::Ptr<cv::FilterEngine> cv::createGaussianFilter(int, cv::Size, double, double, int)]

    at org.opencv.imgproc.Imgproc.GaussianBlur_1(Native Method)

    at org.opencv.imgproc.Imgproc.GaussianBlur(Imgproc.java:533)

    at opengl.community.myopencvexample.MainActivity$3.onClick(MainActivity.java:82)

    at android.view.View.performClick(View.java:4478)

    at android.view.View$PerformClick.run(View.java:18698)

    at android.os.Handler.handleCallback(Handler.java:733)

    at android.os.Handler.dispatchMessage(Handler.java:95)

    at android.os.Looper.loop(Looper.java:149)

    at android.app.ActivityThread.main(ActivityThread.java:5257)

    at java.lang.reflect.Method.invokeNative(Native Method)

    at java.lang.reflect.Method.invoke(Method.java:515)

    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)

    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:609)

    at dalvik.system.NativeStart.main(Native Method)


神不在的星期二
浏览 116回答 1
1回答
随时随地看视频慕课网APP

相关分类

Java
我要回答