机器视觉之中值滤波
基本概念
灰度图
核
什么是中值滤波
中值也称中位数,即数据按升序或者降序排列,若这组数据的个数为偶数时,中位数为中间两个数的平均数;如果为奇数,那么中位数为中间数的值。中值滤波就是采用这种方式,重新映射出新的灰度值。
假设我们拍摄纯黑色物体,理想状态下得到的图片每个灰度值都相等,但因为各种原因,总会存在个别像素点波动较大(通常称为椒盐噪音),如原图显示。一张分辨率为12x8的图像。我们用(x,y)表示像素坐标,f(x,y)表示原图灰度值。用一个3x3的核进行中值滤波后的图记为g(x,y)。
有图可知,f(3,5)=255,以该点为例,进行核大小为3x3的中值滤波:
1、首先,获取核内各个像素值:{100,0,0,0,255,0,0,0,0};
2、从小到大进行排序:{0,0,0,0,0,0,0,100,255};
3、中位数为0,故g(x,y)=0。
综上,像素坐标(3,5)经过3x3中值滤波后,灰度值由255变为0,即:
f(3,5)=255 --中值滤波–> g(x,y)=0
下图为变化后的图像:
如上图,原图经过3x3滤波后,已经过滤掉大部分的零散点,图像相对之前均匀了很多,但还有(9,4)处的杂点没有滤掉,此时,我们可以用更大的核,比如5x5的核,就可以把(9,4)处滤掉。