g2o之SE3-SE3约束

g2o之SE3-SE3约束

1. g2o之SE3-SE3约束

假设位姿图中某两帧的位姿为 T i T_i Ti T j T_j Tj,且由两帧之间的测量约束为 T i j T_{ij} Tij,则有下式:
Δ T = T i j − 1 T i − 1 T j (1.1) \Delta T=T_{ij}^{-1}T_i^{-1}T_j \tag{1.1} ΔT=Tij1Ti1Tj(1.1)
利用对数映射,可得到该约束对应的残差为:
e i j = ln ⁡ ( Δ T ) ∨ = ln ⁡ ( T i j − 1 T i − 1 T j ) ∨ ∈ R 6 (1.2) e_{ij}=\ln(\Delta T)^{\vee}=\ln(T_{ij}^{-1}T_i^{-1}T_j)^{\vee}\in R^6 \tag{1.2} eij=ln(ΔT)=ln(Tij1Ti1Tj)R6(1.2)
在利用Gauss-Newton或Levenberg-Marquat算法求解非线性最小二乘问题时,需要求解残差向量 e i j e_{ij} eij相对于SE节点 T i T_i Ti T j T_j Tj的Jacobian。为求解Jacobian,给 T i T_i Ti添加左扰动 exp ⁡ ( ξ i ∧ ) \exp(\xi_i^{\wedge}) exp(ξi),带入公式1.2则有:
Δ T ( ξ i ) = T i j − 1 T i − 1 exp ⁡ ( − ξ i ∧ ) T j (1.3) \Delta T(\xi_i)=T_{ij}^{-1}T_i^{-1}\exp(-\xi_i^{\wedge})T_j \tag{1.3} ΔT(ξi)=Tij1Ti1exp(ξi)Tj(1.3)
e i j ( ξ i ) = ln ⁡ ( T i j − 1 T i − 1 exp ⁡ ( − ξ i ∧ ) T j ) ∨ (1.4) e_{ij}(\xi_i)=\ln(T_{ij}^{-1}T_i^{-1}\exp(-\xi_i^{\wedge})T_j)^{\vee} \tag{1.4} eij(ξi)=ln(Tij1Ti1exp(ξi)Tj)(1.4)
则残差 e i j e_{ij} eij相对于 T i T_i Ti的Jacobian可表示为:
∂ e i j ∂ T i = ∂ e i j ( ξ i ) ∂ ξ i ∣ ξ i = 0 (1.5) \frac{\partial e_{ij}}{\partial T_i}=\frac{\partial e_{ij}(\xi_i)}{\partial \xi_i}_{\mid \xi_i=0} \tag{1.5} Tieij=ξieij(ξi)ξi=0(1.5)
利用如公式1.6所示的伴随矩阵的性质,可以将公式1.5化简为公式1.7:
A exp ⁡ ( b ∧ ) = exp ⁡ ( A a d j b ∧ ) A (1.6) A\exp(b^\wedge)=\exp(A_{adj}b^\wedge)A \tag{1.6} Aexp(b)=exp(Aadjb)A(1.6)
e i j ( ξ i ) = ln ⁡ ( exp ⁡ ( − ( ( T i j − 1 T i − 1 ) a d j ξ i ∧ ) ) T i j − 1 T i − 1 T j ) ∨ (1.7) e_{ij}(\xi_i)=\ln(\exp(-((T_{ij}^{-1}T_i^{-1})_{adj}\xi_i^\wedge))T_{ij}^{-1}T_i^{-1}T_j)^{\vee} \tag{1.7} eij(ξi)=ln(exp(((Tij1Ti1)adjξi))Tij1Ti1Tj)(1.7)
将公式1.2带入公式1.7,可进一步化简为:
e i j ( ξ i ) = ln ⁡ ( exp ⁡ ( − ( ( T i j − 1 T i − 1 ) a d j ξ i ∧ ) ) exp ⁡ ( e i j ∧ ) ) ∨ (1.8) e_{ij}(\xi_i)=\ln(\exp(-((T_{ij}^{-1}T_i^{-1})_{adj}\xi_i^\wedge))\exp(e_{ij}^{\wedge}))^\vee \tag{1.8} eij(ξi)=ln(exp(((Tij1Ti1)adjξi))exp(eij))(1.8)
为进一步化简上式,回顾一下BCH公式:
exp ⁡ ( a ∧ + b ∧ ) ≈ exp ⁡ ( J l ( b ) a ∧ ) e x p ( b ∧ ) (1.9) \exp(a^\wedge+b^\wedge)\approx\exp(J_l(b)a^\wedge)exp(b^\wedge) \tag{1.9} exp(a+b)exp(Jl(b)a)exp(b)(1.9)
式中,a为无穷小量, J l J_l Jl为SE(3)的左Jacobian。则也有:
exp ⁡ ( a ∧ ) exp ⁡ ( b ∧ ) ≈ exp ⁡ ( J l − 1 ( b ) a ∧ + b ∧ ) (1.10) \exp(a^\wedge)\exp(b^\wedge)\approx\exp(J_l^{-1}(b)a^\wedge+b^\wedge) \tag{1.10} exp(a)exp(b)exp(Jl1(b)a+b)(1.10)
利用公式1.10,可以将公式1.8化简为:
e i j ( ξ i ) ≈ ln ⁡ ( exp ⁡ ( ( e i j − J l − 1 ( e i j ) ( T i j − 1 T i − 1 ) a d j ξ i ) ∧ ) ) ∨ (1.11) e_{ij}(\xi_i)\approx\ln(\exp((e_{ij}-J_l^{-1}(e_{ij})(T_{ij}^{-1}T_i^{-1})_{adj}\xi_i)^\wedge))^\vee \tag{1.11} eij(ξi)ln(exp((eijJl1(eij)(Tij1Ti1)adjξi)))(1.11)
进一步化简为:
e i j ( ξ i ) = e i j − J l ( e i j ) − 1 ( T i j − 1 T i − 1 ) a d j ξ i (1.12) e_{ij}(\xi_i)=e_{ij}-J_{l(e_{ij})}^{-1}(T_{ij}^{-1}T_i^{-1})_{adj}\xi_i \tag{1.12} eij(ξi)=eijJl(eij)1(Tij1Ti1)adjξi(1.12)
e i j e_{ij} eij相对于 T i T_i Ti的Jacobian等于:
∂ e i j ∂ T i = ∂ e i j ( ξ i ) ∂ ξ i ∣ ξ i = 0 = − J l ( e i j ) − 1 ( T i j − 1 T i − 1 ) a d j (1.13) \frac{\partial e_{ij}}{\partial T_i}=\frac{\partial e_{ij}(\xi_i)}{\partial \xi_i}_{\mid \xi_i=0}=-J_{l(e_{ij})}^{-1}(T_{ij}^{-1}T_i^{-1})_{adj} \tag{1.13} Tieij=ξieij(ξi)ξi=0=Jl(eij)1(Tij1Ti1)adj(1.13)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值