Medical Imaging Interaction Toolkit  2018.04.99-3ec0dd08
Medical Imaging Interaction Toolkit
mitk::SurfaceInterpolationController Class Reference

#include <mitkSurfaceInterpolationController.h>

Inheritance diagram for mitk::SurfaceInterpolationController:
Collaboration diagram for mitk::SurfaceInterpolationController:

Classes

struct  ContourPositionInformation
 

Public Types

typedef std::vector< ContourPositionInformationContourPositionInformationList
 
typedef std::vector< ContourPositionInformationListContourPositionInformationVec2D
 
typedef std::map< mitk::Image *, ContourPositionInformationVec2DContourListMap
 

Public Member Functions

 mitkClassMacroItkParent (SurfaceInterpolationController, itk::Object)
 
Pointer Clone () const
 
virtual double GetDistanceImageSpacing ()
 
void SetCurrentTimePoint (TimePointType tp)
 
TimePointType GetCurrentTimePoint () const
 
void AddNewContour (Surface::Pointer newContour)
 Adds a new extracted contour to the list. More...
 
bool RemoveContour (ContourPositionInformation contourInfo)
 Removes the contour for a given plane for the current selected segmenation. More...
 
void AddNewContours (std::vector< Surface::Pointer > newContours)
 Adds new extracted contours to the list. If one or more contours at a given position already exist they will be updated respectively. More...
 
const mitk::SurfaceGetContour (ContourPositionInformation contourInfo)
 Returns the contour for a given plane for the current selected segmenation. More...
 
unsigned int GetNumberOfContours ()
 Returns the number of available contours for the current selected segmentation. More...
 
void Interpolate ()
 
mitk::Surface::Pointer GetInterpolationResult ()
 
void SetMinSpacing (double minSpacing)
 
void SetMaxSpacing (double maxSpacing)
 
void SetDistanceImageVolume (unsigned int distImageVolume)
 
mitk::Image::Pointer GetCurrentSegmentation ()
 Get the current selected segmentation for which the interpolation is performed. More...
 
SurfaceGetContoursAsSurface ()
 
void SetDataStorage (DataStorage::Pointer ds)
 
void SetCurrentSegmentationInterpolationList (mitk::Image::Pointer segmentation)
 
void SetCurrentInterpolationSession (mitk::Image::Pointer currentSegmentationImage)
 
void RemoveSegmentationFromContourList (mitk::Image *segmentation)
 
void RemoveInterpolationSession (mitk::Image::Pointer segmentationImage)
 Remove interpolation session. More...
 
bool ReplaceInterpolationSession (mitk::Image::Pointer oldSession, mitk::Image::Pointer newSession)
 
void RemoveAllInterpolationSessions ()
 Removes all sessions. More...
 
void ReinitializeInterpolation (mitk::Surface::Pointer contours)
 Reinitializes the interpolation using the provided contour data. More...
 
mitk::ImageGetImage ()
 
double EstimatePortionOfNeededMemory ()
 
unsigned int GetNumberOfInterpolationSessions ()
 

Static Public Member Functions

static Pointer New ()
 
static SurfaceInterpolationControllerGetInstance ()
 

Protected Member Functions

 SurfaceInterpolationController ()
 
 ~SurfaceInterpolationController () override
 
template<typename TPixel , unsigned int VImageDimension>
void GetImageBase (itk::Image< TPixel, VImageDimension > *input, itk::ImageBase< 3 >::Pointer &result)
 

Detailed Description

Definition at line 48 of file mitkSurfaceInterpolationController.h.

Member Typedef Documentation

◆ ContourListMap

◆ ContourPositionInformationList

◆ ContourPositionInformationVec2D

Constructor & Destructor Documentation

◆ SurfaceInterpolationController()

mitk::SurfaceInterpolationController::SurfaceInterpolationController ( )
protected

◆ ~SurfaceInterpolationController()

mitk::SurfaceInterpolationController::~SurfaceInterpolationController ( )
overrideprotected

Member Function Documentation

◆ AddNewContour()

void mitk::SurfaceInterpolationController::AddNewContour ( Surface::Pointer  newContour)

Adds a new extracted contour to the list.

Parameters
newContourthe contour to be added. If a contour at that position already exists the related contour will be updated

◆ AddNewContours()

void mitk::SurfaceInterpolationController::AddNewContours ( std::vector< Surface::Pointer newContours)

Adds new extracted contours to the list. If one or more contours at a given position already exist they will be updated respectively.

Parameters
newContoursthe list of the contours

◆ Clone()

Pointer mitk::SurfaceInterpolationController::Clone ( ) const

◆ EstimatePortionOfNeededMemory()

double mitk::SurfaceInterpolationController::EstimatePortionOfNeededMemory ( )

Estimates the memory which is needed to build up the equationsystem for the interpolation.

Returns
The percentage of the real memory which will be used by the interpolation

◆ GetContour()

const mitk::Surface* mitk::SurfaceInterpolationController::GetContour ( ContourPositionInformation  contourInfo)

Returns the contour for a given plane for the current selected segmenation.

Parameters
contourInfothe contour which should be returned
Returns
the contour as an mitk::Surface. If no contour is available at the give position nullptr is returned

◆ GetContoursAsSurface()

Surface* mitk::SurfaceInterpolationController::GetContoursAsSurface ( )

◆ GetCurrentSegmentation()

mitk::Image::Pointer mitk::SurfaceInterpolationController::GetCurrentSegmentation ( )

