SimpleITK  
sitkElastixImageFilterImpl.h
Go to the documentation of this file.
1#ifndef sitkelastiximagefilterimpl_h
2#define sitkelastiximagefilterimpl_h
3
4// SimpleITK
8
9// Elastix
10#include "itkElastixRegistrationMethod.h"
11#include "elxParameterObject.h"
12
13namespace itk::simple
14{
15
17{
18public:
21
23
25
34
35 typedef elastix::ParameterObject ParameterObjectType;
36 typedef elastix::ParameterObject::Pointer ParameterObjectPointer;
37
38 std::string
39 GetName(void) const;
40
41 void
42 SetFixedImage(const Image & fixedImage);
43 void
44 SetFixedImage(const VectorOfImage & fixedImages);
45 void
46 AddFixedImage(const Image & fixedImage);
47 Image &
48 GetFixedImage(const unsigned long index);
51 void
52 RemoveFixedImage(const unsigned long index);
53 void
55 unsigned int
57
58 void
59 SetMovingImage(const Image & movingImages);
60 void
61 SetMovingImage(const VectorOfImage & movingImage);
62 void
63 AddMovingImage(const Image & movingImage);
64 Image &
65 GetMovingImage(const unsigned long index);
68 void
69 RemoveMovingImage(const unsigned long index);
70 void
72 unsigned int
74
75 void
76 SetFixedMask(const Image & fixedMask);
77 void
78 SetFixedMask(const VectorOfImage & fixedMasks);
79 void
80 AddFixedMask(const Image & fixedMask);
81 Image &
82 GetFixedMask(const unsigned long index);
85 void
86 RemoveFixedMask(const unsigned long index);
87 void
89 unsigned int
91
92 void
93 SetMovingMask(const Image & movingMask);
94 void
95 SetMovingMask(const VectorOfImage & movingMasks);
96 void
97 AddMovingMask(const Image & movingMask);
98 Image &
99 GetMovingMask(const unsigned long index);
102 void
103 RemoveMovingMask(const unsigned long index);
104 void
106 unsigned int
108
109 void
110 SetFixedPointSetFileName(const std::string movingPointSetFileName);
111 std::string
113 void
115
116 void
117 SetMovingPointSetFileName(const std::string movingPointSetFileName);
118 std::string
120 void
122
123 void
124 SetOutputDirectory(const std::string outputDirectory);
125 std::string
127 void
129
130 void
131 SetLogFileName(const std::string logFileName);
132 std::string
134 void
136
137 void
138 SetLogToFile(const bool logToFile);
139 bool
141 void
143 void
145
146 void
148 bool
150 void
152 void
154
155 void
157 int
159
160 void
161 SetParameterMap(const std::string transformName,
162 const unsigned int numberOfResolutions = 4u,
163 const double finalGridSpacingInPhysicalUnits = 10.0);
164 void
165 SetParameterMap(const std::vector<std::map<std::string, std::vector<std::string>>> parameterMapVector);
166 void
167 SetParameterMap(const std::map<std::string, std::vector<std::string>> parameterMap);
168 void
169 AddParameterMap(const std::map<std::string, std::vector<std::string>> parameterMap);
170 std::vector<std::map<std::string, std::vector<std::string>>>
172 std::map<std::string, std::vector<std::string>>
173 GetDefaultParameterMap(const std::string transformName,
174 const unsigned int numberOfResolutions = 4,
175 const double finalGridSpacingInPhysicalUnits = 10.0);
176 unsigned int
178
179 void
180 SetParameter(const std::string key, const std::string value);
181 void
182 SetParameter(const std::string key, const std::vector<std::string> value);
183 void
184 SetParameter(const unsigned int index, const std::string key, const std::string value);
185 void
186 SetParameter(const unsigned int index, const std::string key, const std::vector<std::string> value);
187 void
188 AddParameter(const std::string key, const std::string value);
189 void
190 AddParameter(const unsigned int index, const std::string key, const std::string value);
191 void
192 AddParameter(const std::string key, const std::vector<std::string> value);
193 void
194 AddParameter(const unsigned int index, const std::string key, const std::vector<std::string> value);
195 std::vector<std::string>
196 GetParameter(const std::string key);
197 std::vector<std::string>
198 GetParameter(const unsigned int index, const std::string key);
199 void
200 RemoveParameter(const std::string key);
201 void
202 RemoveParameter(const unsigned int index, const std::string key);
203
204 void
205 SetInitialTransformParameterFileName(const std::string initialTransformParmaterFileName);
206 std::string
208 void
210
211 std::map<std::string, std::vector<std::string>>
212 ReadParameterFile(const std::string filename);
213 void
214 WriteParameterFile(const std::map<std::string, std::vector<std::string>> parameterMap, const std::string filename);
215
216 Image
217 Execute(void);
218 std::vector<std::map<std::string, std::vector<std::string>>>
220 std::map<std::string, std::vector<std::string>>
221 GetTransformParameterMap(const unsigned int index);
222 Image
224
225 void
227 void
228 PrintParameterMap(const ParameterMapType parameterMapVector);
229 void
230 PrintParameterMap(const ParameterMapVectorType parameterMapVector);
231
232 bool
233 IsEmpty(const Image & image);
234
235 // Definitions for SimpleITK member factory
236 typedef Image (Self::*MemberFunctionType)(void);
237 template <class TFixedImage, class TMovingImage>
238 Image
241 std::unique_ptr<detail::DualMemberFunctionFactory<MemberFunctionType>> m_DualMemberFactory;
242
248
252
255
256 std::string m_OutputDirectory;
257 std::string m_LogFileName;
258
261
263};
264
265} // namespace itk::simple
266
267#endif // sitkelastiximagefilterimpl_h
void SetParameter(const unsigned int index, const std::string key, const std::string value)
void SetLogFileName(const std::string logFileName)
void SetFixedImage(const VectorOfImage &fixedImages)
Image & GetMovingImage(const unsigned long index)
void SetFixedMask(const VectorOfImage &fixedMasks)
Image & GetMovingMask(const unsigned long index)
std::vector< std::string > GetParameter(const unsigned int index, const std::string key)
ElastixImageFilter::ParameterValueVectorType ParameterValueVectorType
void SetParameter(const unsigned int index, const std::string key, const std::vector< std::string > value)
std::vector< std::map< std::string, std::vector< std::string > > > GetTransformParameterMap(void)
std::map< std::string, std::vector< std::string > > GetDefaultParameterMap(const std::string transformName, const unsigned int numberOfResolutions=4, const double finalGridSpacingInPhysicalUnits=10.0)
std::map< std::string, std::vector< std::string > > GetTransformParameterMap(const unsigned int index)
void AddParameter(const unsigned int index, const std::string key, const std::vector< std::string > value)
void SetMovingPointSetFileName(const std::string movingPointSetFileName)
std::vector< std::map< std::string, std::vector< std::string > > > GetParameterMap(void)
void SetFixedPointSetFileName(const std::string movingPointSetFileName)
Image & GetFixedMask(const unsigned long index)
void SetMovingImage(const VectorOfImage &movingImage)
std::vector< std::string > GetParameter(const std::string key)
ElastixImageFilter::ParameterMapConstIterator ParameterMapConstIterator
void PrintParameterMap(const ParameterMapType parameterMapVector)
std::unique_ptr< detail::DualMemberFunctionFactory< MemberFunctionType > > m_DualMemberFactory
void SetMovingMask(const VectorOfImage &movingMasks)
void AddParameterMap(const std::map< std::string, std::vector< std::string > > parameterMap)
void RemoveParameter(const unsigned int index, const std::string key)
void AddParameter(const std::string key, const std::vector< std::string > value)
void SetParameterMap(const std::vector< std::map< std::string, std::vector< std::string > > > parameterMapVector)
void WriteParameterFile(const std::map< std::string, std::vector< std::string > > parameterMap, const std::string filename)
Image & GetFixedImage(const unsigned long index)
void AddParameter(const std::string key, const std::string value)
ElastixImageFilter::ParameterMapVectorType ParameterMapVectorType
void SetParameter(const std::string key, const std::string value)
ElastixImageFilter::ParameterValueVectorIterator ParameterValueVectorIterator
void AddParameter(const unsigned int index, const std::string key, const std::string value)
void SetParameterMap(const std::map< std::string, std::vector< std::string > > parameterMap)
ElastixImageFilter::ParameterMapIterator ParameterMapIterator
void PrintParameterMap(const ParameterMapVectorType parameterMapVector)
void SetParameterMap(const std::string transformName, const unsigned int numberOfResolutions=4u, const double finalGridSpacingInPhysicalUnits=10.0)
void SetInitialTransformParameterFileName(const std::string initialTransformParmaterFileName)
void SetOutputDirectory(const std::string outputDirectory)
void SetParameter(const std::string key, const std::vector< std::string > value)
std::map< std::string, std::vector< std::string > > ReadParameterFile(const std::string filename)
ParameterMapType::const_iterator ParameterMapConstIterator
std::vector< ParameterMapType > ParameterMapVectorType
std::map< ParameterKeyType, ParameterValueVectorType > ParameterMapType
ParameterValueVectorType::iterator ParameterValueVectorIterator
std::vector< ParameterValueType > ParameterValueVectorType
ElastixImageFilter()
Default-constructor.
ParameterMapType::iterator ParameterMapIterator
The Image class for SimpleITK.
Definition sitkImage.h:77
#define SITKElastix_HIDDEN