MITK-IGT
IGT Extension of MITK
Loading...
Searching...
No Matches
mitkToFDistanceImageToSurfaceFilter.h
Go to the documentation of this file.
1/*============================================================================
2
3The Medical Imaging Interaction Toolkit (MITK)
4
5Copyright (c) German Cancer Research Center (DKFZ)
6All rights reserved.
7
8Use of this source code is governed by a 3-clause BSD license that can be
9found in the LICENSE file.
10
11============================================================================*/
12#ifndef mitkToFDistanceImageToSurfaceFilter_h
13#define mitkToFDistanceImageToSurfaceFilter_h
14
15
16#include <mitkImage.h>
17#include <mitkSurfaceSource.h>
18#include <MitkToFProcessingExports.h>
22#include <mitkPointSet.h>
23
24#include <vtkSmartPointer.h>
25#include <vtkIdList.h>
26
27#include <opencv2/core/types_c.h>
28
29namespace mitk
30{
46 class MITKTOFPROCESSING_EXPORT ToFDistanceImageToSurfaceFilter : public SurfaceSource
47 {
48 public:
49
53 itkSetMacro(CameraIntrinsics, mitk::CameraIntrinsics::Pointer);
54 itkGetMacro(CameraIntrinsics, mitk::CameraIntrinsics::Pointer);
57 itkSetMacro(TextureIndex,int);
58
71 void SetTriangulationThreshold( double triangulationThreshold );
72 itkGetMacro(TriangulationThreshold, double);
73
76
77 itkSetMacro(GenerateTriangularMesh,bool);
78 itkGetMacro(GenerateTriangularMesh,bool);
79
80
84 enum ReconstructionModeType{ WithOutInterPixelDistance = 1, WithInterPixelDistance = 2, Kinect = 3};
85
92 void SetScalarImage(IplImage* iplScalarImage);
97 IplImage* GetScalarImage();
102 void SetTextureImageWidth(int width);
107 void SetTextureImageHeight(int height);
108
109 using itk::ProcessObject::SetInput;
110
115 virtual void SetInput( Image* distanceImage);
116
122 virtual void SetInput( Image* distanceImage, mitk::CameraIntrinsics::Pointer cameraIntrinsics );
123
129 virtual void SetInput(unsigned int idx, Image* distanceImage);
130
137 virtual void SetInput( unsigned int idx, Image* distanceImage, mitk::CameraIntrinsics::Pointer cameraIntrinsics );
138
142 Image* GetInput();
143
147 Image* GetInput(unsigned int idx);
148
149 protected:
158 void GenerateOutputInformation() override;
163 void GenerateData() override;
171 void CreateOutputsForAllInputs();
172
174
175 mitk::CameraIntrinsics::Pointer m_CameraIntrinsics;
176
180
183
185
187
189
190 };
191} //END mitk namespace
192#endif
class representing camera intrinsics and related functions
Converts a Time-of-Flight (ToF) distance image to a 3D surface using the pinhole camera model for coo...
itkSetEnumMacro(ReconstructionMode, ReconstructionModeType)
itkSetMacro(GenerateTriangularMesh, bool)
ReconstructionModeType
The ReconstructionModeType enum: Defines the reconstruction mode, if using no interpixeldistances and...
vtkSmartPointer< vtkIdList > m_VertexIdList
Make a vtkIdList to save the ID's of the polyData corresponding to the image pixel ID's....
itkGetMacro(TriangulationThreshold, double)
ToFProcessingCommon::ToFPoint2D m_InterPixelDistance
distance in mm between two adjacent pixels on the ToF camera chip
int m_TextureIndex
Index of the input used as texture image when no scalar image was set via SetIplScalarImage()....
itkGetMacro(CameraIntrinsics, mitk::CameraIntrinsics::Pointer)
IplImage * m_IplScalarImage
Scalar image used for surface texturing.
int m_TextureImageHeight
Height (y-dimension) of the texture image.
itkSetMacro(VertexIdList, vtkSmartPointer< vtkIdList >)
ReconstructionModeType m_ReconstructionMode
The ReconstructionModeType enum: Defines the reconstruction mode, if using no interpixeldistances and...
itkGetMacro(GenerateTriangularMesh, bool)
itkGetEnumMacro(ReconstructionMode, ReconstructionModeType)
itkSetMacro(InterPixelDistance, ToFProcessingCommon::ToFPoint2D)
itkSetMacro(CameraIntrinsics, mitk::CameraIntrinsics::Pointer)
mitkClassMacro(ToFDistanceImageToSurfaceFilter, SurfaceSource)
int m_TextureImageWidth
Width (x-dimension) of the texture image.
itkGetMacro(InterPixelDistance, ToFProcessingCommon::ToFPoint2D)
itkGetMacro(VertexIdList, vtkSmartPointer< vtkIdList >)
mitk::CameraIntrinsics::Pointer m_CameraIntrinsics
Specifies the intrinsic parameters.
itk::Point< ToFScalarType, 2 > ToFPoint2D
IGT Exceptions.