/vol/vipdata/irtk/packages/registration/include/irtkRegistration.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef _IRTKREGISTRATION_H
00014
00015 #define _IRTKREGISTRATION_H
00016
00017 #define MAX_NO_RESOLUTIONS 10
00018
00019
00020 typedef enum { Active, Passive } DOFStatus;
00021
00022
00023 typedef enum { DownhillDescent,
00024 GradientDescent,
00025 GradientDescentConstrained,
00026 SteepestGradientDescent,
00027 ConjugateGradientDescent,
00028 ClosedForm
00029 } irtkOptimizationMethod;
00030
00031
00032 typedef enum { JE, CC, MI, NMI, SSD, CR_XY, CR_YX, LC, K, ML }
00033 irtkSimilarityMeasure;
00034
00035 #include <irtkImage.h>
00036
00037 #include <irtkHistogram.h>
00038
00039 #include <irtkResampling.h>
00040
00041 #include <irtkImageFunction.h>
00042
00043 #include <irtkTransformation.h>
00044
00045 #include <irtkUtil.h>
00046
00047 #include <irtkSimilarityMetric.h>
00048
00049 #include <irtkOptimizer.h>
00050
00051 class irtkRegistration : public irtkObject
00052 {
00053
00054 public:
00055
00057 virtual double Evaluate() = 0;
00058
00060 virtual double EvaluateGradient(float, float *) = 0;
00061
00062 };
00063
00064 #include <irtkPointRegistration.h>
00065 #include <irtkSurfaceRegistration.h>
00066 #include <irtkImageRegistration.h>
00067 #include <irtkSymmetricImageRegistration.h>
00068
00069 #endif