使用Birgé-Massart策略的小波2-D阈值
[thr,n保持] = wdcbm2(c,s,alpha,m)
WDCBM2(C,S,Alpha)
WDCBM2(C,S,Alpha,Prod(s(1,:))))
[thr,n保持] = wdcbm2(c,s,alpha,m)
返回依赖级别的阈值thr
和保存的系数数量n保持
,用于去噪或压缩。thr
使用基于Birgé-Massart策略的小波系数选择规则获得。
[CS]
是在级别的图像的小波分解结构是待发出的或压缩的。j =尺寸(s,1)-2
。
Α
和m
必须是大于1的实数。
thr
是矩阵3j
;thr(:,i)
包含三个方向中的级别相关阈值:水平,对角线和垂直,级别i。
n保持
是长度的矢量j
;nkee(i)
包含在I级保持的系数数。
j,m
和Α
定义策略:
在水平j
+1(和较粗糙的级别),一切都保持在内。
级别我1到j
, 然后一世最大的系数保持n一世=m
(j + 2-i)Α。
通常Α
= 1.5压缩和Α
= 3用于去噪。
默认值m
是m
=产品(s(1,:))
,粗构近似系数的长度,因为前一个公式导致i = j + 1,到nJ + 1=m
=产品(s(1,:))
。
推荐的值m
来自产品(s(1,:))
到6 * prod(s(1,:))
。
WDCBM2(C,S,Alpha)
相当于WDCBM2(C,S,Alpha,Prod(s(1,:))))
。
%加载原始图像。加载Detfingr;NBC =大小(地图,1);使用Sym4,%在级别3处执行图像%的小波分解。wname ='sym4';lev = 3;[c,s] = wavedec2(x,lev,wname);%使用WDCBM2选择使用预告参数的图像压缩的级别相关阈值%。alpha = 1.5;m = 2.7 * prod(s(1,:)); [thr,nkeep] = wdcbm2(c,s,alpha,m) thr = 21.4814 46.8354 40.7907 21.4814 46.8354 40.7907 21.4814 46.8354 40.7907 nkeep = 624 961 1765 % Use wdencmp for compressing the image using the above % thresholds with hard thresholding. [xd,cxd,sxd,perf0,perfl2] = ... wdencmp('lvd',c,s,wname,lev,thr,'h'); % Plot original and compressed images. colormap(pink(nbc)); subplot(221), image(wcodemat(X,nbc)), title('Original image') subplot(222), image(wcodemat(xd,nbc)), title('Compressed image') xlab1 = ['2-norm rec.: ',num2str(perfl2)]; xlab2 = [' % -- zero cfs: ',num2str(perf0), ' %']; xlabel([xlab1 xlab2]);
Birgé,L。P. Massart(1997)。“从模型选择到自适应估计”,在D. Pollard(ED)中,L. Le Cam的Festchrift,Springer,pp。55-88。