如何在ceres求解器中组合变换?

时间:2015-09-30 02:18:46

标签: computer-vision least-squares ceres-solver

我有两个参数转换作为我的Ceres成本函数的输入。它们都是要组合的变换,以便重新投射我的观点。两种变换都以Rodrigues旋转向量和平移向量的形式给出。

我的问题是,如何在成本函数(使用Ceres API' s)中组合这两个转换,以重新投影点?

1 个答案:

答案 0 :(得分:1)

查看ceres / rotation.h头文件中的函数:http://ceres-solver.org/nnls_modeling.html#rotation-h

例如,您可以将Rodrigues矢量转换为旋转矩阵:

void AngleAxisToRotationMatrix<T>(T const *angle_axis, T *R)

通过这种方式,您可以为旋转和平移的每个变换构建自己的3x4变换矩阵(您可以使用http://eigen.tuxfamily.org/index.php?title=Main_Page中的Eigen)。矩阵乘法然后产生最终变换(注意顺序)。