Medical Imaging Interaction Toolkit  2023.12.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkLabeledImageToSurfaceFilter.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkLabeledImageToSurfaceFilter_h
14 #define mitkLabeledImageToSurfaceFilter_h
15 
17 #include <map>
19 #include <vtkImageData.h>
20 
21 namespace mitk
22 {
35  {
36  public:
38 
39  itkFactorylessNewMacro(Self);
40 
41  itkCloneMacro(Self);
42 
43  typedef int LabelType;
44 
45  typedef std::map<LabelType, unsigned long> LabelMapType;
46 
47  typedef std::map<unsigned int, LabelType> IdxToLabelMapType;
48 
54  itkSetMacro(GenerateAllLabels, bool);
55 
60  itkGetMacro(GenerateAllLabels, bool);
61 
62  itkBooleanMacro(GenerateAllLabels);
63 
69  itkSetMacro(Label, LabelType);
70 
76  itkGetMacro(Label, LabelType);
77 
82  itkSetMacro(BackgroundLabel, LabelType);
83 
88  itkGetMacro(BackgroundLabel, LabelType);
89 
94  itkSetMacro(GaussianStandardDeviation, double);
95 
100  itkGetMacro(GaussianStandardDeviation, double);
101 
110  LabelType GetLabelForNthOutput(const unsigned int &i);
111 
118  mitk::ScalarType GetVolumeForNthOutput(const unsigned int &i);
119 
128  mitk::ScalarType GetVolumeForLabel(const LabelType &label);
129 
130  protected:
132 
134 
136 
138 
140 
142 
143  void GenerateData() override;
144 
145  void GenerateOutputInformation() override;
146 
147  virtual void CreateSurface(int time, vtkImageData *vtkimage, mitk::Surface *surface, LabelType label);
148 
149  virtual LabelMapType GetAvailableLabels();
150 
152 
153  ~LabeledImageToSurfaceFilter() override;
154 
155  private:
156  virtual void CreateSurface(int time, vtkImageData *vtkimage, mitk::Surface *surface, const ScalarType threshold);
157  };
158 
159 } // end of namespace mitk
160 
161 #endif
mitk::LabeledImageToSurfaceFilter::m_GaussianStandardDeviation
double m_GaussianStandardDeviation
Definition: mitkLabeledImageToSurfaceFilter.h:131
mitk::LabeledImageToSurfaceFilter
Definition: mitkLabeledImageToSurfaceFilter.h:34
mitk::LabeledImageToSurfaceFilter::LabelMapType
std::map< LabelType, unsigned long > LabelMapType
Definition: mitkLabeledImageToSurfaceFilter.h:45
mitk::LabeledImageToSurfaceFilter::m_GenerateAllLabels
bool m_GenerateAllLabels
Definition: mitkLabeledImageToSurfaceFilter.h:133
mitkImageToSurfaceFilter.h
mitk::LabeledImageToSurfaceFilter::IdxToLabelMapType
std::map< unsigned int, LabelType > IdxToLabelMapType
Definition: mitkLabeledImageToSurfaceFilter.h:47
MitkAlgorithmsExtExports.h
MITKALGORITHMSEXT_EXPORT
#define MITKALGORITHMSEXT_EXPORT
Definition: MitkAlgorithmsExtExports.h:15
mitk::Surface
Class for storing surfaces (vtkPolyData).
Definition: mitkSurface.h:28
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::Label
A data structure describing a label.
Definition: mitkLabel.h:29
mitk::LabeledImageToSurfaceFilter::m_AvailableLabels
LabelMapType m_AvailableLabels
Definition: mitkLabeledImageToSurfaceFilter.h:139
mitk::BaseDataSource
Superclass of all classes generating some kind of mitk::BaseData.
Definition: mitkBaseDataSource.h:71
mitk::LabeledImageToSurfaceFilter::LabelType
int LabelType
Definition: mitkLabeledImageToSurfaceFilter.h:41
mitk::LabeledImageToSurfaceFilter::m_BackgroundLabel
LabelType m_BackgroundLabel
Definition: mitkLabeledImageToSurfaceFilter.h:137
mitk::LabeledImageToSurfaceFilter::m_Label
LabelType m_Label
Definition: mitkLabeledImageToSurfaceFilter.h:135
mitk::ImageToSurfaceFilter
Converts pixel data to surface data by using a threshold The mitkImageToSurfaceFilter is used to crea...
Definition: mitkImageToSurfaceFilter.h:50
mitkClassMacro
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
mitk::LabeledImageToSurfaceFilter::m_IdxToLabels
IdxToLabelMapType m_IdxToLabels
Definition: mitkLabeledImageToSurfaceFilter.h:141
mitk::ScalarType
double ScalarType
Definition: mitkNumericConstants.h:20