2 [XC,CXC,LXC,PERF0,PERFL2] = wdencmp('lvd',X,'wname',N,THR,SORH)
3 [XC,CXC,LXC,PERF0,PERFL2] = wdencmp('lvd',C,L,'wname',N,THR,SORH)
函数wdencmp用于一维或二维信号的消噪或压缩。wname是所用的小波函数,gbl(global的缩写)表示每层都采用同一个阈值进行处理,lvd表示每层用不同的阈值进行处理,N表示小波分解的层数,THR为阈值向量,对于格式(2)(3)每层都要求有一个阈值,因此阈值向量THR的长度为N,SORH表示选择软阈值还是硬阈值(分别取为’s’和’h’),参数KEEPAPP取值为1时,则低频系数不进行阈值量化处理,反之,则低频系数进行阈值量化。XC是消噪或压缩后的信号,[CXC,LXC]是XC的小波分解结构,PERF0和PERFL2是恢复和压缩L^2的范数百分比, 是用百分制表明降噪或压缩所保留的能量成分。如果[C,L]是X的小波分解结构,则PERFL2=100*(CXC向量的范数/C向量的范数)^2;如果X是一维信号,小波wname是一个正交小波,则PERFL2=100||XC||^2 / ||X||^2
应用举例:
% 载入原始图像.
load sinsin
% X 包含载入图像.
% 产生噪声图像.
init=2055615866; randn('seed',init);
x = X + 18*randn(size(X)); Matlab中文论坛
% 查找默认值(可参考ddencmp函数).
[thr,sorh,keepapp] = ddencmp('den','wv',x);
% 全局阈值设置去噪.
xd = wdencmp('gbl',x,'sym4',2,thr,sorh,keepapp);
转载地址http://wfqsyyy.blog.163.com/blog/static/183488425201192210106206/