Medical Imaging Interaction Toolkit  2022.04.99-b2814023
Medical Imaging Interaction Toolkit
mitk::ToFCameraPMDCamCubeController Class Reference

Interface to the Time-of-Flight (ToF) camera PMD CamCube. More...

#include <mitkToFCameraPMDCamCubeController.h>

Inheritance diagram for mitk::ToFCameraPMDCamCubeController:
Collaboration diagram for mitk::ToFCameraPMDCamCubeController:

Public Member Functions

 mitkClassMacro (ToFCameraPMDCamCubeController, ToFCameraPMDController)
 
Pointer Clone () const
 
virtual bool OpenCameraConnection ()
 opens a connection to the ToF camera and initializes the hardware specific members More...
 
bool SetDistanceOffset (float offset)
 sets an additional distance offset which will be added to all distance values. More...
 
float GetDistanceOffset ()
 returns the currently applied distance offset in m More...
 
bool SetRegionOfInterest (unsigned int leftUpperCornerX, unsigned int leftUpperCornerY, unsigned int width, unsigned int height)
 Setting the region of interest, the camera is configured to only output a certain area of the image. More...
 
bool SetRegionOfInterest (unsigned int roi[4])
 Setting the region of interest, the camera is configured to only output a certain area of the image. More...
 
unsigned int * GetRegionOfInterest ()
 returns the region of interest currently set More...
 
bool SetExposureMode (int mode)
 sets the exposure mode of the CamCube More...
 
bool SetFieldOfView (float fov)
 Sets the field of view of the camera lens. More...
 
bool SetFPNCalibration (bool on)
 Enable/Disable PMD fixed pattern noise (FPN) calibration. More...
 
bool SetFPPNCalibration (bool on)
 Enable/Disable PMD fixed pattern phase noise (FPPN) calibration. More...
 
bool SetLinearityCalibration (bool on)
 Enable/Disable PMD linearity calibration. More...
 
bool SetLensCalibration (bool on)
 Enable/Disable PMD lens calibration. More...
 
- Public Member Functions inherited from mitk::ToFCameraPMDController
 mitkClassMacroItkParent (ToFCameraPMDController, itk::Object)
 
virtual bool CloseCameraConnection ()
 closes the connection to the camera More...
 
virtual bool GetAmplitudes (float *amplitudeArray)
 Gets the current amplitude array from the device. More...
 
virtual bool GetAmplitudes (char *sourceData, float *amplitudeArray)
 Calculates the current amplitude data from the raw source data using the processing plugin of the PMDSDK. More...
 
virtual bool GetIntensities (float *intensityArray)
 Gets the current intensity array from the device. More...
 
virtual bool GetIntensities (char *sourceData, float *intensityArray)
 Calculates the current intensity data from the raw source data using the processing plugin of the PMDSDK. More...
 
virtual bool GetDistances (float *distanceArray)
 Gets the current distance array from the device. More...
 
virtual bool GetDistances (char *sourceData, float *distanceArray)
 Calculates the current distance data from the raw source data using the processing plugin of the PMDSDK. More...
 
virtual bool GetSourceData (char *sourceDataArray)
 Gets the PMD raw data from the ToF device. More...
 
bool GetShortSourceData (short *sourceData)
 Convenience method to get the PMD raw data from the ToF device as short array. More...
 
virtual bool UpdateCamera ()
 calls update on the camera -> a new ToF-image is aquired More...
 
virtual int GetModulationFrequency ()
 Returns the currently set modulation frequency. More...
 
virtual int SetModulationFrequency (unsigned int modulationFrequency)
 Sets the modulation frequency of the ToF device. The method automatically calculates a valid value from the given frequency to make sure that only valid frequencies are used. More...
 
virtual int GetIntegrationTime ()
 Returns the currently set integration time. More...
 
virtual int SetIntegrationTime (unsigned int integrationTime)
 Sets the integration time of the ToF device. The method automatically calculates a valid value from the given integration time to make sure that only valid times are used. More...
 
