Loading...
Searching...
No Matches
itk::ComputeJacobianTerms< TFixedImage, TTransform > Class Template Reference

`#include <itkComputeJacobianTerms.h>`

## Detailed Description

template<class TFixedImage, class TTransform>
class itk::ComputeJacobianTerms< TFixedImage, TTransform >

This is a helper class for the automatic parameter estimation of the ASGD optimizer.

More specifically this class computes the Jacobian terms related to the automatic parameter estimation for the adaptive stochastic gradient descent optimizer. Details can be found in the paper.

Definition at line 37 of file itkComputeJacobianTerms.h.

Inheritance diagram for itk::ComputeJacobianTerms< TFixedImage, TTransform >:
[legend]

## Public Types

using | ConstPointer = SmartPointer<const Self>
using | FixedImageMaskConstPointer = typename FixedImageMaskType::ConstPointer
using | FixedImageMaskPointer = typename FixedImageMaskType::Pointer
using | FixedImageMaskType = ImageMaskSpatialObject<Self::FixedImageDimension>
using | FixedImageRegionType = typename FixedImageType::RegionType
using | FixedImageType = TFixedImage
using | NonZeroJacobianIndicesType = typename TransformType::NonZeroJacobianIndicesType
using | Pointer = SmartPointer<Self>
using | ScaledCostFunctionPointer = typename ScaledSingleValuedNonLinearOptimizerType ::ScaledCostFunctionPointer
using | ScaledSingleValuedNonLinearOptimizerType = ScaledSingleValuedNonLinearOptimizer
using | ScalesType = typename ScaledSingleValuedNonLinearOptimizerType::ScalesType
using | Self = ComputeJacobianTerms
using | Superclass = Object
using | TransformPointer = typename TransformType::Pointer
using | TransformType = TTransform

## Public Member Functions

virtual void | Compute (double &TrC, double &TrCC, double &maxJJ, double &maxJCJ)
virtual const char * | GetClassName () const
virtual const FixedImageMaskType * | GetFixedImageMask ()
virtual const FixedImageRegionType & | GetFixedImageRegion ()
| ITK_DISALLOW_COPY_AND_MOVE (ComputeJacobianTerms)
| itkStaticConstMacro (FixedImageDimension, unsigned int, TFixedImage::ImageDimension)
virtual void | SetFixedImage (const FixedImageType *_arg)
virtual void | SetFixedImageMask (const FixedImageMaskType *_arg)
virtual void | SetFixedImageMask (FixedImageMaskType *_arg)
void | SetFixedImageRegion (const FixedImageRegionType &region)
virtual void | SetMaxBandCovSize (unsigned int _arg)
virtual void | SetNumberOfBandStructureSamples (unsigned int _arg)
virtual void | SetNumberOfJacobianMeasurements (SizeValueType _arg)
virtual void | SetScales (ScalesType _arg)
virtual void | SetTransform (TransformType *_arg)
virtual void | SetUseScales (bool _arg)

## Static Public Member Functions

static Pointer | New ()

## Protected Types

using | CoordinateRepresentationType = typename TransformType::ScalarType
using | FixedImageIndexType = typename FixedImageType::IndexType
using | FixedImagePointType = typename FixedImageType::PointType
using | ImageGridSamplerPointer = typename ImageGridSamplerType::Pointer
using | ImageGridSamplerType = ImageGridSampler<FixedImageType>
using | ImageRandomSamplerBasePointer = typename ImageRandomSamplerBaseType::Pointer
using | ImageRandomSamplerBaseType = ImageRandomSamplerBase<FixedImageType>
using | ImageSampleContainerPointer = typename ImageSampleContainerType::Pointer
using | ImageSampleContainerType = typename ImageGridSamplerType ::ImageSampleContainerType
using | ImageSamplerBasePointer = typename ImageSamplerBaseType::Pointer
using | ImageSamplerBaseType = ImageSamplerBase<FixedImageType>
using | JacobianType = typename TransformType::JacobianType
using | JacobianValueType = typename JacobianType::ValueType
using | NumberOfParametersType = typename TransformType::NumberOfParametersType
using | TransformJacobianType = JacobianType

## Protected Member Functions

