Struct Chain3dToCamera2d

Struct Documentation

struct Chain3dToCamera2d

Error block for computing the residual error between a 3d chain and a 2d camera.

Public Functions

inline Chain3dToCamera2d(Chain3dModel *model_3d, Camera2dModel *model_2d, double scale, OptimizationOffsets *offsets, robot_calibration_msgs::msg::CalibrationData &data)

This function is not used direcly, instead use the Create() function.

Parameters:
  • model_3d – The model for the 3d chain, used for reprojection.

  • model_2d – The model for the 3d camera, used for reverse projection.

  • scale – Scalar applied to residual.

  • offsets – Easy access to the free parameters.

  • data – The calibration data collected.

inline virtual ~Chain3dToCamera2d()
inline bool operator()(double const *const *free_params, double *residuals) const

Operator called by CERES optimizer.

Parameters:
  • free_params – The offsets to be applied to joints/transforms.

  • residuals – The residuals computed, to be returned to the optimizer.

Public Members

Chain3dModel *model_3d_
Camera2dModel *model_2d_
double scale_
OptimizationOffsets *offsets_
robot_calibration_msgs::msg::CalibrationData data_

Public Static Functions

static inline ceres::CostFunction *Create(Chain3dModel *model_3d, Camera2dModel *model_2d, double scale, OptimizationOffsets *offsets, robot_calibration_msgs::msg::CalibrationData &data)

Helper factory function to create a new error block. Parameters are described in the class constructor, which this function calls.