Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkBilateralFilter.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 #ifndef __mitkBilateralFilter_h
17 #define __mitkBilateralFilter_h
18 
20 
21 // MITK
22 #include "mitkImageToImageFilter.h"
23 #include <itkImage.h>
24 #include <mitkImage.h>
25 
26 namespace mitk
27 {
29  {
30  public:
32  itkFactorylessNewMacro(Self) itkCloneMacro(Self)
33 
34  itkSetMacro(DomainSigma, float);
35  itkSetMacro(RangeSigma, float);
36  itkSetMacro(AutoKernel, bool);
37  itkSetMacro(KernelRadius, unsigned int);
38 
39  itkGetMacro(DomainSigma, float);
40  itkGetMacro(RangeSigma, float);
41  itkGetMacro(AutoKernel, bool);
42  itkGetMacro(KernelRadius, unsigned int);
43 
44  protected:
52  ~BilateralFilter();
57  virtual void GenerateOutputInformation() override;
62  virtual void GenerateData() override;
63 
67  template <typename TPixel, unsigned int VImageDimension>
68  void ItkImageProcessing(const itk::Image<TPixel, VImageDimension> *itkImage);
69 
70  float m_DomainSigma;
71  float m_RangeSigma;
72  bool m_AutoKernel; // true: kernel size is calculated from DomainSigma. See ITK Doc; false: set by m_KernelRadius
73  unsigned int m_KernelRadius; // use in combination with m_AutoKernel = true
74  };
75 } // END mitk namespace
76 #endif
Superclass of all classes generating some kind of mitk::BaseData.
#define MITKIMAGEDENOISING_EXPORT
DataCollection - Class to facilitate loading/accessing structured data.
float m_RangeSigma
Sigma of the gaussian kernel. See ITK docu.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
Superclass of all classes having one or more Images as input and generating Images as output...
bool m_AutoKernel
Sigma of the range mask kernel. See ITK docu.