Mercurial > hg > smallbox
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