| ComputeJacobianTerms ()=default
virtual void | SampleFixedImageForJacobianTerms (ImageSampleContainerPointer &sampleContainer)
| ~ComputeJacobianTerms () override=default

## Protected Attributes

FixedImageType::ConstPointer | m_FixedImage { nullptr }
FixedImageMaskConstPointer | m_FixedImageMask { nullptr }
FixedImageRegionType | m_FixedImageRegion {}
unsigned int | m_MaxBandCovSize { 0 }
unsigned int | m_NumberOfBandStructureSamples { 0 }
SizeValueType | m_NumberOfJacobianMeasurements { 0 }
ScalesType | m_Scales {}
TransformPointer | m_Transform { nullptr }
bool | m_UseScales { false }

## Member Typedef Documentation

## ConstPointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ConstPointer = SmartPointer<const Self>

Definition at line 46 of file itkComputeJacobianTerms.h.

## CoordinateRepresentationType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::CoordinateRepresentationType = typename TransformType::ScalarType

protected

Definition at line 142 of file itkComputeJacobianTerms.h.

## FixedImageIndexType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::FixedImageIndexType = typename FixedImageType::IndexType

protected

Definition at line 124 of file itkComputeJacobianTerms.h.

## FixedImageMaskConstPointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::FixedImageMaskConstPointer = typename FixedImageMaskType::ConstPointer

Definition at line 66 of file itkComputeJacobianTerms.h.

## FixedImageMaskPointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::FixedImageMaskPointer = typename FixedImageMaskType::Pointer

Definition at line 65 of file itkComputeJacobianTerms.h.

## FixedImageMaskType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::FixedImageMaskType = ImageMaskSpatialObject<Self::FixedImageDimension>

Definition at line 64 of file itkComputeJacobianTerms.h.

## FixedImagePointType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::FixedImagePointType = typename FixedImageType::PointType

protected

Definition at line 125 of file itkComputeJacobianTerms.h.

## FixedImageRegionType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::FixedImageRegionType = typename FixedImageType::RegionType

Definition at line 58 of file itkComputeJacobianTerms.h.

## FixedImageType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::FixedImageType = TFixedImage

typedef

Definition at line 55 of file itkComputeJacobianTerms.h.

## ImageGridSamplerPointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ImageGridSamplerPointer = typename ImageGridSamplerType::Pointer

protected

Definition at line 136 of file itkComputeJacobianTerms.h.

## ImageGridSamplerType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ImageGridSamplerType = ImageGridSampler<FixedImageType>

protected

Definition at line 135 of file itkComputeJacobianTerms.h.

## ImageRandomSamplerBasePointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ImageRandomSamplerBasePointer = typename ImageRandomSamplerBaseType::Pointer

protected

Definition at line 133 of file itkComputeJacobianTerms.h.

## ImageRandomSamplerBaseType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ImageRandomSamplerBaseType = ImageRandomSamplerBase<FixedImageType>

protected

Definition at line 132 of file itkComputeJacobianTerms.h.

## ImageSampleContainerPointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ImageSampleContainerPointer = typename ImageSampleContainerType::Pointer

protected

Definition at line 138 of file itkComputeJacobianTerms.h.

## ImageSampleContainerType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ImageSampleContainerType = typename ImageGridSamplerType ::ImageSampleContainerType

protected

Definition at line 137 of file itkComputeJacobianTerms.h.

## ImageSamplerBasePointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ImageSamplerBasePointer = typename ImageSamplerBaseType::Pointer

protected

Definition at line 131 of file itkComputeJacobianTerms.h.

## ImageSamplerBaseType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ImageSamplerBaseType = ImageSamplerBase<FixedImageType>

protected

Samplers.

Definition at line 130 of file itkComputeJacobianTerms.h.

## JacobianType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::JacobianType = typename TransformType::JacobianType

protected

Definition at line 126 of file itkComputeJacobianTerms.h.

## JacobianValueType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::JacobianValueType = typename JacobianType::ValueType

protected

Definition at line 127 of file itkComputeJacobianTerms.h.

## NonZeroJacobianIndicesType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::NonZeroJacobianIndicesType = typename TransformType::NonZeroJacobianIndicesType