virtual void SetInputFileName (std::string inputFileName)
 set input file name used by PMD player classes More...
 
virtual unsigned int GetCaptureWidth ()
 Access the resolution of the image in x direction. More...
 
virtual unsigned int GetCaptureHeight ()
 Access the resolution of the image in y direction. More...
 
virtual unsigned int GetInternalCaptureWidth ()
 Access the chosen width of the resulting image in x direction. More...
 
virtual unsigned int GetInternalCaptureHeight ()
 Access the chosen width of the resulting image in y direction. More...
 
virtual int GetSourceDataStructSize ()
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

virtual void TransformCameraOutput (float *in, float *out, bool isDist)
 
 ToFCameraPMDCamCubeController ()
 
 ~ToFCameraPMDCamCubeController ()
 
- Protected Member Functions inherited from mitk::ToFCameraPMDController
 ToFCameraPMDController ()
 
 ~ToFCameraPMDController ()
 
bool ErrorText (int error)
 Method printing the current error message to the console and returning whether the previous command was successful. More...
 

Additional Inherited Members

- Protected Attributes inherited from mitk::ToFCameraPMDController
char m_PMDError [128]
 member holding the current error text More...
 
int m_PMDRes
 holds the current result message provided by PMD More...
 
int m_PixelNumber
 holds the number of pixels contained in the image More...
 
int m_NumberOfBytes
 holds the number of bytes contained in the image More...
 
unsigned int m_CaptureWidth
 holds the width of the image in pixel as it is originally acquired by the camera More...
 
unsigned int m_CaptureHeight
 holds the height of the image in pixel as it is originally acquired by the camera More...
 
unsigned int m_InternalCaptureWidth
 holds the width of the image in pixel as it is requested by the user (cf. TransformCameraOutput()) Default: m_CaptureWidth More...
 
unsigned int m_InternalCaptureHeight
 holds the height of the image in pixel as is it requested by the user (cf. TransformCameraOutput()) Default: m_CaptureHeight More...
 
int m_SourceDataSize
 size of the original PMD source data More...
 
int m_SourceDataStructSize
 size of the PMD source data struct and the PMD source data More...
 
bool m_ConnectionCheck
 flag showing whether the camera is connected (true) or not (false) More...
 
std::string m_InputFileName
 input file name used by PMD player classes More...
 
char * m_SourcePlugin
 holds name of source plugin to be loaded (e.g. camcube3.W64.pap for CamCube 3.0 on Win64 platform) More...
 
char * m_SourceParam
 holds source parameter(s) More...
 
char * m_ProcPlugin
 holds name of processing plugin to be loaded (e.g. camcubeproc.W64.pap for CamCube 3.0 on Win64 platform) More...
 
char * m_ProcParam
 holds processing parameter(s) More...
 

Detailed Description

Interface to the Time-of-Flight (ToF) camera PMD CamCube.

Definition at line 30 of file mitkToFCameraPMDCamCubeController.h.

Constructor & Destructor Documentation

◆ ToFCameraPMDCamCubeController()

mitk::ToFCameraPMDCamCubeController::ToFCameraPMDCamCubeController ( )
protected

◆ ~ToFCameraPMDCamCubeController()

mitk::ToFCameraPMDCamCubeController::~ToFCameraPMDCamCubeController ( )
protected

Member Function Documentation

◆ Clone()

Pointer mitk::ToFCameraPMDCamCubeController::Clone ( ) const

◆ GetDistanceOffset()

float mitk::ToFCameraPMDCamCubeController::GetDistanceOffset ( )

returns the currently applied distance offset in m

◆ GetRegionOfInterest()

unsigned int* mitk::ToFCameraPMDCamCubeController::GetRegionOfInterest ( )

returns the region of interest currently set

Returns
currently set region of interest.

◆ mitkClassMacro()

