5.均值滤波

一、均值滤波概念

     1 邻域

   5.均值滤波

 

 

    2.卷积

        如上图所示,是通过对目标像素的邻域进行加权得到新的目标像素的值,其中这个加权矩阵我们叫做邻域算子(局部算子)。

   5.均值滤波

      其中g(x, y)就是我们滤波后希望得到的函数,h(x, y)就是邻域算子,f(x, y)就是原图。那么有公式可以表示:

5.均值滤波

 

    3 均值滤波原理

 

 

     均值滤波其实就是对目标像素及周边像素取平均值后再填会目标像素来实现滤波目的的方法。

5.均值滤波

 

Mat blur(Mat& img)
{
    if (img.data)
    {
        int height = img.rows;
        int width = img.cols;
        int channel = img.channels();

        Mat out = Mat::zeros(height, width, img.type());
        int count = 0;
        int sum = 0;
        int pad = floor((double)kernel_size / 2);
        for (int y = 0; y < height; y++)
        {
            for (int x = 0; x < width; x++)
            {
                for (int c = 0; c < channel; c++)
                {
                    sum = 0;
                    for (int dy = -pad; dy < pad + 1; dy++)
                    {
                        for (int dx = -pad; dx < pad + 1; dx++)
                        {
                            if ((y - pad > 0) && (x - pad) > 0 && (y + pad) < height && (x + pad) < width)
                                sum += (int)img.at<Vec3b>(y+dy, x+dx)[c];
                        }
                    }
                    sum /= (kernel_size*kernel_size);
                    out.at<Vec3b>(y, x)[c] = (uchar)sum;
                }
            }
        }
        return out;
    }
}

 

      

 

原文链接: https://www.cnblogs.com/xingyuanzier/p/13274322.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    5.均值滤波

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/364226

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 下午3:27
下一篇 2023年3月2日 下午3:27

相关推荐