VINS-Mono+Fusion源码解析系列(四):IMU预积分的推导

1. PVQ模型

在t时刻,IMU在世界坐标系下的位置P、速度V、姿态q(PVQ模型)的导数模型如下:
p ˙ b t w = v t w v ˙ t w = a t w q ˙ b t w = q b t w ⊗ [ 0 1 2 w t b ] \dot{p}_{b_t}^w = v_t^w \\ \dot{v}_t^w=a_t^w \\ \dot{q}_{b_t}^w = q_{b_t}^w \otimes \left[\begin{array}{cc} 0 \\ \frac{1}{2}w_t^b \end{array} \right] p˙btw=vtwv˙tw=atwq˙btw=qbtw[021wtb]
​ 其中, p b t w p_{b_t}^w pbtw表示t时刻imu在世界坐标系下的位移, v t w v_t^w vtw表示t时刻imu在世界坐标系下的速度, q b t w q_{b_t}^w qbtw表示t时刻imu(body)坐标系到世界坐标系之间的姿态。

​ 基于以上PVQ的导数模型,连续时间下,从第i关键帧IMU的PVQ数据得到第j关键帧IMU的PVQ数据过程如下:
p b j w = p b i w + v b i w Δ t + ∫ ∫ t ∈ [ i , j ] ( q b t w a t b − g t w ) δ t 2 v b j w = v b i w + ∫ t ∈ [ i , j ] ( q b t w a t b − g t w ) δ t q b j w = ∫ t ∈ [ i , j ] q ˙ b t w δ t = ∫ t ∈ [ i , j ] q b t w ⊗ [ 0 1 2 w t b ] δ t p_{b_j}^w = p_{b_i}^w + v_{b_i}^w \Delta t + \int\int_{t \in [i,j]}(q_{b_t}^wa_t^b-g_t^w)\delta t^2 \\ v_{b_j}^w = v_{b_i}^w + \int_{t \in [i,j]} (q_{b_t}^wa_t^b - g_t^w)\delta t \\ q_{b_j}^w = \int_{t \in [i,j]} \dot{q}_{b_t}^w \delta t = \int_{t \in [i,j]} q_{b_t}^w \otimes \left[\begin{array}{cc} 0 \\ \frac{1}{2}w_t^b \end{array} \right] \delta t pbjw=pbiw+vbiwΔt+t[i,j](qbtwatbgtw)δt2vbjw=vbiw+t[i,j](qbtwatbgtw)δtqbjw=t[i,j]q˙btwδt=t[i,j]qbtw[021wtb]δt
​ 其中,根据IMU的数学模型,body坐标系下的加速度 a t b = a ^ t b − b a t − n a a_t^b = \hat{a}_t^b - b_{a_t}-n_a atb=a^tbbatna​,角速度 w t b = w ^ t b − b w t − n w w_t^b = \hat{w}_t^b - b_{w_t} - n_w wtb=w^tbbwtnw​。转换到世界坐标系下,有:
q b t w a t b = a t w + g w        ⇒        a t w = q b t w a t b − g w q_{b_t}^wa_t^b = a_t^w + g^w \ \ \ \ \ \ \Rightarrow \ \ \ \ \ \ a_t^w = q_{b_t}^wa_t^b - g^w qbtwatb=atw+gw            atw=qbtwatbgw
​ 由于待求的位移P、速度V、位姿q都是世界坐标系下的,而IMU测量值得到的加速度 a t b a_t^b atb与角速度 w t b w_t^b wtb都是body坐标系下的,因此需要进行如上转换,获取对应量在世界坐标系下的值。

2. 为什么要进行IMU预积分

 由于IMU的频率远远高于相机频率,所以相邻帧图像间存在多个IMU数据,故两关键帧间必然存在多个IMU数据。为了实现相机与IMU之间的同频效果,在世界坐标系中进行BA优化时,只需考虑相机关键帧处的IMU数据,中间时刻的状态量是不会转换到世界坐标系中加入到BA里面进行优化的。而在使用PVQ模型计算关键帧处的IMU数据时,其中的积分项需要使用位姿 q b t w q_{b_t}^w qbtw将每个时刻 t ∈ [ i , j ] t \in [i,j] t[i,j]中body坐标系下的位姿都转换到世界坐标系下来参与积分运算,这样计算量是非常大的。

3. IMU预积分的实现

q b t w =

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值