图像增强之普通平滑、高斯平滑、laplacian、sobelprewitt锐化

       图像平滑是一种区域增强的算法,平滑算法有邻域平均法、中值滤波、边界保持滤波等。在图像产生、传输和复制的过程中,常常会因为多方面的原因而被噪声干扰或出现数据丢失,降低了图像的质量(如果某一像素和它周围的像素点相比有明显的不同,则该像素点被噪声感染)。这就需要对图像进行一定的增强处理以减少这些缺陷带来的影响。

1、简单平滑-邻域平均法

       图像简单平滑是指通过邻域简单平均对图像进行平滑处理的方法,用这种方法在一定程度上消除原始图像中的噪声、降低原始图像对比度的作用。 它利用卷积运算对图像邻域的像素灰度进行平均,从而达到减小图像中噪声的影响、降低图像对比度的目的。

       在图像简单平滑中,算法利用卷积模板逐一处理图像中每个像素,这一过程可以形象地比作对原始图像的像素一一进行过滤整理,在图像处理中把邻域像素逐一处理的算法过程称为滤波器。平滑线性滤波器的工作原理是利用模板对邻域内像素灰度进行加权平均,也称为均值滤波器。

       但邻域平均值主要缺点是在降低噪声的同时使图像变得模糊,特别在边缘和细节处,而且邻域越大,在去噪能力增强的同时模糊程度越严重。

                                         

2、高斯平滑

       为了克服简单局部平均法的弊端(图像模糊),目前已提出许多保持边缘、细节的局部平滑算法。它们的出发点都集中在如何选择邻域的大小、形状和方向、参数及邻域各点的权重系数等。

       高斯平滑也是邻域平均的思想对图像进行平滑的一种方法,高斯平滑与简单平滑不同,在高斯平滑中,不同位置的像素被赋予了不同的权重。下图的所示的3*3和5*5领域的高斯模板。

                                                   

模板越靠近邻域中心位置,其权值越高。在图像细节进行模糊时,可以更多的保留图像总体的灰度分布特征。下图是常用的四个模板:

                                       

3、中值滤波

       在使用邻域平均法去噪的同时也使得边界变得模糊。而中值滤波是非线性的图像处理方法,在去噪的同时可以兼顾到边界信息的保留。

       选一个含有奇数点的窗口W,将这个窗口在图像上扫描,把窗口中所含的像素点按灰度级的升或降序排列,取位于中间的灰度值来代替该点的灰度值。

                                  

       例如选择滤波的窗口如下图,是一个一维窗口,待处理像素的灰度取这个模板中灰度的中值,滤波过程如下:

                                 

常用的窗口还有方形、十字形、圆形和环形。不同形状的窗口产生不同的滤波效果,方形和圆形窗口适合外轮廓线较长的物体图像,而十字形窗口对有尖顶角状的图像效果好。

       中值滤波对于消除孤立点和线段的干扰十分有用,尤其是对于二进噪声,但对消除高斯噪声的影响效果不佳。对于一些细节较多的复杂图像,可以多次使用不同的中值滤波。

4、边界保持类滤波

       K近邻均值滤波器(KNNF)是指在m*m的窗口中,属于同一集合类的像素,它们的灰度值将高度相关。被处理的像素(对应于窗口中心的像素)可以用窗口内与中心像素灰度最接近的k个近邻像素的平均灰度来替代。步骤如下:
        (1).作一个m*m的作用模板
        (2).在其中选择K个与待处理像素的灰度差为最小的像素
        (3).用这K个像素的灰度均值替换掉原来的值
                         

       在K近旁均值滤波器(KNNMF)中,不选K个邻近像素的平均灰度来替代,而选K个邻近像素的中值灰度来替代,上图中2,3,3中选择3即可。
        下面介绍具体MFC VC++6.0代码实现过程。

猜你喜欢

转载自www.cnblogs.com/GaloisY/p/11087598.html