18 #ifndef __itkRGBGibbsPriorFilter_h
19 #define __itkRGBGibbsPriorFilter_h
21 #include "vnl/vnl_vector.h"
22 #include "vnl/vnl_matrix.h"
46 template<
class TInputImage,
class TClassifiedImage >
110 {
return m_LabelledImage; }
113 void SetClassifier(
typename ClassifierType::Pointer ptrToClassifier);
116 itkSetMacro(NumberOfClasses,
unsigned int);
119 itkGetConstMacro(NumberOfClasses,
unsigned int);
123 itkSetMacro(MaximumNumberOfIterations,
unsigned int);
127 itkGetConstMacro(MaximumNumberOfIterations,
unsigned int);
130 itkSetMacro(ClusterSize,
unsigned int);
133 itkSetMacro(ObjectLabel, LabelType);
136 itkStaticConstMacro(ImageDimension,
unsigned int,
137 TInputImage::ImageDimension);
141 itkSetMacro(BoundaryGradient,
unsigned int);
143 itkSetMacro(ObjectThreshold,
double);
146 itkSetMacro(CliqueWeight_1,
double);
147 itkGetConstMacro(CliqueWeight_1,
double);
148 itkSetMacro(CliqueWeight_2,
double);
149 itkGetConstMacro(CliqueWeight_2,
double);
150 itkSetMacro(CliqueWeight_3,
double);
151 itkGetConstMacro(CliqueWeight_3,
double);
152 itkSetMacro(CliqueWeight_4,
double);
153 itkGetConstMacro(CliqueWeight_4,
double);
154 itkSetMacro(CliqueWeight_5,
double);
155 itkGetConstMacro(CliqueWeight_5,
double);
156 itkSetMacro(CliqueWeight_6,
double);
157 itkGetConstMacro(CliqueWeight_6,
double);
165 void PrintSelf(std::ostream & os,
Indent indent)
const;
170 virtual void MinimizeFunctional();
172 virtual void GenerateData();
174 virtual void ApplyGibbsLabeller();
176 virtual void ApplyGPImageFilter();
178 #ifdef ITK_USE_CONCEPT_CHECKING
182 itkGetStaticConstMacro(ClassifiedImageType::ImageDimension) > ) );
192 void operator=(
const Self &);
268 void GibbsTotalEnergy(
int i);
271 double GibbsEnergy(
unsigned int i,
unsigned int k,
unsigned int k1);
289 #ifndef ITK_MANUAL_INSTANTIATION
290 #include "itkRGBGibbsPriorFilter.hxx"