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 -------------------------------------------------
20 * @file clitkRigidRegistration.cxx
21 * @author Jef Vandemeulebroucke <jef.Vandemeulebroucke@creatis.insa-lyon.fr>
22 * @date 14 August 2007
24 * @brief Perform a rigid registration between 2 images
26 -------------------------------------------------*/
31 #include "clitkImageCommon.h"
32 #include "clitkRigidRegistration_ggo.h"
33 #include "clitkRigidRegistrationGenericFilter.h"
35 using namespace clitk;
39 int main( int argc, char *argv[] )
41 //init command line and check options
45 //---------------------------------------------------------------------------
46 //Set all the options passed through the commandline
48 RigidRegistrationGenericFilter rigidRegistration;
50 rigidRegistration.SetVerbose(args_info.verbose_flag);
51 rigidRegistration.SetGradient(args_info.gradient_flag);
52 rigidRegistration.SetZeroOrigin(args_info.zero_origin_flag);
55 rigidRegistration.SetFixedImageName(args_info.reference_arg);
56 rigidRegistration.SetMovingImageName(args_info.object_arg);
57 rigidRegistration.SetFixedImageMaskGiven(args_info.mask_given);
58 if (args_info.mask_given) rigidRegistration.SetFixedImageMaskName(args_info.mask_arg);
61 rigidRegistration.SetOutputGiven(args_info.output_given);
62 if (args_info.output_given) rigidRegistration.SetOutputName(args_info.output_arg);
63 rigidRegistration.SetCheckerAfterGiven(args_info.checker_after_given);
64 if (args_info.checker_after_given) rigidRegistration.SetCheckerAfterName(args_info.checker_after_arg);
65 rigidRegistration.SetCheckerBeforeGiven(args_info.checker_before_given);
66 if (args_info.checker_before_given) rigidRegistration.SetCheckerBeforeName(args_info.checker_before_arg);
67 rigidRegistration.SetBeforeGiven(args_info.before_given);
68 if (args_info.before_given) rigidRegistration.SetBeforeName(args_info.before_arg);
69 rigidRegistration.SetAfterGiven(args_info.after_given);
70 if (args_info.after_given) rigidRegistration.SetAfterName(args_info.after_arg);
71 rigidRegistration.SetMatrixGiven(args_info.matrix_given);
72 if (args_info.matrix_given) rigidRegistration.SetMatrixName(args_info.matrix_arg);
75 rigidRegistration.SetInterpType(args_info.interp_arg);
78 rigidRegistration.SetRotX(args_info.rotX_arg);
79 rigidRegistration.SetRotY(args_info.rotY_arg);
80 rigidRegistration.SetRotZ(args_info.rotZ_arg);
81 rigidRegistration.SetTransX(args_info.transX_arg);
82 rigidRegistration.SetTransY(args_info.transY_arg);
83 rigidRegistration.SetTransZ(args_info.transZ_arg);
86 rigidRegistration.SetLevels(args_info.levels_arg);
87 rigidRegistration.SetIstep(args_info.Istep_arg);
88 rigidRegistration.SetFstep(args_info.Fstep_arg);
89 rigidRegistration.SetRelax(args_info.relax_arg);
90 rigidRegistration.SetInc(args_info.inc_arg);
91 rigidRegistration.SetDec(args_info.dec_arg);
92 rigidRegistration.SetIter(args_info.iter_arg);
93 rigidRegistration.SetRweight(args_info.Rweight_arg);
94 rigidRegistration.SetTweight(args_info.Tweight_arg);
97 rigidRegistration.SetMetricType(args_info.metric_arg);
98 rigidRegistration.SetSamples(args_info.samples_arg);
99 rigidRegistration.SetBins(args_info.bins_arg);
100 rigidRegistration.SetRandom(args_info.random_flag);
101 rigidRegistration.SetStdDev(args_info.stdDev_arg);
104 rigidRegistration.SetBlur(args_info.blur_arg);
105 rigidRegistration.SetNormalize(args_info.normalize_flag);
107 rigidRegistration.Update();