VINS-Mono-IMU预积分 (五:连续时间预积分误差状态传递)


在这里插入图片描述
以上是结论
接下来将推导上面的公式是如何来的
估计值的求导也符合真实值求导的规则,下面会用这个规则对一些变量进行消除

位置求导

P P P 为估计值, P ′ = V P^{'}=V P=V,真值为 P t = P + Δ P P_{t}=P+ΔP Pt=P+ΔP ,对其进行求导 ( P + Δ P ) ′ = V + Δ V = > P ′ + Δ P ′ = V + Δ V = > Δ P ′ = Δ V (P+ΔP)^{'}=V+ΔV =>P^{'}+ΔP^{'}=V+ΔV=>ΔP^{'}=ΔV (P+ΔP)=V+ΔV=>P+ΔP=V+ΔV=>ΔP=ΔV

零偏求导

b t ′ = 0 = > ( b + Δ b ′ ) = 0 = > b ′ + Δ b ′ = 0 b^{'}_{t}=0=>(b+Δb^{'})=0=>b^{'}+Δb^{'}=0 bt=0=>(b+Δb)=0=>b+Δb=0 b ′ b^{'} b实际是一个高斯分布 n b n_{b} nb,代入 则 Δ b ′ = − n b 则Δb^{'}=-n_{b} Δb=nb,正负都一样。
b t = b b + Δ b b b_{t}=b_{b}+Δb_{b} bt=bb+Δbb

速度求导

