模糊处理

模糊原理

    目的:给图像预处理时降低噪声

    原理:卷积计算

    

    通常这些卷积计算为线性操作,故又称线性滤波。


    假设该图为6*6的图像像素点矩阵。

    卷积过程:移动3*3的黄色窗口,从左至右,从上向下移动。黄色的每个像的像素点值之和取平均值赋值给中心红色像素作为卷积处理之后的像素值,每次移动一个像素格。

均值模糊

CV_EXPORTS_W void blur( InputArray src, OutputArray dst,
                        Size ksize, Point anchor = Point(-1,-1),
                        int borderType = BORDER_DEFAULT );
blur(src, dst, Size(5, 5), Point(-1, -1));


高斯模糊

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

中值滤波

    中值滤波对椒盐噪声有很好的抑制作用。

    在3*3的矩阵中按从小到的顺序进行排序,取最中间的那个值赋值给中心位置。


CV_EXPORTS_W void medianBlur( InputArray src, OutputArray dst, int ksize );

双边滤波

    双边滤波是一种非线性滤波器,可以达到保持边缘、降噪平滑的效果。采用加权平均的方法。


CV_EXPORTS_W void bilateralFilter( InputArray src, OutputArray dst, int d,
                                   double sigmaColor, double sigmaSpace,
                                   int borderType = BORDER_DEFAULT );


猜你喜欢

转载自blog.csdn.net/qq_33408113/article/details/81035588
今日推荐