1 简介

信号在采集、转换和传输过程中,由于受到设备、环境及人为因素的影响,使信号不可避免地受到噪声干扰。因此,如何去除信号中的噪声,得到感兴趣的信息是信号处理过程中的一项关键技术。对基于小波变换模极大值的信号去噪问题进行了研究,根据信号和噪声的小波变换模极大值在不同尺度上表现出的不同的传播特性,给出了基于小波变换模极大值的去噪算法。数值实验结果表明了该算法的有效性和可行性。

【信号去噪】基于小波模极大值数字信号去躁含Matlab源码_信号处理

【信号去噪】基于小波模极大值数字信号去躁含Matlab源码_去噪_02

【信号去噪】基于小波模极大值数字信号去躁含Matlab源码_去噪_03

2 部分代码

function  w2=Py_Pgama(w1,wpeak,wframe,level,sr)
% 该函数用于进行 Pgama 和 Py 投影
err=wpeak-w1.*(wpeak~=0);
w2=zeros(size(wpeak));
[r,c]=size(wpeak);
% 对每一级小波分别进行处理
for m=1:r
frame=find(wpeak(m,:));
num_interval=length(frame)-1;
% 先找到以模极大划分的区间, 然后对每一区间进行Py投影
for j=1:num_interval
interval=w1(m,frame(j):frame(j+1));
len=length(interval);
if len>2
w1(m,frame(j):frame(j+1))=P_y(interval,len);
end
end
% 再逐一区间进行Pgama投影
for j=1:num_interval
interval=err(m,frame(j):frame(j+1));
if r==1
err(m,frame(j):frame(j+1))=P_gama(interval,level,sr);
else
err(m,frame(j):frame(j+1))=P_gama(interval,m,sr);
end
end
w2(m,:)=w1(m,:)+err(m,:);
end

3 仿真结果

【信号去噪】基于小波模极大值数字信号去躁含Matlab源码_去噪_04

【信号去噪】基于小波模极大值数字信号去躁含Matlab源码_信号处理_05

【信号去噪】基于小波模极大值数字信号去躁含Matlab源码_信号处理_06

4 参考文献

[1]张玉新, 滕桂法, 赵洋,等. 基于小波变换模极大值的信号去噪方法研究[J]. 河北农业大学学报, 2009, 32(1):3.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

【信号去噪】基于小波模极大值数字信号去躁含Matlab源码_信号处理_07