ITK
4.1.0
Insight Segmentation and Registration Toolkit
|
#include <itkNormalizedMutualInformationHistogramImageToImageMetric.h>
Computes normalized mutual information between two images to be registered using the histograms of the intensities in the images.
The type of Normalize Mutual Information implemented in this class is given by the equation
Where $ H(A) $ is the entropy of image $ A $, $ H(B) $ is the entropy of image $ B $, and $ H(A,B) $ is the joing entropy of images $ A $ and $ B $.
Details of this implementation can be found in the book "Medical Image Registration" by Hajnal, Hill and Hawkes. The book is available online at http://books.google.com/books?id=2dtQNsk-qBQC The implementation of this class corresponds to equation (30) in Chapter 3 of this book. Note that by slightly changing this class it will be trivial to compute the Normalized Mutual Information measures defined in equations (28) and (29) of the same book.
This class is templated over the type of the fixed and moving images to be compared.
Definition at line 52 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef SmartPointer< const Self > itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::ConstPointer |
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 60 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::DerivativeType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::DerivativeType |
Type of the derivative.
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 78 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::FixedImageConstPointer itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::FixedImageConstPointer |
Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 81 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::FixedImageType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::FixedImageType |
Type of the fixed Image.
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 79 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::GradientPixelType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::GradientPixelType |
Gaussian filter to compute the gradient of the Moving Image
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 75 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef HistogramType::AbsoluteFrequencyType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::HistogramFrequencyType |
Definition at line 85 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef HistogramType::Iterator itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::HistogramIteratorType |
Definition at line 86 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef HistogramType::MeasurementVectorType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::HistogramMeasurementVectorType |
Definition at line 87 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::HistogramType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::HistogramType |
Typedefs for histogram. This should have been defined as Histogram<RealType,2> but a bug in VC++7 produced an internal compiler error with such declaration.
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 84 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::MeasureType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::MeasureType |
Type of the measure.
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 77 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::MovingImageConstPointer itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::MovingImageConstPointer |
Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 82 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::MovingImageType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::MovingImageType |
Type of the moving Image.
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 80 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef SmartPointer< Self > itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::Pointer |
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 59 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::RealType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::RealType |
Types transferred from the base class
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 67 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef NormalizedMutualInformationHistogramImageToImageMetric itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::Self |
Standard class typedefs.
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 57 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef HistogramImageToImageMetric< TFixedImage, TMovingImage > itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::Superclass |
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 58 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::TransformJacobianType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::TransformJacobianType |
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 74 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::TransformParametersType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::TransformParametersType |
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 73 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::TransformPointer itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::TransformPointer |
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 72 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
typedef Superclass::TransformType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::TransformType |
Type of the Transform Base class
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
Definition at line 71 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::NormalizedMutualInformationHistogramImageToImageMetric | ( | ) | [inline, protected] |
Constructor is protected to ensure that New()
function is used to create instances.
Definition at line 91 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
virtual itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::~NormalizedMutualInformationHistogramImageToImageMetric | ( | ) | [inline, protected, virtual] |
Constructor is protected to ensure that New()
function is used to create instances.
Definition at line 92 of file itkNormalizedMutualInformationHistogramImageToImageMetric.h.
itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::NormalizedMutualInformationHistogramImageToImageMetric | ( | Self const & | ) | [private] |
virtual::itk::LightObject::Pointer itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::CreateAnother | ( | void | ) | const [virtual] |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
virtual MeasureType itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::EvaluateMeasure | ( | HistogramType & | histogram | ) | const [protected, virtual] |
Evaluates the normalized mutual information from the histogram.
Implements itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
virtual const char* itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::GetNameOfClass | ( | ) | const [virtual] |
Run-time type information (and related methods).
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.
static Pointer itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::New | ( | ) | [static] |
Method for creation through the object factory.
Reimplemented from itk::Object.
void itk::NormalizedMutualInformationHistogramImageToImageMetric< TFixedImage, TMovingImage >::operator= | ( | Self const & | ) | [private] |
Mutex lock to protect modification to the reference count
Reimplemented from itk::HistogramImageToImageMetric< TFixedImage, TMovingImage >.