changeset 46:6a37442514c5

(none)
author idamnjanovic
date Mon, 14 Mar 2011 15:42:58 +0000
parents b9465d2bb3b0
children 2953097411d4
files Problems/Pierre_reconstruct.m
diffstat 1 files changed, 32 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Problems/Pierre_reconstruct.m	Mon Mar 14 15:42:58 2011 +0000
@@ -0,0 +1,32 @@
+function reconstructed=Pierre_reconstruct(y, Problem)
+%%%  Pierre Villars Example - reconstruction function
+%
+%   Centre for Digital Music, Queen Mary, University of London.
+%   This file copyright 2009 Ivan Damnjanovic.
+%
+%   This program is free software; you can redistribute it and/or
+%   modify it under the terms of the GNU General Public License as
+%   published by the Free Software Foundation; either version 2 of the
+%   License, or (at your option) any later version.  See the file
+%   COPYING included with this distribution for more information.
+%   
+%   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
\ No newline at end of file