C语言数字图像处理---2.3图像空域滤波

        本文主要给大家讲解图像空间域滤波的相关内容,包括空域滤波概念,以及常用的空域滤波算法,并通过C语言编程来实现几种常用空域滤波(均值滤波、中值滤波、最大值滤波、最小值滤波、高斯滤波和统计滤波),帮助初学者深入理解和学习空域滤波知识,为将来更高级复杂的滤波算法打好基础。

        传统的图像滤波常用频率域滤波和空间域滤波两种方式(时域滤波这里暂时不讨论),所谓频域滤波是只通过对图像进行傅里叶变换,变换到频率和幅度坐标系内进行信号的滤波处理;所谓的空间域滤波就是指在图像平面坐标系内对图像信号进行滤波处理。本文以空间域滤波为主,简称空域滤波。

[定义与算法]

        图像滤波也叫图像平滑,即抑制上一小节我们所说的图像噪声或干扰部分(高频部分),突出图像的主体部分(低频部分),进而改善图像质量。由于噪声的类型多种多样,因而,人们研究了各种不同的滤波器,来滤波降噪。下面我们将以一些常用的和基础的图像空域滤波算法为例,给大家详细讲解,在讲解之前,我们先要明白,空域滤波大多数是以当前像素的邻域信息为基础,考虑邻域内其他像素内容来对当前像素进行处理的,因为图像信息表现在像素值上也是有一定关联性的。

        1.均值滤波

        均值滤波是一种线性的空域滤波器,在去除噪声的同时,也会引起图像的模糊。它的计算很简单,如图Fig.1所示。

        假设一幅M×N大小的图像,当前图像像素为P(i,j),以Radius为半径,像素P的邻域S为(2Radius+1)×(2Radius+1)大小的正方形区域,如图Fig.1中的黄色区域所示。计算黄色区域内包含的所有像素对应像素

猜你喜欢

转载自blog.csdn.net/Trent1985/article/details/104599040