![]() |
Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
#include <itkMultiMetricMultiResolutionImageRegistrationMethod.h>
Base class for multi-resolution image registration methods.
This class is an extension of the itk class MultiResolutionImageRegistrationMethod. It allows the use of multiple metrics, which are summed, multiple images, multiple interpolators, and/or multiple image pyramids.
Make sure the following is true:
nrofmetrics >= nrofinterpolators >= nrofmovingpyramids >= nrofmovingimages
nrofmetrics >= nroffixedpyramids >= nroffixedimages
nroffixedregions == nroffixedimages
nrofinterpolators == nrofmetrics OR nrofinterpolators == 1
nroffixedimages == nrofmetrics OR nroffixedimages == 1
etc...
You may also set an interpolator/fixedimage/etc to NULL, if you happen to know that the corresponding metric is not an ImageToImageMetric, but a regularizer for example (which does not need an image.
Definition at line 77 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
Public Types | |
using | CombinationMetricPointer = typename CombinationMetricType::Pointer |
using | CombinationMetricType = CombinationImageToImageMetric< FixedImageType, MovingImageType > |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectPointer = typename DataObject::Pointer |
using | FixedImageConstPointer = typename FixedImageType::ConstPointer |
using | FixedImagePyramidPointer = typename FixedImagePyramidType::Pointer |
using | FixedImagePyramidType = MultiResolutionPyramidImageFilter< FixedImageType, FixedImageType > |
using | FixedImageRegionType = typename FixedImageType::RegionType |
using | FixedImageType = TFixedImage |
using | InterpolatorPointer = typename InterpolatorType::Pointer |
using | InterpolatorType = typename MetricType::InterpolatorType |
using | MetricPointer = typename MetricType::Pointer |
using | MetricType = AdvancedImageToImageMetric< FixedImageType, MovingImageType > |
using | MovingImageConstPointer = typename MovingImageType::ConstPointer |
using | MovingImagePyramidPointer = typename MovingImagePyramidType::Pointer |
using | MovingImagePyramidType = MultiResolutionPyramidImageFilter< MovingImageType, MovingImageType > |
using | MovingImageType = TMovingImage |
using | OptimizerPointer = typename OptimizerType::Pointer |
using | OptimizerType = SingleValuedNonLinearOptimizer |
using | ParametersType = typename MetricType::TransformParametersType |
using | Pointer = SmartPointer< Self > |
using | Self = MultiMetricMultiResolutionImageRegistrationMethod |
using | Superclass = MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage > |
using | TransformOutputConstPointer = typename TransformOutputType::ConstPointer |
using | TransformOutputPointer = typename TransformOutputType::Pointer |
using | TransformOutputType = DataObjectDecorator< TransformType > |
using | TransformPointer = typename TransformType::Pointer |
using | TransformType = typename MetricType::AdvancedTransformType |
![]() | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectPointer = typename DataObject::Pointer |
using | FixedImageConstPointer = typename FixedImageType::ConstPointer |
using | FixedImagePyramidPointer = typename FixedImagePyramidType::Pointer |
using | FixedImagePyramidType = MultiResolutionPyramidImageFilter< FixedImageType, FixedImageType > |
using | FixedImageRegionPyramidType = std::vector< FixedImageRegionType > |
using | FixedImageRegionType = typename FixedImageType::RegionType |
using | FixedImageType = TFixedImage |
using | InterpolatorPointer = typename InterpolatorType::Pointer |
using | InterpolatorType = typename MetricType::InterpolatorType |
using | MetricPointer = typename MetricType::Pointer |
using | MetricType = AdvancedImageToImageMetric< FixedImageType, MovingImageType > |
using | MovingImageConstPointer = typename MovingImageType::ConstPointer |
using | MovingImagePyramidPointer = typename MovingImagePyramidType::Pointer |
using | MovingImagePyramidType = MultiResolutionPyramidImageFilter< MovingImageType, MovingImageType > |
using | MovingImageType = TMovingImage |
using | OptimizerType = SingleValuedNonLinearOptimizer |
using | ParametersType = typename MetricType::TransformParametersType |
using | Pointer = SmartPointer< Self > |
using | Self = MultiResolutionImageRegistrationMethod2 |
using | Superclass = ProcessObject |
using | TransformOutputConstPointer = typename TransformOutputType::ConstPointer |
using | TransformOutputPointer = typename TransformOutputType::Pointer |
using | TransformOutputType = DataObjectDecorator< TransformType > |
using | TransformPointer = typename TransformType::Pointer |
using | TransformType = typename MetricType::AdvancedTransformType |
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static Pointer | New () |
Protected Types | |
using | FixedImageRegionPyramidType = std::vector< FixedImageRegionType > |
Protected Member Functions | |
virtual void | CheckOnInitialize () |
virtual void | CheckPyramids () |
void | GenerateData () override |
void | Initialize () override |
MultiMetricMultiResolutionImageRegistrationMethod () | |
virtual void | PrepareAllPyramids () |
void | PrintSelf (std::ostream &os, Indent indent) const override |
~MultiMetricMultiResolutionImageRegistrationMethod () override=default | |
![]() | |
void | GenerateData () override |
virtual void | Initialize () |
MultiResolutionImageRegistrationMethod2 () | |
virtual void | PreparePyramids () |
void | PrintSelf (std::ostream &os, Indent indent) const override |
virtual void | SetCurrentLevel (unsigned long _arg) |
~MultiResolutionImageRegistrationMethod2 () override=default | |
Protected Attributes | |
CombinationMetricPointer | m_CombinationMetric |
std::vector< FixedImagePyramidPointer > | m_FixedImagePyramids |
std::vector< FixedImageRegionPyramidType > | m_FixedImageRegionPyramids |
std::vector< FixedImageRegionType > | m_FixedImageRegions |
std::vector< FixedImageConstPointer > | m_FixedImages |
std::vector< InterpolatorPointer > | m_Interpolators |
ParametersType | m_LastTransformParameters |
std::vector< MovingImagePyramidPointer > | m_MovingImagePyramids |
std::vector< MovingImageConstPointer > | m_MovingImages |
FixedImageRegionType | m_NullFixedImageRegion |
bool | m_Stop |
![]() | |
ParametersType | m_LastTransformParameters |
bool | m_Stop |
using itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::CombinationMetricPointer = typename CombinationMetricType::Pointer |
Definition at line 124 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
using itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::CombinationMetricType = CombinationImageToImageMetric<FixedImageType, MovingImageType> |
Extra typedefs
Definition at line 123 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
using itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::ConstPointer = SmartPointer<const Self> |
Definition at line 87 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::DataObjectPointer = typename DataObject::Pointer |
Smart Pointer type to a DataObject.
Definition at line 160 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::FixedImageConstPointer = typename FixedImageType::ConstPointer |
Definition at line 116 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::FixedImagePyramidPointer = typename FixedImagePyramidType::Pointer |
Definition at line 148 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::FixedImagePyramidType = MultiResolutionPyramidImageFilter<FixedImageType, FixedImageType> |
Type of the Fixed image multiresolution pyramid.
Definition at line 147 of file itkMultiResolutionImageRegistrationMethod2.h.
|
protected |
Definition at line 285 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::FixedImageRegionType = typename FixedImageType::RegionType |
Definition at line 117 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::FixedImageType = TFixedImage |
Type of the Fixed image.
Definition at line 115 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::InterpolatorPointer = typename InterpolatorType::Pointer |
Definition at line 141 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::InterpolatorType = typename MetricType::InterpolatorType |
Type of the Interpolator.
Definition at line 140 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::MetricPointer = typename MetricType::Pointer |
Definition at line 126 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::MetricType = AdvancedImageToImageMetric<FixedImageType, MovingImageType> |
Type of the metric.
Definition at line 125 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::MovingImageConstPointer = typename MovingImageType::ConstPointer |
Definition at line 122 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::MovingImagePyramidPointer = typename MovingImagePyramidType::Pointer |
Definition at line 152 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::MovingImagePyramidType = MultiResolutionPyramidImageFilter<MovingImageType, MovingImageType> |
Type of the moving image multiresolution pyramid.
Definition at line 151 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::MovingImageType = TMovingImage |
Type of the Moving image.
Definition at line 121 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::OptimizerPointer = typename OptimizerType::Pointer |
Definition at line 109 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::OptimizerType = SingleValuedNonLinearOptimizer |
Type of the optimizer.
Definition at line 144 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::ParametersType = typename MetricType::TransformParametersType |
Type of the Transformation parameters This is the same type used to represent the search space of the optimization algorithm.
Definition at line 157 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::Pointer = SmartPointer<Self> |
Definition at line 86 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
using itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::Self = MultiMetricMultiResolutionImageRegistrationMethod |
Standard class typedefs.
Definition at line 84 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
using itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::Superclass = MultiResolutionImageRegistrationMethod2<TFixedImage, TMovingImage> |
Definition at line 85 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::TransformOutputConstPointer = typename TransformOutputType::ConstPointer |
Definition at line 137 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::TransformOutputPointer = typename TransformOutputType::Pointer |
Definition at line 136 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::TransformOutputType = DataObjectDecorator<TransformType> |
Type for the output: Using Decorator pattern for enabling the Transform to be passed in the data pipeline.
Definition at line 135 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::TransformPointer = typename TransformType::Pointer |
Definition at line 130 of file itkMultiResolutionImageRegistrationMethod2.h.
using itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >::TransformType = typename MetricType::AdvancedTransformType |
Type of the Transform .
Definition at line 129 of file itkMultiResolutionImageRegistrationMethod2.h.
|
protected |
|
overrideprotecteddefault |
|
protectedvirtual |
Function called by Initialize, which checks if the user input is ok. Called by Initialize().
|
protectedvirtual |
Function called by PrepareAllPyramids, which checks if the user input regarding the image pyramids is ok.
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::elxOverrideSimpleSetMacro | ( | FixedImage | , |
const FixedImageType * | |||
) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::elxOverrideSimpleSetMacro | ( | FixedImagePyramid | , |
FixedImagePyramidType * | |||
) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::elxOverrideSimpleSetMacro | ( | FixedImageRegion | , |
const | FixedImageRegionType | ||
) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::elxOverrideSimpleSetMacro | ( | Interpolator | , |
InterpolatorType * | |||
) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::elxOverrideSimpleSetMacro | ( | MovingImage | , |
const MovingImageType * | |||
) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::elxOverrideSimpleSetMacro | ( | MovingImagePyramid | , |
MovingImagePyramidType * | |||
) |
|
overrideprotected |
Method invoked by the pipeline in order to trigger the computation of the registration.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >.
Reimplemented in elastix::MultiMetricMultiResolutionRegistration< TElastix >.
|
inlinevirtual |
Get the metric as a pointer to a combination metric type. Use this method to setup the combination metric (set weights, nrofmetrics, submetrics, etc.
Definition at line 151 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
inlineoverride |
Definition at line 172 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
virtual |
|
inlineoverride |
Definition at line 238 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
virtual |
|
inlineoverride |
Definition at line 206 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
virtual |
|
inlineoverride |
Definition at line 222 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
virtual |
|
inlineoverride |
Get the last transformation parameters visited by the optimizer. Return the member variable declared in this class, and not that of the superclass (which is declared private).
Definition at line 273 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
inlineoverride |
Definition at line 190 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
virtual |
|
inlineoverride |
Definition at line 254 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
virtual |
|
override |
Method to return the latest modified time of this object or any of its cached ivars.
|
overrideprotectedvirtual |
Initialize by setting the interconnects between the components. This method is executed at every level of the pyramid with the values corresponding to this resolution.
Reimplemented from itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >.
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::ITK_DISALLOW_COPY_AND_MOVE | ( | MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage > | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkGetNumberOfMacro | ( | FixedImage | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkGetNumberOfMacro | ( | FixedImagePyramid | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkGetNumberOfMacro | ( | FixedImageRegion | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkGetNumberOfMacro | ( | Interpolator | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkGetNumberOfMacro | ( | MovingImage | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkGetNumberOfMacro | ( | MovingImagePyramid | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkSetNumberOfMacro | ( | FixedImage | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkSetNumberOfMacro | ( | FixedImagePyramid | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkSetNumberOfMacro | ( | FixedImageRegion | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkSetNumberOfMacro | ( | Interpolator | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkSetNumberOfMacro | ( | MovingImage | ) |
itk::MultiMetricMultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::itkSetNumberOfMacro | ( | MovingImagePyramid | ) |
|
static |
Method for creation through the object factory.
|
protectedvirtual |
Compute the size of the fixed region for each level of the pyramid. Actually we would like to override PreparePyramids, but this function is not virtual...
|
overrideprotected |
|
virtual |
The following methods all have a similar pattern. The SetFixedImage() just calls SetFixedImage(0). SetFixedImage(0) also calls the Superclass::SetFixedImage(). This is defined by the elxOverrideSimpleSetMacro. GetFixedImage() just returns GetFixedImage(0) == Superclass::m_FixedImage. Set/Get the fixed image.
|
virtual |
Set/Get the FixedImagePyramid.
|
virtual |
Set/Get the fixed image region.
|
virtual |
Set/Get the interpolator.
|
overridevirtual |
Set the Metric. Reimplement this method to check if the metric is a combination metric. GetMetric returns the combination metric. By default, a combination metric is already set on constructing this class.
Reimplemented from itk::MultiResolutionImageRegistrationMethod2< TFixedImage, TMovingImage >.
|
virtual |
Set/Get the moving image.
|
virtual |
Set/Get the MovingImagePyramid.
|
inlinevirtual |
Unfortunately the StopRegistration method is not virtual and the m_Stop member is private in the superclass. That's why we provide the following function to interrupt registration.
Definition at line 131 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
A shortcut to m_Metric of type CombinationMetricPointer.
Definition at line 324 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
Definition at line 330 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
This vector is filled by the PrepareAllPyramids function.
Definition at line 335 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
Definition at line 329 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
Containers for the pointers supplied by the user.
Definition at line 327 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
Definition at line 332 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
Definition at line 321 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
Definition at line 331 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
Definition at line 328 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
Dummy image region.
Definition at line 338 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
|
protected |
Variables already defined in the superclass, but as private...
Definition at line 320 of file itkMultiMetricMultiResolutionImageRegistrationMethod.h.
Generated on 2023-01-13
for elastix by ![]() |
![]() |