【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
中值滤波和均值滤波的区别,有点像中位数收入和平均收入的区别。比如有三个人,年收入分别是10万、1万和1千,那么他们的平均收入就是(10+1+0.1)/3,平均数是3.3万左右,但是中位数收入其实就是1万。通过这个例子可以看的很明显,如果贫富差距过大,平均收入会把高收入和低收入做均值计算,这样出来的数据的确很漂亮,但是却不符合事实。而如果采用中位数收入1万,则可以相对比较准确地获得真实数据。中值滤波就是这个道理。
前面均值滤波,只是把噪声点均摊到像素点当中,本身没有去除噪声点。而中值滤波,对于孤立点的去除,却往往有比较好的效果。我们以5*5的矩阵为例,处理后的结果应该是这样的,
1、和均值滤波作比较
学习中值滤波,一个比较讨巧的方法,就是和均值滤波对比着学,这样不光记得清楚,也相当于一次掌握了两种滤波方法。还是以3*3矩阵为例,在过滤了第一行、最后一行、第一列、最后一列之后,就可以开始处理数据了。假设数据来自于坐标[1,1],那么首先把[1,1]周围的8个数据,连同[1,1]处的数据构建一个array。对这个array排序之后,将第4个数据赋值给[1,1],这样基本上就完成了中值滤波的操作流程。