Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
vtkImageGrowCutSegment.h
Go to the documentation of this file.
1#ifndef vtkImageGrowCutSegment_h
2#define vtkImageGrowCutSegment_h
3
4#include "vtkSlicerSegmentationsModuleLogicExport.h"
5
6#include <vtkImageAlgorithm.h>
7#include <vtkImageData.h>
8#include <vtkInformation.h>
9
10class VTK_SLICER_SEGMENTATIONS_LOGIC_EXPORT vtkImageGrowCutSegment : public vtkImageAlgorithm
11{
12public:
14 vtkTypeMacro(vtkImageGrowCutSegment, vtkImageAlgorithm);
15 void PrintSelf(ostream& os, vtkIndent indent) override;
16
18 void SetIntensityVolume(vtkImageData* grayscaleImage) { this->SetInputData(0, grayscaleImage); }
19
21 void SetSeedLabelVolume(vtkImageData* labelImage) { this->SetInputData(1, labelImage); }
22
27 void SetMaskVolume(vtkImageData* labelImage) { this->SetInputData(2, labelImage); }
28
31 void Reset();
32
36 vtkGetMacro(DistancePenalty, double);
37 vtkSetMacro(DistancePenalty, double);
38
39protected:
42
43 void ExecuteDataWithInformation(vtkDataObject* outData, vtkInformation* outInfo) override;
44 int RequestInformation(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
45
46 int FillInputPortInformation(int port, vtkInformation* info) override;
47
48private:
50 void operator=(const vtkImageGrowCutSegment&) = delete;
51
52 class vtkInternal;
53 vtkInternal* Internal;
54 double DistancePenalty;
55};
56
57#endif
~vtkImageGrowCutSegment() override
int FillInputPortInformation(int port, vtkInformation *info) override
void SetMaskVolume(vtkImageData *labelImage)
void SetIntensityVolume(vtkImageData *grayscaleImage)
Set input grayscale volume (input 0)
void ExecuteDataWithInformation(vtkDataObject *outData, vtkInformation *outInfo) override
void PrintSelf(ostream &os, vtkIndent indent) override
void SetSeedLabelVolume(vtkImageData *labelImage)
Set input seed label volume (input 1)
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
static vtkImageGrowCutSegment * New()