matlab中的移动平均滤波和中值滤波
1、首先介绍移动平均滤波,该滤波方法比较简单实用,我经常会用到,因为是一维滤波,所以命令的使用也非常简单。smooth命令。aa = sin(0:pi/100:pi);>> bb = randn(101,1);>> aa = aa'>> cc = aa+bb/10;我们先新建一个一维数组,然后人为的加入一些噪声。


4、下面介绍中值滤波,medfilt1:举例来说,输入:Y[1-10]:1,2,3,4,5,6,7,8,9,10. 取区间2k = 4,所以k=2;执行中值滤波 K=中值滤波(Y)由x-k+1>=1,所以当k=2时,x>=2滤波时:K[1]=Y[1]K[2]=(Y[1]、Y[2]、Y[3]、Y[4])的中间值,即为2或3
5、还是举例介绍吧,同皱诣愚继样是上面的cc,aa为原始数据。xx = medfilt1(cc);yy = medfilt1(cc,20);plot(cc);hold on;plot(xx像粜杵泳);hold on;plot(yy);legend('噪声数据','默认中值滤波','20阶中值滤波')滤波秩序(n,这里是20):Example:Ifn=11, theny(k)is the median ofx(k-5:k+5).Example:Ifn=12, theny(k)is the median ofx(k-6:k+5).

8、可以看到二者区别不大,如果数据不是太复杂的话,二者都可以用。