template<typename TFixedImage, typename TMovingImage>
class itk::GradientDifferenceImageToImageMetric< TFixedImage, TMovingImage >
Computes similarity between two objects to be registered.
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 .
- Warning
- THIS IMAGE METRIC IS CURRENTLY UNDER DEBUGGING. USE AT YOUR OWN RISK.
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.
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.
- Examples:
- Examples/RegistrationITKv3/ImageRegistration18.cxx, and Examples/RegistrationITKv4/ImageRegistration18.cxx.
Definition at line 58 of file itkGradientDifferenceImageToImageMetric.h.
|
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::DerivativeType | DerivativeType |
|
typedef itk::Image< RealType,
itkGetStaticConstMacro(FixedImageDimension) > | FixedGradientImageType |
|
typedef
FixedGradientImageType::PixelType | FixedGradientPixelType |
|
typedef
Superclass::FixedImageConstPointer | FixedImageConstPointer |
|
typedef TFixedImage::PixelType | FixedImagePixelType |
|
typedef Superclass::FixedImageType | FixedImageType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef itk::Image< RealType,
itkGetStaticConstMacro(MovedImageDimension) > | MovedGradientImageType |
|
typedef
MovedGradientImageType::PixelType | MovedGradientPixelType |
|
typedef TMovingImage::PixelType | MovedImagePixelType |
|
typedef
Superclass::MovingImageConstPointer | MovingImageConstPointer |
|
typedef Superclass::MovingImageType | MovingImageType |
|
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 |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef
Superclass::ParametersValueType | CoordinateRepresentationType |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef
FixedImageType::ConstPointer | FixedImageConstPointer |
|
typedef std::vector
< FixedImageIndexType > | FixedImageIndexContainer |
|
typedef FixedImageType::IndexType | FixedImageIndexType |
|
typedef
FixedImageIndexType::IndexValueType | FixedImageIndexValueType |
|
typedef
FixedImageMaskType::ConstPointer | FixedImageMaskConstPointer |
|
typedef FixedImageMaskType::Pointer | FixedImageMaskPointer |
|
typedef SpatialObject
< itkGetStaticConstMacro(FixedImageDimension) > | FixedImageMaskType |
|
typedef TFixedImage::PixelType | FixedImagePixelType |
|
typedef
TransformType::InputPointType | FixedImagePointType |
|
typedef FixedImageType::RegionType | FixedImageRegionType |
|
typedef TFixedImage | FixedImageType |
|
typedef
TransformType::InputPointType | InputPointType |
|
typedef InterpolatorType::Pointer | InterpolatorPointer |
|
typedef
InterpolateImageFunction
< MovingImageType,
CoordinateRepresentationType > | InterpolatorType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef
MovingImageType::ConstPointer | MovingImageConstPointer |
|
typedef MovingImageType::IndexType | MovingImageIndexType |
|
typedef
MovingImageMaskType::ConstPointer | MovingImageMaskConstPointer |
|
typedef
MovingImageMaskType::Pointer | MovingImageMaskPointer |
|
typedef SpatialObject
< itkGetStaticConstMacro(MovingImageDimension) > | MovingImageMaskType |
|
typedef TMovingImage::PixelType | MovingImagePixelType |
|
typedef
TransformType::OutputPointType | MovingImagePointType |
|
typedef TMovingImage | MovingImageType |
|
typedef MultiThreader | MultiThreaderType |
|
typedef
TransformType::OutputPointType | OutputPointType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef ImageToImageMetric | Self |
|
typedef SingleValuedCostFunction | Superclass |
|
typedef TransformType::JacobianType | TransformJacobianType |
|
typedef
TransformType::ParametersType | TransformParametersType |
|
typedef TransformType::Pointer | TransformPointer |
|
typedef Transform
< CoordinateRepresentationType,
itkGetStaticConstMacro(MovingImageDimension),
itkGetStaticConstMacro(FixedImageDimension) > | TransformType |
|
typedef NumericTraits
< MovingImagePixelType >
::RealType | RealType |
|
typedef CovariantVector
< RealType,
itkGetStaticConstMacro(MovingImageDimension) > | GradientPixelType |
|
typedef Image
< GradientPixelType,
itkGetStaticConstMacro(MovingImageDimension) > | GradientImageType |
|
typedef SmartPointer
< GradientImageType > | GradientImagePointer |
|
typedef
GradientRecursiveGaussianImageFilter
< MovingImageType,
GradientImageType > | GradientImageFilterType |
|
typedef
GradientImageFilterType::Pointer | GradientImageFilterPointer |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef Array
< ParametersValueType > | DerivativeType |
|
typedef double | MeasureType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef
Superclass::ParametersValueType | ParametersValueType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef SingleValuedCostFunction | Self |
|
typedef CostFunction | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef OptimizerParameters
< TInternalComputationValueType > | ParametersType |
|
typedef
TInternalComputationValueType | ParametersValueType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef CostFunctionTemplate | Self |
|
typedef Object | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef SmartPointer< Self > | Pointer |
|
typedef Object | Self |
|
typedef LightObject | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef SmartPointer< Self > | Pointer |
|
typedef LightObject | Self |
|
|
MeasureType | ComputeMeasure (const TransformParametersType ¶meters, const double *subtractionFactor) const |
|
void | ComputeMovedGradientRange () const |
|
void | ComputeVariance () const |
|
| GradientDifferenceImageToImageMetric () |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
virtual | ~GradientDifferenceImageToImageMetric () |
|
virtual void | ComputeImageDerivatives (const MovingImagePointType &mappedPoint, ImageDerivativesType &gradient, ThreadIdType threadId) const |
|
void | GetValueAndDerivativeMultiThreadedInitiate () const |
|
void | GetValueAndDerivativeMultiThreadedPostProcessInitiate () const |
|
void | GetValueAndDerivativeMultiThreadedPreProcessInitiate () const |
|
virtual void | GetValueAndDerivativeThread (ThreadIdType threadId) const |
|
virtual void | GetValueAndDerivativeThreadPostProcess (ThreadIdType, bool) const |
|
virtual void | GetValueAndDerivativeThreadPreProcess (ThreadIdType, bool) const |
|
virtual bool | GetValueAndDerivativeThreadProcessSample (ThreadIdType, SizeValueType, const MovingImagePointType &, double, const ImageDerivativesType &) const |
|
void | GetValueMultiThreadedInitiate () const |
|
void | GetValueMultiThreadedPostProcessInitiate () const |
|
void | GetValueMultiThreadedPreProcessInitiate () const |
|
virtual void | GetValueThread (ThreadIdType threadId) const |
|
virtual void | GetValueThreadPostProcess (ThreadIdType, bool) const |
|
virtual void | GetValueThreadPreProcess (ThreadIdType, bool) const |
|
virtual bool | GetValueThreadProcessSample (ThreadIdType, SizeValueType, const MovingImagePointType &, double) const |
|
| ImageToImageMetric () |
|
virtual void | PreComputeTransformValues () |
|
virtual void | SampleFixedImageIndexes (FixedImageSampleContainer &samples) const |
|
virtual void | SampleFixedImageRegion (FixedImageSampleContainer &samples) const |
|
virtual void | SampleFullFixedImageRegion (FixedImageSampleContainer &samples) const |
|
virtual void | SynchronizeTransforms () const |
|
virtual void | TransformPoint (unsigned int sampleNumber, MovingImagePointType &mappedPoint, bool &sampleWithinSupportRegion, double &movingImageValue, ThreadIdType threadId) const |
|
virtual void | TransformPointWithDerivatives (unsigned int sampleNumber, MovingImagePointType &mappedPoint, bool &sampleWithinSupportRegion, double &movingImageValue, ImageDerivativesType &gradient, ThreadIdType threadId) const |
|
virtual | ~ImageToImageMetric () |
|
| SingleValuedCostFunction () |
|
virtual | ~SingleValuedCostFunction () |
|
| CostFunctionTemplate () |
|
virtual | ~CostFunctionTemplate () |
|
| Object () |
|
bool | PrintObservers (std::ostream &os, Indent indent) const |
|
virtual void | SetTimeStamp (const TimeStamp &time) |
|
virtual | ~Object () |
|
virtual LightObject::Pointer | InternalClone () const |
|
| LightObject () |
|
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
|
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
|
virtual | ~LightObject () |
|