四元数矩阵与 so(3) 左右雅可比

我们知道,单位四元数 q 和 so(3) 向量 [公式] (即 rotation vector)的对应关系为:

[公式] , in which [公式]

[公式] 很小时,可以近似表达为:

[公式]

四元数小量和李代数小量有很简单的对应关系,所以在使用四元数的优化问题中,往往也取 [公式] 小量作为更新量,例如 OKVIS [1]。

具体到优化过程中,使用李群李代数(如预积分论文 [2])和使用四元数之间还是有区别的。使用李群李代数,在 residual 推导时会用到 so3 的左雅可比或右雅可比;使用四元数,会用到四元数矩阵(或共轭四元数矩阵)。不过既然两者使用的小量一致,那四元数矩阵和 so3 的左右雅可比的关系如何呢?

之所以有这个疑问,是因为 Xingyin 兄在博客里指出 [3],OKVIS 代码中使用了预积分,代码和预计分论文里的思路一致。不过实际上,虽然预积分流程一致,两者在雅可比推导上有所不同:预积分使用 so3 的右雅可比;OKVIS 使用四元数矩阵。所以,我们有必要把这两者的关系厘清。


四元数矩阵

两个旋转叠加,可以表达为两个四元数相乘,或者一个 4*4 矩阵与一个四元数相乘:

[公式]

这里的 [公式] 为四元数矩阵, [公式] 为共轭四元数矩阵:

[公式] , [公式]

两种矩阵对于求导非常方便:

[公式]

现在,假设有个一个待估计的旋转量 q ,其更新方式为 [公式][公式] 为 so3 小量。假定有 q 的测量量 [公式],定义误差函数 [公式]

[公式]

则其相对于更新量的雅可比为

[公式]

[公式]


so(3) 雅可比

据 Barfoot [4],若 [公式] 的左雅可比为 [公式] ,右雅可比为 [公式]

于是,假设有待估计量 C,更新方式为 [公式][公式] 为 so3 小量。假定有 C 的测量量 [公式],定义误差函数 [公式]

[公式]

则其相对于更新量的雅可比为:

[公式]


讨论

我们来比较一下 [公式][公式]

首先,

[公式]

如果可以认为误差函数 [公式] 很小,则

[公式]


另一方面,据 Barfoot [4],有

[公式]

如果可以认为误差函数很小,即 [公式] ,则 [公式] ,于是

[公式]


可以看到,当可以认为误差函数很小时, [公式][公式] 是相等的。这其实很好理解,因为当 [公式] 很小时, [公式] 估计成立,所以 [公式] 实际上就表示同一个量,都是误差旋转量的李代数,推导出来的雅可比自然就一样了,我们只是通过不同的途径去算同一个量而已。这个例子的价值在于,展示了四元数矩阵和 so3 雅可比之间的具体关系,即:

如果有可以认为很小的 so3 量,如某个误差函数 [公式] ,则
[公式]

上面用的是右扰动模型;如果使用左扰动,可类似地得到 [公式]


尾声

如果 [公式] 不能认为很小, [公式][公式] 的关系是怎样?并不复杂。区别仅在于此时[公式] 的估计不能成立, [公式][公式] 不能当作一个量而已;但它们之间的相互关系是已知的: [公式] 。在上面的演算中,我们实际上得到的结果是

[公式]

可以证明:

[公式]

代入过程就不贴了。



参考文献

[1] S. Leutenegger, S. Lynen, M. Bosse, R. Siegwart, P. Furgale, “Keyframe-based visual-inertial odometry using nonlinear optimization”, Int. Journal of Robotics Research (IJRR), 2014.

[2] C. Forster, L. Carlone, F. Dellaert and D. Scaramuzza, "On-Manifold Preintegration for Real-Time Visual--Inertial Odometry," in IEEE Transactions on Robotics, vol. 33, no. 1, pp. 1-21, Feb. 2017.

[3] OKVIS IMU 误差公式代码版本

[4] T. Barfoot, State Estimation for Robotics.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值