template<class TElastix>
class elastix::StatisticalShapePenalty< TElastix >
An metric based on the itk::StatisticalShapePointPenalty.
The parameters used in this class are:
- Parameters:
Metric: Select this metric as follows:
(Metric "StatisticalShapePenalty")
ShrinkageIntensity: The mixing ratio ($\beta$) of the provided covariance matrix and an identity matrix. $\Sigma' = (1-\beta)\Sigma + \beta \sigma_0^2 I$ Can be defined for each resolution
example: (ShrinkageIntensity 0.2)
BaseVariance: The width ($\sigma_0^2$) of the non-informative prior. Can be defined for each resolution
example: (BaseVariance 1000.0)
- Author
- F.F. Berendsen, Image Sciences Institute, UMC Utrecht, The Netherlands
- Note
- This work was funded by the projects Care4Me and Mediate.
-
If you use the StatisticalShapePenalty anywhere we would appreciate if you cite the following article:
F.F. Berendsen et al., Free-form image registration regularized by a statistical shape model: application to organ segmentation in cervical MR, Comput. Vis. Image Understand. (2013), http://dx.doi.org/10.1016/j.cviu.2012.12.006
Definition at line 58 of file elxStatisticalShapePenalty.h.
|
| using | CombinationTransformType = itk::AdvancedCombinationTransform< CoordRepType, Self::FixedImageDimension > |
| |
| using | ConstPointer = SmartPointer< const Self > |
| |
| using | CoordRepType = typename OutputPointType::CoordRepType |
| |
| using | FixedImageType = typename ElastixType::FixedImageType |
| |
| using | ImageType = FixedImageType |
| |
| using | InitialTransformType = typename CombinationTransformType::InitialTransformType |
| |
| using | ITKBaseType = typename Superclass2::ITKBaseType |
| |
| using | MovingImageType = typename ElastixType::MovingImageType |
| |
| using | Pointer = SmartPointer< Self > |
| |
| using | PointSetType = FixedPointSetType |
| |
| using | Self = StatisticalShapePenalty |
| |
| using | Superclass1 = StatisticalShapePointPenalty< typename MetricBase< TElastix >::FixedPointSetType, typename MetricBase< TElastix >::MovingPointSetType > |
| |
| using | Superclass2 = MetricBase< TElastix > |
| |
| using | VnlVectorType = vnl_vector< CoordRepType > |
| |
| using | ConstPointer = SmartPointer< const Self > |
| |
| using | CoordRepType = typename OutputPointType::CoordRepType |
| |
| using | DerivativeValueType = typename DerivativeType::ValueType |
| |
| using | FixedPointSetConstPointer = typename FixedPointSetType::ConstPointer |
| |
| using | FixedPointSetType = MetricBase< TElastix >::FixedPointSetType |
| |
| using | InputPointType = typename TransformType::InputPointType |
| |
| using | MovingPointSetConstPointer = typename MovingPointSetType::ConstPointer |
| |
| using | MovingPointSetType = MetricBase< TElastix >::MovingPointSetType |
| |
| using | NonZeroJacobianIndicesType = typename TransformType::NonZeroJacobianIndicesType |
| |
| using | OutputPointType = typename TransformType::OutputPointType |
| |
| using | PCACovarianceType = vnl_svd_economy< CoordRepType > |
| |
| using | PointDataIterator = typename FixedPointSetType::PointDataContainer::ConstIterator |
| |
| using | Pointer = SmartPointer< Self > |
| |
| using | PointIterator = typename FixedPointSetType::PointsContainer::ConstIterator |
| |
| using | ProposalDerivativeType = typename std::vector< VnlVectorType * > |
| |
| using | Self = StatisticalShapePointPenalty |
| |
| using | Superclass = SingleValuedPointSetToPointSetMetric< MetricBase< TElastix >::FixedPointSetType, MetricBase< TElastix >::MovingPointSetType > |
| |
| using | TransformJacobianType = typename TransformType::JacobianType |
| |
| using | TransformParametersType = typename TransformType::ParametersType |
| |
| using | TransformPointer = typename TransformType::Pointer |
| |
| using | TransformType = AdvancedTransform< CoordinateRepresentationType, Self::FixedPointSetDimension, Self::MovingPointSetDimension > |
| |
| using | VnlMatrixType = vnl_matrix< CoordRepType > |
| |
| using | VnlVectorType = vnl_vector< CoordRepType > |
| |
| using | ConstPointer = SmartPointer< const Self > |
| |
| using | CoordinateRepresentationType = Superclass::ParametersValueType |
| |
| using | DerivativeValueType = typename DerivativeType::ValueType |
| |
| using | FixedImageMaskConstPointer = typename FixedImageMaskType::ConstPointer |
| |
| using | FixedImageMaskPointer = typename FixedImageMaskType::Pointer |
| |
| using | FixedImageMaskType = ImageMaskSpatialObject< Self::FixedPointSetDimension > |
| |
| using | FixedPointSetConstPointer = typename FixedPointSetType::ConstPointer |
| |
| using | FixedPointSetPixelType = typename FixedPointSetType::PixelType |
| |
| using | FixedPointSetType = TFixedPointSet |
| |
| using | InputPointType = typename TransformType::InputPointType |
| |
| using | MovingImageMaskConstPointer = typename MovingImageMaskType::ConstPointer |
| |
| using | MovingImageMaskPointer = typename MovingImageMaskType::Pointer |
| |
| using | MovingImageMaskType = ImageMaskSpatialObject< Self::MovingPointSetDimension > |
| |
| using | MovingPointSetConstPointer = typename MovingPointSetType::ConstPointer |
| |
| using | MovingPointSetPixelType = typename MovingPointSetType::PixelType |
| |
| using | MovingPointSetType = TMovingPointSet |
| |
| using | NonZeroJacobianIndicesType = typename TransformType::NonZeroJacobianIndicesType |
| |
| using | OutputPointType = typename TransformType::OutputPointType |
| |
| using | PointDataIterator = typename FixedPointSetType::PointDataContainer::ConstIterator |
| |
| using | Pointer = SmartPointer< Self > |
| |
| using | PointIterator = typename FixedPointSetType::PointsContainer::ConstIterator |
| |
| using | Self = SingleValuedPointSetToPointSetMetric |
| |
| using | Superclass = SingleValuedCostFunction |
| |
| using | TransformJacobianType = typename TransformType::JacobianType |
| |
| using | TransformParametersType = typename TransformType::ParametersType |
| |
| using | TransformPointer = typename TransformType::Pointer |
| |
| using | TransformType = AdvancedTransform< CoordinateRepresentationType, Self::FixedPointSetDimension, Self::MovingPointSetDimension > |
| |
| using | AdvancedMetricType = itk::AdvancedImageToImageMetric< FixedImageType, MovingImageType > |
| |
| using | CoordinateRepresentationType = typename ITKBaseType::ParametersValueType |
| |
| using | ElastixType = TElastix |
| |
| using | FixedImageType = typename ElastixType::FixedImageType |
| |
| using | FixedPointSetType = itk::PointSet< CoordinateRepresentationType, FixedImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, FixedImageDimension, FixedImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > |
| |
| using | FixedPointType = typename FixedImageType::PointType |
| |
| using | FixedPointValueType = typename FixedPointType::ValueType |
| |
| using | ImageSamplerBaseType = typename AdvancedMetricType::ImageSamplerType |
| |
| using | ITKBaseType = itk::SingleValuedCostFunction |
| |
| using | MeasureType = typename ITKBaseType::MeasureType |
| |
| using | MovingImageDerivativeScalesType = typename AdvancedMetricType::MovingImageDerivativeScalesType |
| |
| using | MovingImageType = typename ElastixType::MovingImageType |
| |
| using | MovingPointSetType = itk::PointSet< CoordinateRepresentationType, MovingImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, MovingImageDimension, MovingImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > |
| |
| using | MovingPointType = typename MovingImageType::PointType |
| |
| using | MovingPointValueType = typename MovingPointType::ValueType |
| |
| using | RegistrationType = typename ElastixType::RegistrationBaseType |
| |
| using | Self = MetricBase |
| |
| using | Superclass = BaseComponentSE< TElastix > |
| |
| using | ElastixType = TElastix |
| |
| using | RegistrationType = typename ElastixType::RegistrationBaseType |
| |
| using | Self = BaseComponentSE |
| |
| using | Superclass = BaseComponent |
| |
|
| void | BeforeEachResolution () override |
| |
| void | BeforeRegistration () override |
| |
| | elxClassNameMacro ("StatisticalShapePenalty") |
| |
| virtual const char * | GetClassName () const |
| |
| void | Initialize () override |
| |
| | ITK_DISALLOW_COPY_AND_MOVE (StatisticalShapePenalty) |
| |
| | itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
| |
| | itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension) |
| |
| unsigned int | ReadLandmarks (const std::string &landmarkFileName, typename PointSetType::Pointer &pointSet, const typename ImageType::ConstPointer image) |
| |
| unsigned int | ReadShape (const std::string &ShapeFileName, typename PointSetType::Pointer &pointSet) |
| |
| void | SelectNewSamples () override |
| |
| virtual void | BaseVarianceNeedsUpdateOff () |
| |
| virtual void | BaseVarianceNeedsUpdateOn () |
| |
| virtual MeasureType | GetBaseVariance () const |
| |
| virtual MeasureType | GetCentroidXVariance () const |
| |
| virtual MeasureType | GetCentroidYVariance () const |
| |
| virtual MeasureType | GetCentroidZVariance () const |
| |
| virtual MeasureType | GetCutOffSharpness () const |
| |
| virtual MeasureType | GetCutOffValue () const |
| |
| void | GetDerivative (const TransformParametersType ¶meters, DerivativeType &Derivative) const override |
| |
| virtual const bool & | GetNormalizedShapeModel () |
| |
| virtual const int & | GetShapeModelCalculation () |
| |
| virtual MeasureType | GetShrinkageIntensity () const |
| |
| virtual MeasureType | GetSizeVariance () const |
| |
| MeasureType | GetValue (const TransformParametersType ¶meters) const override |
| |
| void | GetValueAndDerivative (const TransformParametersType ¶meters, MeasureType &Value, DerivativeType &Derivative) const override |
| |
| void | Initialize () override |
| |
| | ITK_DISALLOW_COPY_AND_MOVE (StatisticalShapePointPenalty) |
| |
| virtual void | NormalizedShapeModelOff () |
| |
| virtual void | NormalizedShapeModelOn () |
| |
| virtual void | SetBaseVariance (MeasureType _arg) |
| |
| virtual void | SetBaseVarianceNeedsUpdate (bool _arg) |
| |
| virtual void | SetCentroidXVariance (MeasureType _arg) |
| |
| virtual void | SetCentroidYVariance (MeasureType _arg) |
| |
| virtual void | SetCentroidZVariance (MeasureType _arg) |
| |
| virtual void | SetCovarianceMatrix (const vnl_matrix< double > *_arg) |
| |
| virtual void | SetCutOffSharpness (MeasureType _arg) |
| |
| virtual void | SetCutOffValue (MeasureType _arg) |
| |
| virtual void | SetEigenValues (const vnl_vector< double > *_arg) |
| |
| virtual void | SetEigenVectors (const vnl_matrix< double > *_arg) |
| |
| virtual void | SetMeanVector (const vnl_vector< double > *_arg) |
| |
| virtual void | SetNormalizedShapeModel (bool _arg) |
| |
| virtual void | SetShapeModelCalculation (int _arg) |
| |
| virtual void | SetShrinkageIntensity (MeasureType _arg) |
| |
| virtual void | SetShrinkageIntensityNeedsUpdate (bool _arg) |
| |
| virtual void | SetSizeVariance (MeasureType _arg) |
| |
| virtual void | SetVariancesNeedsUpdate (bool _arg) |
| |
| virtual void | ShrinkageIntensityNeedsUpdateOff () |
| |
| virtual void | ShrinkageIntensityNeedsUpdateOn () |
| |
| virtual void | VariancesNeedsUpdateOff () |
| |
| virtual void | VariancesNeedsUpdateOn () |
| |
| virtual void | BeforeThreadedGetValueAndDerivative (const TransformParametersType ¶meters) const |
| |
| virtual const FixedImageMaskType * | GetFixedImageMask () |
| |
| virtual const FixedPointSetType * | GetFixedPointSet () |
| |
| virtual const MovingImageMaskType * | GetMovingImageMask () |
| |
| virtual const MovingPointSetType * | GetMovingPointSet () |
| |
| unsigned int | GetNumberOfParameters () const override |
| |
| virtual const TransformType * | GetTransform () |
| |
| virtual const bool & | GetUseMetricSingleThreaded () |
| |
| | ITK_DISALLOW_COPY_AND_MOVE (SingleValuedPointSetToPointSetMetric) |
| |
| | itkStaticConstMacro (FixedPointSetDimension, unsigned int, TFixedPointSet::PointDimension) |
| |
| | itkStaticConstMacro (MovingPointSetDimension, unsigned int, TMovingPointSet::PointDimension) |
| |
| virtual void | SetFixedImageMask (const FixedImageMaskType *_arg) |
| |
| virtual void | SetFixedPointSet (const FixedPointSetType *_arg) |
| |
| virtual void | SetMovingImageMask (const MovingImageMaskType *_arg) |
| |
| virtual void | SetMovingPointSet (const MovingPointSetType *_arg) |
| |
| virtual void | SetTransform (TransformType *_arg) |
| |
| void | SetTransformParameters (const ParametersType ¶meters) const |
| |
| virtual void | SetUseMetricSingleThreaded (bool _arg) |
| |
| virtual void | UseMetricSingleThreadedOff () |
| |
| virtual void | UseMetricSingleThreadedOn () |
| |
| void | AfterEachIterationBase () override |
| |
| void | BeforeEachResolutionBase () override |
| |
| virtual ImageSamplerBaseType * | GetAdvancedMetricImageSampler () const |
| |
| virtual bool | GetAdvancedMetricUseImageSampler () const |
| |
| ITKBaseType * | GetAsITKBaseType () |
| |
| const ITKBaseType * | GetAsITKBaseType () const |
| |
| virtual MeasureType | GetCurrentExactMetricValue () const |
| |
| virtual bool | GetShowExactMetricValue () const |
| |
| | ITK_DISALLOW_COPY_AND_MOVE (MetricBase) |
| |
| | itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
| |
| | itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension) |
| |
| virtual void | SetAdvancedMetricImageSampler (ImageSamplerBaseType *sampler) |
| |
| void | AddTargetCellToIterationInfo (const char *const name) |
| |
| const Configuration * | GetConfiguration () const |
| |
| ElastixType * | GetElastix () const |
| |
| auto & | GetIterationInfoAt (const char *const name) |
| |
| RegistrationType * | GetRegistration () const |
| |
| | ITK_DISALLOW_COPY_AND_MOVE (BaseComponentSE) |
| |
| void | RemoveTargetCellFromIterationInfo (const char *const name) |
| |
| void | SetConfiguration (const Configuration *_arg) |
| |
| void | SetElastix (ElastixType *_arg) |
| |
| virtual void | AfterEachIteration () |
| |
| virtual void | AfterEachResolution () |
| |
| virtual void | AfterEachResolutionBase () |
| |
| virtual void | AfterRegistration () |
| |
| virtual void | AfterRegistrationBase () |
| |
| virtual int | BeforeAll () |
| |
| virtual int | BeforeAllBase () |
| |
| virtual void | BeforeRegistrationBase () |
| |
| virtual const char * | elxGetClassName () const |
| |
| const char * | GetComponentLabel () const |
| |
| | ITK_DISALLOW_COPY_AND_MOVE (BaseComponent) |
| |
| | itkTypeMacroNoParent (BaseComponent) |
| |
| void | SetComponentLabel (const char *label, unsigned int idx) |
| |