annotate util/Pierre_reconstruct.m @ 12:b6d8f2c4f5fa

(none)
author idamnjanovic
date Thu, 25 Mar 2010 13:03:50 +0000
parents 33850553b702
children fc395272d53e
rev   line source
idamnjanovic@8 1 function reconstructed=Pierre_reconstruct(y, Problem)
idamnjanovic@8 2 %% Pierre Villars Example - reconstruction function
idamnjanovic@8 3 % This example is based on the experiment suggested by Professor Pierre
idamnjanovic@8 4 % Vandergheynst on the SMALL meeting in Villars.
idamnjanovic@8 5
idamnjanovic@8 6 % using sparse representation y in dictionary Problem.A reconstruct the
idamnjanovic@8 7 % patches from the target image
idamnjanovic@8 8
idamnjanovic@8 9 imout=Problem.A*y;
idamnjanovic@8 10
idamnjanovic@8 11 % combine the patches into reconstructed image
idamnjanovic@8 12
idamnjanovic@8 13 im=col2im(imout,Problem.blocksize,size(Problem.imageTrg),'disctint');
idamnjanovic@8 14
idamnjanovic@8 15 % bound the pixel values to [0,255] range
idamnjanovic@8 16 im(im<0)=0;
idamnjanovic@8 17 im(im>255)=255;
idamnjanovic@8 18
idamnjanovic@8 19 %% output structure image+psnr %%
idamnjanovic@8 20 reconstructed.image=im;
idamnjanovic@8 21 reconstructed.psnr = 20*log10(Problem.maxval * sqrt(numel(Problem.imageTrg(:))) / norm(Problem.imageTrg(:)-im(:)));
idamnjanovic@8 22 end