语法:
[XD,CXD,LXD]=wden(X,tptr,sorh,scal,n.’wavename’)
[XD,CXD,LXD]=wden(C,L,tptr,sorh,scal,n,’wavename’)
说明:
[XD,CXD,LXD]=wden(X,tptr,sorh,scal,n,’wavename’)使用小波系数阈值,返回输入信号X除噪后的信号XD,输出参数[CXD,LXD]表示XD的小波分解结构。
输入参数中,tptr同thselect()函数;sorh为‘ s’或‘h’表示软硬阈值;n表示在n层上的小波分解;wavename指定小波名称;scal定义阈值调整比例:
‘one’不设定比例;
‘sln’使用的基于第单层系数噪声估计,设置比例;
‘mln’用噪声层的层相关估计,调整比例。
[XD,CXD,LXD]=wden(C,L,tptr,sorh,scal,n,’wavename’)使用同上面一样选项,返回直接对小波分解结构[C,L]锄除噪后的信号XD,在n层上,使用‘wavename’指定的正交小波。
利用小波进行自动一维信号除噪。
程序清单如下:
winrect=[100 100 600 600];
figure;
[W,Fs,bits]=wavread('C:\Documents and Settings\ÕÔÑô\×ÀÃæ\456.wav');
tptr='sqtwolog';n=5;
[thr,sorh,keepapp]=ddencmp('den','wv',W(:,1));
scal='one';
[XD,CXD,LXD]=wden((W(:,1)),tptr,sorh,scal,n,'db5');
subplot(4,2,1);plot(W(:,1));
subplot(4,2,3);plot(XD);
subplot(4,2,4);plot(W(:,1)-XD);
scal='sln';
[XD,CXD,LXD]=wden((W(:,1)),tptr,sorh,scal,n,'db5');
subplot(4,2,5);plot(W(:,1)-XD);
subplot(4,2,6);plot(W(:,1)-XD);
[XD,CXD,LXD]=wden((W(:,1)),tptr,sorh,scal,n,'db5');
subplot(4,2,7);plot(W(:,1)-XD);
subplot(4,2,8);plot(W(:,1)-XD);
小波进行自动一维信号除噪如图1
(图1)
五、基于小波变换分解的信号去噪技术及实现
研究利用小波变换技术对信号噪声进行抑制和去除非平稳信号的噪声,然后利用Matlab软件编制程序实现了基于小波分解非平稳信号的去噪仿真分析。仿真结果表明小波去除噪声的效果比传统的Fourior变换方法具有极大的优越性。
非平稳信号去噪方法研究(二)相关范文