21 #ifndef otbMNFImageFilter_h
22 #define otbMNFImageFilter_h
46 template <
class TInputImage,
class TOutputImage,
class TNoiseImageFilter, Transform::TransformDirection TDirectionOfTransformation>
47 class ITK_EXPORT
MNFImageFilter :
public itk::ImageToImageFilter<TInputImage, TOutputImage>
52 typedef itk::ImageToImageFilter<TInputImage, TOutputImage>
Superclass;
63 itkStaticConstMacro(InputImageDimension,
unsigned int, TInputImage::ImageDimension);
64 itkStaticConstMacro(OutputImageDimension,
unsigned int, TOutputImage::ImageDimension);
81 typedef typename MatrixObjectType::ComponentType
MatrixType;
97 itkGetMacro(NumberOfPrincipalComponentsRequired,
unsigned int);
98 itkSetMacro(NumberOfPrincipalComponentsRequired,
unsigned int);
108 itkGetMacro(UseNormalization,
bool);
109 itkSetMacro(UseNormalization,
bool);
116 m_GivenMeanValues =
true;
122 m_StdDevValues = vec;
123 m_UseNormalization =
true;
124 m_GivenStdDevValues =
true;
127 itkGetConstMacro(CovarianceMatrix, MatrixType);
130 m_CovarianceMatrix = cov;
131 m_GivenCovarianceMatrix =
true;
134 itkGetConstMacro(NoiseCovarianceMatrix, MatrixType);
137 m_NoiseCovarianceMatrix = mat;
138 m_GivenNoiseCovarianceMatrix =
true;
141 itkGetConstMacro(TransformationMatrix, MatrixType);
144 m_TransformationMatrix = transf;
145 m_GivenTransformationMatrix =
true;
146 m_IsTransformationMatrixForward = isForward;
152 m_Normalizer->GetCovarianceEstimator()->SetUserIgnoredValue(value);
153 m_Normalizer->GetCovarianceEstimator()->SetIgnoreUserDefinedValue(
true);
156 m_CovarianceEstimator->SetUserIgnoredValue(value);
157 m_CovarianceEstimator->SetIgnoreUserDefinedValue(
true);
160 m_NoiseCovarianceEstimator->SetUserIgnoredValue(value);
161 m_NoiseCovarianceEstimator->SetIgnoreUserDefinedValue(
true);
181 void GenerateOutputInformation()
override;
186 void GenerateData()
override;
188 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
191 void ForwardGenerateOutputInformation();
192 void ReverseGenerateOutputInformation();
193 virtual void ForwardGenerateData();
194 virtual void ReverseGenerateData();
198 virtual void GenerateTransformationMatrix();
227 void operator=(
const Self&);
232 #ifndef OTB_MANUAL_INSTANTIATION