CVB++ 14.0
Calibrator3D Class Reference

Base calibration class to apply 3D calibration to point clouds. More...

#include <cvb/calibrator_3d.hpp>

Inherited by LaserPlaneCalibrator3D, MatrixCalibrator3D, and PinholeCameraCalibrator3D.

Public Member Functions

Cvb::optional< double > RangeMapIgnoreValue () const
 Gets value to be ignored in range map. More...
 
void SetRangeMapIgnoreValue (Cvb::optional< double > rangeMapIgnoreValue)
 Sets value to be ignored in range map in the calibrator. More...
 
AffineMatrix3D ExtrinsicMatrix () const
 Gets the extrinsic transformation matrix (rigid body transformation) of the calibrator. More...
 
void SetExtrinsicMatrix (const AffineMatrix3D &transformation)
 Sets the extrinsic transformation matrix (rigid body transformation with rotation and translation) of the calibrator. More...
 
void Save (const String &fileName) const
 Write the current content calibrator to a file. More...
 
void * Handle () const noexcept
 Returns C-API style handle to Node Object. More...
 

Static Public Member Functions

template<class T >
static std::shared_ptr< T > Load (const String &fileName)
 Loads a 3D calibration from file. More...
 
static Calibrator3DPtr FromHandle (HandleGuard< Calibrator3D > &&guard)
 Creates a calibrator from a classic API handle. More...
 

Detailed Description

Base calibration class to apply 3D calibration to point clouds.

Member Function Documentation

◆ ExtrinsicMatrix()

AffineMatrix3D ExtrinsicMatrix ( ) const
inline

Gets the extrinsic transformation matrix (rigid body transformation) of the calibrator.

Returns
The variable to receive the extrinsic transformation matrix.
Exceptions
Anyexception derived from std::exception including CvbException.

◆ FromHandle()

CVB_BEGIN_INLINE_NS Calibrator3DPtr FromHandle ( HandleGuard< Calibrator3D > &&  guard)
inlinestatic

Creates a calibrator from a classic API handle.

Parameters
[in]guardLife time guard for C-API handle.
Returns
The calibrator created from the classic API handle.
Exceptions
Anyexception derived from std::exception including CvbException.

The calibrator takes ownership of the handle, so you must share it before using this function.

◆ Handle()

void * Handle ( ) const
inlinenoexcept

Returns C-API style handle to Node Object.

Returns
C-API handle

◆ Load()

std::shared_ptr< T > Load ( const String fileName)
static

Loads a 3D calibration from file.

Template Parameters
TThe wanted calibrator type to load.
Parameters
[in]fileNameFull path to the file to load.
Returns
Pointer to created calibration object.
Exceptions
Anyexception derived from std::exception including CvbException.

◆ RangeMapIgnoreValue()

Cvb::optional< double > RangeMapIgnoreValue ( ) const
inline

Gets value to be ignored in range map.

Returns
Value to be ignored in range map.

◆ Save()

void Save ( const String fileName) const
inline

Write the current content calibrator to a file.

Parameters
[in]fileNameFile name into which to save the calibrator.
Exceptions
Anyexception derived from std::exception including CvbException.

Writes the calibrator information in json format.

◆ SetExtrinsicMatrix()

void SetExtrinsicMatrix ( const AffineMatrix3D transformation)
inline

Sets the extrinsic transformation matrix (rigid body transformation with rotation and translation) of the calibrator.

Parameters
[in]transformationVariable to receive the extrinsic transformation matrix.
Exceptions
Anyexception derived from std::exception including CvbException.

◆ SetRangeMapIgnoreValue()

void SetRangeMapIgnoreValue ( Cvb::optional< double >  rangeMapIgnoreValue)
inline

Sets value to be ignored in range map in the calibrator.

Parameters
[in]rangeMapIgnoreValueValue to be ignored in range map segmenting faces.