EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
如何用MATLAB来实现中值滤波
Q( J& z, D2 h; X
$ I% [# f( w, Y7 O# o$ o4 J在实时图像采集中,不可避免的会引入噪声,尤其是干扰噪声和椒盐噪声,噪声的存在严重影响边缘检测的效果,中值滤波是一种基于排序统计理论的非线性平滑计数,能有效平滑噪声,且能有效保护图像的边缘信息,所以被广泛用于数字图像处理的边缘提取,其基本原理是把数字图像或数字序列中的一点的值用该点邻域内所有的点排序后的中值来代替。 中值滤波对椒盐噪声有良好的滤除作用,特别是在滤除噪声的同时,能够保护信号的边缘,使之不被模糊。这些优良特性是线性滤波方法所不具有的。而且,中值滤波的算法比较简单,也易于用硬件实现。这篇我们先用MATLAB来实现中值滤波。 中值滤波方法是,对待处理的当前像素,选择一个模板3x3、5x5或其他,这里选择3x3矩阵,该模板为其邻近的若干个像素组成,对模板的像素由小到大进行排序,再用模板的中值来替代原像素的值的方法。 ![]()
排序算法示意图 $ Y- r+ O) b. l. b9 j# N
% b+ w2 D# k2 H& g/ Q, o
|