go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxMissingStructurePenalty.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 __elxMissingStructurePenalty_H__
19 #define __elxMissingStructurePenalty_H__
20 
21 #include "elxIncludes.h"
23 
24 #include "itkMeshFileReader.h"
25 #include "itkMeshFileWriter.h"
26 
27 namespace elastix
28 {
29 
53 template< class TElastix >
55  public
57  typename MetricBase< TElastix >::FixedPointSetType,
58  typename MetricBase< TElastix >::MovingPointSetType >,
59  public MetricBase< TElastix >
60 {
61 public:
62 
69  typedef itk::SmartPointer< Self > Pointer;
70  typedef itk::SmartPointer< const Self > ConstPointer;
71 
73  itkNewMacro( Self );
74 
76  itkTypeMacro( MissingStructurePenalty,
78 
83  elxClassNameMacro( "MissingStructurePenalty" );
84 
89 
100 
101  // typedef typename Superclass1::FixedImageRegionType FixedImageRegionType;
108  // typedef typename Superclass1::RealType RealType;
116 
117  typedef typename OutputPointType::CoordRepType CoordRepType;
118 
121  typedef itk::Object ObjectType;
122 
124  itkGetStaticConstMacro( FixedImageDimension ) > CombinationTransformType;
125  typedef typename
127 
138 
140  itkStaticConstMacro( FixedImageDimension, unsigned int,
141  FixedImageType::ImageDimension );
142  itkStaticConstMacro( MovingImageDimension, unsigned int,
143  MovingImageType::ImageDimension );
144 
151 
155  void Initialize( void ) override;
156 
161  int BeforeAllBase( void ) override;
162 
163  void BeforeRegistration( void ) override;
164 
165  void AfterEachIteration( void ) override;
166 
167  void AfterEachResolution( void ) override;
168 
170  unsigned int ReadMesh(
171  const std::string & meshFileName,
172  typename FixedMeshType::Pointer & mesh );
173 
174  void WriteResultMesh( const char * filename, MeshIdType meshId );
175 
176  unsigned int ReadTransformixPoints( const std::string & filename, typename MeshType::Pointer & mesh );
177 
179  void SelectNewSamples( void ) override{}
180 
181 protected:
182 
187 
188 private:
189 
191  MissingStructurePenalty( const Self & ); // purposely not implemented
193  void operator=( const Self & ); // purposely not implemented
194 
195  unsigned int m_NumberOfMeshes;
196 };
197 
198 } // end namespace elastix
199 
200 #ifndef ITK_MANUAL_INSTANTIATION
201 #include "elxMissingStructurePenalty.hxx"
202 #endif
203 
204 #endif // end #ifndef __elxMissingStructurePenalty_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:81
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
Superclass2::ElastixPointer ElastixPointer
Superclass2::RegistrationType RegistrationType
Superclass1::MappedMeshContainerType MappedMeshContainerType
unsigned int ReadTransformixPoints(const std::string &filename, typename MeshType::Pointer &mesh)
CombinationTransformType::InitialTransformType InitialTransformType
void Initialize(void) override
Superclass1::FixedMeshType FixedMeshType
Superclass1::FixedMeshContainerType FixedMeshContainerType
itkStaticConstMacro(MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
Superclass1::MovingPointSetConstPointer MovingPointSetConstPointer
Superclass1::MappedMeshContainerPointer MappedMeshContainerPointer
Superclass1::TransformJacobianType TransformJacobianType
Superclass1::FixedImageMaskPointer FixedImageMaskPointer
Superclass1::ParametersType ParametersType
Superclass1::MovingImageMaskType MovingImageMaskType
void WriteResultMesh(const char *filename, MeshIdType meshId)
Superclass2::MovingImageType MovingImageType
void AfterEachIteration(void) override
Superclass1::CellInterfaceType CellInterfaceType
itk::SmartPointer< const Self > ConstPointer
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
Superclass2::ConfigurationPointer ConfigurationPointer
Superclass1::FixedMeshConstPointer FixedMeshConstPointer
Superclass1::InputPointType InputPointType
Superclass1::TransformPointer TransformPointer
elxClassNameMacro("MissingStructurePenalty")
Superclass1::DerivativeType DerivativeType
Superclass1::FixedMeshPointer FixedMeshPointer
Superclass1::FixedPointSetType FixedPointSetType
itk::MissingVolumeMeshPenalty< typename MetricBase< TElastix >::FixedPointSetType, typename MetricBase< TElastix >::MovingPointSetType > Superclass1
OutputPointType::CoordRepType CoordRepType
Superclass1::MovingImageMaskPointer MovingImageMaskPointer
int BeforeAllBase(void) override
Superclass1::FixedMeshContainerPointer FixedMeshContainerPointer
Superclass1::OutputPointType OutputPointType
Superclass1::TransformParametersType TransformParametersType
Superclass1::FixedImageMaskType FixedImageMaskType
void AfterEachResolution(void) override
Superclass1::FixedPointSetConstPointer FixedPointSetConstPointer
Superclass1::MovingPointSetType MovingPointSetType
void BeforeRegistration(void) override
Superclass2::FixedImageType FixedImageType
Superclass1::CoordinateRepresentationType CoordinateRepresentationType
Superclass2::RegistrationPointer RegistrationPointer
Superclass2::ConfigurationType ConfigurationType
unsigned int ReadMesh(const std::string &meshFileName, typename FixedMeshType::Pointer &mesh)
itk::AdvancedCombinationTransform< CoordRepType, itkGetStaticConstMacro(FixedImageDimension) > CombinationTransformType
This class combines two transforms: an 'initial transform' with a 'current transform'.
Computes the (pseudo) volume of the transformed surface mesh of a structure. .
Superclass::TransformPointer TransformPointer
MeshTraitsType::CellType CellInterfaceType
Superclass::InputPointType InputPointType
VectorContainer< MeshIdType, FixedMeshConstPointer > FixedMeshContainerType
Superclass::TransformType TransformType
Superclass::TransformJacobianType TransformJacobianType
Superclass::DerivativeType DerivativeType
FixedMeshType::ConstPointer FixedMeshConstPointer
Superclass::OutputPointType OutputPointType
MappedMeshContainerType::Pointer MappedMeshContainerPointer
FixedMeshContainerType::Pointer FixedMeshContainerPointer
VectorContainer< MeshIdType, FixedMeshPointer > MappedMeshContainerType
Mesh< DummyMeshPixelType, FixedPointSetDimension, MeshTraitsType > FixedMeshType
Superclass::TransformParametersType TransformParametersType
SpatialObject< itkGetStaticConstMacro(MovingPointSetDimension) > MovingImageMaskType
SpatialObject< itkGetStaticConstMacro(FixedPointSetDimension) > FixedImageMaskType


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.9.1 elastix logo