Digital Signal Processing Reference
In-Depth Information
% DCTG2 implements a Parseval tight frame
% and the curvelets have l_2 norm
= 1/sqrt(redundancy).
nb=prod(size(C{1}{1}));
for j=2:length(C)
for w=1:length(C{j})
nb=nb+prod(size(C{j}{w}));
end
end
E = N/sqrt(nb);
% Hard-threshold UWT coeffs: finest scale at 4*sigma and
% other scales at 3*sigma.
Ct=C;
for j=2:length(C)
thresh = 3*sigma + sigma*(j == length(C));
for w=1:length(C{j})
Ct{j}{w} = C{j}{w}.* (abs(C{j}{w}) > thresh*E);
end
end
% Take inverse curvelet transform
imdendctg2 = real(ifdct_wrapping(Ct,1,J-coarsest));
% Display.
subplot(221)
imagesc(img);axis image;axis off;colormap('gray')
set(gca,'FontSize',14);
title('(a)');
subplot(222)
imagesc(imn);axis image;axis off
set(gca,'FontSize',14);
title('(b)');
subplot(223)
imagesc(imdendctg2);axis image;axis off
set(gca,'FontSize',14);
title('(c)');
subplot(224)
imagesc(imdenuwt);axis image;axis off
set(gca,'FontSize',14);
title('(d)');
Figures 5.19(c) and 5.19(d) show the restored images by the DCTG2 and the
UWT, respectively. Contours and stripes on the trousers and scarf are much better
recovered with the DCTG2.
Search WWH ::




Custom Search