ivan@138: function [SNRAll,SNRmiss] = SNRInpaintingPerformance(xRef,xObs,xEst,IMiss,DISP_FLAG) ivan@138: % Various SNR measures for inpainting performance ivan@138: % ivan@138: % Usage: [SNRAll,SNRmiss] = SNRInpaintingPerformance(xRef,xObs,xEst,IMiss,DISP_FLAG) ivan@138: % ivan@138: % ivan@138: % Inputs: ivan@138: % - xRef - reference signal ivan@138: % - xObs - observed signal ivan@138: % - xEst - estimate signal ivan@138: % - IMiss - location of missing data ivan@138: % ivan@138: % Outputs: ivan@138: % - SNRAll - SNRAll(1) is the original SNR, between xRef and xObs; ivan@138: % SNRAll(2) is the SNR is the obtained SNR, between xRef and xEst ivan@138: % - SNRmiss - the same as SNRAll but computed on the missing/restored ivan@138: % samples only ivan@138: % ivan@138: % ivan@138: % ------------------- ivan@138: % ivan@138: % Audio Inpainting toolbox ivan@138: % Date: June 28, 2011 ivan@138: % By Valentin Emiya, Amir Adler, Maria Jafari ivan@138: % This code is distributed under the terms of the GNU Public License version 3 (http://www.gnu.org/licenses/gpl.txt). ivan@138: if nargin<5 ivan@138: DISP_FLAG = 0; ivan@138: end ivan@138: ivan@138: SNRAll = [SNR(xRef,xObs),SNR(xRef,xEst)]; ivan@138: SNRmiss = [SNR(xRef(IMiss),xObs(IMiss)),SNR(xRef(IMiss),xEst(IMiss))]; ivan@138: ivan@138: if DISP_FLAG>0 ivan@138: fprintf('SNR on all samples / clipped samples:\n'); ivan@138: fprintf('Original: %g dB / %g dB\n',... ivan@138: SNRAll(1),... ivan@138: SNRmiss(1)); ivan@138: fprintf('Estimate: %g dB / %g dB\n',... ivan@138: SNRAll(2),... ivan@138: SNRmiss(2)); ivan@138: end ivan@138: ivan@138: return