Open HeXu1 opened 10 months ago
You can see the left update in the paper. [dR & dp // 0 & 1 ] [R & p // 0 & 1] = [dR R & dR p + dp // 0 & 1]. It is the update in SE3. You can use the right update in the source code. Its update is similar to yours. R = R dR; p = p + dp;
你好 感谢贵团队开源这么优秀的框架 我有一个关于修正状态更新的问题:为什么在迭代更新状态时平移的更新没有乘以误差的旋转,有什么理论依据可以参考么? 类似代码如下(摘自balmclass.hpp void damping_iter()): so3_temp = SO3::exp(dxi.block<3, 1>(0, 0)) so3_pose; t_temp = t_pose + dxi.block<3, 1>(3, 0); 我的理解是这里的 t_temp =SO3::exp(dxi.block<3, 1>(0, 0)) t_pose + dxi.block<3, 1>(3, 0); 但是我这么改了结果又不是很好。 期待回复,再次感谢!