速度是相对于 b k b_{k} bk 时刻的速度 ,要变换到bk时刻下,真实值 V t ˙ = R b k , t ⋅ ( a − b a ) \dot{V_{t}}=R_{b_{k},t}·(a-ba) Vt˙=Rbk,t(aba),按照真实值=估计值+误差值的推导。
对于速度和旋转变换是估计值+误差值的形式,而加速度则是 a ^ = a t + b a + n a \hat{a}=a_{t}+b_{a}+n_{a} a^=at+ba+na 意思是测量值等于真值+零偏+噪声
( V + Δ V ) ′ = R ⋅ Δ R ( a − n a − b a − Δ b a ) (V+ΔV)^{'}=R·ΔR(a-n_{a}-b_{a}-Δb_{a}) (V+ΔV)=RΔR(anabaΔba)
根据十四讲的内容, Δ R = e x p ( Φ ^ ) ΔR=exp(Φ^{\hat{}}) ΔR=exp(Φ^),Φ是旋转向量(李代数),对其进行一阶泰勒展开= ( I + Δ Φ ^ ) (I+ΔΦ\hat{}) (I+ΔΦ^),将其代入展开
V ′ + Δ V ′ = R ( a − n a − b a − Δ b a ) + R ⋅ Δ Φ ^ ⋅ ( a − n a − b a − Δ b a ) V^{'}+ΔV^{'}=R(a-n_{a}-b_{a}-Δb_{a})+R·ΔΦ\hat{}·(a-n_{a}-b_{a}-Δb_{a}) V+ΔV=R(anabaΔba)+RΔΦ^(anabaΔba)
由于真实值 V t ˙ = R b k , t ⋅ ( a − b a ) \dot{V_{t}}=R_{b_{k},t}·(a-ba) Vt˙=Rbk,t(aba),实际上估计值也是可以写成相同的形式,知识 a , b a a,b_{a} a,ba是测量值而已,则根据上面的式子,估计值速度的导数 V ˙ = R ⋅ ( a − b a ) \dot{V}=R·(a-ba) V˙=R(aba) ,代入上式 ②,则可以把 V ˙ \dot{V} V˙ 给抵消掉,变成
Δ V ′ = R ( − n a − Δ b a ) + R ⋅ Δ Φ ^ ( a − b a ) ΔV^{'}=R(-n_{a}-Δb_{a})+R·ΔΦ\hat{}(a-b_{a}) ΔV=R(naΔba)+RΔΦ^(aba)
说明: Δ Φ ^ ΔΦ\hat{} ΔΦ^实际上是一个一阶小量,而 n a , Δ b a n_{a},Δb_{a} na,Δba 也是一阶小量,它们分别是相对于加速度和零偏的误差值,一阶小量乘一阶小量等于二阶,二阶是相对于一阶的无穷小,由于在这里只维护一阶小量,所以括号内忽略掉 n a , Δ b a n_{a},Δb_{a} na,Δba

利用 a ^ ⋅ b = a × b = − b × a = − b ^ ⋅ a a^{\hat{}}·b=a×b=-b×a=-b^{\hat{}} ·a a^b=a×b=b×a=b^a 的性质
Δ V ′ = R ( − n a − Δ b a ) + R ⋅ Δ Φ ^ ( a − b a ) ΔV^{'}=R(-n_{a}-Δb_{a})+R·ΔΦ^{\hat{}}(a-b_{a}) ΔV=R(naΔba)+RΔΦ^(aba) => Δ V ′ = R ( − n a − Δ b a ) − R ⋅ ( a − b a ) ^ ⋅ Δ Φ ΔV^{'}=R(-n_{a}-Δb_{a})-R·(a-b_{a})^{\hat{}}·ΔΦ ΔV=R(naΔba)R(aba)^ΔΦ ΔΦ表示李代数(旋转向量)
变换一下
Δ V ′ = − R ⋅ ( a − b a ) ^ ⋅ Δ Φ − R n a − R Δ b a ΔV^{'}=-R·(a-b_{a})^{\hat{}}·ΔΦ-Rn_{a}-RΔb_{a} ΔV=R(aba)^ΔΦRnaRΔba
这样就和最上面论文中的公式对应上了

位姿求导

根据第一节的求导可得 q ˙ = 1 2 Ω ( w ) ⋅ q \dot{q}=\frac{1}{2}Ω(w)·q q˙=21Ω(w)q ,不过这里是矩阵的乘法, q ˙ = 1 2 [ q ( w ) ] R ⋅ q \dot{q}=\frac{1}{2}[q(w)]_{R}·q q˙=21[q(w)]Rq ,这个 q ( w ) q(w) q(w) 是一个是实部为 0,虚部为向量的一个四元数 ,变回四元数乘法则为 = > q t ˙ = 1 2 q ⊕ w = 1 2 q t ⊕ ( w t − b w t ) => \dot{q_{t}}=\frac{1}{2}q⊕w= \frac{1}{2}q_{t}⊕(w_{t}-b_{wt}) =>qt˙=21qw=21qt(wtbwt) , w w w 为陀螺仪的角速度测量值,上面的 q ˙ \dot{q} q˙ 是当作真实值,现在写成真实值=估计值+误差值的形式

( q ⊕ Δ q ) ′ = 1 2 q ⊕ Δ q ⊕ ( w − n w − b w − Δ b w ) (q⊕Δq)^{'}=\frac{1}{2}q⊕Δq⊕(w-n_{w}-b_{w}-Δb_{w}) (qΔq)=21qΔq(wnwbwΔbw),根据四元数乘法求导的规则,只对左边进行变形 = > q ˙ ⊕ Δ q + q ⊕ Δ q ˙ = . . . =>\dot{q}⊕Δq+q⊕\dot{Δq}=... =>q˙Δq+qΔq˙=...
由于估计值的导数和真实值是一样的,只是下标不同
= > 1 2 q ⊕ ( w − b w ) ⊕ Δ q + q ⊕ Δ q ˙ = 1 2 q ⊕ Δ q ⊕ ( w − n w − b w − Δ b w ) => \frac{1}{2}q⊕(w-b_{w})⊕Δq+q⊕\dot{Δq}=\frac{1}{2}q⊕Δq⊕(w-n_{w}-b_{w}-Δb_{w}) =>21q(wbw)Δq+qΔq˙=21qΔq(wnwbwΔbw) ,根据乘法结合律,约掉 q q q ,四元数乘法不符合乘法交换律但是符合乘法结合律
= > 1 2 ( w − b w ) ⊕ Δ q + Δ q ˙ = 1 2 Δ q ⊕ ( w − n w − b w − Δ b w ) => \frac{1}{2}(w-b_{w})⊕Δq+\dot{Δq}=\frac{1}{2}Δq⊕(w-n_{w}-b_{w}-Δb_{w}) =>21(wbw)Δq+Δq˙=21Δq(wnwbwΔbw)
同时乘以2
= > ( w − b w ) ⊕ Δ q + 2 ⋅ Δ q ˙ = Δ q ⊕ ( w − n w − b w − Δ b w ) => (w-b_{w})⊕Δq+2·\dot{Δq}=Δq⊕(w-n_{w}-b_{w}-Δb_{w}) =>(wbw)Δq+2Δq˙=Δq(wnwbwΔbw)
( w − b w ) − > y , ( w − n w − b w − Δ b w ) − > x (w-b_{w})->y,(w-n_{w}-b_{w}-Δb_{w})->x (wbw)>y,(wnwbwΔbw)>x 通过这样进行替换把式子变得更简洁
把导数放到一边
2 ⋅ Δ q ˙ = Δ q ⊕ x − y ⊕ Δ q 2·\dot{Δq}=Δq⊕x-y⊕Δq 2Δq˙=ΔqxyΔq,为了把 Δ q Δq Δq 提到一边,把四元数乘法变成矩阵乘法
= > 2 ⋅ Δ q ˙ = ( [ x ] R − [ y ] L ) ⋅ Δ q =>2·\dot{Δq}=([x]_{R}-[y]_{L})·Δq =>2Δq˙=([x]R[y]L)Δq
注意 x x x y y y 是一个实部为0的四元数
在这里插入图片描述
根据这个公式(第二节有讲),只需要考虑内部的相减,不用考虑实部的相减即可
Δ q = [ c o s θ 2 n ⃗ ⋅ s i n θ 2 ] = [ 1 Δ θ 2 ] {Δq}=\begin{bmatrix} cos\frac{θ}{2} \\ \vec{n}·sin\frac{θ}{2} \\ \end{bmatrix}=\begin{bmatrix} 1 \\ \frac{Δθ}{2} \\ \end{bmatrix} Δq=[cos2θn sin2θ]=[12Δθ] 其中 Δ θ 是矢量 = w ⋅ Δ t Δθ是矢量 =w·Δt Δθ是矢量=wΔt
2 Δ q ˙ = [ 0 Δ θ ′ ] 2\dot{Δq}=\begin{bmatrix} 0 \\ Δθ^{'} \\ \end{bmatrix} 2Δq˙=[0Δθ] 这里面把 2 乘进去了
右边的 ( [ x ] R − [ y ] L ) ⋅ Δ q ([x]_{R}-[y]_{L})·Δq ([x]R[y]L)Δq 写成矩阵有 = ( [ 0 − x T x − x ^ ] − [ 0 − y T y − y ^ ] ) ⋅ [ 1 Δ θ 2 ] =(\begin{bmatrix} 0 & -x^{T} \\ x & -x^{\hat{}} \\ \end{bmatrix}-\begin{bmatrix} 0 & -y^{T} \\ y & -y^{\hat{}} \\ \end{bmatrix})·\begin{bmatrix} 1 \\ \frac{Δθ}{2} \\ \end{bmatrix} =([0xxTx^][0yyTy^])[12Δθ]

合并则有 [ 0 − x T + y T x − y − x ^ − y ^ ] ⋅ [ 1 Δ θ 2 ] \begin{bmatrix} 0 & -x^{T}+y^{T} \\ x-y & -x^{\hat{}}-y^{\hat{}} \\ \end{bmatrix}·\begin{bmatrix} 1 \\ \frac{Δθ}{2} \\ \end{bmatrix} [0xyxT+yTx^y^][12Δθ] [ 0 − x T + y T x − y − x ^ − y ^ ] \begin{bmatrix} 0 & -x^{T}+y^{T} \\ x-y & -x^{\hat{}}-y^{\hat{}} \\ \end{bmatrix} [0xyxT+yTx^y^]∈4×4,第一行的是1×4,第2行是3×4,由于 2 Δ q ˙ = [ 0 Δ θ ′ ] ∈ 4 × 1 2\dot{Δq}=\begin{bmatrix} 0 \\ Δθ^{'} \\ \end{bmatrix}∈4×1 2Δq˙=[0Δθ]4×1其中的实部为 0 ,所以只考虑虚部相乘的部分
= > Δ θ ′ = x − y − ( x + y ) ^ ⋅ θ 2 =>Δθ^{'}=x-y-(x+y)^{\hat{}}·\frac{θ}{2} =>Δθ=xy(x+y)^2θ 现在要把 ( w − b w ) − > y , ( w − n w − b w − Δ b w ) − > x (w-b_{w})->y,(w-n_{w}-b_{w}-Δb_{w})->x (wbw)>y,(wnwbwΔbw)>x 替换回去
= > Δ θ ′ = − n w − Δ b w − ( 2 w − 2 b w ) ^ ⋅ Δ θ 2 =>Δθ^{'}=-n_{w}-Δb_{w}-(2w-2b_{w})^{\hat{}}·\frac{Δθ}{2} =>Δθ=nwΔbw(2w2bw)^2Δθ由于 Δ θ Δθ Δθ 是一阶无穷小,所以 ( x − y ) (x-y) (xy) 里面的 n w , Δ b w n_{w},Δb_{w} nw,Δbw 是可以忽略的
约掉2 = > Δ θ ′ = − n w − Δ b w − ( w − b w ) ^ ⋅ Δ θ =>Δθ^{'}=-n_{w}-Δb_{w}-(w-b_{w})^{\hat{}}·Δθ =>Δθ=nwΔbw(wbw)^Δθ 这样就和论文中的公式完全一致了

说明: 我们最后拿到IMU的值是离散的,我们要从连续推导离散的一个形式,这个只是一个中间形式,离散的形式才是最终的形式,将在下一节讲解

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rhys___

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值