Inheritance diagram for itk::GradientDifferenceImageToImageMetric< TFixedImage, TMovingImage >:
This Class is templated over the type of the Images to be compared and over the type of transformation and Iterpolator to be used.
This metric computes the sum of squared differences between pixels in the derivatives of the moving and fixed images after passing the squared difference through a function of type
.
Implementation of this class is based on: Hipwell, J. H., et. al. (2003), "Intensity-Based 2-D-3D Registration of Cerebral Angiograms,", IEEE Transactions on Medical Imaging, 22(11):1417-1426.
|
Public Types |
| typedef CastFixedImageFilterType::Pointer | CastFixedImageFilterPointer |
typedef itk::CastImageFilter<
FixedImageType, FixedGradientImageType > | CastFixedImageFilterType |
| typedef CastMovedImageFilterType::Pointer | CastMovedImageFilterPointer |
typedef itk::CastImageFilter<
TransformedMovingImageType,
MovedGradientImageType > | CastMovedImageFilterType |
typedef SmartPointer< const
Self > | ConstPointer |
| typedef Superclass::ParametersValueType | CoordinateRepresentationType |
| typedef Superclass::DerivativeType | DerivativeType |
typedef itk::Image< RealType,
itkGetStaticConstMacro(FixedImageDimension) | FixedGradientImageType ) |
| typedef FixedGradientImageType::PixelType | FixedGradientPixelType |
| typedef Superclass::FixedImageConstPointer | FixedImageConstPointer |
| typedef FixedImageMaskType::Pointer | FixedImageMaskPointer |
| typedef SpatialObject< itkGetStaticConstMacro(FixedImageDimension) | FixedImageMaskType ) |
| typedef TFixedImage::PixelType | FixedImagePixelType |
| typedef FixedImageType::RegionType | FixedImageRegionType |
| typedef Superclass::FixedImageType | FixedImageType |
| typedef GradientImageFilterType::Pointer | GradientImageFilterPointer |
typedef GradientRecursiveGaussianImageFilter<
MovingImageType, GradientImageType > | GradientImageFilterType |
| typedef SmartPointer< GradientImageType > | GradientImagePointer |
typedef Image< GradientPixelType,
itkGetStaticConstMacro(MovingImageDimension) | GradientImageType ) |
typedef CovariantVector< RealType,
itkGetStaticConstMacro(MovingImageDimension) | GradientPixelType ) |
| typedef TransformType::InputPointType | InputPointType |
| typedef InterpolatorType::Pointer | InterpolatorPointer |
typedef InterpolateImageFunction<
MovingImageType, CoordinateRepresentationType > | InterpolatorType |
| typedef Superclass::MeasureType | MeasureType |
typedef itk::Image< RealType,
itkGetStaticConstMacro(MovedImageDimension) | MovedGradientImageType ) |
| typedef MovedGradientImageType::PixelType | MovedGradientPixelType |
| typedef TMovingImage::PixelType | MovedImagePixelType |
| typedef Superclass::MovingImageConstPointer | MovingImageConstPointer |
| typedef MovingImageMaskType::Pointer | MovingImageMaskPointer |
| typedef SpatialObject< itkGetStaticConstMacro(MovingImageDimension) | MovingImageMaskType ) |
| typedef TMovingImage::PixelType | MovingImagePixelType |
| typedef Superclass::MovingImageType | MovingImageType |
| typedef TransformType::OutputPointType | OutputPointType |
| typedef Superclass::ParametersType | ParametersType |
| typedef double | ParametersValueType |
| typedef SmartPointer< Self > | Pointer |
| typedef Superclass::RealType | RealType |
| typedef GradientDifferenceImageToImageMetric | Self |
typedef ImageToImageMetric<
TFixedImage, TMovingImage > | Superclass |
typedef itk::Image< FixedImagePixelType,
itkGetStaticConstMacro(FixedImageDimension) | TransformedMovingImageType ) |
| typedef Superclass::TransformJacobianType | TransformJacobianType |
typedef itk::ResampleImageFilter<
MovingImageType, TransformedMovingImageType > | TransformMovingImageFilterType |
| typedef Superclass::TransformParametersType | TransformParametersType |
| typedef Superclass::TransformPointer | TransformPointer |
| typedef Superclass::TransformType | TransformType |
Public Member Functions |
| virtual void | ComputeGradientOff () |
| virtual void | ComputeGradientOn () |
| virtual LightObject::Pointer | CreateAnother () const |
| virtual void | DebugOff () const |
| virtual void | DebugOn () const |
| virtual void | Delete () |
| Command * | GetCommand (unsigned long tag) |
| virtual const bool & | GetComputeGradient () |
| bool | GetDebug () const |
| virtual void | GetDerivative (const ParametersType ¶meters, DerivativeType &derivative) const =0 |
| void | GetDerivative (const TransformParametersType ¶meters, DerivativeType &derivative) const |
| virtual const FixedImageType * | GetFixedImage () |
| virtual const FixedImageMaskType * | GetFixedImageMask () |
| virtual const FixedImageRegionType & | GetFixedImageRegion () |
| virtual const GradientImageType * | GetGradientImage () |
| virtual const InterpolatorType * | GetInterpolator () |
| const MetaDataDictionary & | GetMetaDataDictionary (void) const |
| MetaDataDictionary & | GetMetaDataDictionary (void) |
| virtual const MovingImageType * | GetMovingImage () |
| virtual const MovingImageMaskType * | GetMovingImageMask () |
| virtual unsigned long | GetMTime () const |
| virtual const char * | GetNameOfClass () const |
| unsigned int | GetNumberOfParameters (void) const |
| virtual const unsigned long & | GetNumberOfPixelsCounted () |
| virtual int | GetReferenceCount () const |
| virtual const TransformType * | GetTransform () |
| virtual MeasureType | GetValue (const ParametersType ¶meters) const =0 |
| MeasureType | GetValue (const TransformParametersType ¶meters) const |
This method returns the value
and derivative of the cost
function corresponding *to
the specified parameters
*virtual void | GetValueAndDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
| void | GetValueAndDerivative (const TransformParametersType ¶meters, MeasureType &Value, DerivativeType &derivative) const |
| bool | HasObserver (const EventObject &event) const |
| virtual void | Initialize (void) throw ( ExceptionObject ) |
| void | InvokeEvent (const EventObject &) const |
| void | InvokeEvent (const EventObject &) |
| Constants for the image dimensions * | itkStaticConstMacro (MovingImageDimension, unsigned int, TMovingImage::ImageDimension) |
| | itkStaticConstMacro (MovedImageDimension, unsigned int, MovingImageType::ImageDimension) |
| | itkStaticConstMacro (FixedImageDimension, unsigned int, TFixedImage::ImageDimension) |
| virtual void | Modified () const |
| void | Print (std::ostream &os, Indent indent=0) const |
| virtual void | Register () const |
| void | RemoveAllObservers () |
| void | RemoveObserver (unsigned long tag) |
Set Get gradient computation
*virtual void | SetComputeGradient (bool _arg) |
| void | SetDebug (bool debugFlag) const |
| virtual void | SetFixedImage (const FixedImageType *_arg) |
Set Get the fixed image mask
*virtual void | SetFixedImageMask (FixedImageMaskType *_arg) |
| virtual void | SetFixedImageRegion (FixedImageRegionType _arg) |
| virtual void | SetInterpolator (InterpolatorType *_arg) |
| void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
| virtual void | SetMovingImage (const MovingImageType *_arg) |
Set Get the moving image mask
*virtual void | SetMovingImageMask (MovingImageMaskType *_arg) |
| virtual void | SetReferenceCount (int) |
| virtual void | SetTransform (TransformType *_arg) |
| void | SetTransformParameters (const ParametersType ¶meters) const |
| virtual void | UnRegister () const |
| void | WriteGradientImagesToFiles (void) const |
Static Public Member Functions |
| static void | BreakOnError () |
| static bool | GetGlobalWarningDisplay () |
| static void | GlobalWarningDisplayOff () |
| static void | GlobalWarningDisplayOn () |
| static Pointer | New () |
This is a global flag that
controls whether any warning
*or error messages are displayed
*static void | SetGlobalWarningDisplay (bool flag) |
Public Attributes |
Allow people to add remove
invoke observers(callbacks)
to any ITK *object.This is
an implementation of the subject/observer design *pattern.An
observer is added by specifying
an event to respond to *and
an itk unsigned lon | AddObserver )(const EventObject &event, Command *) const |
This is a global flag that
controls whether any | debug |
Protected Types |
typedef NeighborhoodOperatorImageFilter<
FixedGradientImageType, FixedGradientImageType > | FixedSobelFilter |
typedef NeighborhoodOperatorImageFilter<
MovedGradientImageType, MovedGradientImageType > | MovedSobelFilter |
Protected Member Functions |
| MeasureType | ComputeMeasure (const TransformParametersType ¶meters, const double *subtractionFactor) const |
| void | ComputeMovedGradientRange (void) const |
| void | ComputeVariance (void) const |
| | GradientDifferenceImageToImageMetric () |
| bool | PrintObservers (std::ostream &os, Indent indent) const |
| void | PrintSelf (std::ostream &os, Indent indent) const |
| virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
| virtual | ~GradientDifferenceImageToImageMetric () |
Protected Attributes |
| bool | m_ComputeGradient |
| FixedImageConstPointer | m_FixedImage |
| FixedImageMaskPointer | m_FixedImageMask |
| GradientImagePointer | m_GradientImage |
| InterpolatorPointer | m_Interpolator |
| MovingImageConstPointer | m_MovingImage |
| MovingImageMaskPointer | m_MovingImageMask |
| unsigned long | m_NumberOfPixelsCounted |
| int | m_ReferenceCount |
| SimpleFastMutexLock | m_ReferenceCountLock |
| TransformPointer | m_Transform |
Methods invoked by virtual
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.*/virtual
void PrintSelf(std voi | PrintHeader )(std::ostream &os, Indent indent) const |