view util/Pierre_reconstruct.m @ 14:a0571bf2ff54

(none)
author idamnjanovic
date Thu, 25 Mar 2010 14:02:30 +0000
parents 33850553b702
children fc395272d53e
line wrap: on
line source
function reconstructed=Pierre_reconstruct(y, Problem)
%%  Pierre Villars Example - reconstruction function
%   This example is based on the experiment suggested by Professor Pierre
%   Vandergheynst on the SMALL meeting in Villars.

%   using sparse representation y in dictionary Problem.A reconstruct the
%   patches from the target image

imout=Problem.A*y;

%   combine the patches into reconstructed image

im=col2im(imout,Problem.blocksize,size(Problem.imageTrg),'disctint');

%   bound the pixel values to [0,255] range 
im(im<0)=0;
im(im>255)=255;

%% output structure image+psnr %%
reconstructed.image=im;
reconstructed.psnr = 20*log10(Problem.maxval * sqrt(numel(Problem.imageTrg(:))) / norm(Problem.imageTrg(:)-im(:)));
end