Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitk::ManualSegmentationToSurfaceFilter Class Reference

Supplies a 3D surface from pre-processed segmentation. More...

#include <mitkManualSegmentationToSurfaceFilter.h>

Inheritance diagram for mitk::ManualSegmentationToSurfaceFilter:
Collaboration diagram for mitk::ManualSegmentationToSurfaceFilter:

Public Types

typedef double vtkDouble
 
- Public Types inherited from mitk::ImageToSurfaceFilter
enum  DecimationType { NoDecimation, DecimatePro, QuadricDecimation }
 
typedef ImageToSurfaceFilter Self
 
typedef SurfaceSource Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer< const SelfConstPointer
 
- Public Types inherited from mitk::SurfaceSource
typedef SurfaceSource Self
 
typedef BaseDataSource Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef Surface OutputType
 
- Public Types inherited from mitk::BaseDataSource
typedef BaseDataSource Self
 
typedef itk::ProcessObject Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef BaseData OutputType
 
typedef itk::DataObject::DataObjectIdentifierType DataObjectIdentifierType
 

Public Member Functions

 mitkClassMacro (ManualSegmentationToSurfaceFilter, ImageToSurfaceFilter)
 
virtual void GenerateData () override
 
Pointer Clone () const
 
virtual void SetMedianFilter3D (bool _arg)
 
virtual bool GetMedianFilter3D () const
 
virtual void MedianFilter3DOn ()
 
virtual void MedianFilter3DOff ()
 
virtual void SetInterpolation (bool _arg)
 
virtual bool GetInterpolation () const
 
virtual void InterpolationOn ()
 
virtual void InterpolationOff ()
 
virtual void SetUseGaussianImageSmooth (bool _arg)
 
virtual bool GetUseGaussianImageSmooth () const
 
virtual void UseGaussianImageSmoothOn ()
 
virtual void UseGaussianImageSmoothOff ()
 
virtual void SetGaussianStandardDeviation (double _arg)
 
virtual double GetGaussianStandardDeviation () const
 
void SetMedianKernelSize (int x, int y, int z)
 
virtual int GetMedianKernelSizeX () const
 
virtual int GetMedianKernelSizeY () const
 
virtual int GetMedianKernelSizeZ () const
 
void SetInterpolation (vtkDouble x, vtkDouble y, vtkDouble z)
 
- Public Member Functions inherited from mitk::ImageToSurfaceFilter
virtual std::vector< std::string > GetClassHierarchy () const override
 
virtual const char * GetClassName () const
 
Pointer Clone () const
 
virtual void GenerateOutputInformation () override
 
const mitk::ImageGetInput (void)
 
virtual void SetInput (const mitk::Image *image)
 
void SetSmoothIteration (int smoothIteration)
 
void SetSmoothRelaxation (float smoothRelaxation)
 
virtual void SetThreshold (ScalarType _arg)
 
virtual ScalarType GetThreshold () const
 
virtual void SetSmooth (bool _arg)
 
virtual void SmoothOn ()
 
virtual void SmoothOff ()
 
virtual bool GetSmooth () const
 
virtual DecimationType GetDecimate () const
 
virtual void SetDecimate (DecimationType _arg)
 
virtual void SetTargetReduction (float _arg)
 
virtual float GetTargetReduction () const
 
template<class T1 , class T2 , class T3 >
void mitkVtkLinearTransformPoint (T1 matrix[4][4], T2 in[3], T3 out[3])
 
- Public Member Functions inherited from mitk::SurfaceSource
Pointer Clone () const
 
OutputTypeGetOutput ()
 
const OutputTypeGetOutput () const
 
OutputTypeGetOutput (DataObjectPointerArraySizeType idx)
 
const OutputTypeGetOutput (DataObjectPointerArraySizeType idx) const
 
virtual itk::DataObject::Pointer MakeOutput (DataObjectPointerArraySizeType idx) override
 
virtual itk::DataObject::Pointer MakeOutput (const DataObjectIdentifierType &name) override
 
- Public Member Functions inherited from mitk::BaseDataSource
OutputTypeGetOutput ()
 
const OutputTypeGetOutput () const
 
OutputTypeGetOutput (DataObjectPointerArraySizeType idx)
 
const OutputTypeGetOutput (DataObjectPointerArraySizeType idx) const
 
virtual void GraftOutput (OutputType *output)
 Graft the specified BaseData onto this BaseDataSource's output. More...
 
virtual void GraftOutput (const DataObjectIdentifierType &key, OutputType *output)
 
