[Insight-users] Normalized Mutual Information Metric Methods
Oscar Esteban Sanz-Dranguet
oesteban at die.upm.es
Wed Dec 2 05:41:18 EST 2009
Hi all,
I would like to know some more detailed explanations about:
<classitk_1_1ImageToImageMetric.html#7d192f58b6309c49ee01e47755faff03>SetLowerBound
<classitk_1_1HistogramImageToImageMetric.html#b5e45cc3a80fcffed1b2c70829e72b74> (const MeasurementVectorType
<classitk_1_1HistogramImageToImageMetric.html#a7b6843f20b65a03080d04e59fe8c643> &bound)
SetPaddingValue
<classitk_1_1HistogramImageToImageMetric.html#dc09073b2abf349f30562fb6de7d76ce> (FixedImagePixelType
<classitk_1_1HistogramImageToImageMetric.html#88126fc413c29ba48f029e49d57d2444> _arg)
I've looked for it on the Software Guide, but I didn't found anything.
This is my guess: SetLowerBound lets you to set two pixel values for
fixed and moving images so that below them, the sample will be ignored
on metric computation. Its use would be like this:
// Initialization of n_init_metric and typedefs
NMIMetric::HistogramType::SizeType histogramSize;
histogramSize[0]=HISTOGRAM_BINS;
histogramSize[1]=HISTOGRAM_BINS;
m_init_metric->SetHistogramSize( histogramSize );
NMIMetric::MeasurementVectorType lBound;
lBound[0] = lBound[1] = vcl_ceil(
std::numeric_limits<ImageType::PixelType>::max()/(HISTOGRAM_BINS*1.0) );
m_init_metric->SetLowerBound( lBound );
With this code, I'm trying to ignore the bin 0 for metric computation.
You could set some fixed values, e.g.:
lBound[0] = 132; // Ignore values on FIXED image under 132
lBound[1] = 50; // Ignore values on MOVING image under 50
m_init_metric->SetLowerBound( lBound );
Is it all right?
And, then, focusing on SetPaddingValue: I interpret from documentation
that you can set a value on fixed image that will not be used for metric
computation (e. g. using padding value 80, any pixel with that value
will be ignored).
Thanks in advance. Cheers,
--
Oscar Esteban
BIT - UPM (http://www.die.upm.es/im/)
+34 913 366 827 ext.4248
More information about the Insight-users
mailing list