Struct Chain3dToChain3d

Struct Documentation

struct Chain3dToChain3d

Error block for computing the residual error between two 3d data sources. This can be used to calibrate 3d cameras to arms, or 3d cameras to other 3d cameras.

Public Functions

inline Chain3dToChain3d(Chain3dModel *a_model, Chain3dModel *b_model, OptimizationOffsets *offsets, robot_calibration_msgs::msg::CalibrationData &data)

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

Parameters:
  • a_model – The model for the first chain, used for reprojection.

  • b_model – The model for the second chain, used for reprojection.

  • offsets – Easy access to the free parameters.

  • data – The calibration data collected.

inline virtual ~Chain3dToChain3d()
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 *a_model_
Chain3dModel *b_model_
OptimizationOffsets *offsets_
robot_calibration_msgs::msg::CalibrationData data_

Public Static Functions

static inline ceres::CostFunction *Create(Chain3dModel *a_model, Chain3dModel *b_model, 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.