virtual void GraftNthOutput (unsigned int idx, OutputType *output)
 Graft the specified base data object onto this BaseDataSource's idx'th output. More...
 
bool Updating () const
 Access itk::ProcessObject::m_Updating. More...
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from mitk::ImageToSurfaceFilter
static const char * GetStaticNameOfClass ()
 
static Pointer New ()
 
- Static Public Member Functions inherited from mitk::SurfaceSource
static const char * GetStaticNameOfClass ()
 
static Pointer New ()
 
- Static Public Member Functions inherited from mitk::BaseDataSource
static const char * GetStaticNameOfClass ()
 

Protected Member Functions

 ManualSegmentationToSurfaceFilter ()
 
virtual ~ManualSegmentationToSurfaceFilter ()
 
- Protected Member Functions inherited from mitk::ImageToSurfaceFilter
 ImageToSurfaceFilter ()
 
virtual ~ImageToSurfaceFilter ()
 
void CreateSurface (int time, vtkImageData *vtkimage, mitk::Surface *surface, const ScalarType threshold)
 
- Protected Member Functions inherited from mitk::SurfaceSource
 SurfaceSource ()
 
virtual ~SurfaceSource ()
 
- Protected Member Functions inherited from mitk::BaseDataSource
 BaseDataSource ()
 
virtual ~BaseDataSource ()
 

Protected Attributes

bool m_MedianFilter3D
 
int m_MedianKernelSizeX
 
int m_MedianKernelSizeY
 
int m_MedianKernelSizeZ
 
bool m_UseGaussianImageSmooth
 
double m_GaussianStandardDeviation
 
bool m_Interpolation
 
vtkDouble m_InterpolationX
 
vtkDouble m_InterpolationY
 
vtkDouble m_InterpolationZ
 
- Protected Attributes inherited from mitk::ImageToSurfaceFilter
bool m_Smooth
 
DecimationType m_Decimate
 
ScalarType m_Threshold
 
float m_TargetReduction
 
int m_SmoothIteration
 
float m_SmoothRelaxation
 

Additional Inherited Members

- Static Protected Member Functions inherited from mitk::BaseDataSource
static Pointer New ()
 

Detailed Description

Supplies a 3D surface from pre-processed segmentation.

The resulting surface depends on a filter pipeline based on vtkMedian (1) and a Gaussian filter with vtkImageGaussianSmooth (2). All voxel can be changed to an isotropic representation of the image (ATTANTION: the number of voxels in the will change). The resulting isotropic image has 1mm isotropic voxel by default. But can be varied freely.

Definition at line 44 of file mitkManualSegmentationToSurfaceFilter.h.

Member Typedef Documentation

Constructor & Destructor Documentation

mitk::ManualSegmentationToSurfaceFilter::ManualSegmentationToSurfaceFilter ( )
protected
mitk::ManualSegmentationToSurfaceFilter::~ManualSegmentationToSurfaceFilter ( )
protectedvirtual

Definition at line 38 of file mitkManualSegmentationToSurfaceFilter.cpp.

Member Function Documentation

Pointer mitk::ManualSegmentationToSurfaceFilter::Clone ( ) const
void mitk::ManualSegmentationToSurfaceFilter::GenerateData ( )
overridevirtual

Will pre-process a segmentation voxelwise. The segmentation can use a hole fill relating a median filter and smooth by a Gaussian filter. The image can be interpolated to an isotropic image. By default every filter is disabled. This method calls CreateSurface from mitkImageToSurfaceFilter and does not need a manual call since we use Update().

Reimplemented from mitk::ImageToSurfaceFilter.

Definition at line 40 of file mitkManualSegmentationToSurfaceFilter.cpp.

References mitk::ProgressBar::AddStepsToDo(), mitk::ProportionalTimeGeometry::GetFirstTimePoint(), mitk::ProgressBar::GetInstance(), mitk::SlicedData::GetRequestedRegion(), mitk::ProportionalTimeGeometry::GetStepDuration(), mitk::BaseData::GetTimeGeometry(), mitk::Image::GetVtkImageData(), MITK_DEBUG, MITK_INFO, mitk::New(), mitk::ProgressBar::Progress(), mitk::ProportionalTimeGeometry::SetFirstTimePoint(), and mitk::ProportionalTimeGeometry::SetStepDuration().

virtual double mitk::ManualSegmentationToSurfaceFilter::GetGaussianStandardDeviation ( ) const
virtual

Returns the standard deviation of the Gaussian filter which will be used when filter is enabled.

virtual bool mitk::ManualSegmentationToSurfaceFilter::GetInterpolation ( ) const
virtual

