fast::TubeSegmentationAndCenterlineExtraction class

Segmentation and centerline extraction of tubular structures.

This implementation is described in the article "GPU Accelerated Segmentation and Centerline Extraction of TubularStructures from Medical Images" by Smistad et al. 2014 https://www.eriksmistad.no/wp-content/uploads/gpu_accelerated_extraction_of_tubular_structures.pdf

Inputs:

Outputs:

  • 0: Image segmentation 3D
  • 1: Mesh centerline
  • 2: Image 3D tubular detection heatmap

Base classes

class ProcessObject
Abstract base class for all process objects.

Public functions

auto create(float sensitivity, float minimumRadius, float maximumRadius, float radiusStep, bool extractBrightTubes, bool keepLargestTreeOnly) -> std::shared_ptr<TubeSegmentationAndCenterlineExtraction>
void setMinimumTreeSize(int nrOfVoxels)
void setMinimumRadius(float radius)
void setMaximumRadius(float radius)
void setRadiusStep(float step)
void setSensitivity(float sensitivity)
void setMinimumIntensity(float intensity)
void setMaximumIntensity(float intensity)
void extractDarkTubes()
void extractBrightTubes()
void disableSegmentation()
void enableSegmentation()
void disableAutomaticCropping()
void enableAutomaticCropping(bool lungCropping = false)
auto getSegmentationOutputPort() -> DataChannel::pointer
auto getCenterlineOutputPort() -> DataChannel::pointer
auto getTDFOutputPort() -> DataChannel::pointer

Private functions

void execute() virtual