Medical Imaging Interaction Toolkit
2018.4.99-389bf124
Medical Imaging Interaction Toolkit
|
#include <mitkSurfaceInterpolationController.h>
Classes | |
struct | ContourPositionInformation |
Public Types | |
typedef std::vector< ContourPositionInformation > | ContourPositionInformationList |
typedef std::vector< ContourPositionInformationList > | ContourPositionInformationVec2D |
typedef std::map< mitk::Image *, ContourPositionInformationVec2D > | ContourListMap |
Public Member Functions | |
mitkClassMacroItkParent (SurfaceInterpolationController, itk::Object) | |
Pointer | Clone () const |
virtual double | GetDistanceImageSpacing () |
void | SetCurrentTimeStep (unsigned int ts) |
unsigned int | GetCurrentTimeStep () |
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::Surface * | GetContour (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... | |
Surface * | GetContoursAsSurface () |
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::Image * | GetImage () |
double | EstimatePortionOfNeededMemory () |
unsigned int | GetNumberOfInterpolationSessions () |
Static Public Member Functions | |
static Pointer | New () |
static SurfaceInterpolationController * | GetInstance () |
Protected Member Functions | |
SurfaceInterpolationController () | |
~SurfaceInterpolationController () override | |
template<typename TPixel , unsigned int VImageDimension> | |
void | GetImageBase (itk::Image< TPixel, VImageDimension > *input, itk::ImageBase< 3 >::Pointer &result) |
Definition at line 48 of file mitkSurfaceInterpolationController.h.
typedef std::map<mitk::Image *, ContourPositionInformationVec2D> mitk::SurfaceInterpolationController::ContourListMap |
Definition at line 66 of file mitkSurfaceInterpolationController.h.
typedef std::vector<ContourPositionInformation> mitk::SurfaceInterpolationController::ContourPositionInformationList |
Definition at line 63 of file mitkSurfaceInterpolationController.h.
typedef std::vector<ContourPositionInformationList> mitk::SurfaceInterpolationController::ContourPositionInformationVec2D |
Definition at line 64 of file mitkSurfaceInterpolationController.h.
|
protected |
Definition at line 76 of file mitkSurfaceInterpolationController.cpp.
References mitk::Surface::New(), mitk::ComputeContourSetNormalsFilter::New(), mitk::ReduceContourSetFilter::New(), and mitk::CreateDistanceImageFromSurfaceFilter::New().
|
overrideprotected |
Definition at line 102 of file mitkSurfaceInterpolationController.cpp.
void mitk::SurfaceInterpolationController::AddNewContour | ( | Surface::Pointer | newContour | ) |
Adds a new extracted contour to the list.
newContour | the contour to be added. If a contour at that position already exists the related contour will be updated |
Definition at line 124 of file mitkSurfaceInterpolationController.cpp.
References CreateContourPositionInformation().
Referenced by mitk::SegTool2D::UpdateSurfaceInterpolation().
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.
newContours | the list of the contours |
Definition at line 135 of file mitkSurfaceInterpolationController.cpp.
References mitk::SurfaceInterpolationController::ContourPositionInformation::contour, ContoursCoplanar(), CreateContourPositionInformation(), mitk::BaseData::GetTimeSteps(), mitk::Surface::GetVtkPolyData(), MITK_ERROR, and RemoveContour().
Referenced by ReinitializeInterpolation(), and mitk::SegTool2D::WriteBackSegmentationResult().
Pointer mitk::SurfaceInterpolationController::Clone | ( | ) | const |
double mitk::SurfaceInterpolationController::EstimatePortionOfNeededMemory | ( | ) |
Estimates the memory which is needed to build up the equationsystem for the interpolation.
Definition at line 372 of file mitkSurfaceInterpolationController.cpp.
References mitk::MemoryUtilities::GetTotalSizeOfPhysicalRam().
const mitk::Surface * mitk::SurfaceInterpolationController::GetContour | ( | ContourPositionInformation | contourInfo | ) |
Returns the contour for a given plane for the current selected segmenation.
ontourInfo | the contour which should be returned |
Definition at line 223 of file mitkSurfaceInterpolationController.cpp.
References mitk::SurfaceInterpolationController::ContourPositionInformation::contour, ContoursCoplanar(), and mitk::BaseData::GetTimeSteps().
mitk::Surface * mitk::SurfaceInterpolationController::GetContoursAsSurface | ( | ) |
Definition at line 336 of file mitkSurfaceInterpolationController.cpp.
mitk::Image::Pointer mitk::SurfaceInterpolationController::GetCurrentSegmentation | ( | ) |
Get the current selected segmentation for which the interpolation is performed.
Definition at line 362 of file mitkSurfaceInterpolationController.cpp.
|
inline |
Definition at line 83 of file mitkSurfaceInterpolationController.h.
References DEPRECATED, and m_DataStorage.
|
virtual |
Referenced by QmitkSlicesInterpolator::OnAccept3DInterpolationClicked().
mitk::Image * mitk::SurfaceInterpolationController::GetImage | ( | void | ) |
Definition at line 367 of file mitkSurfaceInterpolationController.cpp.
|
protected |
Definition at line 387 of file mitkSurfaceInterpolationController.cpp.
Referenced by ReinitializeInterpolation().
|
static |
Definition at line 113 of file mitkSurfaceInterpolationController.cpp.
References New().
Referenced by QmitkSlicesInterpolator::OnAccept3DInterpolationClicked(), QmitkSlicesInterpolator::OnReinit3DInterpolation(), mitk::SegTool2D::UpdateSurfaceInterpolation(), and mitk::SegTool2D::WriteBackSegmentationResult().
mitk::Surface::Pointer mitk::SurfaceInterpolationController::GetInterpolationResult | ( | ) |
Definition at line 331 of file mitkSurfaceInterpolationController.cpp.
unsigned int mitk::SurfaceInterpolationController::GetNumberOfContours | ( | ) |
Returns the number of available contours for the current selected segmentation.
Definition at line 246 of file mitkSurfaceInterpolationController.cpp.
References mitk::BaseData::GetTimeSteps().
unsigned int mitk::SurfaceInterpolationController::GetNumberOfInterpolationSessions | ( | ) |
Definition at line 381 of file mitkSurfaceInterpolationController.cpp.
void mitk::SurfaceInterpolationController::Interpolate | ( | ) |
Interpolates the 3D surface from the given extracted contours
Definition at line 262 of file mitkSurfaceInterpolationController.cpp.
References mitk::ProgressBar::AddStepsToDo(), mitk::ProgressBar::GetInstance(), mitk::ImageTimeSelector::New(), mitk::Surface::New(), mitk::ImageToSurfaceFilter::New(), and mitk::ProgressBar::Progress().
mitk::SurfaceInterpolationController::mitkClassMacroItkParent | ( | SurfaceInterpolationController | , |
itk::Object | |||
) |
|
static |
Referenced by GetInstance().
void mitk::SurfaceInterpolationController::ReinitializeInterpolation | ( | mitk::Surface::Pointer | contours | ) |
Reinitializes the interpolation using the provided contour data.
contours | a mitk::Surface which contains the contours as polys in the vtkPolyData |
Definition at line 514 of file mitkSurfaceInterpolationController.cpp.
References AccessFixedDimensionByItk_1, AddNewContours(), mitk::SurfaceInterpolationController::ContourPositionInformation::contourNormal, mitk::SurfaceInterpolationController::ContourPositionInformation::contourPoint, ContoursCoplanar(), GetImageBase(), mitk::BaseData::GetTimeSteps(), k(), mitk::ImageTimeSelector::New(), mitk::Surface::New(), and ReinitializeInterpolation().
Referenced by QmitkSlicesInterpolator::OnReinit3DInterpolation(), ReinitializeInterpolation(), RemoveContour(), and SetCurrentInterpolationSession().
void mitk::SurfaceInterpolationController::RemoveAllInterpolationSessions | ( | ) |
Removes all sessions.
Definition at line 498 of file mitkSurfaceInterpolationController.cpp.
References image.
bool mitk::SurfaceInterpolationController::RemoveContour | ( | ContourPositionInformation | contourInfo | ) |
Removes the contour for a given plane for the current selected segmenation.
contourInfo | the contour which should be removed |
Definition at line 195 of file mitkSurfaceInterpolationController.cpp.
References ContoursCoplanar(), mitk::BaseData::GetTimeSteps(), and ReinitializeInterpolation().
Referenced by AddNewContours(), and mitk::SegTool2D::UpdateSurfaceInterpolation().
void mitk::SurfaceInterpolationController::RemoveInterpolationSession | ( | mitk::Image::Pointer | segmentationImage | ) |
Remove interpolation session.
segmentationImage | the session to be removed |
Definition at line 478 of file mitkSurfaceInterpolationController.cpp.
Referenced by RemoveSegmentationFromContourList(), and ReplaceInterpolationSession().
void mitk::SurfaceInterpolationController::RemoveSegmentationFromContourList | ( | mitk::Image * | segmentation | ) |
Removes the segmentation and all its contours from the list
segmentation | The segmentation to be removed |
Definition at line 473 of file mitkSurfaceInterpolationController.cpp.
References RemoveInterpolationSession().
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
oldSession | the session which should be replaced |
newSession | the new session which replaces the old one |
Definition at line 432 of file mitkSurfaceInterpolationController.cpp.
References mitk::eps, mitk::Equal(), mitk::ImageTimeSelector::New(), and RemoveInterpolationSession().
void mitk::SurfaceInterpolationController::SetCurrentInterpolationSession | ( | mitk::Image::Pointer | currentSegmentationImage | ) |
Sets the current list of contourpoints which is used for the surface interpolation
segmentation | The current selected segmentation |
Definition at line 398 of file mitkSurfaceInterpolationController.cpp.
References ReinitializeInterpolation().
Referenced by SetCurrentSegmentationInterpolationList().
void mitk::SurfaceInterpolationController::SetCurrentSegmentationInterpolationList | ( | mitk::Image::Pointer | segmentation | ) |
Sets the current list of contourpoints which is used for the surface interpolation
segmentation | The current selected segmentation |
Definition at line 393 of file mitkSurfaceInterpolationController.cpp.
References SetCurrentInterpolationSession().
|
inline |
Definition at line 70 of file mitkSurfaceInterpolationController.h.
void mitk::SurfaceInterpolationController::SetDataStorage | ( | DataStorage::Pointer | ds | ) |
Definition at line 341 of file mitkSurfaceInterpolationController.cpp.
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
Definition at line 357 of file mitkSurfaceInterpolationController.cpp.
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
Definition at line 351 of file mitkSurfaceInterpolationController.cpp.
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
Definition at line 346 of file mitkSurfaceInterpolationController.cpp.