00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
#ifndef __itkSimpleFuzzyConnectednessScalarImageFilter_h
00018
#define __itkSimpleFuzzyConnectednessScalarImageFilter_h
00019
00020
#include "itkImage.h"
00021
#include "itkImageToImageFilter.h"
00022
#include "itkSimpleFuzzyConnectednessImageFilterBase.h"
00023
00024
#include <queue>
00025
00026
namespace itk{
00027
00072
template <
class TInputImage,
class TOutputImage>
00073 class ITK_EXPORT SimpleFuzzyConnectednessScalarImageFilter:
00074
public SimpleFuzzyConnectednessImageFilterBase<TInputImage,TOutputImage>
00075 {
00076
public:
00078 typedef SimpleFuzzyConnectednessScalarImageFilter
Self;
00079
typedef SimpleFuzzyConnectednessImageFilterBase<TInputImage,TOutputImage>
00080 Superclass;
00081 typedef SmartPointer <Self>
Pointer;
00082 typedef SmartPointer<const Self> ConstPointer;
00083
00085
itkNewMacro(
Self);
00086
00088
itkTypeMacro(SimpleFuzzyConnectednessScalarImageFilter,
00089 SimpleFuzzyConnectednessImageFilterBase);
00090
00092 typedef typename Superclass::IndexType
IndexType;
00093 typedef typename Superclass::SizeType
SizeType;
00094 typedef typename Superclass::PixelType
PixelType;
00095
00098
itkSetMacro(Diff_Mean,
double);
00099
00102
itkGetMacro(Diff_Mean,
double);
00103
00106
itkSetMacro(Diff_Variance,
double);
00107
00110
itkGetMacro(Diff_Variance,
double);
00111
00114
itkSetMacro(Mean,
double);
00115
00118
itkGetMacro(Mean,
double);
00119
00122
itkSetMacro(Variance,
double);
00123
00126
itkGetMacro(Variance,
double);
00127
00129
void SetParameters(
const double inmean,
const double invar,
00130
const double indifmean,
const double indifvar,
const double inweight);
00131
00132
protected:
00133 SimpleFuzzyConnectednessScalarImageFilter();
00134 ~SimpleFuzzyConnectednessScalarImageFilter();
00135
virtual void PrintSelf(std::ostream& os,
Indent indent)
const;
00136
00137 double m_Mean;
00138 double m_Variance;
00139 double m_Diff_Mean;
00140 double m_Diff_Variance;
00141
00142
virtual double FuzzyAffinity(
const PixelType f1,
const PixelType f2);
00143
00144
private:
00145 SimpleFuzzyConnectednessScalarImageFilter(
const Self&);
00146
void operator=(
const Self&);
00147
00148 };
00149
00150
00151 }
00152
00153
#ifndef ITK_MANUAL_INSTANTIATION
00154
#include "itkSimpleFuzzyConnectednessScalarImageFilter.txx"
00155
#endif
00156
00157
#endif