Medical Imaging Interaction Toolkit
2016.11.0
Medical Imaging Interaction Toolkit
|
Converts a Time-of-Flight (ToF) distance image to a PointSet using the pinhole camera model for coordinate computation. The intrinsic parameters of the camera (FocalLength, PrincipalPoint, InterPixelDistance) are set via SetIntrinsicParameters(). The measured distance for each pixel corresponds to the distance between the object point and the corresponding image point on the image plane. If a subset of indizes of the image is defined via SetSubset(), the output PointSet will only contain the cartesian coordinates of the corresponding 3D points. More...
#include <mitkToFDistanceImageToPointSetFilter.h>
Public Member Functions | |
mitkClassMacro (ToFDistanceImageToPointSetFilter, PointSetSource) | |
Pointer | Clone () const |
virtual void | SetCameraIntrinsics (mitk::CameraIntrinsics::Pointer _arg) |
virtual mitk::CameraIntrinsics::Pointer | GetCameraIntrinsics () |
virtual void | SetInterPixelDistance (mitk::ToFProcessingCommon::ToFPoint2D _arg) |
virtual mitk::ToFProcessingCommon::ToFPoint2D | GetInterPixelDistance () |
virtual void | SetInput (const Image *distanceImage) |
Sets the input of this filter. More... | |
virtual void | SetInput (unsigned int idx, const Image *distanceImage) |
Sets the input of this filter at idx. More... | |
Image * | GetInput () |
Returns the input of this filter. More... | |
Image * | GetInput (unsigned int idx) |
Returns the input with id idx of this filter. More... | |
void | SetSubset (std::vector< itk::Index< 3 > > subset) |
If this subset is defined, the cartesian coordinates are only computed for the contained indizes. Make sure the indizes are contained in the input image. More... | |
void | SetSubset (mitk::PointSet::Pointer pointSet) |
Sets the subset of indizes used for caluclation of output PointSet as a PointSet. Warning: make sure the points in your PointSet are index coordinates. More... | |
void | SetReconstructionMode (bool withoutInterpixdist=true) |
Sets the reconstruction mode, if using no interpixeldistances and focal lenghts in pixel units (=true) or interpixeldistances and focal length in mm (=false) More... | |
bool | GetReconstructionMode () |
Returns the reconstruction mode. More... | |
Public Member Functions inherited from mitk::PointSetSource | |
virtual std::vector< std::string > | GetClassHierarchy () const override |
virtual const char * | GetClassName () const |
Pointer | Clone () const |
OutputType * | GetOutput () |
const OutputType * | GetOutput () const |
OutputType * | GetOutput (DataObjectPointerArraySizeType idx) |
const OutputType * | GetOutput (DataObjectPointerArraySizeType idx) const |
virtual itk::DataObject::Pointer | MakeOutput (DataObjectPointerArraySizeType idx) override |
virtual itk::DataObject::Pointer | MakeOutput (const DataObjectIdentifierType &name) override |
Public Member Functions inherited from mitk::BaseDataSource | |
OutputType * | GetOutput () |
const OutputType * | GetOutput () const |
OutputType * | GetOutput (DataObjectPointerArraySizeType idx) |
const OutputType * | GetOutput (DataObjectPointerArraySizeType idx) const |
virtual void | GraftOutput (OutputType *output) |
Graft the specified BaseData onto this BaseDataSource's output. More... | |
virtual void | GraftOutput (const DataObjectIdentifierType &key, OutputType *output) |
virtual void | GraftNthOutput (unsigned int idx, OutputType *output) |
Graft the specified base data object onto this BaseDataSource's idx'th output. More... | |
bool | Updating () const |
Access itk::ProcessObject::m_Updating. More... | |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from mitk::PointSetSource | |
static const char * | GetStaticNameOfClass () |
static Pointer | New () |
Static Public Member Functions inherited from mitk::BaseDataSource | |
static const char * | GetStaticNameOfClass () |
Protected Member Functions | |
ToFDistanceImageToPointSetFilter () | |
Standard constructor. More... | |
~ToFDistanceImageToPointSetFilter () | |
Standard destructor. More... | |
virtual void | GenerateOutputInformation () override |
virtual void | GenerateData () override |
Method generating the output of this filter. Called in the updated process of the pipeline. This method generates the output of the ToFSurfaceSource: The generated surface of the 3d points. More... | |
void | CreateOutputsForAllInputs () |
Create an output for each input. More... | |
Protected Member Functions inherited from mitk::PointSetSource | |
PointSetSource () | |
virtual | ~PointSetSource () |
Protected Member Functions inherited from mitk::BaseDataSource | |
BaseDataSource () | |
virtual | ~BaseDataSource () |
Protected Attributes | |
std::vector< itk::Index< 3 > > | m_Subset |
If this subset is specified only the contained indizes are converted to cartesian coordinates. More... | |
mitk::CameraIntrinsics::Pointer | m_CameraIntrinsics |
Member holding the intrinsic parameters needed for PointSet calculation. More... | |
ToFProcessingCommon::ToFPoint2D | m_InterPixelDistance |
distance in mm between two adjacent pixels on the ToF camera chip More... | |
bool | m_ReconstructionMode |
true = Reconstruction without interpixeldistance and with focal lengths in pixel units. false = Reconstruction with interpixeldistance and with focal length in mm. More... | |
Additional Inherited Members | |
Public Types inherited from mitk::PointSetSource | |
typedef PointSetSource | Self |
typedef BaseDataSource | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef PointSet | OutputType |
typedef OutputType::Pointer | OutputTypePointer |
Public Types inherited from mitk::BaseDataSource | |
typedef BaseDataSource | Self |
typedef itk::ProcessObject | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef BaseData | OutputType |
typedef itk::DataObject::DataObjectIdentifierType | DataObjectIdentifierType |
Static Protected Member Functions inherited from mitk::BaseDataSource | |
static Pointer | New () |
Converts a Time-of-Flight (ToF) distance image to a PointSet using the pinhole camera model for coordinate computation. The intrinsic parameters of the camera (FocalLength, PrincipalPoint, InterPixelDistance) are set via SetIntrinsicParameters(). The measured distance for each pixel corresponds to the distance between the object point and the corresponding image point on the image plane. If a subset of indizes of the image is defined via SetSubset(), the output PointSet will only contain the cartesian coordinates of the corresponding 3D points.
The coordinate conversion follows the model of a common pinhole camera where the origin of the camera coordinate system (world coordinates) is at the pinhole
The definition of the image plane and its coordinate systems (pixel and mm) is depicted in the following image
Definition at line 47 of file mitkToFDistanceImageToPointSetFilter.h.
|
protected |
Standard constructor.
Definition at line 24 of file mitkToFDistanceImageToPointSetFilter.cpp.
References m_CameraIntrinsics, m_InterPixelDistance, m_ReconstructionMode, and mitk::CameraIntrinsics::New().
|
protected |
Standard destructor.
Definition at line 35 of file mitkToFDistanceImageToPointSetFilter.cpp.
Pointer mitk::ToFDistanceImageToPointSetFilter::Clone | ( | ) | const |
|
protected |
Create an output for each input.
This Method sets the number of outputs to the number of inputs and creates missing outputs objects.
Definition at line 192 of file mitkToFDistanceImageToPointSetFilter.cpp.
|
overrideprotectedvirtual |
Method generating the output of this filter. Called in the updated process of the pipeline. This method generates the output of the ToFSurfaceSource: The generated surface of the 3d points.
Definition at line 117 of file mitkToFDistanceImageToPointSetFilter.cpp.
References mitk::eps, mitk::ToFProcessingCommon::IndexToCartesianCoordinates(), and mitk::ToFProcessingCommon::IndexToCartesianCoordinatesWithInterpixdist().
|
overrideprotectedvirtual |
Definition at line 204 of file mitkToFDistanceImageToPointSetFilter.cpp.
|
virtual |
mitk::Image * mitk::ToFDistanceImageToPointSetFilter::GetInput | ( | void | ) |
Returns the input of this filter.
Definition at line 57 of file mitkToFDistanceImageToPointSetFilter.cpp.
mitk::Image * mitk::ToFDistanceImageToPointSetFilter::GetInput | ( | unsigned int | idx | ) |
Returns the input with id idx of this filter.
Definition at line 62 of file mitkToFDistanceImageToPointSetFilter.cpp.
|
virtual |
bool mitk::ToFDistanceImageToPointSetFilter::GetReconstructionMode | ( | ) |
Returns the reconstruction mode.
Definition at line 215 of file mitkToFDistanceImageToPointSetFilter.cpp.
mitk::ToFDistanceImageToPointSetFilter::mitkClassMacro | ( | ToFDistanceImageToPointSetFilter | , |
PointSetSource | |||
) |
|
static |
|
virtual |
|
virtual |
Sets the input of this filter.
distanceImage | input is the distance image of e.g. a ToF camera |
Definition at line 39 of file mitkToFDistanceImageToPointSetFilter.cpp.
|
virtual |
Sets the input of this filter at idx.
idx | number of the current input |
distanceImage | input is the distance image of e.g. a ToF camera |
Definition at line 44 of file mitkToFDistanceImageToPointSetFilter.cpp.
|
virtual |
void mitk::ToFDistanceImageToPointSetFilter::SetReconstructionMode | ( | bool | withoutInterpixdist = true | ) |
Sets the reconstruction mode, if using no interpixeldistances and focal lenghts in pixel units (=true) or interpixeldistances and focal length in mm (=false)
Definition at line 210 of file mitkToFDistanceImageToPointSetFilter.cpp.
void mitk::ToFDistanceImageToPointSetFilter::SetSubset | ( | std::vector< itk::Index< 3 > > | subset | ) |
If this subset is defined, the cartesian coordinates are only computed for the contained indizes. Make sure the indizes are contained in the input image.
subset | index subset specified in index coordinates. |
Definition at line 70 of file mitkToFDistanceImageToPointSetFilter.cpp.
References MITK_ERROR.
void mitk::ToFDistanceImageToPointSetFilter::SetSubset | ( | mitk::PointSet::Pointer | pointSet | ) |
|
protected |
Member holding the intrinsic parameters needed for PointSet calculation.
Definition at line 134 of file mitkToFDistanceImageToPointSetFilter.h.
Referenced by ToFDistanceImageToPointSetFilter().
|
protected |
distance in mm between two adjacent pixels on the ToF camera chip
Definition at line 135 of file mitkToFDistanceImageToPointSetFilter.h.
Referenced by ToFDistanceImageToPointSetFilter().
|
protected |
true = Reconstruction without interpixeldistance and with focal lengths in pixel units. false = Reconstruction with interpixeldistance and with focal length in mm.
Definition at line 136 of file mitkToFDistanceImageToPointSetFilter.h.
Referenced by ToFDistanceImageToPointSetFilter().
|
protected |
If this subset is specified only the contained indizes are converted to cartesian coordinates.
Definition at line 133 of file mitkToFDistanceImageToPointSetFilter.h.