小波滤波

来源:互联网 发布:幻萌网络知乎 编辑:程序博客网 时间:2024/05/16 06:04
信号源送出携带着我们希望传送的有用信息,然而在信号变化及传输过程中,由于噪声及干扰的叠加,使信号的辨认产生困难,要复原携带的有用信号,必须去除信号中叠加的噪声和干扰成分,如果噪声的频率高于或低于有效信号,通常采用滤波方法去除噪声,也可以通过使信号平滑的方法抑制干扰带来的毛刺。滤波方法是一种频域处理方法,在分析信号的频率特性时,信号变化率小的部分对应低频分量,变化率大的部分则对应高频分量。用滤波的方法滤除其高频部分就能去掉噪声,使信号得到平滑。
经典的信号去噪方法主要是基于频域的处理方法,以滤波器的形式去噪。它是把有用信号和噪声信号在频域进行分离的方法去噪。但这种方法要在信号频谱和噪声频谱没有重叠的前提下,才能把信号和噪声完全分离开来。但实际情况信号频谱和噪声频谱往往是重叠的,因为无论是高斯白噪声还是脉冲干扰,他们的频谱几乎都是分布在整个频域内。如果要噪声平滑效果好,必然会引起信号的模糊,轮廓不清,要使信号的轮廓清晰,就必然噪声的平滑效果不好。在使用时必须权衡得失,在二者之间做出合理的选择。用低通滤波器进行平滑处理可以去除噪声、伪轮廓等寄生效应,但是由于低通滤波器对噪声等寄生成分去除的同时,也去除了有用的高频成分,即进行噪声平滑的同时,也必定平滑了非平稳信号的突变点。因此这样去噪处理是以牺牲清晰度为代价而换取的。
小波分析方法是一种窗口大小即窗口面积固定、但窗口的形状可变、时间窗和频率窗都可改变的时频局部化分析方法即在低频部分具有较高的频率分辨率和较低的时间分辨率,在高频部分具有较高的时间分辨率和较低的频率分辨率,很适于探测正常信号中突变信号的成分。它可以用长的时间间隔来获得更加精细的低频率的信号信息,用短的时间间隔来获得高频率的信号信息。在实际的工程应用中,所分析的信号可能包含许多尖峰或突变部分,并且噪声也不是平稳的白噪声。对这种信号的降噪处理,用传统的傅立叶变换分析,显得无能为力,因为它不能给出信号在某个时间点上的变化情况。小波分析作为一种全新的信号处理方法,它将信号中各种不同的频率成分分解到互不重叠的频带上,为信号滤波、信噪分离和特征提取提供了有效途径。有些噪声的频谱是分布在整个频域内的,小波理论的发展和成熟为非平稳信号的分析提供了有利的工具。运用小波分析进行信号的降噪处理是小波分析的一个重要应用方面


%****************************************************************************************

%  

%                      创建两个信号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;      %构造的混合信号



%****************************************************************************************
%  
%                信号Mix_Signal_1 和 Mix_Signal_2  分别作小波滤波
%
%***************************************************************************************

%混合信号 Mix_Signal_1  小波滤波
figure(7);
subplot(4,1,1);
plot(Mix_Signal_1);                                 %Mix_Signal_1 原始信号
axis([0,1000,-5,5]);
title('原始信号 ');

subplot(4,1,2);
[xd,cxd,lxd] = wden(Mix_Signal_1,'sqtwolog','s','one',2,'db3');
plot(xd);                                                 %Mix_Signal_1 小波滤波后信号
axis([0,1000,-5,5]);
title('小波滤波后信号 ');

%混合信号 Mix_Signal_2  小波滤波
subplot(4,1,3);
plot(Mix_Signal_2);                                 %Mix_Signal_2 原始信号
axis([0,1000,-10,30]);
title('原始信号 ');

subplot(4,1,4);
[xd,cxd,lxd] = wden(Mix_Signal_2,'sqtwolog','h','sln',3,'db3');
plot(xd);                                                %Mix_Signal_2 小波滤波后信号
axis([0,1000,-10,30]);
title('小波滤波后信号 ');

小波滤波 - 妹妹妹妹妹妹妹儿的~ - 这孩子谁懂的博客
 
0 0