18 #ifndef __itkN4BiasFieldCorrectionImageFilter_h
19 #define __itkN4BiasFieldCorrectionImageFilter_h
28 #include "vnl/vnl_vector.h"
90 template<
class TInputImage,
class TMaskImage =
91 Image<unsigned char, ::itk::GetImageDimension<TInputImage>::ImageDimension>,
92 class TOutputImage = TInputImage>
110 itkStaticConstMacro( ImageDimension,
unsigned int,
111 TInputImage::ImageDimension );
151 this->SetNthInput( 1, const_cast<MaskImageType *>( mask ) );
178 this->SetNthInput( 2, const_cast<RealImageType *>( image ) );
203 itkSetMacro( MaskLabel, MaskPixelType );
210 itkGetConstMacro( MaskLabel, MaskPixelType );
221 itkSetMacro( NumberOfHistogramBins,
unsigned int );
227 itkGetConstMacro( NumberOfHistogramBins,
unsigned int );
232 itkSetMacro( WienerFilterNoise, RealType );
237 itkGetConstMacro( WienerFilterNoise, RealType );
243 itkSetMacro( BiasFieldFullWidthAtHalfMaximum, RealType );
249 itkGetConstMacro( BiasFieldFullWidthAtHalfMaximum, RealType );
256 itkSetMacro( SplineOrder,
unsigned int );
261 itkGetConstMacro( SplineOrder,
unsigned int );
270 itkSetMacro( NumberOfControlPoints, ArrayType );
279 itkGetConstMacro( NumberOfControlPoints, ArrayType );
287 itkSetMacro( NumberOfFittingLevels, ArrayType );
295 void SetNumberOfFittingLevels(
unsigned int n )
300 this->SetNumberOfFittingLevels( nlevels );
309 itkGetConstMacro( NumberOfFittingLevels, ArrayType );
315 itkSetMacro( MaximumNumberOfIterations, VariableSizeArrayType );
321 itkGetConstMacro( MaximumNumberOfIterations, VariableSizeArrayType );
330 itkSetMacro( ConvergenceThreshold, RealType );
339 itkGetConstMacro( ConvergenceThreshold, RealType );
350 itkGetConstMacro( LogBiasFieldControlPointLattice,
351 typename BiasFieldControlPointLatticeType::Pointer );
357 itkGetConstMacro( ElapsedIterations,
unsigned int );
363 itkGetConstMacro( CurrentConvergenceMeasurement, RealType );
369 itkGetConstMacro( CurrentLevel,
unsigned int );
374 void PrintSelf( std::ostream& os,
Indent indent )
const;
381 void operator=(
const Self& );
397 RealImagePointer SharpenImage(
const RealImageType * )
const;
404 RealImagePointer UpdateBiasFieldEstimate( RealImageType * );
410 RealType CalculateConvergenceMeasurement(
const RealImageType *,
const RealImageType * )
const;
442 #ifndef ITK_MANUAL_INSTANTIATION
443 #include "itkN4BiasFieldCorrectionImageFilter.hxx"