Get the current selected segmentation for which the interpolation is performed.

Returns
the current segmentation image

◆ GetCurrentTimePoint()

TimePointType mitk::SurfaceInterpolationController::GetCurrentTimePoint ( ) const
inline

Definition at line 82 of file mitkSurfaceInterpolationController.h.

References DEPRECATED.

◆ GetDistanceImageSpacing()

virtual double mitk::SurfaceInterpolationController::GetDistanceImageSpacing ( )
virtual

◆ GetImage()

mitk::Image* mitk::SurfaceInterpolationController::GetImage ( )

◆ GetImageBase()

template<typename TPixel , unsigned int VImageDimension>
void mitk::SurfaceInterpolationController::GetImageBase ( itk::Image< TPixel, VImageDimension > *  input,
itk::ImageBase< 3 >::Pointer &  result 
)
protected

◆ GetInstance()

static SurfaceInterpolationController* mitk::SurfaceInterpolationController::GetInstance ( )
static

◆ GetInterpolationResult()

mitk::Surface::Pointer mitk::SurfaceInterpolationController::GetInterpolationResult ( )

◆ GetNumberOfContours()

unsigned int mitk::SurfaceInterpolationController::GetNumberOfContours ( )

Returns the number of available contours for the current selected segmentation.

Returns
the number of contours

◆ GetNumberOfInterpolationSessions()

unsigned int mitk::SurfaceInterpolationController::GetNumberOfInterpolationSessions ( )

◆ Interpolate()

void mitk::SurfaceInterpolationController::Interpolate ( )

Interpolates the 3D surface from the given extracted contours

◆ mitkClassMacroItkParent()

mitk::SurfaceInterpolationController::mitkClassMacroItkParent ( SurfaceInterpolationController  ,
itk::Object   
)

◆ New()

static Pointer mitk::SurfaceInterpolationController::New ( )
static

◆ ReinitializeInterpolation()

void mitk::SurfaceInterpolationController::ReinitializeInterpolation ( mitk::Surface::Pointer  contours)

Reinitializes the interpolation using the provided contour data.

Parameters
contoursa mitk::Surface which contains the contours as polys in the vtkPolyData

◆ RemoveAllInterpolationSessions()

void mitk::SurfaceInterpolationController::RemoveAllInterpolationSessions ( )

Removes all sessions.

◆ RemoveContour()

bool mitk::SurfaceInterpolationController::RemoveContour ( ContourPositionInformation  contourInfo)

Removes the contour for a given plane for the current selected segmenation.

Parameters
contourInfothe contour which should be removed
Returns
true if a contour was found and removed, false if no contour was found

◆ RemoveInterpolationSession()

void mitk::SurfaceInterpolationController::RemoveInterpolationSession ( mitk::Image::Pointer  segmentationImage)

Remove interpolation session.

Parameters
segmentationImagethe session to be removed

◆ RemoveSegmentationFromContourList()

void mitk::SurfaceInterpolationController::RemoveSegmentationFromContourList ( mitk::Image segmentation)

Removes the segmentation and all its contours from the list

Parameters
segmentationThe segmentation to be removed
Deprecated:
(as of 2014_03)

◆ ReplaceInterpolationSession()

bool mitk::SurfaceInterpolationController::ReplaceInterpolationSession ( mitk::Image::Pointer  oldSession,
mitk::Image::Pointer  newSession 
)

Replaces the current interpolation session with a new one. All contours form the old session will be applied to the new session. This only works if the two images have the geometry

Parameters
oldSessionthe session which should be replaced
newSessionthe new session which replaces the old one
Returns
true it the the replacement was successful, false if not (e.g. the image's geometry differs)

◆ SetCurrentInterpolationSession()

void mitk::SurfaceInterpolationController::SetCurrentInterpolationSession ( mitk::Image::Pointer  currentSegmentationImage)

Sets the current list of contourpoints which is used for the surface interpolation

Parameters
currentSegmentationImageThe current selected segmentation

◆ SetCurrentSegmentationInterpolationList()

void mitk::SurfaceInterpolationController::SetCurrentSegmentationInterpolationList ( mitk::Image::Pointer  segmentation)

Sets the current list of contourpoints which is used for the surface interpolation

Parameters
segmentationThe current selected segmentation
Deprecated:
(as of 2014_03)

◆ SetCurrentTimePoint()

void mitk::SurfaceInterpolationController::SetCurrentTimePoint ( TimePointType  tp)
inline

Definition at line 69 of file mitkSurfaceInterpolationController.h.

◆ SetDataStorage()

void mitk::SurfaceInterpolationController::SetDataStorage ( DataStorage::Pointer  ds)

◆ SetDistanceImageVolume()

void mitk::SurfaceInterpolationController::SetDistanceImageVolume ( unsigned int  distImageVolume)

Sets the volume i.e. the number of pixels that the distance image should have By evaluation we found out that 50.000 pixel delivers a good result

◆ SetMaxSpacing()

void mitk::SurfaceInterpolationController::SetMaxSpacing ( double  maxSpacing)

Sets the minimum spacing of the current selected segmentation This is needed since the contour points we reduced before they are used to interpolate the surface

◆ SetMinSpacing()

void mitk::SurfaceInterpolationController::SetMinSpacing ( double  minSpacing)

Sets the minimum spacing of the current selected segmentation This is needed since the contour points we reduced before they are used to interpolate the surface


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