滑动平均系统的去噪处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信号与系统实验大作业
滑动平均系统的去噪处理
题目:
(1) 画出(k=1:50)原始信号f[k]波形图,噪声干扰信号d[k]及加噪后的信号
时域图。(其中,d[k]可以下列语句产生:d=2*(rand(1,R)-0.5)
(2) 画出去噪后y[k] (k=1:50)的信号时域图
(3) 讨论M=2时,去噪效果如何?
内容:
设输入信号为受噪声干扰的信号为f[k]=s[k]+d[k],其中)400/sin(**2][πk k k s =是原始信号,d[k]是噪声。已知M 点滑动平均系统的输入输出关系为:
101[][]M n y k f k n M -==-∑
试利用MATLAB 编程实现(k=1:50)用M =5点滑动平均系统对受噪声干扰的信号去噪。
程序:
% program 8_3 Signal smoothing by moving average filter
R=51;% length of input signal
% generate (-0.5,0.5)uniformly distributed random number
d=rand(1,R)-0.5;
k=0:R-1;
s=2*k.*sin(k.*pi./400);
f=s+d;
figure(1); plot(k,d, 'r-.',k,s, 'b: ',k,f, 'k-');
xlabel('Time index k');legend('d[k]', 's[k] ', 'f[k] ');
M=5;b=ones(M,1)/M;a=1;
y=filter(b,a,f);
figure(2);plot( k,s, 'b:',k,y,'r-');
xlabel( 'Time index k');legend('s[k] ', 'y[k]');
M=2;b=ones(M,1)/M;a=1;
y=filter(b,a,f);
figure(3);plot( k,s, 'b:',k,y,'r-');
xlabel( 'Time index k');legend('s[k] ', 'y[k]');
图形:
题目1
图(a)题目2
图(b)题目3
图(c)
分析:
1.图(a)中三条曲线分别为噪声信号d[k]、原始信号s[k]和受噪声干扰的输入信号f[k]。
2.图(b)中s[k]为有用信号,y[k]是经过5点滑动平均系统去噪的结果。比较这两条曲线可以看出,y[k]基本将所有噪声去除,但有一
部分有用信号也被去除,曲线虽然很光滑,但与标准曲线偏离较大。
3.图(C)是经过2点滑动平均系统去噪的结果,比较两条曲线可以看出,y[k]不但去除了大部分的噪声信号,而且很好地保留了有用
信号,曲线与标准曲线很接近。
4.所以综上可以得出,当M取值越大时,能去除更多的噪声,但也会影响有用信号。所以根据本题的实际情况,对比图形,我们可以发
现,当M=2时的效果比M=5时要好。