Returns activation state of interpolation filter.

virtual bool mitk::ManualSegmentationToSurfaceFilter::GetMedianFilter3D ( ) const
virtual

Return state if median filter is enabled.

virtual int mitk::ManualSegmentationToSurfaceFilter::GetMedianKernelSizeX ( ) const
virtual

Returns the kernel size in the first direction.

virtual int mitk::ManualSegmentationToSurfaceFilter::GetMedianKernelSizeY ( ) const
virtual

Returns the kernel size in the second direction.

virtual int mitk::ManualSegmentationToSurfaceFilter::GetMedianKernelSizeZ ( ) const
virtual

Returns the kernel size in the third direction.

virtual bool mitk::ManualSegmentationToSurfaceFilter::GetUseGaussianImageSmooth ( ) const
virtual

Returns activation state of standard deviation filter.

virtual void mitk::ManualSegmentationToSurfaceFilter::InterpolationOff ( )
virtual
virtual void mitk::ManualSegmentationToSurfaceFilter::InterpolationOn ( )
virtual

Enable the interpolation filter (second filter in pipeline) for isotropic voxel.

virtual void mitk::ManualSegmentationToSurfaceFilter::MedianFilter3DOff ( )
virtual
virtual void mitk::ManualSegmentationToSurfaceFilter::MedianFilter3DOn ( )
virtual

Enable the median filter (first filter in pipeline).

mitk::ManualSegmentationToSurfaceFilter::mitkClassMacro ( ManualSegmentationToSurfaceFilter  ,
ImageToSurfaceFilter   
)
static Pointer mitk::ManualSegmentationToSurfaceFilter::New ( )
static
virtual void mitk::ManualSegmentationToSurfaceFilter::SetGaussianStandardDeviation ( double  _arg)
virtual

Set standard deviation for Gaussian Filter.

Parameters
_argby default 1.5
virtual void mitk::ManualSegmentationToSurfaceFilter::SetInterpolation ( bool  _arg)
virtual

Supplies a method to enable Interpolation.

void mitk::ManualSegmentationToSurfaceFilter::SetInterpolation ( vtkDouble  x,
vtkDouble  y,
vtkDouble  z 
)

Set the values for Spacing in X, Y and Z-Dimension

Definition at line 164 of file mitkManualSegmentationToSurfaceFilter.cpp.

virtual void mitk::ManualSegmentationToSurfaceFilter::SetMedianFilter3D ( bool  _arg)
virtual

Supplies a method for setting median filter by a bool value.

void mitk::ManualSegmentationToSurfaceFilter::SetMedianKernelSize ( int  x,
int  y,
int  z 
)

Set the Kernel for Median3DFilter. By default kernel is set to 3x3x3. If you choose '1' nothing will be processed in this direction.

Definition at line 157 of file mitkManualSegmentationToSurfaceFilter.cpp.

virtual void mitk::ManualSegmentationToSurfaceFilter::SetUseGaussianImageSmooth ( bool  _arg)
virtual

Supplies a method for Gaussian filter (third filter in pipeline).

virtual void mitk::ManualSegmentationToSurfaceFilter::UseGaussianImageSmoothOff ( )
virtual
virtual void mitk::ManualSegmentationToSurfaceFilter::UseGaussianImageSmoothOn ( )
virtual

Enables Gaussian image smooth. As well the threshold for the CreateSurface() method will raise the threshold to 49 and changes the image range set from 0 to 100. It is made for reasons in binary images to prevent conflicts with the used filter. There are better results for dividing fore- and background.

Member Data Documentation

double mitk::ManualSegmentationToSurfaceFilter::m_GaussianStandardDeviation
protected
bool mitk::ManualSegmentationToSurfaceFilter::m_Interpolation
protected
vtkDouble mitk::ManualSegmentationToSurfaceFilter::m_InterpolationX
protected
vtkDouble mitk::ManualSegmentationToSurfaceFilter::m_InterpolationY
protected
vtkDouble mitk::ManualSegmentationToSurfaceFilter::m_InterpolationZ
protected
bool mitk::ManualSegmentationToSurfaceFilter::m_MedianFilter3D
protected
int mitk::ManualSegmentationToSurfaceFilter::m_MedianKernelSizeX
protected
int mitk::ManualSegmentationToSurfaceFilter::m_MedianKernelSizeY
protected
int mitk::ManualSegmentationToSurfaceFilter::m_MedianKernelSizeZ
protected
bool mitk::ManualSegmentationToSurfaceFilter::m_UseGaussianImageSmooth
protected

The documentation for this class was generated from the following files: