ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkTwoImageToOneImageMetric.h>
Computes similarity between two fixed images and one fixed image.
This Class is templated over the type of the two input images. It expects a Transform and two Interpolators to be plugged in. This particular class is the base class for a hierarchy of similarity metrics.
This class computes a value that measures the similarity between two Fixed image and the transformed Moving images. The Interpolators are used to compute intensity values on non-grid positions resulting from mapping points through the Transform.
Definition at line 53 of file itkTwoImageToOneImageMetric.h.
Public Member Functions | |
virtual const FixedImageType * | GetFixedImage1 () const |
virtual const FixedImageType * | GetFixedImage2 () const |
virtual const FixedImageRegionType & | GetFixedImageRegion1 () const |
virtual const FixedImageRegionType & | GetFixedImageRegion2 () const |
virtual const GradientImageType * | GetGradientImage () const |
virtual const InterpolatorType * | GetInterpolator1 () const |
virtual const InterpolatorType * | GetInterpolator2 () const |
virtual const MovingImageType * | GetMovingImage () const |
virtual const char * | GetNameOfClass () const |
unsigned int | GetNumberOfParameters () const override |
virtual const unsigned long & | GetNumberOfPixelsCounted () const |
virtual const TransformType * | GetTransform () const |
virtual void | Initialize () |
virtual void | SetFixedImage1 (const FixedImageType *_arg) |
virtual void | SetFixedImage2 (const FixedImageType *_arg) |
virtual void | SetFixedImageRegion1 (FixedImageRegionType _arg) |
virtual void | SetFixedImageRegion2 (FixedImageRegionType _arg) |
virtual void | SetInterpolator1 (InterpolatorType *_arg) |
virtual void | SetInterpolator2 (InterpolatorType *_arg) |
virtual void | SetMovingImage (const MovingImageType *_arg) |
virtual void | SetTransform (TransformType *_arg) |
void | SetTransformParameters (const ParametersType ¶meters) const |
virtual void | SetMovingImageMask (MovingImageMaskType *_arg) |
virtual const MovingImageMaskType * | GetMovingImageMask () const |
virtual void | SetFixedImageMask1 (FixedImageMaskType *_arg) |
virtual void | SetFixedImageMask2 (FixedImageMaskType *_arg) |
virtual const FixedImageMaskType * | GetFixedImageMask1 () const |
virtual const FixedImageMaskType * | GetFixedImageMask2 () const |
virtual void | SetComputeGradient (bool _arg) |
virtual const bool & | GetComputeGradient () const |
virtual void | ComputeGradientOn () |
virtual void | ComputeGradientOff () |
Public Member Functions inherited from itk::SingleValuedCostFunction | |
virtual void | GetDerivative (const ParametersType ¶meters, DerivativeType &derivative) const =0 |
virtual MeasureType | GetValue (const ParametersType ¶meters) const =0 |
virtual void | GetValueAndDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
Public Member Functions inherited from itk::Object | |
unsigned long | AddObserver (const EventObject &event, Command *) |
unsigned long | AddObserver (const EventObject &event, Command *) const |
LightObject::Pointer | CreateAnother () const override |
virtual void | DebugOff () const |
virtual void | DebugOn () const |
Command * | GetCommand (unsigned long tag) |
bool | GetDebug () const |
MetaDataDictionary & | GetMetaDataDictionary () |
const MetaDataDictionary & | GetMetaDataDictionary () const |
virtual ModifiedTimeType | GetMTime () const |
virtual const TimeStamp & | GetTimeStamp () const |
bool | HasObserver (const EventObject &event) const |
void | InvokeEvent (const EventObject &) |
void | InvokeEvent (const EventObject &) const |
virtual void | Modified () const |
void | Register () const override |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) |
void | SetDebug (bool debugFlag) const |
void | SetReferenceCount (int) override |
void | UnRegister () const noexceptoverride |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
void | SetMetaDataDictionary (MetaDataDictionary &&rrhs) |
virtual void | SetObjectName (std::string _arg) |
virtual const std::string & | GetObjectName () const |
Public Member Functions inherited from itk::LightObject | |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
void | Print (std::ostream &os, Indent indent=0) const |
Static Public Attributes | |
static constexpr unsigned int | FixedImageDimension = TFixedImage::ImageDimension |
static constexpr unsigned int | MovingImageDimension = TMovingImage::ImageDimension |
Protected Member Functions | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
TwoImageToOneImageMetric () | |
~TwoImageToOneImageMetric () override | |
Protected Member Functions inherited from itk::SingleValuedCostFunction | |
SingleValuedCostFunction ()=default | |
~SingleValuedCostFunction () override | |
Protected Member Functions inherited from itk::CostFunctionTemplate< TInternalComputationValueType > | |
CostFunctionTemplate ()=default | |
~CostFunctionTemplate () override=default | |
Protected Member Functions inherited from itk::Object | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
virtual void | SetTimeStamp (const TimeStamp &time) |
~Object () override | |
Protected Member Functions inherited from itk::LightObject | |
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 () |
Protected Attributes | |
bool | m_ComputeGradient |
FixedImageConstPointer | m_FixedImage1 |
FixedImageConstPointer | m_FixedImage2 |
FixedImageMaskPointer | m_FixedImageMask1 |
FixedImageMaskPointer | m_FixedImageMask2 |
GradientImagePointer | m_GradientImage |
InterpolatorPointer | m_Interpolator1 |
InterpolatorPointer | m_Interpolator2 |
MovingImageConstPointer | m_MovingImage |
MovingImageMaskPointer | m_MovingImageMask |
unsigned long | m_NumberOfPixelsCounted |
TransformPointer | m_Transform |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
Private Attributes | |
FixedImageRegionType | m_FixedImageRegion1 |
FixedImageRegionType | m_FixedImageRegion2 |
Additional Inherited Members | |
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 () |
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::ConstPointer = SmartPointer<const Self> |
Definition at line 62 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::CoordinateRepresentationType = Superclass::ParametersValueType |
Type used for representing point components
Definition at line 65 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::DerivativeType = Superclass::DerivativeType |
Type of the derivative.
Definition at line 131 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::FixedImageConstPointer = typename FixedImageType::ConstPointer |
Definition at line 77 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::FixedImageMaskPointer = typename FixedImageMaskType::Pointer |
Definition at line 118 of file itkTwoImageToOneImageMetric.h.
typedef SpatialObject< itkGetStaticConstMacro(FixedImageDimension) > itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::FixedImageMaskType |
Type for the mask of the fixed image. Only pixels that are "inside" this mask will be considered for the computation of the metric
Definition at line 117 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::FixedImageRegionType = typename FixedImageType::RegionType |
Definition at line 78 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::FixedImageType = TFixedImage |
Type of the fixed Image.
Definition at line 76 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::GradientImageFilterPointer = typename GradientImageFilterType::Pointer |
Gaussian filter to compute the gradient of the Moving Image
Definition at line 110 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::GradientImageFilterType = GradientRecursiveGaussianImageFilter< MovingImageType, GradientImageType > |
Gaussian filter to compute the gradient of the Moving Image
Definition at line 109 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::GradientImagePointer = SmartPointer<GradientImageType> |
Gaussian filter to compute the gradient of the Moving Image
Definition at line 107 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::GradientImageType = Image<GradientPixelType, itkGetStaticConstMacro(MovingImageDimension)> |
Gaussian filter to compute the gradient of the Moving Image
Definition at line 106 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::GradientPixelType = CovariantVector<RealType, itkGetStaticConstMacro(MovingImageDimension)> |
Gaussian filter to compute the gradient of the Moving Image
Definition at line 104 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::InputPointType = typename TransformType::InputPointType |
Definition at line 90 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::InterpolatorPointer = typename InterpolatorType::Pointer |
Gaussian filter to compute the gradient of the Moving Image
Definition at line 111 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::InterpolatorType = InterpolateImageFunction< MovingImageType, CoordinateRepresentationType > |
Type of the Interpolator Base class
Definition at line 98 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::MeasureType = Superclass::MeasureType |
Type of the measure.
Definition at line 128 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::MovingImageConstPointer = typename MovingImageType::ConstPointer |
Definition at line 73 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::MovingImageMaskPointer = typename MovingImageMaskType::Pointer |
Definition at line 124 of file itkTwoImageToOneImageMetric.h.
typedef SpatialObject< itkGetStaticConstMacro(MovingImageDimension) > itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::MovingImageMaskType |
Type for the mask of the moving image. Only pixels that are "inside" this mask will be considered for the computation of the metric
Definition at line 123 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::MovingImagePixelType = typename TMovingImage::PixelType |
Definition at line 72 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::MovingImageType = TMovingImage |
Type of the moving Image.
Definition at line 71 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::OutputPointType = typename TransformType::OutputPointType |
Definition at line 91 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::ParametersType = Superclass::ParametersType |
Type of the parameters.
Definition at line 134 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::Pointer = SmartPointer<Self> |
Definition at line 61 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::RealType = typename NumericTraits<MovingImagePixelType>::RealType |
Gaussian filter to compute the gradient of the Moving Image
Definition at line 102 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::Self = TwoImageToOneImageMetric |
Standard class type alias.
Definition at line 59 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::Superclass = SingleValuedCostFunction |
Definition at line 60 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::TransformJacobianType = typename TransformType::JacobianType |
Definition at line 93 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::TransformParametersType = typename TransformType::ParametersType |
Definition at line 92 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::TransformPointer = typename TransformType::Pointer |
Definition at line 89 of file itkTwoImageToOneImageMetric.h.
using itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::TransformType = Transform<CoordinateRepresentationType, itkGetStaticConstMacro(MovingImageDimension), itkGetStaticConstMacro(FixedImageDimension)> |
Type of the Transform Base class
Definition at line 87 of file itkTwoImageToOneImageMetric.h.
|
protected |
|
inlineoverrideprotected |
Definition at line 223 of file itkTwoImageToOneImageMetric.h.
|
virtual |
Set/Get gradient computation.
|
virtual |
Set/Get gradient computation.
|
virtual |
Set/Get gradient computation.
|
virtual |
Get the Fixed Image.
|
virtual |
Get the Fixed Image.
|
virtual |
Set/Get the fixed image mask.
|
virtual |
Set/Get the fixed image mask.
|
virtual |
Get the region over which the metric will be computed
|
virtual |
Get the region over which the metric will be computed
|
virtual |
Get Gradient Image.
|
virtual |
Get a pointer to the Interpolator.
|
virtual |
Get a pointer to the Interpolator.
|
virtual |
Get the Moving Image.
|
virtual |
Set/Get the moving image mask.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::SingleValuedCostFunction.
Reimplemented in itk::NormalizedCorrelationTwoImageToOneImageMetric< TFixedImage, TMovingImage >.
|
inlineoverridevirtual |
Return the number of parameters required by the Transform
Implements itk::CostFunctionTemplate< TInternalComputationValueType >.
Definition at line 212 of file itkTwoImageToOneImageMetric.h.
References itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::m_Transform.
|
virtual |
Get the number of pixels considered in the computation.
|
virtual |
Get a pointer to the Transform.
|
virtual |
Initialize the Metric by making sure that all the components are present and plugged together correctly
|
overrideprotectedvirtual |
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::CostFunctionTemplate< TInternalComputationValueType >.
|
virtual |
Set/Get gradient computation.
|
virtual |
Connect the Fixed Image.
|
virtual |
Connect the Fixed Image.
|
virtual |
Set/Get the fixed image mask.
|
virtual |
Set/Get the fixed image mask.
|
virtual |
Set the region over which the metric will be computed
|
virtual |
Set the region over which the metric will be computed
|
virtual |
Connect the Interpolator.
|
virtual |
Connect the Interpolator.
|
virtual |
Connect the Moving Image.
|
virtual |
Set/Get the moving image mask.
|
virtual |
Connect the Transform.
void itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::SetTransformParameters | ( | const ParametersType & | parameters | ) | const |
Set the parameters defining the Transform.
|
static |
Definition at line 82 of file itkTwoImageToOneImageMetric.h.
|
protected |
Definition at line 236 of file itkTwoImageToOneImageMetric.h.
|
protected |
Definition at line 228 of file itkTwoImageToOneImageMetric.h.
|
protected |
Definition at line 229 of file itkTwoImageToOneImageMetric.h.
|
mutableprotected |
Definition at line 239 of file itkTwoImageToOneImageMetric.h.
|
mutableprotected |
Definition at line 240 of file itkTwoImageToOneImageMetric.h.
|
private |
Definition at line 244 of file itkTwoImageToOneImageMetric.h.
|
private |
Definition at line 245 of file itkTwoImageToOneImageMetric.h.
|
protected |
Definition at line 237 of file itkTwoImageToOneImageMetric.h.
|
protected |
Definition at line 233 of file itkTwoImageToOneImageMetric.h.
|
protected |
Definition at line 234 of file itkTwoImageToOneImageMetric.h.
|
protected |
Definition at line 230 of file itkTwoImageToOneImageMetric.h.
|
mutableprotected |
Definition at line 241 of file itkTwoImageToOneImageMetric.h.
|
mutableprotected |
Definition at line 226 of file itkTwoImageToOneImageMetric.h.
|
mutableprotected |
Definition at line 232 of file itkTwoImageToOneImageMetric.h.
Referenced by itk::TwoImageToOneImageMetric< TFixedImage, TMovingImage >::GetNumberOfParameters().
|
static |
Constants for the image dimensions
Definition at line 81 of file itkTwoImageToOneImageMetric.h.