calc_noise_params

PURPOSE ^

params = GREIT_noise_params(imdl, homg_voltage, sig_voltage)

SYNOPSIS ^

function params = calc_noise_params(imdl, vh, vi )

DESCRIPTION ^

 params = GREIT_noise_params(imdl, homg_voltage, sig_voltage)
  params(1,:) = Noise Figure = SNR(image) / SNR(data)

  see also: eval_GREIT_fig_merit or using test_performance

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function params = calc_noise_params(imdl, vh, vi )
0002 % params = GREIT_noise_params(imdl, homg_voltage, sig_voltage)
0003 %  params(1,:) = Noise Figure = SNR(image) / SNR(data)
0004 %
0005 %  see also: eval_GREIT_fig_merit or using test_performance
0006 
0007 % (C) 2008 Andy Adler. Licensed under GPL v2 or v3
0008 % $Id: calc_noise_params.html 2819 2011-09-07 16:43:11Z aadler $
0009 
0010 % NOTE THAT WE ASSUME A LINEAR ALGORITHM FOR THIS MEASURE
0011 
0012 % Add random noise
0013 Nnoise = 1000;
0014 noise = 0.01*std(vh)*randn(size(vh,1),Nnoise);
0015 vhn= vh*ones(1,Nnoise) + noise;
0016 
0017 signal_y = calc_difference_data( vh, vi,  imdl.fwd_model);
0018 noise_y  = calc_difference_data( vh, vhn, imdl.fwd_model);
0019 
0020 signal_x = inv_solve(imdl, vh, vi);  signal_x = signal_x.elem_data;
0021 noise_x  = inv_solve(imdl, vh, vhn); noise_x  = noise_x.elem_data;
0022 
0023 
0024 % This is how we defined it in GREIT 2009.
0025 % It could also be defined as
0026 %    signal_x = mean(   (signal_x),1);
0027 % and this may make more sense for lots of ringing. In the centre, however, this is probably OK.
0028 
0029 signal_x = mean(abs(signal_x),1);
0030 noise_x  = mean(std(noise_x));
0031 snr_x = signal_x / noise_x;
0032 
0033 signal_y = mean(abs(signal_y),1);
0034 noise_y  = mean(std(noise_y));
0035 snr_y = signal_y / noise_y;
0036 
0037 params= [snr_y(:)./snr_x(:)]';

Generated on Tue 09-Aug-2011 11:38:31 by m2html © 2005