view util/Pierre_reconstruct.m @ 123:0e2959c83824 sup_158_IMG_Processing_toolbox_

Pierre_reconstruct.m - removed IMP toolbox dependencies
author Ivan Damnjanovic lnx <ivan.damnjanovic@eecs.qmul.ac.uk>
date Wed, 25 May 2011 14:59:59 +0100
parents fc395272d53e
children 002ec1b2ceff
line wrap: on
line source
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=col2imstep(imout,size(Problem.imageTrg),Problem.blocksize,Problem.blocksize);

%   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