ITK
4.6.0
Insight Segmentation and Registration Toolkit
|
#include <itkMatchCardinalityImageToImageMetric.h>
Computes similarity between two objects to be registered.
This Class is templated over the type of the fixed and moving images to be compared.
This metric computes cardinality of the set of pixels that match exactly between the moving and fixed images. The spatial correspondance between both images is established through a Transform. Pixel values are taken from the Moving image. Their positions are mapped to the Fixed image and result in general in non-grid position on it. Values at these non-grid position of the Fixed image are interpolated using a user-selected Interpolator.
This metric is designed for matching label maps. All pixel mismatches are considered equal whether they are between label 1 and label 2 or between label 1 and label 500. In other words, the magnitude of an individual label mismatch is not relevant, or the occurrence of a label mismatch is important.
Given the nature of label maps, a nearest neighbor interpolator is the preferred interpolator.
The metric measure can measure the number of pixel matches (pixels with exactly the same label) or pixel mismatches (pixels with different labels). The returned metric value is the number of pixel matches (or mismatches) normalized by the number of pixels considered. The number of pixel considered is a function of the number of pixels in the overlap of the fixed and moving image buffers conditional on any assigned masks.
Definition at line 67 of file itkMatchCardinalityImageToImageMetric.h.
Classes | |
struct | ThreadStruct |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Protected Member Functions | |
static ITK_THREAD_RETURN_TYPE | ThreaderCallback (void *arg) |
Static Protected Member Functions inherited from itk::ImageToImageMetric< TFixedImage, TMovingImage > | |
static ITK_THREAD_RETURN_TYPE | GetValueAndDerivativeMultiThreaded (void *arg) |
static ITK_THREAD_RETURN_TYPE | GetValueAndDerivativeMultiThreadedPostProcess (void *arg) |
static ITK_THREAD_RETURN_TYPE | GetValueAndDerivativeMultiThreadedPreProcess (void *arg) |
static ITK_THREAD_RETURN_TYPE | GetValueMultiThreaded (void *arg) |
static ITK_THREAD_RETURN_TYPE | GetValueMultiThreadedPostProcess (void *arg) |
static ITK_THREAD_RETURN_TYPE | GetValueMultiThreadedPreProcess (void *arg) |
Private Member Functions | |
MatchCardinalityImageToImageMetric (const Self &) | |
void | operator= (const Self &) |
Private Attributes | |
bool | m_MeasureMatches |
std::vector< SizeValueType > | m_ThreadCounts |
MultiThreader::Pointer | m_Threader |
std::vector< MeasureType > | m_ThreadMatches |
typedef SmartPointer< const Self > itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::ConstPointer |
Definition at line 76 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::DerivativeType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::DerivativeType |
Definition at line 93 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::FixedImageConstPointer itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::FixedImageConstPointer |
Definition at line 96 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::FixedImageRegionType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::FixedImageRegionType |
Definition at line 98 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::FixedImageType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::FixedImageType |
Definition at line 94 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::GradientPixelType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::GradientPixelType |
Definition at line 90 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::MeasureType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::MeasureType |
Definition at line 92 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::MovingImageConstPointer itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::MovingImageConstPointer |
Definition at line 97 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::MovingImageType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::MovingImageType |
Definition at line 95 of file itkMatchCardinalityImageToImageMetric.h.
typedef SmartPointer< Self > itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::Pointer |
Definition at line 75 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::RealType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::RealType |
Types transferred from the base class
Definition at line 82 of file itkMatchCardinalityImageToImageMetric.h.
typedef MatchCardinalityImageToImageMetric itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::Self |
Standard class typedefs.
Definition at line 73 of file itkMatchCardinalityImageToImageMetric.h.
typedef ImageToImageMetric< TFixedImage, TMovingImage > itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::Superclass |
Definition at line 74 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::TransformJacobianType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::TransformJacobianType |
Definition at line 89 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::TransformParametersType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::TransformParametersType |
Definition at line 88 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::TransformPointer itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::TransformPointer |
Definition at line 87 of file itkMatchCardinalityImageToImageMetric.h.
typedef Superclass::TransformType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::TransformType |
Definition at line 86 of file itkMatchCardinalityImageToImageMetric.h.
|
protected |
|
inlineprotectedvirtual |
Definition at line 134 of file itkMatchCardinalityImageToImageMetric.h.
|
private |
|
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.
|
inline |
Get the derivatives of the match measure.
Definition at line 101 of file itkMatchCardinalityImageToImageMetric.h.
References itk::Array< TValue >::Fill().
|
virtual |
Set/Get whether this metric measures pixel matches or pixel mismatches. Note the GetValue() returns the number of matches (or mismatches) normalized by the number of pixels considered. In other words, the metric measures the percentage of pixel matches or mismatches. The default is to measure matches (MeasureMatchesOn).
|
inline |
Return the multithreader used by this class.
Definition at line 129 of file itkMatchCardinalityImageToImageMetric.h.
References itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::m_Threader.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.
|
protected |
Non-const version of GetValue(). This is a hack around various const issues with trying to spawn threads from the const version of GetValue().
MeasureType itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::GetValue | ( | const TransformParametersType & | parameters | ) | const |
Get the value of the metric at a particular parameter setting. The metric value is the number of pixel matches (or mis-matches, see SetMeasureMatches()) normalized by the number of pixels under consideration (within the buffer and if specified within a mask). In other words, the metric measure the percentage of pixel matches or mismatches.
|
virtual |
Set/Get whether this metric measures pixel matches or pixel mismatches. Note the GetValue() returns the number of matches (or mismatches) normalized by the number of pixels considered. In other words, the metric measures the percentage of pixel matches or mismatches. The default is to measure matches (MeasureMatchesOn).
|
virtual |
Set/Get whether this metric measures pixel matches or pixel mismatches. Note the GetValue() returns the number of matches (or mismatches) normalized by the number of pixels considered. In other words, the metric measures the percentage of pixel matches or mismatches. The default is to measure matches (MeasureMatchesOn).
|
static |
Method for creation through the object factory.
|
private |
|
protectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.
|
virtual |
Set/Get whether this metric measures pixel matches or pixel mismatches. Note the GetValue() returns the number of matches (or mismatches) normalized by the number of pixels considered. In other words, the metric measures the percentage of pixel matches or mismatches. The default is to measure matches (MeasureMatchesOn).
|
protectedvirtual |
Split the FixedImageRegion into "num" pieces, returning region "i" as "splitRegion". This method is called "num" times. The regions must not overlap. The method returns the number of pieces that the routine is capable of splitting the FixedImageRegion, i.e. return value is less than or equal to "num".
|
protectedvirtual |
Thread worker routine to calculate the contribution of the a subregion to the overall metric. Can only be called from GetValue().
|
staticprotected |
Static function used as a "callback" by the MultiThreader. The threading library will call this routine for each thread, which will delegate the control to ThreadedGetValue().
|
private |
Definition at line 175 of file itkMatchCardinalityImageToImageMetric.h.
|
private |
Definition at line 177 of file itkMatchCardinalityImageToImageMetric.h.
|
private |
Support processing data in multiple threads. Used by subclasses (e.g., ImageSource).
Definition at line 181 of file itkMatchCardinalityImageToImageMetric.h.
Referenced by itk::MatchCardinalityImageToImageMetric< TFixedImage, TMovingImage >::GetMultiThreader().
|
private |
Definition at line 176 of file itkMatchCardinalityImageToImageMetric.h.