![]() |
ImFusion SDK 4.3
|
#include <RGBD/Include/ImFusion/RGBD/MultiSensorCalibration.h>
Provides functionality for external calibration of multiple RGB-D sensors using markers. More...
Provides functionality for external calibration of multiple RGB-D sensors using markers.
This class estimates the spatial relationship between sensors by detecting markers in color and depth images and computing the corresponding transformations.
MultiSensorCalibration supports marker-based pose estimation, relative sensor calibration, and marker area computation.
Typical usage:
Public Member Functions | |
| MultiSensorCalibration (int sensors, const std::vector< mat3 > &depthK, const std::vector< mat3 > &colorK, const std::vector< mat4 > &depthToColorT, const MarkerConfiguration &config) | |
| Constructs a calibration object for multiple sensors. | |
| bool | getSensorPose (std::vector< TypedImage< unsigned char > * > imgColor, std::vector< TypedImage< float > * > imgDepth, std::vector< mat4 > &T, std::vector< double > &markerArea) |
| Detects markers in each sensor and returns the transformation from marker coordinate system to sensor coordinate system. | |
| bool | getSensorRelativePose (std::vector< TypedImage< unsigned char > * > imgColor, std::vector< TypedImage< float > * > imgDepth, std::vector< mat4 > &T, std::vector< double > &markerArea) |
| Detects markers in each sensor and returns the transformation of sensor 0 to each other sensor i (T has size m_sensors-1). | |
Static Public Member Functions | |
| static bool | getMarkerPose (int markerId, double markerSize, const TypedImage< unsigned char > &imgColor, const mat3 &colorK, mat4 &T) |
| Estimates the pose of a single marker in a color image. | |
| MultiSensorCalibration | ( | int | sensors, |
| const std::vector< mat3 > & | depthK, | ||
| const std::vector< mat3 > & | colorK, | ||
| const std::vector< mat4 > & | depthToColorT, | ||
| const MarkerConfiguration & | config ) |
Constructs a calibration object for multiple sensors.
| sensors | Number of sensors. |
| depthK | Depth sensor intrinsic parameters. |
| colorK | Color sensor intrinsic parameters. |
| depthToColorT | Extrinsic transformation from depth to color for each sensor. |
| config | Marker configuration. |
| bool getSensorPose | ( | std::vector< TypedImage< unsigned char > * > | imgColor, |
| std::vector< TypedImage< float > * > | imgDepth, | ||
| std::vector< mat4 > & | T, | ||
| std::vector< double > & | markerArea ) |
Detects markers in each sensor and returns the transformation from marker coordinate system to sensor coordinate system.
Marker area contains the size of each detected marker in pixels.
| bool getSensorRelativePose | ( | std::vector< TypedImage< unsigned char > * > | imgColor, |
| std::vector< TypedImage< float > * > | imgDepth, | ||
| std::vector< mat4 > & | T, | ||
| std::vector< double > & | markerArea ) |
Detects markers in each sensor and returns the transformation of sensor 0 to each other sensor i (T has size m_sensors-1).
Marker area contains the size of each detected marker in pixels.