Definition at line 71 of file itkComputeJacobianTerms.h.

## NumberOfParametersType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::NumberOfParametersType = typename TransformType::NumberOfParametersType

protected

Definition at line 143 of file itkComputeJacobianTerms.h.

## Pointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::Pointer = SmartPointer<Self>

Definition at line 45 of file itkComputeJacobianTerms.h.

## ScaledCostFunctionPointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ScaledCostFunctionPointer = typename ScaledSingleValuedNonLinearOptimizerType ::ScaledCostFunctionPointer

Definition at line 69 of file itkComputeJacobianTerms.h.

## ScaledSingleValuedNonLinearOptimizerType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ScaledSingleValuedNonLinearOptimizerType = ScaledSingleValuedNonLinearOptimizer

Definition at line 68 of file itkComputeJacobianTerms.h.

## ScalesType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::ScalesType = typename ScaledSingleValuedNonLinearOptimizerType::ScalesType

Definition at line 70 of file itkComputeJacobianTerms.h.

## Self

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::Self = ComputeJacobianTerms

Standard ITK.

Definition at line 43 of file itkComputeJacobianTerms.h.

## Superclass

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::Superclass = Object

Definition at line 44 of file itkComputeJacobianTerms.h.

## TransformJacobianType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::TransformJacobianType = JacobianType

protected

Typedefs for support of sparse Jacobians and AdvancedTransforms.

Definition at line 141 of file itkComputeJacobianTerms.h.

## TransformPointer

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::TransformPointer = typename TransformType::Pointer

Definition at line 57 of file itkComputeJacobianTerms.h.

## TransformType

template<class TFixedImage, class TTransform>

using itk::ComputeJacobianTerms< TFixedImage, TTransform >::TransformType = TTransform

Definition at line 56 of file itkComputeJacobianTerms.h.

## Constructor & Destructor Documentation

## ComputeJacobianTerms()

template<class TFixedImage, class TTransform>

itk::ComputeJacobianTerms< TFixedImage, TTransform >::ComputeJacobianTerms | ( |  | ) |

protected default

## ~ComputeJacobianTerms()

template<class TFixedImage, class TTransform>

itk::ComputeJacobianTerms< TFixedImage, TTransform >::~ComputeJacobianTerms | ( |  | ) |

override protected default

## Member Function Documentation

## Compute()

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::Compute | ( | double & | TrC,
|  | double & | TrCC,
|  | double & | maxJJ,
|  | double & | maxJCJ )

virtual

The main functions that performs the computation.

## GetClassName()

template<class TFixedImage, class TTransform>

virtual const char * itk::ComputeJacobianTerms< TFixedImage, TTransform >::GetClassName | ( |  | ) | const

virtual

Run-time type information (and related methods).

## GetFixedImageMask()

template<class TFixedImage, class TTransform>

virtual const FixedImageMaskType * itk::ComputeJacobianTerms< TFixedImage, TTransform >::GetFixedImageMask | ( |  | ) |

virtual

## GetFixedImageRegion()

template<class TFixedImage, class TTransform>

virtual const FixedImageRegionType & itk::ComputeJacobianTerms< TFixedImage, TTransform >::GetFixedImageRegion | ( |  | ) |

virtual

Get the region over which the metric will be computed.

## ITK_DISALLOW_COPY_AND_MOVE()

template<class TFixedImage, class TTransform>

itk::ComputeJacobianTerms< TFixedImage, TTransform >::ITK_DISALLOW_COPY_AND_MOVE | ( | ComputeJacobianTerms< TFixedImage, TTransform > |  | ) |

## itkStaticConstMacro()

template<class TFixedImage, class TTransform>

itk::ComputeJacobianTerms< TFixedImage, TTransform >::itkStaticConstMacro | ( | FixedImageDimension | ,
|  | unsigned int | ,
|  | TFixedImage::ImageDimension | )

Type for the mask of the fixed image. Only pixels that are "inside" this mask will be considered for the computation of the Jacobian terms.

## New()

template<class TFixedImage, class TTransform>

Pointer itk::ComputeJacobianTerms< TFixedImage, TTransform >::New | ( |  | ) |

static

Method for creation through the object factory.