mitk::ToFCameraPMDCamCubeController::mitkClassMacro ( ToFCameraPMDCamCubeController  ,
ToFCameraPMDController   
)

◆ New()

static Pointer mitk::ToFCameraPMDCamCubeController::New ( )
static

◆ OpenCameraConnection()

virtual bool mitk::ToFCameraPMDCamCubeController::OpenCameraConnection ( )
virtual

opens a connection to the ToF camera and initializes the hardware specific members

Returns
returns whether the connection was successful (true) or not (false)

Implements mitk::ToFCameraPMDController.

◆ SetDistanceOffset()

bool mitk::ToFCameraPMDCamCubeController::SetDistanceOffset ( float  offset)

sets an additional distance offset which will be added to all distance values.

Parameters
offsetoffset in m
Returns
returns whether set operation was successful (true) or not (false)

◆ SetExposureMode()

bool mitk::ToFCameraPMDCamCubeController::SetExposureMode ( int  mode)

sets the exposure mode of the CamCube

Parameters
modeexposure mode. 0: normal mode (one exposure), 1: Suppression of motion blur (SMB), minimizes the time needed to capture a distance image from the camera which results in a reduced amount of motion artifact but may lead to increased noise.
Returns
returns whether set operation was successful (true) or not (false)

◆ SetFieldOfView()

bool mitk::ToFCameraPMDCamCubeController::SetFieldOfView ( float  fov)

Sets the field of view of the camera lens.

Parameters
fovfield of view in degrees. The default value is 40 degrees.
Returns
returns whether set operation was successful (true) or not (false)

◆ SetFPNCalibration()

bool mitk::ToFCameraPMDCamCubeController::SetFPNCalibration ( bool  on)

Enable/Disable PMD fixed pattern noise (FPN) calibration.

Parameters
onenabled (true), disabled (false)
Returns
returns whether set operation was successful (true) or not (false)

◆ SetFPPNCalibration()

bool mitk::ToFCameraPMDCamCubeController::SetFPPNCalibration ( bool  on)

Enable/Disable PMD fixed pattern phase noise (FPPN) calibration.

Parameters
onenabled (true), disabled (false)
Returns
returns whether set operation was successful (true) or not (false)

◆ SetLensCalibration()

bool mitk::ToFCameraPMDCamCubeController::SetLensCalibration ( bool  on)

Enable/Disable PMD lens calibration.

Parameters
onenabled (true), disabled (false)
Returns
returns whether set operation was successful (true) or not (false)

◆ SetLinearityCalibration()

bool mitk::ToFCameraPMDCamCubeController::SetLinearityCalibration ( bool  on)

Enable/Disable PMD linearity calibration.

Parameters
onenabled (true), disabled (false)
Returns
returns whether set operation was successful (true) or not (false)

◆ SetRegionOfInterest() [1/2]

bool mitk::ToFCameraPMDCamCubeController::SetRegionOfInterest ( unsigned int  leftUpperCornerX,
unsigned int  leftUpperCornerY,
unsigned int  width,
unsigned int  height 
)

Setting the region of interest, the camera is configured to only output a certain area of the image.

Parameters
leftUpperCornerXx value of left upper corner of region
leftUpperCornerYy value of left upper corner of region
widthwidth of region
heightheight of region
Returns
returns whether set operation was successful (true) or not (false)

◆ SetRegionOfInterest() [2/2]

bool mitk::ToFCameraPMDCamCubeController::SetRegionOfInterest ( unsigned int  roi[4])

Setting the region of interest, the camera is configured to only output a certain area of the image.

Parameters
roiregion of interest. roi[0]: x value of left upper corner, roi[1]: y value of left upper corner, roi[2]: width, roi[3]: height
Returns
returns whether set operation was successful (true) or not (false)

◆ TransformCameraOutput()

virtual void mitk::ToFCameraPMDCamCubeController::TransformCameraOutput ( float *  in,
float *  out,
bool  isDist 
)
protectedvirtual

The documentation for this class was generated from the following file: