18 #ifndef sitkElastixImageFilter_h
19 #define sitkElastixImageFilter_h
62 SITK_RETURN_SELF_TYPE_HEADER
63 SetFixedImage(
const Image & fixedImage);
66 SITK_RETURN_SELF_TYPE_HEADER
70 SITK_RETURN_SELF_TYPE_HEADER
71 AddFixedImage(
const Image & fixedImage);
75 GetFixedImage(
const unsigned long index);
82 SITK_RETURN_SELF_TYPE_HEADER
83 RemoveFixedImage(
const unsigned long index);
86 SITK_RETURN_SELF_TYPE_HEADER
91 GetNumberOfFixedImages();
94 SITK_RETURN_SELF_TYPE_HEADER
95 SetMovingImage(
const Image & movingImages);
98 SITK_RETURN_SELF_TYPE_HEADER
102 SITK_RETURN_SELF_TYPE_HEADER
103 AddMovingImage(
const Image & movingImage);
107 GetMovingImage(
const unsigned long index);
114 SITK_RETURN_SELF_TYPE_HEADER
115 RemoveMovingImage(
const unsigned long index);
118 SITK_RETURN_SELF_TYPE_HEADER
123 GetNumberOfMovingImages();
126 SITK_RETURN_SELF_TYPE_HEADER
127 SetFixedMask(
const Image & fixedMask);
130 SITK_RETURN_SELF_TYPE_HEADER
134 SITK_RETURN_SELF_TYPE_HEADER
135 AddFixedMask(
const Image & fixedMask);
139 GetFixedMask(
const unsigned long index);
146 SITK_RETURN_SELF_TYPE_HEADER
147 RemoveFixedMask(
const unsigned long index);
150 SITK_RETURN_SELF_TYPE_HEADER
155 GetNumberOfFixedMasks();
158 SITK_RETURN_SELF_TYPE_HEADER
159 SetMovingMask(
const Image & movingMask);
162 SITK_RETURN_SELF_TYPE_HEADER
166 SITK_RETURN_SELF_TYPE_HEADER
167 AddMovingMask(
const Image & movingMask);
171 GetMovingMask(
const unsigned long index);
178 SITK_RETURN_SELF_TYPE_HEADER
179 RemoveMovingMask(
const unsigned long index);
182 SITK_RETURN_SELF_TYPE_HEADER
187 GetNumberOfMovingMasks();
190 SITK_RETURN_SELF_TYPE_HEADER
191 SetFixedPointSetFileName(
const std::string fixedPointSetFileName);
195 GetFixedPointSetFileName();
198 SITK_RETURN_SELF_TYPE_HEADER
199 RemoveFixedPointSetFileName();
202 SITK_RETURN_SELF_TYPE_HEADER
203 SetMovingPointSetFileName(
const std::string movingPointSetFileName);
207 GetMovingPointSetFileName();
210 SITK_RETURN_SELF_TYPE_HEADER
211 RemoveMovingPointSetFileName();
214 SITK_RETURN_SELF_TYPE_HEADER
215 SetOutputDirectory(
const std::string outputDirectory);
219 GetOutputDirectory();
222 SITK_RETURN_SELF_TYPE_HEADER
223 RemoveOutputDirectory();
226 SITK_RETURN_SELF_TYPE_HEADER
227 SetLogFileName(
const std::string logFileName);
234 SITK_RETURN_SELF_TYPE_HEADER
238 SITK_RETURN_SELF_TYPE_HEADER
239 SetLogToFile(
const bool logToFile);
246 SITK_RETURN_SELF_TYPE_HEADER
250 SITK_RETURN_SELF_TYPE_HEADER
254 SITK_RETURN_SELF_TYPE_HEADER
255 SetLogToConsole(
bool);
262 SITK_RETURN_SELF_TYPE_HEADER
266 SITK_RETURN_SELF_TYPE_HEADER
272 SITK_RETURN_SELF_TYPE_HEADER
273 SetNumberOfThreads(
int n);
277 GetNumberOfThreads();
281 SITK_RETURN_SELF_TYPE_HEADER
282 SetParameterMap(
const std::string transformName,
283 const unsigned int numberOfResolutions = 4u,
284 const double finalGridSpacingInPhysicalUnits = 10.0);
287 SITK_RETURN_SELF_TYPE_HEADER
288 SetParameterMap(
const std::vector<std::map<std::string, std::vector<std::string>>> parameterMapVector);
291 SITK_RETURN_SELF_TYPE_HEADER
292 SetParameterMap(
const std::map<std::string, std::vector<std::string>> parameterMap);
295 SITK_RETURN_SELF_TYPE_HEADER
296 AddParameterMap(
const std::map<std::string, std::vector<std::string>> parameterMap);
299 std::vector<std::map<std::string, std::vector<std::string>>>
304 std::map<std::string, std::vector<std::string>>
306 const unsigned int numberOfResolutions = 4,
307 const double finalGridSpacingInPhysicalUnits = 10.0);
311 GetNumberOfParameterMaps();
314 SITK_RETURN_SELF_TYPE_HEADER
315 SetParameter(
const std::string key,
const std::string value);
318 SITK_RETURN_SELF_TYPE_HEADER
319 SetParameter(
const std::string key,
const std::vector<std::string> value);
323 SITK_RETURN_SELF_TYPE_HEADER
324 SetParameter(
const unsigned int index,
const std::string key,
const std::string value);
328 SITK_RETURN_SELF_TYPE_HEADER
329 SetParameter(
const unsigned int index,
const std::string key,
const std::vector<std::string> value);
332 SITK_RETURN_SELF_TYPE_HEADER
333 AddParameter(
const std::string key,
const std::string value);
337 SITK_RETURN_SELF_TYPE_HEADER
338 AddParameter(
const unsigned int index,
const std::string key,
const std::string value);
341 SITK_RETURN_SELF_TYPE_HEADER
342 AddParameter(
const std::string key,
const std::vector<std::string> value);
346 SITK_RETURN_SELF_TYPE_HEADER
347 AddParameter(
const unsigned int index,
const std::string key,
const std::vector<std::string> value);
350 std::vector<std::string>
351 GetParameter(
const std::string key);
355 std::vector<std::string>
356 GetParameter(
const unsigned int index,
const std::string key);
359 SITK_RETURN_SELF_TYPE_HEADER
360 RemoveParameter(
const std::string key);
363 SITK_RETURN_SELF_TYPE_HEADER
364 RemoveParameter(
const unsigned int index,
const std::string key);
367 SITK_RETURN_SELF_TYPE_HEADER
368 SetInitialTransformParameterFileName(
const std::string initialTransformParmaterFileName);
372 GetInitialTransformParameterFileName();
375 SITK_RETURN_SELF_TYPE_HEADER
376 RemoveInitialTransformParameterFileName();
379 std::map<std::string, std::vector<std::string>>
383 SITK_RETURN_SELF_TYPE_HEADER
384 WriteParameterFile(
const std::map<std::string, std::vector<std::string>> parameterMap,
const std::string filename);
395 std::vector<std::map<std::string, std::vector<std::string>>>
396 GetTransformParameterMap();
399 std::map<std::string, std::vector<std::string>>
400 GetTransformParameterMap(
const unsigned int index);
407 SITK_RETURN_SELF_TYPE_HEADER
411 SITK_RETURN_SELF_TYPE_HEADER
415 SITK_RETURN_SELF_TYPE_HEADER
419 class ElastixImageFilterImpl;
420 const std::unique_ptr<ElastixImageFilterImpl>
m_Pimple;
426 const unsigned int numberOfResolutions = 4,
427 const double finalGridSpacingInPhysicalUnits = 8.0);
431 WriteParameterFile(
const std::map<std::string, std::vector<std::string>> parameterMap,
const std::string filename);
433 PrintParameterMap(
const std::map<std::string, std::vector<std::string>> parameterMap);
435 PrintParameterMap(
const std::vector<std::map<std::string, std::vector<std::string>>> parameterMapVector);
438 const Image & movingImage,
439 const bool logToConsole =
false,
440 const bool logToFile =
false,
441 const std::string outputDirectory =
".");
444 const Image & movingImage,
445 const Image & fixedMask,
446 const Image & movingMask,
447 const bool logToConsole =
false,
448 const bool logToFile =
false,
449 const std::string outputDirectory =
".");
452 const Image & movingImage,
453 const std::string defaultParameterMapName,
454 const bool logToConsole =
false,
455 const bool logToFile =
false,
456 const std::string outputDirectory =
".");
459 const Image & movingImage,
460 const std::map<std::string, std::vector<std::string>> parameterMap,
461 const bool logToConsole =
false,
462 const bool logToFile =
false,
463 const std::string outputDirectory =
".");
466 const Image & movingImage,
467 const std::vector<std::map<std::string, std::vector<std::string>>> parameterMapVector,
468 const bool logToConsole =
false,
469 const bool logToFile =
false,
470 const std::string outputDirectory =
".");
473 const Image & movingImage,
474 const std::string defaultParameterMapName,
475 const Image & fixedMask,
476 const Image & movingMask,
477 const bool logToConsole =
false,
478 const bool logToFile =
false,
479 const std::string outputDirectory =
".");
482 const Image & movingImage,
483 const std::map<std::string, std::vector<std::string>>,
484 const Image & fixedMask,
485 const Image & movingMask,
486 const bool logToConsole =
false,
487 const bool logToFile =
false,
488 const std::string outputDirectory =
".");
491 const Image & movingImage,
492 std::vector<std::map<std::string, std::vector<std::string>>> parameterMapVector,
493 const Image & fixedMask,
494 const Image & movingMask,
495 const bool logToConsole =
false,
496 const bool logToFile =
false,
497 const std::string outputDirectory =
".");
501 #endif // sitkElastixImageFilter_h