基于小波变换的信号降噪处理-代码

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

%%%一阶小波去噪分解%reference:=-10:.1:10;%干净的信号ori_sig=sin(t);%加上噪声之后的信号signal=ori_sig+0.2*randn(size(t));%信号长度%1层小波分解sigLen=length(signal);[cA1,cD1]=dwt(signal,'db1');%系数构建%A1是信号的近似系数%D1是信号的细节系数%在这里A1就可以近似地被视为信号去噪后结果,而D1可以被视为噪声信号A1=idwt(cA1,[],'db1',sigLen);D1=idwt(cD1,[],'db1',sigLen);%用近似系数和细节系数进行重建A0=idwt(cA1,cD1,'db1',sigLen);%信号误差sigErr=signal-A0;figuresubplot(231),plot(t,ori_sig),title('原始信号')subplot(232),plot(t,signal),title('加上高斯噪声的信号')subplot(233),plot(t,A1),title('近似信号系数')subplot(234),plot(t,D1),title('细节系数')subplot(235),plot(t,A0),title('降噪后的信号')subplot(236),plot(t,sigErr),title('绝对误差')%%wnoise去噪分解%reference:=3;[x,xn]=wnoise(3,11,sqrt_snr);lev=5;%利用sym8小波信号对信号进行分解,在第5层上,利用启发式sure阈值选择法对信号去噪xdOne=wden(xn,'heursure','s','one',lev,'sym8');%利用sym8对信号分解,但是使用软sure阈值选择选择算法对信号去噪xdSln=wden(x,'heursure','s','sln',lev,'sym8');%sym8小波对信号分解条件,但用固定域值选择算法去噪xdSqt=wden(x,'sqtwolog','s','sln',lev,'sym8');figuresubplot(231),plot(x),title('原始信号')subplot(232),plot(xn),title('含躁信号')subplot(233),plot(xdOne),title('启发式sure阈值选择算法去躁')subplot(234),plot(xdSln),title('软sure阈值选择算法去躁')subplot(235),plot(xdSqt),title('固定域值选择算法去噪')%%图像小波去噪%reference:=imread('lena.bmp');ifsize(img,3)1img=rgb2gray(img);endimg=double(img);imgN=img+50*randn(size(img));%利用小波函数coif2对图像XX进行2层分解[c,l]=wavedec2(imgN,2,'coif2');%重构第2层图像的近似系数A2=wrcoef('a',c,l,'coif2',2);%设置尺度向量n=[1,2];%设置阈值向量p=[10.28,24.08];nc=wthcoef2('h',c,l,n,p,'s');X1=waverec2(nc,l,'coif2');%图像的二维小波重构figuresubplot(221),imshow(img,[]),title('原始图像')subplot(222),imshow(imgN,[]),title('加噪声图像')subplot(223),imshow(X1,[]),title('去噪后图像')

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功