template<class TFixedImage, class TMovingImage>
class itk::CombinationImageToImageMetric< TFixedImage, TMovingImage >
Combines multiple metrics.
This metric is meant to be used in the MultiMetricMultiResolutionImageRegistrationMethod.
NB: while it may seem not logical that the SetInterpolator(arg) sets the interpolator in all submetrics whereas the GetInterpolator(void) returns GetInterpolator(0) it is logical. If you set the interpolator the same in all metrics, you will receive the correct interpolator with GetInterpolator(0). If you set the interpolator differently in all metrics, the most logical action is to return GetInterpolator(0) when GetInterpolator() is invoked.
Note: If you use Set{Transform,Interpolator etc}(0) or Set{Transform,Interpolator}(), the member variables of the superclass m_{Transform,Interpolator} are set as well. So, it is not strictly necessary to reimplement the functions Get{Transform,Interpolator}(), which return Get{Transform,Interpolator}(0), which would result in the same as returning m_{Transform,Interpolator} anyway. However, if Metric[0] is changed externally the m_{Transform, Interpolator} are not up to date anymore. That's why we chose to reimplement the Get{Transform,Interpolator}() methods.
Definition at line 59 of file itkCombinationImageToImageMetric.h.
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef Superclass::CoordinateRepresentationType | CoordinateRepresentationType |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef Superclass::DerivativeValueType | DerivativeValueType |
|
typedef Superclass::FixedImageConstPointer | FixedImageConstPointer |
|
typedef Superclass::FixedImageMaskPointer | FixedImageMaskPointer |
|
typedef Superclass::FixedImageMaskType | FixedImageMaskType |
|
typedef FixedImageType::PixelType | FixedImagePixelType |
|
typedef Superclass::FixedImageRegionType | FixedImageRegionType |
|
typedef Superclass::FixedImageType | FixedImageType |
|
typedef PointSet< CoordinateRepresentationType, TFixedImage::ImageDimension, DefaultStaticMeshTraits< CoordinateRepresentationType, TFixedImage::ImageDimension, TFixedImage::ImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > | FixedPointSetType |
|
typedef Superclass::GradientImageFilterPointer | GradientImageFilterPointer |
|
typedef Superclass::GradientImageFilterType | GradientImageFilterType |
|
typedef Superclass::GradientImagePointer | GradientImagePointer |
|
typedef Superclass::GradientImageType | GradientImageType |
|
typedef Superclass::GradientPixelType | GradientPixelType |
|
typedef Superclass::HessianType | HessianType |
|
typedef Superclass::HessianValueType | HessianValueType |
|
typedef ImageMetricType::Pointer | ImageMetricPointer |
|
typedef Superclass | ImageMetricType |
|
typedef Superclass::InputPointType | InputPointType |
|
typedef Superclass::InterpolatorPointer | InterpolatorPointer |
|
typedef Superclass::InterpolatorType | InterpolatorType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef Superclass::MovingImageConstPointer | MovingImageConstPointer |
|
typedef FixedArray< double, itkGetStaticConstMacro(MovingImageDimension) > | MovingImageDerivativeScalesType |
|
typedef Superclass::MovingImageMaskPointer | MovingImageMaskPointer |
|
typedef Superclass::MovingImageMaskType | MovingImageMaskType |
|
typedef Superclass::MovingImagePixelType | MovingImagePixelType |
|
typedef MovingImageType::RegionType | MovingImageRegionType |
|
typedef Superclass::MovingImageType | MovingImageType |
|
typedef PointSet< CoordinateRepresentationType, TMovingImage::ImageDimension, DefaultStaticMeshTraits< CoordinateRepresentationType, TMovingImage::ImageDimension, TMovingImage::ImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > | MovingPointSetType |
|
typedef Superclass::OutputPointType | OutputPointType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef SingleValuedPointSetToPointSetMetric< FixedPointSetType, MovingPointSetType > | PointSetMetricType |
|
typedef Superclass::RealType | RealType |
|
typedef CombinationImageToImageMetric | Self |
|
typedef SingleValuedCostFunctionType::Pointer | SingleValuedCostFunctionPointer |
|
typedef SingleValuedCostFunction | SingleValuedCostFunctionType |
|
typedef AdvancedImageToImageMetric< TFixedImage, TMovingImage > | Superclass |
|
typedef Superclass::ThreaderType | ThreaderType |
|
typedef Superclass::ThreadInfoType | ThreadInfoType |
|
typedef Superclass::TransformJacobianType | TransformJacobianType |
|
typedef Superclass::TransformParametersType | TransformParametersType |
|
typedef TransformType::Pointer | TransformPointer |
|
typedef Superclass::AdvancedTransformType | TransformType |
|
typedef AdvancedTransform< ScalarType, FixedImageDimension, MovingImageDimension > | AdvancedTransformType |
|
typedef AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 1 > | BSplineOrder1TransformType |
|
typedef AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 2 > | BSplineOrder2TransformType |
|
typedef AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 3 > | BSplineOrder3TransformType |
|
typedef AdvancedCombinationTransform< ScalarType, FixedImageDimension > | CombinationTransformType |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef Superclass::CoordinateRepresentationType | CoordinateRepresentationType |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef DerivativeType::ValueType | DerivativeValueType |
|
typedef Superclass::FixedImageConstPointer | FixedImageConstPointer |
|
typedef FixedImageLimiterType::OutputType | FixedImageLimiterOutputType |
|
typedef FixedImageLimiterType::Pointer | FixedImageLimiterPointer |
|
typedef LimiterFunctionBase< RealType, FixedImageDimension > | FixedImageLimiterType |
|
typedef Superclass::FixedImageMaskPointer | FixedImageMaskPointer |
|
typedef Superclass::FixedImageMaskType | FixedImageMaskType |
|
typedef FixedImageType::PixelType | FixedImagePixelType |
|
typedef FixedImageType::Pointer | FixedImagePointer |
|
typedef Superclass::FixedImageRegionType | FixedImageRegionType |
|
typedef Superclass::FixedImageType | FixedImageType |
|
typedef Superclass::GradientImageFilterPointer | GradientImageFilterPointer |
|
typedef Superclass::GradientImageFilterType | GradientImageFilterType |
|
typedef Superclass::GradientImagePointer | GradientImagePointer |
|
typedef Superclass::GradientImageType | GradientImageType |
|
typedef Superclass::GradientPixelType | GradientPixelType |
|
typedef vnl_sparse_matrix< HessianValueType > | HessianType |
|
typedef DerivativeType::ValueType | HessianValueType |
|
typedef ImageSamplerType::OutputVectorContainerPointer | ImageSampleContainerPointer |
|
typedef ImageSamplerType::OutputVectorContainerType | ImageSampleContainerType |
|
typedef ImageSamplerType::Pointer | ImageSamplerPointer |
|
typedef ImageSamplerBase< FixedImageType > | ImageSamplerType |
|
typedef Superclass::InputPointType | InputPointType |
|
typedef Superclass::InterpolatorPointer | InterpolatorPointer |
|
typedef Superclass::InterpolatorType | InterpolatorType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef Superclass::MovingImageConstPointer | MovingImageConstPointer |
|
typedef FixedArray< double, Self::MovingImageDimension > | MovingImageDerivativeScalesType |
|
typedef MovingImageLimiterType::OutputType | MovingImageLimiterOutputType |
|
typedef MovingImageLimiterType::Pointer | MovingImageLimiterPointer |
|
typedef LimiterFunctionBase< RealType, MovingImageDimension > | MovingImageLimiterType |
|
typedef Superclass::MovingImageMaskPointer | MovingImageMaskPointer |
|
typedef Superclass::MovingImageMaskType | MovingImageMaskType |
|
typedef Superclass::MovingImagePixelType | MovingImagePixelType |
|
typedef MovingImageType::Pointer | MovingImagePointer |
|
typedef MovingImageType::RegionType | MovingImageRegionType |
|
typedef Superclass::MovingImageType | MovingImageType |
|
typedef AdvancedTransformType::NumberOfParametersType | NumberOfParametersType |
|
typedef Superclass::OutputPointType | OutputPointType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef Superclass::RealType | RealType |
|
typedef TransformType::ScalarType | ScalarType |
|
typedef AdvancedImageToImageMetric | Self |
|
typedef ImageToImageMetric< TFixedImage, TMovingImage > | Superclass |
|
typedef itk::MultiThreader | ThreaderType |
|
typedef ThreaderType::ThreadInfoStruct | ThreadInfoType |
|
typedef Superclass::TransformJacobianType | TransformJacobianType |
|
typedef Superclass::TransformParametersType | TransformParametersType |
|
typedef Superclass::TransformPointer | TransformPointer |
|
typedef Superclass::TransformType | TransformType |
|
|
virtual const char * | GetClassName () const |
|
virtual void | GetDerivative (const ParametersType ¶meters, DerivativeType &derivative) const |
|
virtual const FixedImageType * | GetFixedImage (unsigned int pos) const |
|
virtual const FixedImageType * | GetFixedImage (void) const |
|
virtual const FixedImageMaskType * | GetFixedImageMask (unsigned int pos) const |
|
virtual const FixedImageMaskType * | GetFixedImageMask (void) const |
|
virtual const FixedImageRegionType & | GetFixedImageRegion (unsigned int pos) const |
|
virtual const FixedImageRegionType & | GetFixedImageRegion (void) const |
|
virtual const InterpolatorType * | GetInterpolator (unsigned int pos) const |
|
virtual const InterpolatorType * | GetInterpolator (void) const |
|
SingleValuedCostFunctionType * | GetMetric (unsigned int count) const |
|
double | GetMetricComputationTime (unsigned int pos) const |
|
const DerivativeType & | GetMetricDerivative (unsigned int pos) const |
|
double | GetMetricDerivativeMagnitude (unsigned int pos) const |
|
double | GetMetricRelativeWeight (unsigned int pos) const |
|
MeasureType | GetMetricValue (unsigned int pos) const |
|
double | GetMetricWeight (unsigned int pos) const |
|
virtual const MovingImageType * | GetMovingImage (unsigned int pos) const |
|
virtual const MovingImageType * | GetMovingImage (void) const |
|
virtual const MovingImageMaskType * | GetMovingImageMask (unsigned int pos) const |
|
virtual const MovingImageMaskType * | GetMovingImageMask (void) const |
|
virtual unsigned long | GetMTime () const |
|
virtual unsigned int | GetNumberOfMetrics () const |
|
virtual const SizeValueType & | GetNumberOfPixelsCounted (void) const |
|
virtual void | GetSelfHessian (const TransformParametersType ¶meters, HessianType &H) const |
|
virtual const TransformType * | GetTransform (unsigned int pos) const |
|
virtual const TransformType * | GetTransform (void) const |
|
bool | GetUseMetric (const unsigned int pos) const |
|
virtual bool | GetUseRelativeWeights () |
|
virtual MeasureType | GetValue (const ParametersType ¶meters) const |
|
virtual void | GetValueAndDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
|
virtual void | Initialize (void) throw ( ExceptionObject ) |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, TMovingImage::ImageDimension) |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, TFixedImage::ImageDimension) |
|
virtual void | SetFixedImage (const FixedImageType *_arg) |
|
virtual void | SetFixedImage (const FixedImageType *_arg, unsigned int pos) |
|
virtual void | SetFixedImageMask (FixedImageMaskType *_arg) |
|
virtual void | SetFixedImageMask (FixedImageMaskType *_arg, unsigned int pos) |
|
virtual void | SetFixedImageRegion (const FixedImageRegionType _arg) |
|
virtual void | SetFixedImageRegion (const FixedImageRegionType _arg, unsigned int pos) |
|
virtual void | SetInterpolator (InterpolatorType *_arg) |
|
virtual void | SetInterpolator (InterpolatorType *_arg, unsigned int pos) |
|
void | SetMetric (SingleValuedCostFunctionType *metric, unsigned int pos) |
|
void | SetMetricRelativeWeight (double weight, unsigned int pos) |
|
void | SetMetricWeight (double weight, unsigned int pos) |
|
virtual void | SetMovingImage (const MovingImageType *_arg) |
|
virtual void | SetMovingImage (const MovingImageType *_arg, unsigned int pos) |
|
virtual void | SetMovingImageMask (MovingImageMaskType *_arg) |
|
virtual void | SetMovingImageMask (MovingImageMaskType *_arg, unsigned int pos) |
|
void | SetNumberOfMetrics (unsigned int count) |
|
virtual void | SetTransform (TransformType *_arg) |
|
virtual void | SetTransform (TransformType *_arg, unsigned int pos) |
|
void | SetUseAllMetrics (void) |
|
void | SetUseMetric (const bool use, const unsigned int pos) |
|
virtual void | SetUseMultiThread (bool _arg) |
|
virtual void | SetUseRelativeWeights (bool _arg) |
|
virtual void | BeforeThreadedGetValueAndDerivative (const TransformParametersType ¶meters) const |
|
virtual const FixedImageLimiterType * | GetFixedImageLimiter () |
|
virtual double | GetFixedLimitRangeRatio () const |
|
virtual ImageSamplerType * | GetImageSampler (void) const |
|
virtual const MovingImageDerivativeScalesType & | GetMovingImageDerivativeScales () |
|
virtual const MovingImageLimiterType * | GetMovingImageLimiter () |
|
virtual double | GetMovingLimitRangeRatio () const |
|
virtual double | GetRequiredRatioOfValidSamples () const |
|
virtual bool | GetScaleGradientWithRespectToMovingImageOrientation () const |
|
const AdvancedTransformType * | GetTransform (void) const |
|
virtual bool | GetUseFixedImageLimiter () const |
|
virtual bool | GetUseImageSampler () const |
|
virtual const bool & | GetUseMetricSingleThreaded () |
|
virtual bool | GetUseMovingImageDerivativeScales () const |
|
virtual bool | GetUseMovingImageLimiter () const |
|
virtual const bool & | GetUseMultiThread () |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, TMovingImage::ImageDimension) |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, TFixedImage::ImageDimension) |
|
virtual void | SetFixedImageLimiter (FixedImageLimiterType *_arg) |
|
virtual void | SetFixedLimitRangeRatio (double _arg) |
|
virtual void | SetImageSampler (ImageSamplerType *_arg) |
|
virtual void | SetMovingImageDerivativeScales (MovingImageDerivativeScalesType _arg) |
|
virtual void | SetMovingImageLimiter (MovingImageLimiterType *_arg) |
|
virtual void | SetMovingLimitRangeRatio (double _arg) |
|
virtual void | SetNumberOfThreads (ThreadIdType numberOfThreads) |
|
virtual void | SetRequiredRatioOfValidSamples (double _arg) |
|
virtual void | SetScaleGradientWithRespectToMovingImageOrientation (bool _arg) |
|
virtual void | SetTransform (AdvancedTransformType *arg) |
|
virtual void | SetUseMetricSingleThreaded (bool _arg) |
|
virtual void | SetUseMovingImageDerivativeScales (bool _arg) |
|
virtual void | UseMetricSingleThreadedOff () |
|
virtual void | UseMetricSingleThreadedOn () |
|
virtual void | UseMultiThreadOff () |
|
virtual void | UseMultiThreadOn () |
|
|
| CombinationImageToImageMetric () |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
virtual | ~CombinationImageToImageMetric () |
|
| AdvancedImageToImageMetric () |
|
virtual void | AfterThreadedGetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const |
|
virtual void | CheckForAdvancedTransform (void) |
|
virtual void | CheckForBSplineInterpolator (void) |
|
virtual void | CheckForBSplineTransform (void) |
|
virtual void | CheckNumberOfSamples (unsigned long wanted, unsigned long found) const |
|
virtual void | ComputeFixedImageExtrema (const FixedImageType *image, const FixedImageRegionType ®ion) |
|
virtual void | ComputeMovingImageExtrema (const MovingImageType *image, const MovingImageRegionType ®ion) |
|
virtual bool | EvaluateMovingImageValueAndDerivative (const MovingImagePointType &mappedPoint, RealType &movingImageValue, MovingImageDerivativeType *gradient) const |
|
virtual bool | EvaluateTransformJacobian (const FixedImagePointType &fixedImagePoint, TransformJacobianType &jacobian, NonZeroJacobianIndicesType &nzji) const |
|
virtual void | EvaluateTransformJacobianInnerProduct (const TransformJacobianType &jacobian, const MovingImageDerivativeType &movingImageDerivative, DerivativeType &imageJacobian) const |
|
virtual void | InitializeImageSampler (void) throw ( ExceptionObject ) |
|
virtual void | InitializeLimiters (void) |
|
virtual bool | IsInsideMovingMask (const MovingImagePointType &point) const |
|
| itkAlignedTypedef (ITK_CACHE_LINE_ALIGNMENT, PaddedGetValueAndDerivativePerThreadStruct, AlignedGetValueAndDerivativePerThreadStruct) |
|
| itkPadStruct (ITK_CACHE_LINE_ALIGNMENT, GetValueAndDerivativePerThreadStruct, PaddedGetValueAndDerivativePerThreadStruct) |
|
void | LaunchGetValueAndDerivativeThreaderCallback (void) const |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
virtual void | SetUseFixedImageLimiter (bool _arg) |
|
virtual void | SetUseImageSampler (bool _arg) |
|
virtual void | SetUseMovingImageLimiter (bool _arg) |
|
virtual void | ThreadedGetValueAndDerivative (ThreadIdType threadID) |
|
virtual bool | TransformPoint (const FixedImagePointType &fixedImagePoint, MovingImagePointType &mappedPoint) const |
|
virtual | ~AdvancedImageToImageMetric () |
|