美文网首页
GaussianBlur(高斯滤波)

GaussianBlur(高斯滤波)

作者: itfitness | 来源:发表于2019-08-09 11:30 被阅读0次

    概念

    高斯滤波

    效果图对比

    ●源图像



    ●处理后图像


    函数讲解

    ●函数原型
    ○c++

    void GaussianBlur( InputArray src, OutputArray dst, Size ksize,
                                    double sigmaX, double sigmaY = 0,
                                    int borderType = BORDER_DEFAULT )
    

    ○Android

    void GaussianBlur(Mat src, Mat dst, Size ksize, double sigmaX, double sigmaY, int borderType)
    

    ●参数解释
    ○src:源图像Mat对象
    ○dst:目标图像Mat对象
    ○ksize:高斯核的大小如Size(3,3),宽和高都必须为正奇数,越大越模糊。
    ○sigmaX:高斯核在x方向的标准差。
    ○sigmaY :高斯核在y方向的标准差(sigmaY=0时,其值自动由sigmaX确定(sigmaY=sigmaX);sigmaY=sigmaX=0时,它们的值将由ksize.width和ksize.height自动确定)
    ○borderType :边缘的处理类型,默认即可。

    函数使用

    ●c++中

    #include<opencv2/opencv.hpp>
    using namespace cv;
    int main() {
        Mat src = imread("C:/Users/Administrator/Desktop/ic_test.jpg");//引入源图像
        if (src.empty()) {
            return -1;
        }
        imshow("src", src);//展示源图像
        Mat dst;
        GaussianBlur(src, dst, Size(7, 7), 0, 0);//高斯模糊
        imshow("dst", dst);//展示操作后的图像
        waitKey(0);
        return 0;
    }
    

    ●Android中

    Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_beauty);//获取源图像Bitmap对象
    Mat src = new Mat();
    Mat dst = new Mat();
    Utils.bitmapToMat(bitmap,src);//Bitmap转换为Mat对象
    Imgproc.GaussianBlur(src, dst, Size(7, 7), 0, 0);//高斯模糊
    Utils.matToBitmap(dst,bitmap);//Mat转换为Bitmap对象
    imageView.setImageBitmap(bitmap);
    

    相关文章

      网友评论

          本文标题:GaussianBlur(高斯滤波)

          本文链接:https://www.haomeiwen.com/subject/fvpcjctx.html