go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxStatisticalShapePenalty.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright UMC Utrecht and contributors
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef __elxStatisticalShapePenalty_H__
19#define __elxStatisticalShapePenalty_H__
20
21#include "elxIncludes.h" // include first to avoid MSVS warning
23
24#include <vnl/vnl_matrix.h>
25#include <vnl/vnl_vector.h>
26
27namespace elastix
28{
29using namespace itk;
30
57template< class TElastix >
60 typename MetricBase< TElastix >::FixedPointSetType,
61 typename MetricBase< TElastix >::MovingPointSetType >,
62 public MetricBase< TElastix >
63{
64public:
65
73 typedef SmartPointer< const Self > ConstPointer;
74
76 itkNewMacro( Self );
77
79 itkTypeMacro( StatisticalShapePenalty,
81
86 elxClassNameMacro( "StatisticalShapePenalty" );
87
94
95// typedef typename Superclass1::FixedImageRegionType FixedImageRegionType;
102// typedef typename Superclass1::RealType RealType;
110
111 typedef typename OutputPointType::CoordRepType CoordRepType;
113
115 typedef itk::Object ObjectType;
116 /*typedef itk::AdvancedTransform<
117 CoordRepType,
118 itkGetStaticConstMacro( FixedImageDimension ),
119 itkGetStaticConstMacro( MovingImageDimension ) > ITKBaseType;
120 */
122 itkGetStaticConstMacro( FixedImageDimension ) > CombinationTransformType;
123 typedef typename
125
136
138 itkStaticConstMacro( FixedImageDimension, unsigned int,
139 FixedImageType::ImageDimension );
140
142 itkStaticConstMacro( MovingImageDimension, unsigned int,
143 MovingImageType::ImageDimension );
144
150
154 void Initialize( void ) override;
155
160 void BeforeRegistration( void ) override;
161
162 void BeforeEachResolution( void ) override;
163
165 unsigned int ReadLandmarks(
166 const std::string & landmarkFileName,
167 typename PointSetType::Pointer & pointSet,
168 const typename ImageType::ConstPointer image );
169
170 unsigned int ReadShape(
171 const std::string & ShapeFileName,
172 typename PointSetType::Pointer & pointSet,
173 const typename ImageType::ConstPointer image );
174
176 void SelectNewSamples( void ) override{}
177
178protected:
179
184
185private:
186
188 StatisticalShapePenalty( const Self & ); // purposely not implemented
190 void operator=( const Self & ); // purposely not implemented
191
192};
193
194} // end namespace elastix
195
196#ifndef ITK_MANUAL_INSTANTIATION
197#include "elxStatisticalShapePenalty.hxx"
198#endif
199
200#endif // end #ifndef __elxStatisticalShapePenalty_H__
A class that deals with user given parameters and command line arguments.
This class is the elastix base class for all Metrics.
Definition: elxMetricBase.h:73
itk::PointSet< CoordinateRepresentationType, MovingImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, MovingImageDimension, MovingImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > MovingPointSetType
itk::SingleValuedCostFunction ITKBaseType
Superclass::RegistrationPointer RegistrationPointer
Definition: elxMetricBase.h:89
Superclass::ElastixType ElastixType
Definition: elxMetricBase.h:84
ElastixType::MovingImageType MovingImageType
Definition: elxMetricBase.h:95
itk::PointSet< CoordinateRepresentationType, FixedImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, FixedImageDimension, FixedImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > FixedPointSetType
ElastixType::FixedImageType FixedImageType
Definition: elxMetricBase.h:92
Superclass::ConfigurationPointer ConfigurationPointer
Definition: elxMetricBase.h:87
Superclass::RegistrationType RegistrationType
Definition: elxMetricBase.h:88
Superclass::ElastixPointer ElastixPointer
Definition: elxMetricBase.h:85
An metric based on the itk::StatisticalShapePointPenalty.
Superclass2::RegistrationType RegistrationType
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
Superclass2::MovingImageType MovingImageType
Superclass1::MovingPointSetType MovingPointSetType
Superclass2::ConfigurationType ConfigurationType
StatisticalShapePointPenalty< typename MetricBase< TElastix >::FixedPointSetType, typename MetricBase< TElastix >::MovingPointSetType > Superclass1
itk::AdvancedCombinationTransform< CoordRepType, itkGetStaticConstMacro(FixedImageDimension) > CombinationTransformType
Superclass1::MovingPointSetConstPointer MovingPointSetConstPointer
void BeforeRegistration(void) override
Superclass1::OutputPointType OutputPointType
elxClassNameMacro("StatisticalShapePenalty")
Superclass2::ElastixPointer ElastixPointer
Superclass1::FixedPointSetType FixedPointSetType
Superclass1::MovingImageMaskPointer MovingImageMaskPointer
Superclass1::DerivativeType DerivativeType
Superclass2::RegistrationPointer RegistrationPointer
Superclass1::FixedImageMaskPointer FixedImageMaskPointer
Superclass1::TransformJacobianType TransformJacobianType
Superclass1::MovingImageMaskType MovingImageMaskType
Superclass1::FixedPointSetConstPointer FixedPointSetConstPointer
Superclass1::TransformPointer TransformPointer
unsigned int ReadShape(const std::string &ShapeFileName, typename PointSetType::Pointer &pointSet, const typename ImageType::ConstPointer image)
void BeforeEachResolution(void) override
void Initialize(void) override
Superclass1::InputPointType InputPointType
itkStaticConstMacro(MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
Superclass1::FixedImageMaskType FixedImageMaskType
Superclass1::ParametersType ParametersType
Superclass2::ConfigurationPointer ConfigurationPointer
OutputPointType::CoordRepType CoordRepType
Superclass2::FixedImageType FixedImageType
Superclass1::TransformType TransformType
unsigned int ReadLandmarks(const std::string &landmarkFileName, typename PointSetType::Pointer &pointSet, const typename ImageType::ConstPointer image)
Superclass1::CoordinateRepresentationType CoordinateRepresentationType
Superclass1::TransformParametersType TransformParametersType
CombinationTransformType::InitialTransformType InitialTransformType
This class combines two transforms: an 'initial transform' with a 'current transform'.
SpatialObject< itkGetStaticConstMacro(MovingPointSetDimension) > MovingImageMaskType
SpatialObject< itkGetStaticConstMacro(FixedPointSetDimension) > FixedImageMaskType
Computes the Mahalanobis distance between the transformed shape and a mean shape. A model mean and co...
Superclass::MovingPointSetConstPointer MovingPointSetConstPointer
Superclass::FixedPointSetType FixedPointSetType
Superclass::TransformParametersType TransformParametersType
Superclass::TransformJacobianType TransformJacobianType
Superclass::MovingPointSetType MovingPointSetType
Superclass::FixedPointSetConstPointer FixedPointSetConstPointer


Generated on 1667476801 for elastix by doxygen 1.9.4 elastix logo