Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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()