信号阈值去噪实例

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

信号阈值去噪实例

小波、小波包、MATLAB 2009-08-05 09:52:58 阅读76 评论0 字号:大中小

一般来说,信号去噪的基本步骤主要包括如下三步:

(1)信号的小波分解;

(2)小波分解高频系数的阈值量化;

(3)信号的小波重构。使用分解的低频系数以及阈值量化后的高

频系数进行小波重构。

例1:信号阈值去噪一

程序daimaru代码如下:

load leleccum;

indx=1:1024;

x=leleccum(indx);

%产生噪声信号

init=2055615866;

randn('seed',init);

nx=x+18*randn(size(x));

%获取消噪的阈值

[thr,sorh,keepapp]=ddencmp('den','wv',nx);

%对信号进行消噪

xd=wdencmp('gbl',nx,'db4',2,thr,sorh,keepapp);

subplot(221);

plot(x);

title('原始信号');

subplot(222);

plot(nx);

title('含噪信号');

subplot(223);

plot(xd);

title('消噪后的信号');

例2:信号阈值去噪二

在本例中,首先使用函数wnoiset获取噪声方差,然后使用函数wbmpen获取小波去噪阈值,最后使用函数wdencmp实现信号消噪。

程序代码如下:

load leleccum;

indx=1:1024;

x=leleccum(indx);

%产生含噪信号

init=2055615866;

randn('seed',init);

nx=x+18*randn(size(x));

%使用小波函数'db6'对信号进行3层分解

[c,l]=wavedec(nx,3,'db6');

%估计尺度1的噪声标准差

sigma=wnoiset(c,l,1);

alpha=2;

%获取消噪过程中的阈值

thr=wbmpen(c,l,sigma,alpha);

keepapp=1;

%对信号进行消噪

xd=wdencmp('gbl',c,l,'db6',3,thr,'s',keepapp);

subplot(221);

plot(x);

title('原始信号');

subplot(222);

plot(nx);

title('含噪信号');

subplot(223);

plot(xd);

title('消噪后的信号');

例3:信号阈值去噪三

在本例中,对小波分解系数使用函数wthcoef进行阈值处理,然后利用阈值处理后的小波系数进行重构达到去噪目的。

程序代码如下:

load leleccum;

indx=1:1024;

x=leleccum(indx);

%产生含噪信号

init=2055615866;

randn('seed',init);

nx=x+18*randn(size(x));

%使用小波函数'db5'对信号进行3层分解

[c,l]=wavedec(nx,3,'db5');

%设置尺度向量

n=[1,2,3];

%设置阈值向量

p=[120,110,100];

%对高频系数进行阈值处理

nc=wthcoef('d',c,l,n,p);

%对修正后的小波分解结构进行重构

rx=waverec(nc,l,'db5');

subplot(221);

plot(x);

title('原始信号');

subplot(222);

plot(nx);

title('含噪信号');

subplot(223);

plot(rx);

title('消噪后的信号');

例4:信号阈值去噪四

在本例中,使用一维信号的自动消噪函数wden对信号进行消噪。

程序代码如下:

load leleccum;

indx=1:1024;

x=leleccum(indx);

%产生含噪信号

init=2055615866;

randn('seed',init);

nx=x+18*randn(size(x));

%将信号nx使用小波函数'sym5'分解到第5层

%使用minimaxi阈值选择对系数进行处理,消除噪声信号

lev=5;

xd=wden(nx,'minimaxi','s','mln',lev,'sym5');

subplot(221);

plot(x);

title('原始信号');

subplot(222);

plot(nx);

title('含噪信号');

subplot(223);

plot(xd);

title('消噪后的信号');

THANKS !!!

致力为企业和个人提供合同协议,策划案计划书,学习课件等等

打造全网一站式需求

欢迎您的下载,资料仅供参考

相关文档
最新文档