ITK  4.6.0
Insight Segmentation and Registration Toolkit
itkImageToImageMetricv4.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright Insight Software Consortium
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 #ifndef __itkImageToImageMetricv4_h
19 #define __itkImageToImageMetricv4_h
20 
21 #include "itkCovariantVector.h"
22 #include "itkImageFunction.h"
25 #include "itkSpatialObject.h"
26 #include "itkResampleImageFilter.h"
29 #include "itkImageToImageFilter.h"
31 #include "itkPointSet.h"
34 
35 namespace itk
36 {
167 template<typename TFixedImage,typename TMovingImage,typename TVirtualImage = TFixedImage,
168  typename TInternalComputationValueType = double,
169  typename TMetricTraits = DefaultImageToImageMetricTraitsv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType >
170  >
172  : public ObjectToObjectMetric<TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType>
173 {
174 public:
175 
181 
184 
188  typedef TInternalComputationValueType InternalComputationValueType;
189 
192 
196 
199 
203 
210 
216 
220 
222  typedef TFixedImage FixedImageType;
223  typedef typename FixedImageType::PixelType FixedImagePixelType;
225  typedef typename FixedImageType::Pointer FixedImagePointer;
226  typedef typename FixedImageType::ConstPointer FixedImageConstPointer;
227  typedef typename FixedImageType::PointType FixedImagePointType;
228  typedef typename FixedImageType::IndexType FixedImageIndexType;
229  typedef TMovingImage MovingImageType;
230  typedef typename MovingImageType::PixelType MovingImagePixelType;
232  typedef typename MovingImageType::Pointer MovingImagePointer;
233  typedef typename MovingImageType::ConstPointer MovingImageConstPointer;
234  typedef typename MovingImageType::PointType MovingImagePointType;
235  typedef typename MovingImageType::RegionType MovingImageRegionType;
236  typedef typename MovingImageType::IndexType MovingImageIndexType;
237 
252 
254  typedef TMetricTraits MetricTraits;
255 
256  /* Image dimension accessors */
260 
266 
272 
278 
288 
290  typedef typename MetricTraits::FixedImageGradientType FixedImageGradientType;
291  typedef typename MetricTraits::MovingImageGradientType MovingImageGradientType;
292  typedef typename MetricTraits::VirtualImageGradientType VirtualImageGradientType;
293 
296 
299 
302 
306  typedef typename MetricTraits::FixedRealType FixedRealType;
307  typedef typename MetricTraits::MovingRealType MovingRealType;
308 
311 
312  typedef typename MetricTraits::FixedGradientPixelType FixedGradientPixelType;
313  typedef typename MetricTraits::MovingGradientPixelType MovingGradientPixelType;
314 
315  typedef typename MetricTraits::FixedImageGradientImageType FixedImageGradientImageType;
316  typedef typename MetricTraits::MovingImageGradientImageType MovingImageGradientImageType;
317 
318  typedef typename FixedImageGradientImageType::Pointer FixedImageGradientImagePointer;
319  typedef typename MovingImageGradientImageType::Pointer MovingImageGradientImagePointer;
320 
321  typedef typename MetricTraits::FixedImageGradientFilterType FixedImageGradientFilterType;
322  typedef typename MetricTraits::MovingImageGradientFilterType MovingImageGradientFilterType;
323 
324  typedef typename FixedImageGradientFilterType::Pointer
326  typedef typename MovingImageGradientFilterType::Pointer
328 
329 
331  typedef typename MetricTraits::DefaultFixedImageGradientFilter DefaultFixedImageGradientFilter;
332  typedef typename MetricTraits::DefaultMovingImageGradientFilter DefaultMovingImageGradientFilter;
333 
336  typedef typename MetricTraits::FixedImageGradientCalculatorType
338  typedef typename MetricTraits::MovingImageGradientCalculatorType
340 
341  typedef typename FixedImageGradientCalculatorType::Pointer
343  typedef typename MovingImageGradientCalculatorType::Pointer
345 
347  typedef typename MetricTraits::DefaultFixedImageGradientCalculator DefaultFixedImageGradientCalculator;
348  typedef typename MetricTraits::DefaultMovingImageGradientCalculator DefaultMovingImageGradientCalculator;
349 
352 
355  typedef typename DerivativeType::ValueType DerivativeValueType;
356 
360 
361  /* Get/Set the Fixed Image. */
362  itkSetConstObjectMacro(FixedImage, FixedImageType);
363  itkGetConstObjectMacro(FixedImage, FixedImageType);
364 
366  itkSetConstObjectMacro(MovingImage, MovingImageType);
367  itkGetConstObjectMacro(MovingImage, MovingImageType);
369 
371  itkSetObjectMacro(FixedInterpolator, FixedInterpolatorType);
372 
374  itkGetModifiableObjectMacro(FixedInterpolator, FixedInterpolatorType);
375 
377  itkSetObjectMacro(MovingInterpolator, MovingInterpolatorType);
378 
380  itkGetModifiableObjectMacro(MovingInterpolator, MovingInterpolatorType);
381 
383  itkSetObjectMacro(MovingImageMask, MovingImageMaskType);
384  itkSetConstObjectMacro(MovingImageMask, MovingImageMaskType);
385  itkGetConstObjectMacro(MovingImageMask, MovingImageMaskType);
387 
389  itkSetObjectMacro(FixedImageMask, FixedImageMaskType);
390  itkSetConstObjectMacro(FixedImageMask, FixedImageMaskType);
391  itkGetConstObjectMacro(FixedImageMask, FixedImageMaskType);
393 
397  itkSetObjectMacro(FixedSampledPointSet, FixedSampledPointSetType);
398  itkSetConstObjectMacro(FixedSampledPointSet, FixedSampledPointSetType);
399  itkGetConstObjectMacro(FixedSampledPointSet, FixedSampledPointSetType);
401 
403  itkSetMacro(UseFixedSampledPointSet, bool);
404  itkGetConstReferenceMacro(UseFixedSampledPointSet, bool);
405  itkBooleanMacro(UseFixedSampledPointSet);
407 
409  itkGetModifiableObjectMacro(VirtualSampledPointSet, VirtualPointSetType);
410 
412  itkSetObjectMacro( FixedImageGradientFilter, FixedImageGradientFilterType );
413  itkGetModifiableObjectMacro(FixedImageGradientFilter, FixedImageGradientFilterType );
414  itkSetObjectMacro( MovingImageGradientFilter, MovingImageGradientFilterType );
415  itkGetModifiableObjectMacro(MovingImageGradientFilter, MovingImageGradientFilterType );
417 
419  itkSetObjectMacro( FixedImageGradientCalculator, FixedImageGradientCalculatorType);
420  itkGetModifiableObjectMacro(FixedImageGradientCalculator, FixedImageGradientCalculatorType);
421  itkSetObjectMacro( MovingImageGradientCalculator, MovingImageGradientCalculatorType);
422  itkGetModifiableObjectMacro(MovingImageGradientCalculator, MovingImageGradientCalculatorType);
424 
427  itkSetMacro(UseFixedImageGradientFilter, bool);
428  itkGetConstReferenceMacro(UseFixedImageGradientFilter, bool);
429  itkBooleanMacro(UseFixedImageGradientFilter);
431 
433  itkSetMacro(UseMovingImageGradientFilter, bool);
434  itkGetConstReferenceMacro(UseMovingImageGradientFilter, bool);
435  itkBooleanMacro(UseMovingImageGradientFilter);
437 
441  virtual ThreadIdType GetNumberOfThreadsUsed() const;
442 
446  virtual void SetMaximumNumberOfThreads( const ThreadIdType threads );
447  virtual ThreadIdType GetMaximumNumberOfThreads() const;
449 
451  itkGetModifiableObjectMacro(FixedImageGradientImage, FixedImageGradientImageType);
452 
454  itkGetModifiableObjectMacro(MovingImageGradientImage, MovingImageGradientImageType);
455 
457  itkGetConstMacro( NumberOfValidPoints, SizeValueType );
458 
464 
478  itkSetMacro(UseFloatingPointCorrection, bool);
479  itkGetConstReferenceMacro(UseFloatingPointCorrection, bool);
480  itkBooleanMacro(UseFloatingPointCorrection);
482 
487  itkSetMacro( FloatingPointCorrectionResolution, DerivativeValueType );
488  itkGetConstMacro( FloatingPointCorrectionResolution, DerivativeValueType );
490 
491  /* Initialize the metric before calling GetValue or GetDerivative.
492  * Derived classes must call this Superclass version if they override
493  * this to perform their own initialization.
494  * \note This is meant to be called once for a particular metric setup.
495  * That is, when used in registration, this method would be called once
496  * before entering the registration loop, during which GetValue or
497  * GetDerivative will be called repeatedly. It must be called again if
498  * metric settings are changed before beginning a new registration. */
499  virtual void Initialize(void) throw ( itk::ExceptionObject );
500 
501  virtual MeasureType GetValue() const;
502 
503  virtual void GetDerivative( DerivativeType & ) const;
504 
510  virtual void GetValueAndDerivative( MeasureType & value, DerivativeType & derivative ) const;
511 
515  itkGetConstReferenceMacro(NumberOfSkippedFixedSampledPoints, SizeValueType);
516 
517  virtual bool SupportsArbitraryVirtualDomainSamples( void ) const
518  {
519  return true;
520  }
521 
522 protected:
523  /* Interpolators for image gradient filters. */
530 
535 
536  /* A DenseGetValueAndDerivativeThreader
537  * Derived classes must define this class and assign it in their constructor
538  * if threaded processing in GetValueAndDerivative is performed. */
540  /* A SparseGetValueAndDerivativeThreader
541  * Derived classes must define this class and assign it in their constructor
542  * if threaded processing in GetValueAndDerivative is performed. */
544 
549  virtual void InitializeForIteration() const;
550 
559  const VirtualPointType & virtualPoint,
560  FixedImagePointType & mappedFixedPoint,
561  FixedImagePixelType & mappedFixedPixelValue ) const;
562 
565  const VirtualPointType & virtualPoint,
566  MovingImagePointType & mappedMovingPoint,
567  MovingImagePixelType & mappedMovingPixelValue ) const;
568 
570  virtual void ComputeFixedImageGradientAtPoint( const FixedImagePointType & mappedPoint, FixedImageGradientType & gradient ) const;
571 
573  virtual void ComputeMovingImageGradientAtPoint( const MovingImagePointType & mappedPoint, MovingImageGradientType & gradient ) const;
574 
579 
583  virtual void ComputeMovingImageGradientFilterImage() const;
584 
591  virtual void GetValueAndDerivativeExecute() const;
592 
598 
600  itkGetConstMacro( ComputeDerivative, bool );
601 
604 
610 
615 
619 
622  typename DefaultFixedImageGradientFilter::Pointer
624  typename DefaultMovingImageGradientFilter::Pointer
626 
629  typename DefaultFixedImageGradientCalculator::Pointer
631  typename DefaultMovingImageGradientCalculator::Pointer
633 
637 
641 
649 
653 
657 
660 
662  virtual ~ImageToImageMetricv4();
663 
664  void PrintSelf(std::ostream& os, Indent indent) const;
665 
666 private:
669 
671  void LocalTransformPoint(const typename FixedTransformType::OutputPointType &virtualPoint,
672  typename FixedTransformType::OutputPointType &mappedFixedPoint) const
673  {
674  mappedFixedPoint = this->m_FixedTransform->TransformPoint(virtualPoint);
675  }
676  // cast the virtual point
677  template <typename TVirtualPoint>
678  void LocalTransformPoint(const TVirtualPoint &virtualPoint,
679  typename FixedTransformType::OutputPointType &mappedFixedPoint) const
680  {
681  typename FixedTransformType::OutputPointType localVirtualPoint;
683 
684  localVirtualPoint.CastFrom(virtualPoint);
685 
686  mappedFixedPoint = this->m_FixedTransform->TransformPoint( localVirtualPoint );
687  }
688  // cast the mapped Fixed Point
689  template <typename TFixedImagePoint>
690  void LocalTransformPoint(const typename FixedTransformType::OutputPointType &virtualPoint,
691  TFixedImagePoint &mappedFixedPoint) const
692  {
693  typename FixedTransformType::OutputPointType localMappedFixedPoint;
694  localMappedFixedPoint.CastFrom(mappedFixedPoint);
695  localMappedFixedPoint = this->m_FixedTransform->TransformPoint( virtualPoint );
696  mappedFixedPoint.CastFrom(localMappedFixedPoint);
697  }
698  // cast both mapped and fixed point.
699  template <typename TVirtualPoint,typename TFixedImagePoint>
700  void LocalTransformPoint(const TVirtualPoint &virtualPoint,
701  TFixedImagePoint &mappedFixedPoint) const
702  {
703  typename FixedTransformType::OutputPointType localVirtualPoint;
704  typename FixedTransformType::OutputPointType localMappedFixedPoint;
705 
706  localVirtualPoint.CastFrom(virtualPoint);
707  localMappedFixedPoint.CastFrom(mappedFixedPoint);
708 
709  localMappedFixedPoint = this->m_FixedTransform->TransformPoint( localVirtualPoint );
710  mappedFixedPoint.CastFrom(localMappedFixedPoint);
711  }
712 
716 
717  ImageToImageMetricv4(const Self &); //purposely not implemented
718  void operator=(const Self &); //purposely not implemented
719 
724 
727 
729 
731  mutable bool m_ComputeDerivative;
732 
735  #ifdef ITK_USE_CONCEPT_CHECKING
738  itkConceptMacro( OnlyDefinedForFloatingPointTypes0, ( itk::Concept::IsFloatingPoint<FixedImagePixelValueType> ) );
739  itkConceptMacro( OnlyDefinedForFloatingPointTypes1, ( itk::Concept::IsFloatingPoint<MovingImagePixelValueType> ) );
740  #endif // ITK_USE_CONCEPT_CHECKING
741 
742 
743 };
744 }//namespace itk
745 
746 #ifndef ITK_MANUAL_INSTANTIATION
747 #include "itkImageToImageMetricv4.hxx"
748 #endif
749 
750 #endif
FixedImageMaskConstPointer m_FixedImageMask
MovingImagePixelType MovingPixelType
Superclass::CoordinateRepresentationType CoordinateRepresentationType
void LocalTransformPoint(const typename FixedTransformType::OutputPointType &virtualPoint, typename FixedTransformType::OutputPointType &mappedFixedPoint) const
void LocalTransformPoint(const TVirtualPoint &virtualPoint, typename FixedTransformType::OutputPointType &mappedFixedPoint) const
MetricTraits::DefaultMovingImageGradientCalculator DefaultMovingImageGradientCalculator
Superclass::VirtualSpacingType VirtualSpacingType
virtual void ComputeMovingImageGradientFilterImage() const
Superclass::VirtualRegionType VirtualRegionType
SizeValueType GetNumberOfDomainPoints() const
SpatialObject< itkGetStaticConstMacro(MovingImageDimension) > MovingImageMaskType
MetricTraits::MovingRealType MovingRealType
virtual ThreadIdType GetMaximumNumberOfThreads() const
Superclass::VirtualPointSetType VirtualPointSetType
virtual void ComputeMovingImageGradientAtPoint(const MovingImagePointType &mappedPoint, MovingImageGradientType &gradient) const
ImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedIndexedContainerPartitioner, Self >::Pointer m_SparseGetValueAndDerivativeThreader
Superclass::DimensionType DimensionType
virtual void InitializeDefaultMovingImageGradientFilter(void)
Light weight base class for most itk classes.
void MapFixedSampledPointSetToVirtual(void)
Superclass::MovingTransformJacobianType MovingTransformJacobianType
PointSet< typename FixedImageType::PixelType, itkGetStaticConstMacro(FixedImageDimension)> FixedSampledPointSetType
bool TransformAndEvaluateFixedPoint(const VirtualPointType &virtualPoint, FixedImagePointType &mappedFixedPoint, FixedImagePixelType &mappedFixedPixelValue) const
Superclass::VirtualPointType VirtualOriginType
Superclass::JacobianType JacobianType
Superclass::MeasureType MeasureType
TPixelType::ValueType ValueType
LinearInterpolateImageFunction< FixedImageGradientImageType, CoordinateRepresentationType > FixedImageGradientInterpolatorType
Superclass::VirtualIndexType VirtualIndexType
Superclass::FixedTransformPointer FixedTransformPointer
Transform< TInternalComputationValueType, TVirtualImage::ImageDimension, TFixedDimension > FixedTransformType
virtual void GetDerivative(DerivativeType &) const
MovingImageGradientFilterType::Pointer MovingImageGradientFilterPointer
virtual void ComputeFixedImageGradientFilterImage()
MetricTraits::MovingGradientPixelType MovingGradientPixelType
virtual void SetMaximumNumberOfThreads(const ThreadIdType threads)
Provides threading for ImageToImageMetricv4::GetValueAndDerivative.
Superclass::ParametersValueType ParametersValueType
Superclass::FixedTransformType FixedTransformType
virtual bool SupportsArbitraryVirtualDomainSamples(void) const
DefaultFixedImageGradientCalculator::Pointer m_DefaultFixedImageGradientCalculator
Superclass::MovingTransformType MovingTransformType
Superclass::VirtualPixelType VirtualPixelType
MetricTraits::FixedGradientPixelType FixedGradientPixelType
SmartPointer< const Self > ConstPointer
void operator=(const Self &)
MetricTraits::DefaultFixedImageGradientFilter DefaultFixedImageGradientFilter
DefaultMovingImageGradientFilter::Pointer m_DefaultMovingImageGradientFilter
FixedImageMaskType::ConstPointer FixedImageMaskConstPointer
Superclass::VirtualImagePointer VirtualImagePointer
Class for partitioning of an ImageRegion.
FixedImageGradientCalculatorPointer m_FixedImageGradientCalculator
TInternalComputationValueType ParametersValueType
SizeValueType m_NumberOfSkippedFixedSampledPoints
CovariantVector< typename VirtualImageGradientType::ValueType, VirtualImageDimension > VirtualImageComponentGradientType
MovingInterpolatorType::Pointer MovingInterpolatorPointer
void PrintSelf(std::ostream &os, Indent indent) const
void LocalTransformPoint(const TVirtualPoint &virtualPoint, TFixedImagePoint &mappedFixedPoint) const
PixelTraits< FixedImagePixelType >::ValueType FixedImagePixelValueType
Superclass::DimensionType ImageDimensionType
DefaultFixedImageGradientFilter::Pointer m_DefaultFixedImageGradientFilter
MovingImageGradientFilterPointer m_MovingImageGradientFilter
Computes similarity between regions of two objects.
ImageToImageMetricv4GetValueAndDerivativeThreader< ThreadedImageRegionPartitioner< VirtualImageDimension >, Self >::Pointer m_DenseGetValueAndDerivativeThreader
Superclass::NumberOfParametersType NumberOfParametersType
MetricTraits::FixedImageGradientType FixedImageGradientType
MovingImageType::ConstPointer MovingImageConstPointer
Superclass::VirtualDirectionType VirtualDirectionType
MetricTraits::FixedImageGradientFilterType FixedImageGradientFilterType
virtual void InitializeDefaultFixedImageGradientFilter(void)
void LocalTransformPoint(const typename FixedTransformType::OutputPointType &virtualPoint, TFixedImagePoint &mappedFixedPoint) const
Superclass::MovingOutputPointType MovingOutputPointType
unsigned long SizeValueType
Definition: itkIntTypes.h:143
DerivativeType::ValueType DerivativeValueType
Superclass::ParametersType ParametersType
LinearInterpolateImageFunction< MovingImageGradientImageType, CoordinateRepresentationType > MovingImageGradientInterpolatorType
TInternalComputationValueType CoordinateRepresentationType
MetricTraits::FixedRealType FixedRealType
Superclass::MovingTransformParametersType MovingTransformParametersType
MetricTraits::DefaultMovingImageGradientFilter DefaultMovingImageGradientFilter
FixedImageGradientFilterType::Pointer FixedImageGradientFilterPointer
FixedImageType::PixelType FixedImagePixelType
MetricTraits::FixedImageGradientImageType FixedImageGradientImageType
SpatialObject< itkGetStaticConstMacro(FixedImageDimension) > FixedImageMaskType
FixedImageType::IndexType FixedImageIndexType
CovariantVector< typename MovingImageGradientType::ValueType, MovingImageDimension > MovingImageComponentGradientType
PixelTraits< MovingImagePixelType >::ValueType MovingImagePixelValueType
MovingImageMaskType::ConstPointer MovingImageMaskConstPointer
Superclass::VirtualPointType VirtualPointType
NumericTraits< MovingRealType >::ScalarRealType MovingScalarRealType
FixedImageGradientImageType::Pointer FixedImageGradientImagePointer
FixedImageGradientImagePointer m_FixedImageGradientImage
Superclass::VirtualPointSetPointer VirtualPointSetPointer
FixedInterpolatorPointer m_FixedInterpolator
FixedImageGradientCalculatorType::Pointer FixedImageGradientCalculatorPointer
VirtualPointSetPointer m_VirtualSampledPointSet
MovingImageGradientImagePointer m_MovingImageGradientImage
Transform< TInternalComputationValueType, TVirtualImage::ImageDimension, TMovingDimension > MovingTransformType
bool TransformAndEvaluateMovingPoint(const VirtualPointType &virtualPoint, MovingImagePointType &mappedMovingPoint, MovingImagePixelType &mappedMovingPixelValue) const
FixedImageMaskType::Pointer FixedImageMaskPointer
virtual void GetValueAndDerivative(MeasureType &value, DerivativeType &derivative) const
MovingImageGradientCalculatorType::Pointer MovingImageGradientCalculatorPointer
Superclass::DerivativeType DerivativeType
TInternalComputationValueType InternalComputationValueType
Implementation of the composite pattern.
MetricTraits::MovingImageGradientFilterType MovingImageGradientFilterType
Superclass::FixedTransformJacobianType FixedTransformJacobianType
MovingImageGradientInterpolatorType::Pointer m_MovingImageGradientInterpolator
A superclass of the N-dimensional mesh structure; supports point (geometric coordinate and attribute)...
Definition: itkPointSet.h:84
FixedSampledPointSetConstPointer m_FixedSampledPointSet
static const DimensionType MovingImageDimension
MovingImageMaskConstPointer m_MovingImageMask
Standard exception handling object.
virtual void InitializeForIteration() const
FixedImageType::Pointer FixedImagePointer
Superclass::FixedTransformParametersType FixedTransformParametersType
MovingInterpolatorPointer m_MovingInterpolator
ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType > Superclass
MetricTraits::MovingImageGradientCalculatorType MovingImageGradientCalculatorType
Superclass::MovingTransformPointer MovingTransformPointer
NumericTraits< FixedRealType >::ScalarRealType FixedScalarRealType
InterpolateImageFunction< MovingImageType, CoordinateRepresentationType > MovingInterpolatorType
FixedImageConstPointer m_FixedImage
Linearly interpolate an image at specified positions.
MovingImageType::IndexType MovingImageIndexType
MovingImageType::PixelType MovingImagePixelType
Superclass::MovingInputPointType MovingInputPointType
virtual void ComputeFixedImageGradientAtPoint(const FixedImagePointType &mappedPoint, FixedImageGradientType &gradient) const
InterpolateImageFunction< FixedImageType, CoordinateRepresentationType > FixedInterpolatorType
Base class for all image interpolaters.
MovingImageType::PointType MovingImagePointType
MetricTraits::VirtualImageGradientType VirtualImageGradientType
Provides threading for ImageToImageMetricv4::GetValueAndDerivative.
MovingImageMaskType::Pointer MovingImageMaskPointer
Superclass::FixedOutputPointType FixedOutputPointType
FixedInterpolatorType::Pointer FixedInterpolatorPointer
DerivativeValueType m_FloatingPointCorrectionResolution
MetricTraits::MovingImageGradientType MovingImageGradientType
virtual void Initialize(void)
FixedSampledPointSetType::Pointer FixedSampledPointSetPointer
Control indentation during Print() invocation.
Definition: itkIndent.h:49
MovingImageConstPointer m_MovingImage
virtual MeasureType GetValue() const
CovariantVector< typename FixedImageGradientType::ValueType, FixedImageDimension > FixedImageComponentGradientType
FixedImageType::ConstPointer FixedImageConstPointer
MovingImageType::Pointer MovingImagePointer
FixedImageGradientInterpolatorType::Pointer m_FixedImageGradientInterpolator
MovingImageType::RegionType MovingImageRegionType
static const DimensionType FixedImageDimension
FixedImageType::PointType FixedImagePointType
MovingImageGradientImageType::Pointer MovingImageGradientImagePointer
static const DimensionType VirtualImageDimension
#define itkConceptMacro(name, concept)
A templated class holding a n-Dimensional covariant vector.
MetricTraits::MovingImageGradientImageType MovingImageGradientImageType
Superclass::VirtualSizeType VirtualRadiusType
MetricTraits::DefaultFixedImageGradientCalculator DefaultFixedImageGradientCalculator
virtual void GetValueAndDerivativeExecute() const
virtual ThreadIdType GetNumberOfThreadsUsed() const
Superclass::VirtualSizeType VirtualSizeType
Superclass::FixedInputPointType FixedInputPointType
MovingImageGradientCalculatorPointer m_MovingImageGradientCalculator
DefaultMovingImageGradientCalculator::Pointer m_DefaultMovingImageGradientCalculator
MetricTraits::FixedImageGradientCalculatorType FixedImageGradientCalculatorType
FixedImageGradientFilterPointer m_FixedImageGradientFilter
Superclass::VirtualImageType VirtualImageType
Superclass::GradientSourceType GradientSourceType
unsigned int ThreadIdType
Definition: itkIntTypes.h:159
FixedSampledPointSetType::ConstPointer FixedSampledPointSetConstPointer