Medical Imaging Interaction Toolkit
2023.04.00
Medical Imaging Interaction Toolkit
|
Go to the documentation of this file.
12 #ifndef mitkToFCompositeFilter_h
13 #define mitkToFCompositeFilter_h
17 #include <MitkToFProcessingExports.h>
18 #include <itkBilateralImageFilter.h>
19 #include <opencv2/core/types_c.h>
45 itkFactorylessNewMacro(
Self);
48 itkSetMacro(ApplyTemporalMedianFilter,
bool);
49 itkGetConstMacro(ApplyTemporalMedianFilter,
bool);
50 itkSetMacro(ApplyAverageFilter,
bool);
51 itkGetConstMacro(ApplyAverageFilter,
bool);
52 itkSetMacro(ApplyMedianFilter,
bool);
53 itkGetConstMacro(ApplyMedianFilter,
bool);
54 itkSetMacro(ApplyThresholdFilter,
bool);
55 itkGetConstMacro(ApplyThresholdFilter,
bool);
56 itkSetMacro(ApplyMaskSegmentation,
bool);
57 itkGetConstMacro(ApplyMaskSegmentation,
bool);
58 itkSetMacro(ApplyBilateralFilter,
bool);
59 itkGetConstMacro(ApplyBilateralFilter,
bool);
61 using itk::ProcessObject::SetInput;
74 void SetInput(
unsigned int idx,
const InputImageType* distanceImage)
override;
84 Image* GetInput(
unsigned int idx);
89 void SetTemporalMedianFilterParameter(
int tmporalMedianFilterNumOfFrames);
95 void SetThresholdFilterParameter(
int min,
int max);
102 void SetBilateralFilterParameter(
double domainSigma,
double rangeSigma,
int kernelRadius);
113 void GenerateOutputInformation()
override;
118 void GenerateData()
override;
126 void CreateOutputsForAllInputs();
132 void ProcessSegmentation(IplImage* inputIplImage);
136 ItkImageType2D::Pointer ProcessItkBilateralFilter(ItkImageType2D::Pointer inputItkImage);
140 void ProcessCVBilateralFilter(IplImage* inputIplImage, IplImage* outputIplImage);
144 void ProcessCVMedianFilter(IplImage* inputIplImage, IplImage* outputIplImage,
int radius = 3);
148 void ProcessStreamedQuickSelectMedianImageFilter(IplImage* inputIplImage);
156 float quick_select(
float arr[],
int n);
160 void CreateItkImage(ItkImageType2D::Pointer &itkInputImage);
bool m_ApplyThresholdFilter
Flag indicating if the threshold filter is currently active for processing the distance image.
bool m_ApplyMedianFilter
Flag indicating if the spatial median filter is currently active for processing the distance image.
IplImage * m_IplDistanceImage
OpenCV-representation of the distance image.
bool m_ApplyTemporalMedianFilter
Flag indicating if the temporal median filter is currently active for processing the distance image.
int m_ImageWidth
x-dimension of the image
Image class for storing images.
Applies a common filter-pipeline to the first input of this filter.
int m_ThresholdFilterMax
Lower threshold of the threshold filter. Pixels with values above will be assigned value 0 when apply...
bool m_ApplyBilateralFilter
Flag indicating if the bilateral filter is currently active for processing the distance image.
DataCollection - Class to facilitate loading/accessing structured data.
int m_BilateralFilterKernelRadius
Kernel radius of the bilateral filter mask.
itk::Image< float, 3 > ItkImageType3D
Superclass of all classes generating some kind of mitk::BaseData.
int m_ImageHeight
y-dimension of the image
double m_BilateralFilterDomainSigma
Parameter of the bilateral filter controlling the smoothing effect of the filter. Default value: 2.
itk::Image< float, 2 > ItkImageType2D
mitk::Image::Pointer m_SegmentationMask
mask image used for segmenting the image
int m_DataBufferCurrentIndex
Current index in the buffer of the temporal median filter.
int m_DataBufferMaxSize
Maximal size for the buffer of the temporal median filter (m_DataBuffer)
int m_TemporalMedianFilterNumOfFrames
Number of frames to be used in the calculation of the temporal median.
bool m_ApplyMaskSegmentation
Flag indicating if a mask segmentation is performed.
int m_ThresholdFilterMin
Lower threshold of the threshold filter. Pixels with values below will be assigned value 0 when apply...
#define mitkClassMacro(className, SuperClassName)
ItkImageType2D::Pointer m_ItkInputImage
ITK representation of the distance image.
int m_ImageSize
size of the image in bytes
IplImage * m_IplOutputImage
OpenCV-representation of the output image.
float ** m_DataBuffer
Buffer used for calculating the pixel-wise median over the last n (m_TemporalMedianFilterNumOfFrames)...
Superclass of all classes having one or more Images as input and generating Images as output.
itk::BilateralImageFilter< ItkImageType2D, ItkImageType2D > BilateralFilterType
double m_BilateralFilterRangeSigma
Parameter of the bilateral filter controlling the edge preserving effect of the filter....
bool m_ApplyAverageFilter
Flag indicating if the average filter is currently active for processing the distance image.