1 /*=========================================================================
2 Program: vv http://www.creatis.insa-lyon.fr/rio/vv
5 - University of LYON http://www.universite-lyon.fr/
6 - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr
7 - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr
9 This software is distributed WITHOUT ANY WARRANTY; without even
10 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 PURPOSE. See the copyright notices for more information.
13 It is distributed under dual licence
15 - BSD See included LICENSE.txt file
16 - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
17 ======================================================================-====*/
19 #ifndef CLITKAFFINEREGISTRATIONGENERICFILTER_H
20 #define CLITKAFFINEREGISTRATIONGENERICFILTER_H
24 #include "clitkCommon.h"
25 #include "clitkAffineRegistration_ggo.h"
26 #include "clitkCorrelationRatioImageToImageMetric.h"
27 #include "clitkTransformUtilities.h"
28 #include "clitkGenericMetric.h"
29 #include "clitkGenericOptimizer.h"
30 #include "clitkGenericInterpolator.h"
31 #include "clitkGenericAffineTransform.h"
32 #include "clitkImageToImageGenericFilter.h"
36 #include <itkMultiResolutionImageRegistrationMethod.h>
37 #include <itkMultiResolutionPyramidImageFilter.h>
38 #include <itkImageToImageMetric.h>
39 #include <itkEuler2DTransform.h>
40 #include <itkCenteredEuler3DTransform.h>
42 #include <itkResampleImageFilter.h>
43 #include <itkCastImageFilter.h>
44 #include <itkNormalizeImageFilter.h>
45 #include <itkDiscreteGaussianImageFilter.h>
46 #include <itkImageMaskSpatialObject.h>
47 #include <itkCommand.h>
48 #include <itkCheckerBoardImageFilter.h>
49 #include <itkSubtractImageFilter.h>
50 #include <itkLightObject.h>
51 #include <itkImageMomentsCalculator.h>
52 #include <itkThresholdImageFilter.h>
62 //====================================================================
63 template<class args_info_clitkAffineRegistration>
64 class ITK_EXPORT AffineRegistrationGenericFilter:
65 public ImageToImageGenericFilter<AffineRegistrationGenericFilter<args_info_clitkAffineRegistration> >
69 AffineRegistrationGenericFilter();
71 //================================================
72 typedef AffineRegistrationGenericFilter Self;
73 typedef itk::SmartPointer<Self> Pointer;
74 typedef itk::SmartPointer<const Self> ConstPointer;
76 //================================================
78 itkTypeMacro(AffineRegistrationGenericFilter, LightObject);
81 //====================================================================
83 void SetArgsInfo(const args_info_clitkAffineRegistration args_info) {
85 m_Verbose=m_ArgsInfo.verbose_flag;
86 if (m_ArgsInfo.reference_given) {
87 SetInputFilename(m_ArgsInfo.reference_arg);
89 if (m_ArgsInfo.target_given) {
90 SetOutputFilename(m_ArgsInfo.target_arg);
94 //====================================================================
95 template<unsigned int Dim>
96 void InitializeImageType();
99 args_info_clitkAffineRegistration m_ArgsInfo;
101 template<class InputImageType>
102 void UpdateWithInputImageType();
106 #ifndef ITK_MANUAL_INSTANTIATION
107 #include "clitkAffineRegistrationGenericFilter.txx"
111 #endif //#define CLITKAFFINEREGISTRATIONGENERICFILTER__H