## SampleFixedImageForJacobianTerms()

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SampleFixedImageForJacobianTerms | ( | ImageSampleContainerPointer & | sampleContainer | ) |

protected virtual

Sample the fixed image to compute the Jacobian terms.

## SetFixedImage()

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetFixedImage | ( | const FixedImageType * | _arg | ) |

virtual

Set the fixed image.

## SetFixedImageMask() [1/2]

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetFixedImageMask | ( | const FixedImageMaskType * | _arg | ) |

virtual

## SetFixedImageMask() [2/2]

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetFixedImageMask | ( | FixedImageMaskType * | _arg | ) |

virtual

Set/Get the fixed image mask.

## SetFixedImageRegion()

template<class TFixedImage, class TTransform>

void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetFixedImageRegion | ( | const FixedImageRegionType & | region | ) |

inline

Set the region over which the metric will be computed.

Definition at line 93 of file itkComputeJacobianTerms.h.

## SetMaxBandCovSize()

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetMaxBandCovSize | ( | unsigned int | _arg | ) |

virtual

## SetNumberOfBandStructureSamples()

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetNumberOfBandStructureSamples | ( | unsigned int | _arg | ) |

virtual

## SetNumberOfJacobianMeasurements()

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetNumberOfJacobianMeasurements | ( | SizeValueType | _arg | ) |

virtual

## SetScales()

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetScales | ( | ScalesType | _arg | ) |

virtual

Set some parameters.

## SetTransform()

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetTransform | ( | TransformType * | _arg | ) |

virtual

Set the transform.

## SetUseScales()

template<class TFixedImage, class TTransform>

virtual void itk::ComputeJacobianTerms< TFixedImage, TTransform >::SetUseScales | ( | bool | _arg | ) |

virtual

## Field Documentation

## m_FixedImage

template<class TFixedImage, class TTransform>

FixedImageType::ConstPointer itk::ComputeJacobianTerms< TFixedImage, TTransform >::m_FixedImage { nullptr }

protected

Definition at line 113 of file itkComputeJacobianTerms.h.

## m_FixedImageMask

template<class TFixedImage, class TTransform>

FixedImageMaskConstPointer itk::ComputeJacobianTerms< TFixedImage, TTransform >::m_FixedImageMask { nullptr }

protected

Definition at line 115 of file itkComputeJacobianTerms.h.

## m_FixedImageRegion

template<class TFixedImage, class TTransform>

FixedImageRegionType itk::ComputeJacobianTerms< TFixedImage, TTransform >::m_FixedImageRegion {}

protected

Definition at line 114 of file itkComputeJacobianTerms.h.

## m_MaxBandCovSize

template<class TFixedImage, class TTransform>

unsigned int itk::ComputeJacobianTerms< TFixedImage, TTransform >::m_MaxBandCovSize { 0 }

protected

Definition at line 120 of file itkComputeJacobianTerms.h.

## m_NumberOfBandStructureSamples

template<class TFixedImage, class TTransform>

unsigned int itk::ComputeJacobianTerms< TFixedImage, TTransform >::m_NumberOfBandStructureSamples { 0 }

protected

Definition at line 121 of file itkComputeJacobianTerms.h.

## m_NumberOfJacobianMeasurements

template<class TFixedImage, class TTransform>

SizeValueType itk::ComputeJacobianTerms< TFixedImage, TTransform >::m_NumberOfJacobianMeasurements { 0 }

protected

Definition at line 122 of file itkComputeJacobianTerms.h.

## m_Scales

template<class TFixedImage, class TTransform>

ScalesType itk::ComputeJacobianTerms< TFixedImage, TTransform >::m_Scales {}

protected

Definition at line 117 of file itkComputeJacobianTerms.h.

## m_Transform

template<class TFixedImage, class TTransform>

TransformPointer itk::ComputeJacobianTerms< TFixedImage, TTransform >::m_Transform { nullptr }

protected

Definition at line 116 of file itkComputeJacobianTerms.h.

## m_UseScales

template<class TFixedImage, class TTransform>

bool itk::ComputeJacobianTerms< TFixedImage, TTransform >::m_UseScales { false }

protected

Definition at line 118 of file itkComputeJacobianTerms.h.

Generated on 1768596610 for elastix by 1.15.0 |