Slicer  4.8
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkImageGrowCutSegment.h
Go to the documentation of this file.
1 #ifndef FASTGROWCUT_H
2 #define FASTGROWCUT_H
3 
4 #include "vtkSlicerSegmentationsModuleLogicExport.h"
5 
6 #include <vtkImageAlgorithm.h>
7 #include <vtkImageData.h>
8 
9 class VTK_SLICER_SEGMENTATIONS_LOGIC_EXPORT vtkImageGrowCutSegment : public vtkImageAlgorithm
10 {
11 public:
12  static vtkImageGrowCutSegment* New();
13  vtkTypeMacro(vtkImageGrowCutSegment, vtkImageAlgorithm);
14  void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE;
15 
16  // Set input grayscale volume (input 0)
17  void SetIntensityVolume(vtkImageData* grayscaleImage) { this->SetInputData(0, grayscaleImage); }
18 
19  // Set input seed label volume (input 1)
20  void SetSeedLabelVolume(vtkImageData* labelImage) { this->SetInputData(1, labelImage); }
21 
22  // Reset to initial state. This forces full recomputation of the result label volume.
23  // This method has to be called if intensity volume changes or if seeds are deleted after initial computation.
24  void Reset();
25 
26 protected:
28  virtual ~vtkImageGrowCutSegment();
29 
30  virtual void ExecuteDataWithInformation(vtkDataObject *outData, vtkInformation *outInfo) VTK_OVERRIDE;
31  virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
32 
33 private:
34  class vtkInternal;
35  vtkInternal * Internal;
36 };
37 
38 #endif
void SetSeedLabelVolume(vtkImageData *labelImage)
void SetIntensityVolume(vtkImageData *grayscaleImage)