MATLAB的7种滤波方法(重制版)

MATLAB的7种滤波⽅法(重制版)
⽂章⽬录
信号创建
%****************************************************************************************
yc8卡充值中心
%
%创建两个信号Mix_Signal_1 和信号 Mix_Signal_2
%
%***************************************************************************************
Fs =1000;%采样率
N =1000;%采样点数
n =0:N -1;
t =0:1/ Fs:1-1/ Fs;%时间序列
Signal_Original_1 =sin(2* pi *10* t)+sin(2* pi *20* t)+sin(2* pi *30* t);
Noise_White_1 =[0.3*randn(1,500),rand(1,500)];%前500点⾼斯分部⽩噪声,后500点均匀分布⽩噪声
Mix_Signal_1 = Signal_Original_1 + Noise_White_1;%构造的混合信号
Signal_Original_2 =[zeros(1,100),20*ones(1,20),-2*ones(1,30),5*ones(1,80),-5*ones(1,30),9*ones(1,140),-4*ones(1,40),3*ones(1,220), 12*ones(1,100),5*ones(1,20),25*ones(1,30),7*ones(1,190)];
Noise_White_2 =0.5*randn(1,1000);%⾼斯⽩噪声
Mix_Signal_2 = Signal_Original_2 + Noise_White_2;%构造的混合信号
传统滤波
Butterworth滤波
巴特沃斯滤波器适合⽤于信号和噪声没有重叠的情况下。
%****************************************************************************************
%世界经济
%信号Mix_Signal_1 和 Mix_Signal_2  分别作巴特沃斯低通滤波。%
%***************************************************************************************
%混合信号 Mix_Signal_1  巴特沃斯低通滤波
figure(1);
Wc=2*50/Fs;%截⽌频率50Hz
[b,a]=butter(4,Wc);
Signal_Filter=filter(b,a,Mix_Signal_1);
subplot(4,1,1);%Mix_Signal_1 原始信号
plot(Mix_Signal_1);
axis([0,1000,-4,4]);
title('原始信号1 ');
subplot(4,1,2);%Mix_Signal_1 低通滤波滤波后信号plot(Signal_Filter);
axis([0,1000,-4,4]);
title('巴特沃斯低通滤波后信号1');
%混合信号 Mix_Signal_2  巴特沃斯低通滤波
Wc=2*100/Fs;%截⽌频率100Hz
[b,a]=butter(4,Wc);
Signal_Filter=filter(b,a,Mix_Signal_2);
subplot(4,1,3);%Mix_Signal_2 原始信号
plot(Mix_Signal_2);
axis([0,1000,-10,30]);
title('原始信号2 ');
subplot(4,1,4);%Mix_Signal_2 低通滤波滤波后信号plot(Signal_Filter);
axis([0,1000,-10,30]);
title('巴特沃斯低通滤波后信号2');
下图是巴特沃斯对两个信号的滤波效果。醋酸强的松龙
从图上可以看出巴特沃斯低通滤波器对信号⼀的滤波效果还是可以的,主要是因为有效的信号最⾼频率才30Hz,本程序将50Hz以上的信号全部滤除,通过的频率成分中仍然是有⽩噪声的。
对于信号⼆,滤波后的信号与没有加噪声的信号相⽐就有失真了,上升沿和下降沿的⾼频信号被滤除了。
FIR
情况同巴特沃斯低通滤波器相似。
%****************************************************************************************
%
繁峙秧歌%信号Mix_Signal_1 和 Mix_Signal_2  分别作FIR低通滤波。
%
%***************************************************************************************
%混合信号 Mix_Signal_1  FIR低通滤波
figure(2);
F  =0:0.05:0.95;
A  =[11000000000000000000];
b  =firls(20,F,A);
Signal_Filter =filter(b,1,Mix_Signal_1);
subplot(4,1,1);%Mix_Signal_1 原始信号
张旭东plot(Mix_Signal_1);
axis([0,1000,-4,4]);
title('原始信号1 ');
subplot(4,1,2);%Mix_Signal_1 FIR低通滤波滤波后信号plot(Signal_Filter);
axis([0,1000,-5,5]);
title('FIR低通滤波后的信号1');
%混合信号 Mix_Signal_2  FIR低通滤波
F  =0:0.05:0.95;
A  =[11111000000000000000];
b  =firls(20,F,A);
Signal_Filter =filter(b,1,Mix_Signal_2);
subplot(4,1,3);%Mix_Signal_2 原始信号
plot(Mix_Signal_2);
axis([0,1000,-10,30]);
title('原始信号2 ');
subplot(4,1,4);%Mix_Signal_2 FIR低通滤波滤波后信号plot(Signal_Filter);
axis([0,1000,-10,30]);
title('FIR低通滤波后的信号2');腹壁反射
滤波后的效果如下:
移动平均滤波
移动平均的思路是将离散点附近的点取平均从⽽实现平滑化。但这种粗糙的平均,对于变换较为平缓的信号进⾏趋势预测⾮常有益。

本文发布于:2024-09-20 20:28:06,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/647742.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:信号   滤波   通滤波
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议