IMU预积分推导系列文章
IMU预积分推导(一)
IMU预积分推导(二)
IMU预积分推导(三)
5.1、先验残差对状态增量的雅可比矩阵
(
31
)
(31)
(31)中,只有先验旋转残差对增量
δ
ϕ
i
0
\delta\boldsymbol\phi_{i_0}
δϕi0的雅可比矩阵不能直接看出,需要求解,其他雅可比容易看出
r
R
i
0
(
R
i
0
E
x
p
(
δ
ϕ
i
0
)
)
=
L
o
g
(
R
ˇ
i
0
T
R
i
0
E
x
p
(
δ
ϕ
i
0
)
)
=
L
o
g
(
R
ˇ
i
0
T
R
i
0
)
+
J
r
−
1
(
L
o
g
(
R
ˇ
i
0
T
R
i
0
)
)
δ
ϕ
i
0
\begin{align*} \mathbf{r}_{\mathbf{R}_{i_0}}(\mathbf{R}_{i_0}\mathrm{Exp}(\delta\boldsymbol\phi_{i_0})) &=\mathrm{Log}\left(\check{\mathbf{R}}_{i_0}^{T}\mathbf{R}_{i_0}\mathrm{Exp}(\delta\boldsymbol\phi_{i_0})\right)\\ &=\mathrm{Log}\left(\check{\mathbf{R}}_{i_0}^{T}\mathbf{R}_{i_0}\right)+\mathbf{J}_{r}^{-1}\left(\mathrm{Log}\left(\check{\mathbf{R}}_{i_0}^{T}\mathbf{R}_{i_0}\right)\right)\delta\boldsymbol\phi_{i_0} \end{align*}
rRi0(Ri0Exp(δϕi0))=Log(Rˇi0TRi0Exp(δϕi0))=Log(Rˇi0TRi0)+Jr−1(Log(Rˇi0TRi0))δϕi0
故先验残差对状态增量的雅可比矩阵为
∂
r
R
i
0
∂
δ
ϕ
i
0
=
J
r
−
1
(
L
o
g
(
R
ˇ
i
0
T
R
i
0
)
)
∂
r
R
i
0
∂
δ
p
i
0
=
O
∂
r
R
i
0
∂
δ
v
i
0
=
O
∂
r
R
i
0
∂
δ
b
g
,
i
0
=
O
∂
r
R
i
0
∂
δ
b
a
,
i
0
=
O
∂
r
p
i
0
∂
δ
ϕ
i
0
=
O
∂
r
p
i
0
∂
δ
p
i
0
=
I
∂
r
p
i
0
∂
δ
v
i
0
=
O
∂
r
p
i
0
∂
δ
b
g
,
i
0
=
O
∂
r
p
i
0
∂
δ
b
a
,
i
0
=
O
∂
r
v
i
0
∂
δ
ϕ
i
0
=
O
∂
r
v
i
0
∂
δ
p
i
0
=
O
∂
r
v
i
0
∂
δ
v
i
0
=
I
∂
r
v
i
0
∂
δ
b
g
,
i
0
=
O
∂
r
v
i
0
∂
δ
b
a
,
i
0
=
O
∂
r
b
g
,
i
0
∂
δ
ϕ
i
0
=
O
∂
r
b
g
,
i
0
∂
δ
p
i
0
=
O
∂
r
b
g
,
i
0
∂
δ
v
i
0
=
O
∂
r
b
g
,
i
0
∂
δ
b
g
,
i
0
=
I
∂
r
b
g
,
i
0
∂
δ
b
a
,
i
0
=
O
∂
r
b
a
,
i
0
∂
δ
ϕ
i
0
=
O
∂
r
b
a
,
i
0
∂
δ
p
i
0
=
O
∂
r
b
a
,
i
0
∂
δ
v
i
0
=
O
∂
r
b
a
,
i
0
∂
δ
b
g
,
i
0
=
O
∂
r
b
a
,
i
0
∂
δ
b
a
,
i
0
=
I
\begin{array}{lllll} &\frac{\partial\mathbf{r}_{\mathbf{R}_{i_0}}}{\partial\delta\boldsymbol\phi_{i_0}} =\mathbf{J}_{r}^{-1}\left(\mathrm{Log}\left(\check{\mathbf{R}}_{i_0}^{T}\mathbf{R}_{i_0}\right)\right) &\frac{\partial\mathbf{r}_{\mathbf{R}_{i_0}}}{\partial\delta\mathbf{p}_{i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{R}_{i_0}}}{\partial\delta\mathbf{v}_{i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{R}_{i_0}}}{\partial\delta\mathbf{b}_{g,i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{R}_{i_0}}}{\partial\delta\mathbf{b}_{a,i_0}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\mathbf{p}_{i_0}}}{\partial\delta\boldsymbol\phi_{i_0}} =\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{p}_{i_0}}}{\partial\delta\mathbf{p}_{i_0}}=\mathbf{I} &\frac{\partial\mathbf{r}_{\mathbf{p}_{i_0}}}{\partial\delta\mathbf{v}_{i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{p}_{i_0}}}{\partial\delta\mathbf{b}_{g,i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{p}_{i_0}}}{\partial\delta\mathbf{b}_{a,i_0}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\mathbf{v}_{i_0}}}{\partial\delta\boldsymbol\phi_{i_0}} =\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{v}_{i_0}}}{\partial\delta\mathbf{p}_{i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{v}_{i_0}}}{\partial\delta\mathbf{v}_{i_0}}=\mathbf{I} &\frac{\partial\mathbf{r}_{\mathbf{v}_{i_0}}}{\partial\delta\mathbf{b}_{g,i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{v}_{i_0}}}{\partial\delta\mathbf{b}_{a,i_0}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\mathbf{b}_{g,i_0}}}{\partial\delta\boldsymbol\phi_{i_0}} =\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{b}_{g,i_0}}}{\partial\delta\mathbf{p}_{i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{b}_{g,i_0}}}{\partial\delta\mathbf{v}_{i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{b}_{g,i_0}}}{\partial\delta\mathbf{b}_{g,i_0}}=\mathbf{I} &\frac{\partial\mathbf{r}_{\mathbf{b}_{g,i_0}}}{\partial\delta\mathbf{b}_{a,i_0}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\mathbf{b}_{a,i_0}}}{\partial\delta\boldsymbol\phi_{i_0}} =\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{b}_{a,i_0}}}{\partial\delta\mathbf{p}_{i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{b}_{a,i_0}}}{\partial\delta\mathbf{v}_{i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{b}_{a,i_0}}}{\partial\delta\mathbf{b}_{g,i_0}}=\mathbf{O} &\frac{\partial\mathbf{r}_{\mathbf{b}_{a,i_0}}}{\partial\delta\mathbf{b}_{a,i_0}}=\mathbf{I}\\ \end{array}
∂δϕi0∂rRi0=Jr−1(Log(Rˇi0TRi0))∂δϕi0∂rpi0=O∂δϕi0∂rvi0=O∂δϕi0∂rbg,i0=O∂δϕi0∂rba,i0=O∂δpi0∂rRi0=O∂δpi0∂rpi0=I∂δpi0∂rvi0=O∂δpi0∂rbg,i0=O∂δpi0∂rba,i0=O∂δvi0∂rRi0=O∂δvi0∂rpi0=O∂δvi0∂rvi0=I∂δvi0∂rbg,i0=O∂δvi0∂rba,i0=O∂δbg,i0∂rRi0=O∂δbg,i0∂rpi0=O∂δbg,i0∂rvi0=O∂δbg,i0∂rbg,i0=I∂δbg,i0∂rba,i0=O∂δba,i0∂rRi0=O∂δba,i0∂rpi0=O∂δba,i0∂rvi0=O∂δba,i0∂rbg,i0=O∂δba,i0∂rba,i0=I
5.2、递推残差对状态增量的雅可比矩阵
递推陀螺仪零偏残差对增量雅的可比矩阵为
∂
r
b
g
,
j
∂
δ
b
g
,
i
=
−
I
∂
r
b
g
,
j
∂
δ
b
g
,
j
=
I
\begin{align*} &\frac{\partial\mathbf{r}_{\mathbf{b}_{g,j}}}{\partial\delta\mathbf{b}_{g,i}}=-\mathbf{I} \quad&\frac{\partial\mathbf{r}_{\mathbf{b}_{g,j}}}{\partial\delta\mathbf{b}_{g,j}}=\mathbf{I}\\ \end{align*}
∂δbg,i∂rbg,j=−I∂δbg,j∂rbg,j=I
递推加速度计零偏残差对增量的雅可比矩阵为
∂
r
b
a
,
j
∂
δ
b
a
,
i
=
−
I
∂
r
b
a
,
j
∂
δ
b
a
,
j
=
I
\begin{align*} &\frac{\partial\mathbf{r}_{\mathbf{b}_{a,j}}}{\partial\delta\mathbf{b}_{a,i}}=-\mathbf{I} \quad &\frac{\partial\mathbf{r}_{\mathbf{b}_{a,j}}}{\partial\delta\mathbf{b}_{a,j}}=\mathbf{I}\\ \end{align*}
∂δba,i∂rba,j=−I∂δba,j∂rba,j=I
5.3、预积分旋转残差对状态增量的雅可比矩阵
预积分旋转残差和 R i , R j , b g , i \mathbf{R}_{i},\mathbf{R}_{j},\mathbf{b}_{g,i} Ri,Rj,bg,i相关,因此对增量 δ ϕ i , δ ϕ j , δ b g , i \delta\boldsymbol{\phi}_{i},\delta\boldsymbol{\phi}_{j},\delta\mathbf{b}_{g,i} δϕi,δϕj,δbg,i的雅可比矩阵需要求解,对其余增量 δ p i , δ v i , δ p j , δ v j , δ b a , i \delta\mathbf{p}_{i},\delta\mathbf{v}_{i},\delta\mathbf{p}_{j},\delta\mathbf{v}_{j},\delta\mathbf{b}_{a,i} δpi,δvi,δpj,δvj,δba,i的雅可比矩阵为零矩阵
展开求解预积分旋转残差对
δ
ϕ
i
\delta\boldsymbol{\phi}_{i}
δϕi的雅可比矩阵
r
Δ
R
i
j
(
R
i
E
x
p
(
δ
ϕ
i
)
)
=
L
o
g
[
(
Δ
R
~
i
j
)
T
(
R
i
E
x
p
(
δ
ϕ
i
)
)
T
R
j
]
=
L
o
g
[
(
Δ
R
~
i
j
)
T
E
x
p
(
−
δ
ϕ
i
)
T
R
i
T
R
j
]
=
L
o
g
[
(
Δ
R
~
i
j
)
T
R
i
T
R
j
E
x
p
(
−
R
j
T
R
i
δ
ϕ
i
)
]
=
L
o
g
{
E
x
p
[
L
o
g
(
(
Δ
R
~
i
j
)
T
R
i
T
R
j
)
]
E
x
p
(
−
R
j
T
R
i
δ
ϕ
i
)
}
=
L
o
g
[
E
x
p
(
r
Δ
R
i
j
(
R
i
)
)
E
x
p
(
−
R
j
T
R
i
δ
ϕ
i
)
]
=
r
Δ
R
i
j
(
R
i
)
−
J
r
−
1
(
r
Δ
R
i
j
(
R
i
)
)
R
j
T
R
i
δ
ϕ
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{i}\mathrm{Exp}(\delta\boldsymbol{\phi}_{i})) &=\mathrm{Log}\left[(\Delta\tilde{\mathbf{R}}_{ij})^{T}(\mathbf{R}_{i}\mathrm{Exp}(\delta\boldsymbol{\phi}_{i}))^{T}\mathbf{R}_{j}\right]\\ &=\mathrm{Log}\left[(\Delta\tilde{\mathbf{R}}_{ij})^{T}\mathrm{Exp}(-\delta\boldsymbol{\phi}_{i})^{T}\mathbf{R}_{i}^{T}\mathbf{R}_{j}\right]\\ &=\mathrm{Log}\left[(\Delta\tilde{\mathbf{R}}_{ij})^{T}\mathbf{R}_{i}^{T}\mathbf{R}_{j}\mathrm{Exp}(-\mathbf{R}_{j}^{T}\mathbf{R}_{i}\delta\boldsymbol{\phi}_{i})\right]\\ &=\mathrm{Log}\left\{\mathrm{Exp}\left[\mathrm{Log}\left((\Delta\tilde{\mathbf{R}}_{ij})^{T}\mathbf{R}_{i}^{T}\mathbf{R}_{j}\right)\right]\mathrm{Exp}(-\mathbf{R}_{j}^{T}\mathbf{R}_{i}\delta\boldsymbol{\phi}_{i})\right\}\\ &=\mathrm{Log}\left[\mathrm{Exp}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{i}))\mathrm{Exp}(-\mathbf{R}_{j}^{T}\mathbf{R}_{i}\delta\boldsymbol{\phi}_{i})\right]\\ &=\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{i})-\mathbf{J}_{r}^{-1}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{i}))\mathbf{R}_{j}^{T}\mathbf{R}_{i}\delta\boldsymbol{\phi}_{i} \end{align*}
rΔRij(RiExp(δϕi))=Log[(ΔR~ij)T(RiExp(δϕi))TRj]=Log[(ΔR~ij)TExp(−δϕi)TRiTRj]=Log[(ΔR~ij)TRiTRjExp(−RjTRiδϕi)]=Log{Exp[Log((ΔR~ij)TRiTRj)]Exp(−RjTRiδϕi)}=Log[Exp(rΔRij(Ri))Exp(−RjTRiδϕi)]=rΔRij(Ri)−Jr−1(rΔRij(Ri))RjTRiδϕi
展开求解预积分旋转残差对
δ
ϕ
j
\delta\boldsymbol{\phi}_{j}
δϕj的雅可比矩阵
r
Δ
R
i
j
(
R
j
E
x
p
(
δ
ϕ
j
)
)
=
L
o
g
[
(
Δ
R
~
i
j
)
T
R
i
R
j
E
x
p
(
δ
ϕ
j
)
]
=
L
o
g
{
E
x
p
[
L
o
g
(
(
Δ
R
~
i
j
)
T
R
i
T
R
j
)
]
E
x
p
(
δ
ϕ
i
)
}
=
L
o
g
[
E
x
p
(
r
Δ
R
i
j
(
R
i
)
)
E
x
p
(
δ
ϕ
i
)
]
=
r
Δ
R
i
j
(
R
i
)
+
J
r
−
1
(
r
Δ
R
i
j
(
R
i
)
)
δ
ϕ
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{j}\mathrm{Exp}(\delta\boldsymbol{\phi}_{j})) &=\mathrm{Log}\left[(\Delta\tilde{\mathbf{R}}_{ij})^{T}\mathbf{R}_{i}\mathbf{R}_{j}\mathrm{Exp}(\delta\boldsymbol{\phi}_{j})\right]\\ &=\mathrm{Log}\left\{\mathrm{Exp}\left[\mathrm{Log}\left((\Delta\tilde{\mathbf{R}}_{ij})^{T}\mathbf{R}_{i}^{T}\mathbf{R}_{j}\right)\right]\mathrm{Exp}(\delta\boldsymbol{\phi}_{i})\right\}\\ &=\mathrm{Log}\left[\mathrm{Exp}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{i}))\mathrm{Exp}(\delta\boldsymbol{\phi}_{i})\right]\\ &=\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{i})+\mathbf{J}_{r}^{-1}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{i}))\delta\boldsymbol{\phi}_{i} \end{align*}
rΔRij(RjExp(δϕj))=Log[(ΔR~ij)TRiRjExp(δϕj)]=Log{Exp[Log((ΔR~ij)TRiTRj)]Exp(δϕi)}=Log[Exp(rΔRij(Ri))Exp(δϕi)]=rΔRij(Ri)+Jr−1(rΔRij(Ri))δϕi
展开求解预积分旋转残差对
δ
b
g
,
i
\delta\mathbf{b}_{g,i}
δbg,i的雅可比矩阵,其中预积分观测量通过
(
17
a
)
\mathrm{(17a)}
(17a)进行修正
r
Δ
R
i
j
(
b
g
,
i
+
δ
b
g
,
i
)
)
=
L
o
g
{
[
Δ
R
~
i
j
(
b
g
,
i
)
E
x
p
(
∂
Δ
R
~
i
j
∂
b
g
,
i
δ
b
g
,
i
)
]
T
Δ
R
i
j
}
=
L
o
g
[
E
x
p
(
−
∂
Δ
R
~
i
j
∂
b
g
,
i
δ
b
g
,
i
)
Δ
R
~
i
j
(
b
g
,
i
)
T
Δ
R
i
j
]
=
L
o
g
[
E
x
p
(
−
∂
Δ
R
~
i
j
∂
b
g
,
i
δ
b
g
,
i
)
E
x
p
(
L
o
g
(
Δ
R
~
i
j
(
b
g
,
i
)
T
Δ
R
i
j
)
)
]
=
L
o
g
[
E
x
p
(
−
∂
Δ
R
~
i
j
∂
b
g
,
i
δ
b
g
,
i
)
E
x
p
(
r
Δ
R
i
j
(
b
g
,
i
)
)
]
=
L
o
g
[
E
x
p
(
r
Δ
R
i
j
(
b
g
,
i
)
)
E
x
p
(
−
E
x
p
(
r
Δ
R
i
j
(
b
g
,
i
)
)
T
∂
Δ
R
~
i
j
∂
b
g
,
i
δ
b
g
,
i
)
]
=
r
Δ
R
i
j
(
b
g
,
i
)
)
−
J
r
(
r
Δ
R
i
j
(
b
g
,
i
)
)
−
1
E
x
p
(
r
Δ
R
i
j
(
b
g
,
i
)
)
T
∂
Δ
R
~
i
j
∂
b
g
,
i
δ
b
g
,
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{b}_{g,i}+\delta\mathbf{b}_{g,i})) &=\mathrm{Log}\left\{\left[\Delta\tilde{\mathbf{R}}_{ij}(\mathbf{b}_{g,i})\mathrm{Exp}\left(\frac{\partial{\Delta\tilde{\mathbf{R}}_{ij}}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i}\right)\right]^{T}\Delta{\mathbf{R}}_{ij}\right\}\\ &=\mathrm{Log}\left[\mathrm{Exp}\left(-\frac{\partial{\Delta\tilde{\mathbf{R}}_{ij}}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i}\right)\Delta\tilde{\mathbf{R}}_{ij}(\mathbf{b}_{g,i})^{T}\Delta{\mathbf{R}}_{ij}\right]\\ &=\mathrm{Log}\left[\mathrm{Exp}\left(-\frac{\partial{\Delta\tilde{\mathbf{R}}_{ij}}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i}\right)\mathrm{Exp}\left(\mathrm{Log}\left(\Delta\tilde{\mathbf{R}}_{ij}(\mathbf{b}_{g,i})^{T}\Delta{\mathbf{R}}_{ij}\right)\right)\right]\\ &=\mathrm{Log}\left[\mathrm{Exp}\left(-\frac{\partial{\Delta\tilde{\mathbf{R}}_{ij}}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i}\right)\mathrm{Exp}\left(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{b}_{g,i})\right)\right]\\ &=\mathrm{Log}\left[\mathrm{Exp}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{b}_{g,i}))\mathrm{Exp}\left(-\mathrm{Exp}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{b}_{g,i}))^{T}\frac{\partial{\Delta\tilde{\mathbf{R}}_{ij}}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i}\right)\right]\\ &=\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{b}_{g,i}))-\mathbf{J}_{r}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{b}_{g,i}))^{-1}\mathrm{Exp}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{b}_{g,i}))^{T}\frac{\partial{\Delta\tilde{\mathbf{R}}_{ij}}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i} \end{align*}
rΔRij(bg,i+δbg,i))=Log⎩
⎨
⎧[ΔR~ij(bg,i)Exp(∂bg,i∂ΔR~ijδbg,i)]TΔRij⎭
⎬
⎫=Log[Exp(−∂bg,i∂ΔR~ijδbg,i)ΔR~ij(bg,i)TΔRij]=Log[Exp(−∂bg,i∂ΔR~ijδbg,i)Exp(Log(ΔR~ij(bg,i)TΔRij))]=Log[Exp(−∂bg,i∂ΔR~ijδbg,i)Exp(rΔRij(bg,i))]=Log[Exp(rΔRij(bg,i))Exp(−Exp(rΔRij(bg,i))T∂bg,i∂ΔR~ijδbg,i)]=rΔRij(bg,i))−Jr(rΔRij(bg,i))−1Exp(rΔRij(bg,i))T∂bg,i∂ΔR~ijδbg,i
综上可得到预积分旋转残差对状态增量的雅可比矩阵
∂
r
Δ
R
i
j
∂
δ
ϕ
i
=
−
J
r
−
1
(
r
Δ
R
i
j
(
R
i
)
)
R
j
T
R
i
∂
r
Δ
R
i
j
∂
δ
ϕ
j
=
J
r
−
1
(
r
Δ
R
i
j
(
R
i
)
)
∂
r
Δ
R
i
j
∂
δ
p
i
=
O
∂
r
Δ
R
i
j
∂
δ
p
j
=
O
∂
r
Δ
R
i
j
∂
δ
v
i
=
O
∂
r
Δ
R
i
j
∂
δ
v
j
=
O
∂
r
Δ
R
i
j
∂
δ
b
g
,
i
=
−
J
r
(
r
Δ
R
i
j
(
b
g
,
i
)
)
−
1
E
x
p
(
r
Δ
R
i
j
(
b
g
,
i
)
)
T
∂
Δ
R
~
i
j
∂
b
g
,
i
∂
r
Δ
R
i
j
∂
δ
b
a
,
i
=
O
\begin{array}{ll} &\frac{\partial\mathbf{r}_{\Delta\mathbf{R}_{ij}}}{\partial\delta\boldsymbol{\phi}_{i}}=-\mathbf{J}_{r}^{-1}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{i}))\mathbf{R}_{j}^{T}\mathbf{R}_{i} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{R}_{ij}}}{\partial\delta\boldsymbol{\phi}_{j}}=\mathbf{J}_{r}^{-1}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{R}_{i}))\\ &\frac{\partial\mathbf{r}_{\Delta\mathbf{R}_{ij}}}{\partial\delta\mathbf{p}_{i}}=\mathbf{O} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{R}_{ij}}}{\partial\delta\mathbf{p}_{j}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\Delta\mathbf{R}_{ij}}}{\partial\delta\mathbf{v}_{i}}=\mathbf{O} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{R}_{ij}}}{\partial\delta\mathbf{v}_{j}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\Delta\mathbf{R}_{ij}}}{\partial\delta\mathbf{b}_{g,i}}=-\mathbf{J}_{r}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{b}_{g,i}))^{-1}\mathrm{Exp}(\mathbf{r}_{\Delta\mathbf{R}_{ij}}(\mathbf{b}_{g,i}))^{T}\frac{\partial{\Delta\tilde{\mathbf{R}}_{ij}}}{\partial\mathbf{b}_{g,i}} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{R}_{ij}}}{\partial\delta\mathbf{b}_{a,i}}=\mathbf{O}\\ \end{array}
∂δϕi∂rΔRij=−Jr−1(rΔRij(Ri))RjTRi∂δpi∂rΔRij=O∂δvi∂rΔRij=O∂δbg,i∂rΔRij=−Jr(rΔRij(bg,i))−1Exp(rΔRij(bg,i))T∂bg,i∂ΔR~ij∂δϕj∂rΔRij=Jr−1(rΔRij(Ri))∂δpj∂rΔRij=O∂δvj∂rΔRij=O∂δba,i∂rΔRij=O
5.4、预积分速度残差对状态增量的雅可比矩阵
速度残差和 R i , v i , v j , b g , i , b a , i \mathbf{R}_{i},\mathbf{v}_{i},\mathbf{v}_{j},\mathbf{b}_{g,i},\mathbf{b}_{a,i} Ri,vi,vj,bg,i,ba,i和相关,因此对增量 δ ϕ i , δ v i , δ v j , δ b g , i , δ b a , i \delta\boldsymbol{\phi}_{i},\delta\mathbf{v}_{i},\delta\mathbf{v}_{j},\delta\mathbf{b}_{g,i},\delta\mathbf{b}_{a,i} δϕi,δvi,δvj,δbg,i,δba,i的雅可比矩阵需要求解,对其余增量 δ ϕ j , δ p i , δ p j \delta\boldsymbol{\phi}_{j},\delta\mathbf{p}_{i},\delta\mathbf{p}_{j} δϕj,δpi,δpj的雅可比矩阵为零矩阵
展开求解预积分速度残差对
δ
b
g
,
i
,
δ
b
a
,
i
\delta\mathbf{b}_{g,i},\delta\mathbf{b}_{a,i}
δbg,i,δba,i的雅可比矩阵
r
Δ
v
i
j
(
b
g
,
i
+
δ
b
g
,
i
,
b
a
,
i
+
δ
b
a
,
i
)
=
Δ
v
i
j
−
(
Δ
v
~
i
j
(
b
g
,
i
,
b
a
,
i
)
+
∂
Δ
v
~
i
j
∂
b
g
,
i
δ
b
g
,
i
+
∂
Δ
v
~
i
j
∂
b
a
,
i
δ
b
a
,
i
)
=
r
Δ
v
i
j
(
b
g
,
i
,
b
a
,
i
)
−
∂
Δ
v
~
i
j
∂
b
g
,
i
δ
b
g
,
i
−
∂
Δ
v
~
i
j
∂
b
a
,
i
δ
b
a
,
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{b}_{g,i}+\delta\mathbf{b}_{g,i},\mathbf{b}_{a,i}+\delta\mathbf{b}_{a,i})&=\Delta\mathbf{v}_{ij}-\left(\Delta\tilde{\mathbf{v}}_{ij}(\mathbf{b}_{g,i},\mathbf{b}_{a,i})+\frac{\partial\Delta\tilde{\mathbf{v}}_{ij}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i}+\frac{\partial\Delta\tilde{\mathbf{v}}_{ij}}{\partial\mathbf{b}_{a,i}}\delta\mathbf{b}_{a,i}\right)\\ &=\mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{b}_{g,i},\mathbf{b}_{a,i})-\frac{\partial\Delta\tilde{\mathbf{v}}_{ij}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i}-\frac{\partial\Delta\tilde{\mathbf{v}}_{ij}}{\partial\mathbf{b}_{a,i}}\delta\mathbf{b}_{a,i} \end{align*}
rΔvij(bg,i+δbg,i,ba,i+δba,i)=Δvij−(Δv~ij(bg,i,ba,i)+∂bg,i∂Δv~ijδbg,i+∂ba,i∂Δv~ijδba,i)=rΔvij(bg,i,ba,i)−∂bg,i∂Δv~ijδbg,i−∂ba,i∂Δv~ijδba,i
展开求解预积分速度残差对
δ
v
i
\delta\mathbf{v}_{i}
δvi的雅可比矩阵
r
Δ
v
i
j
(
v
i
+
δ
v
i
)
=
R
i
T
(
v
j
−
v
i
−
δ
v
i
−
g
Δ
t
i
j
)
−
Δ
v
~
i
j
=
r
Δ
v
i
j
(
v
i
)
−
R
i
T
δ
v
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{v}_{i}+\delta\mathbf{v}_{i})&=\mathbf{R}_{i}^{T}(\mathbf{v}_{j}-\mathbf{v}_{i}-\delta\mathbf{v}_{i}-\mathbf{g}\Delta{t}_{ij})-\Delta\tilde{\mathbf{v}}_{ij}\\ &=\mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{v}_{i})-\mathbf{R}_{i}^{T}\delta\mathbf{v}_{i} \end{align*}
rΔvij(vi+δvi)=RiT(vj−vi−δvi−gΔtij)−Δv~ij=rΔvij(vi)−RiTδvi
展开求解预积分速度残差对
δ
v
j
\delta\mathbf{v}_{j}
δvj的雅可比矩阵
r
Δ
v
i
j
(
v
j
+
δ
v
j
)
=
R
i
T
(
v
j
+
δ
v
j
−
v
i
−
g
Δ
t
i
j
)
−
Δ
v
~
i
j
=
r
Δ
v
i
j
(
v
j
)
+
R
i
T
δ
v
j
\begin{align*} \mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{v}_{j}+\delta\mathbf{v}_{j})&=\mathbf{R}_{i}^{T}(\mathbf{v}_{j}+\delta\mathbf{v}_{j}-\mathbf{v}_{i}-\mathbf{g}\Delta{t}_{ij})-\Delta\tilde{\mathbf{v}}_{ij}\\ &=\mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{v}_{j})+\mathbf{R}_{i}^{T}\delta\mathbf{v}_{j} \end{align*}
rΔvij(vj+δvj)=RiT(vj+δvj−vi−gΔtij)−Δv~ij=rΔvij(vj)+RiTδvj
展开求解预积分速度残差对
δ
ϕ
i
\delta\boldsymbol{\phi}_{i}
δϕi的雅可比矩阵
r
Δ
v
i
j
(
v
j
+
δ
v
j
)
=
(
R
i
E
x
p
(
δ
ϕ
i
)
)
T
(
v
j
−
v
i
−
g
Δ
t
i
j
)
−
Δ
v
~
i
j
=
E
x
p
(
−
δ
ϕ
i
)
R
i
T
(
v
j
−
v
i
−
g
Δ
t
i
j
)
−
Δ
v
~
i
j
≈
(
I
−
(
δ
ϕ
i
)
∧
)
R
i
T
(
v
j
−
v
i
−
g
Δ
t
i
j
)
−
Δ
v
~
i
j
=
R
i
T
(
v
j
−
v
i
−
g
Δ
t
i
j
)
−
Δ
v
~
i
j
−
(
δ
ϕ
i
)
∧
R
i
T
(
v
j
−
v
i
−
g
Δ
t
i
j
)
=
r
Δ
v
i
j
(
v
j
)
+
[
R
i
T
(
v
j
−
v
i
−
g
Δ
t
i
j
)
]
∧
δ
ϕ
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{v}_{j}+\delta\mathbf{v}_{j})&=(\mathbf{R}_{i}\mathrm{Exp}(\delta\boldsymbol{\phi}_{i}))^{T}(\mathbf{v}_{j}-\mathbf{v}_{i}-\mathbf{g}\Delta{t}_{ij})-\Delta\tilde{\mathbf{v}}_{ij}\\ &=\mathrm{Exp}(-\delta\boldsymbol{\phi}_{i})\mathbf{R}_{i}^{T}(\mathbf{v}_{j}-\mathbf{v}_{i}-\mathbf{g}\Delta{t}_{ij})-\Delta\tilde{\mathbf{v}}_{ij}\\ &\approx\left(\mathbf{I}-(\delta\boldsymbol{\phi}_{i})^{\wedge}\right)\mathbf{R}_{i}^{T}(\mathbf{v}_{j}-\mathbf{v}_{i}-\mathbf{g}\Delta{t}_{ij})-\Delta\tilde{\mathbf{v}}_{ij}\\ &=\mathbf{R}_{i}^{T}(\mathbf{v}_{j}-\mathbf{v}_{i}-\mathbf{g}\Delta{t}_{ij})-\Delta\tilde{\mathbf{v}}_{ij}-(\delta\boldsymbol{\phi}_{i})^{\wedge}\mathbf{R}_{i}^{T}(\mathbf{v}_{j}-\mathbf{v}_{i}-\mathbf{g}\Delta{t}_{ij})\\ &=\mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{v}_{j})+\left[\mathbf{R}_{i}^{T}(\mathbf{v}_{j}-\mathbf{v}_{i}-\mathbf{g}\Delta{t}_{ij})\right]^{\wedge}\delta\boldsymbol{\phi}_{i} \end{align*}
rΔvij(vj+δvj)=(RiExp(δϕi))T(vj−vi−gΔtij)−Δv~ij=Exp(−δϕi)RiT(vj−vi−gΔtij)−Δv~ij≈(I−(δϕi)∧)RiT(vj−vi−gΔtij)−Δv~ij=RiT(vj−vi−gΔtij)−Δv~ij−(δϕi)∧RiT(vj−vi−gΔtij)=rΔvij(vj)+[RiT(vj−vi−gΔtij)]∧δϕi
综上可得到预积分速度残差对状态增量的雅可比矩阵
∂
r
Δ
v
i
j
∂
δ
ϕ
i
=
[
R
i
T
(
v
j
−
v
i
−
g
Δ
t
i
j
)
]
∧
∂
r
Δ
v
i
j
∂
δ
ϕ
j
=
O
∂
r
Δ
v
i
j
∂
δ
p
i
=
O
∂
r
Δ
v
i
j
∂
δ
p
j
=
O
∂
r
Δ
v
i
j
∂
δ
v
i
=
−
R
i
T
∂
r
Δ
v
i
j
∂
δ
v
j
=
R
i
T
∂
r
Δ
v
i
j
∂
δ
b
g
,
i
=
−
∂
Δ
v
~
i
j
∂
b
g
,
i
∂
r
Δ
v
i
j
∂
δ
b
a
,
i
=
−
∂
Δ
v
~
i
j
∂
b
a
,
i
\begin{array}{ll} &\frac{\partial\mathbf{r}_{\Delta\mathbf{v}_{ij}}}{\partial\delta\boldsymbol{\phi}_{i}}=\left[\mathbf{R}_{i}^{T}(\mathbf{v}_{j}-\mathbf{v}_{i}-\mathbf{g}\Delta{t}_{ij})\right]^{\wedge} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{v}_{ij}}}{\partial\delta\boldsymbol{\phi}_{j}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\Delta\mathbf{v}_{ij}}}{\partial\delta\mathbf{p}_{i}}=\mathbf{O} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{v}_{ij}}}{\partial\delta\mathbf{p}_{j}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\Delta\mathbf{v}_{ij}}}{\partial\delta\mathbf{v}_{i}}=-\mathbf{R}_{i}^{T} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{v}_{ij}}}{\partial\delta\mathbf{v}_{j}}=\mathbf{R}_{i}^{T}\\ &\frac{\partial\mathbf{r}_{\Delta\mathbf{v}_{ij}}}{\partial\delta\mathbf{b}_{g,i}}=-\frac{\partial\Delta\tilde{\mathbf{v}}_{ij}}{\partial\mathbf{b}_{g,i}} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{v}_{ij}}}{\partial\delta\mathbf{b}_{a,i}}=-\frac{\partial\Delta\tilde{\mathbf{v}}_{ij}}{\partial\mathbf{b}_{a,i}}\\ \end{array}
∂δϕi∂rΔvij=[RiT(vj−vi−gΔtij)]∧∂δpi∂rΔvij=O∂δvi∂rΔvij=−RiT∂δbg,i∂rΔvij=−∂bg,i∂Δv~ij∂δϕj∂rΔvij=O∂δpj∂rΔvij=O∂δvj∂rΔvij=RiT∂δba,i∂rΔvij=−∂ba,i∂Δv~ij
5.5、预积分位移残差对状态增量的雅可比矩阵
位移残差和 R i , v i , p i , p j , b g , i , b a , i \mathbf{R}_{i},\mathbf{v}_{i},\mathbf{p}_{i},\mathbf{p}_{j},\mathbf{b}_{g,i},\mathbf{b}_{a,i} Ri,vi,pi,pj,bg,i,ba,i相关,因此对增量 δ ϕ i , δ v i , δ p i , δ p j , δ b g , i , δ b a , i \delta\boldsymbol{\phi}_{i},\delta\mathbf{v}_{i},\delta\mathbf{p}_{i},\delta\mathbf{p}_{j},\delta\mathbf{b}_{g,i},\delta\mathbf{b}_{a,i} δϕi,δvi,δpi,δpj,δbg,i,δba,i的雅可比矩阵需要求解,对其余增量 δ ϕ j , δ v j \delta\boldsymbol{\phi}_{j},\delta\mathbf{v}_{j} δϕj,δvj的雅可比矩阵为零矩阵
展开求解预积分位移残差对
δ
b
g
,
i
,
δ
b
a
,
i
\delta\mathbf{b}_{g,i},\delta\mathbf{b}_{a,i}
δbg,i,δba,i的雅可比矩阵
r
Δ
p
i
j
(
b
g
,
i
+
δ
b
g
,
i
,
b
a
,
i
+
δ
b
a
,
i
)
=
Δ
p
i
j
−
(
Δ
p
~
i
j
(
b
g
,
i
,
b
a
,
i
)
+
∂
Δ
p
~
i
j
∂
b
g
,
i
δ
b
g
,
i
+
∂
Δ
p
~
i
j
∂
b
a
,
i
δ
b
a
,
i
)
=
r
Δ
p
i
j
(
b
g
,
i
,
b
a
,
i
)
−
∂
Δ
p
~
i
j
∂
b
g
,
i
δ
b
g
,
i
−
∂
Δ
p
~
i
j
∂
b
a
,
i
δ
b
a
,
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{p}_{ij}}(\mathbf{b}_{g,i}+\delta\mathbf{b}_{g,i},\mathbf{b}_{a,i}+\delta\mathbf{b}_{a,i})&=\Delta\mathbf{p}_{ij}-\left(\Delta\tilde{\mathbf{p}}_{ij}(\mathbf{b}_{g,i},\mathbf{b}_{a,i})+\frac{\partial\Delta\tilde{\mathbf{p}}_{ij}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i}+\frac{\partial\Delta\tilde{\mathbf{p}}_{ij}}{\partial\mathbf{b}_{a,i}}\delta\mathbf{b}_{a,i}\right)\\ &=\mathbf{r}_{\Delta\mathbf{p}_{ij}}(\mathbf{b}_{g,i},\mathbf{b}_{a,i})-\frac{\partial\Delta\tilde{\mathbf{p}}_{ij}}{\partial\mathbf{b}_{g,i}}\delta\mathbf{b}_{g,i}-\frac{\partial\Delta\tilde{\mathbf{p}}_{ij}}{\partial\mathbf{b}_{a,i}}\delta\mathbf{b}_{a,i} \end{align*}
rΔpij(bg,i+δbg,i,ba,i+δba,i)=Δpij−(Δp~ij(bg,i,ba,i)+∂bg,i∂Δp~ijδbg,i+∂ba,i∂Δp~ijδba,i)=rΔpij(bg,i,ba,i)−∂bg,i∂Δp~ijδbg,i−∂ba,i∂Δp~ijδba,i
展开求解预积分位移残差对
p
j
\mathbf{p}_{j}
pj的雅可比矩阵
r
Δ
p
i
j
(
p
j
+
R
j
δ
p
j
)
=
R
i
T
(
p
j
+
R
j
δ
p
j
−
p
i
−
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
−
Δ
p
~
i
j
=
r
Δ
p
i
j
(
p
j
)
+
R
i
T
R
j
δ
p
j
\begin{align*} \mathbf{r}_{\Delta\mathbf{p}_{ij}}(\mathbf{p}_{j}+\mathbf{R}_{j}\delta\mathbf{p}_{j}) &=\mathbf{R}_{i}^{T}(\mathbf{p}_{j}+\mathbf{R}_{j}\delta\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})-\Delta\tilde{\mathbf{p}}_{ij}\\ &=\mathbf{r}_{\Delta\mathbf{p}_{ij}}(\mathbf{p}_{j})+\mathbf{R}_{i}^{T}\mathbf{R}_{j}\delta\mathbf{p}_{j} \end{align*}
rΔpij(pj+Rjδpj)=RiT(pj+Rjδpj−pi−viΔtij−21gΔtij2)−Δp~ij=rΔpij(pj)+RiTRjδpj
展开求解预积分位移残差对
p
i
\mathbf{p}_{i}
pi的雅可比矩阵
r
Δ
p
i
j
(
p
i
+
R
i
δ
p
i
)
=
R
i
T
(
p
j
−
p
i
−
R
i
δ
p
i
−
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
−
Δ
p
~
i
j
=
r
Δ
p
i
j
(
p
i
)
−
δ
p
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{p}_{ij}}(\mathbf{p}_{i}+\mathbf{R}_{i}\delta\mathbf{p}_{i}) &=\mathbf{R}_{i}^{T}(\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{R}_{i}\delta\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})-\Delta\tilde{\mathbf{p}}_{ij}\\ &=\mathbf{r}_{\Delta\mathbf{p}_{ij}}(\mathbf{p}_{i})-\delta\mathbf{p}_{i} \end{align*}
rΔpij(pi+Riδpi)=RiT(pj−pi−Riδpi−viΔtij−21gΔtij2)−Δp~ij=rΔpij(pi)−δpi
展开求解预积分位移残差对
v
i
\mathbf{v}_{i}
vi的雅可比矩阵
r
Δ
p
i
j
(
v
i
+
δ
v
i
)
=
R
i
T
(
p
j
−
p
i
−
v
i
Δ
t
i
j
−
δ
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
−
Δ
p
~
i
j
=
r
Δ
p
i
j
(
v
i
)
−
R
i
T
Δ
t
i
j
δ
v
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{p}_{ij}}(\mathbf{v}_{i}+\delta\mathbf{v}_{i}) &=\mathbf{R}_{i}^{T}(\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\delta\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})-\Delta\tilde{\mathbf{p}}_{ij}\\ &=\mathbf{r}_{\Delta\mathbf{p}_{ij}}(\mathbf{v}_{i})-\mathbf{R}_{i}^{T}\Delta{t}_{ij}\delta\mathbf{v}_{i} \end{align*}
rΔpij(vi+δvi)=RiT(pj−pi−viΔtij−δviΔtij−21gΔtij2)−Δp~ij=rΔpij(vi)−RiTΔtijδvi
展开求解预积分位移残差对
ϕ
i
\boldsymbol{\phi}_{i}
ϕi的雅可比矩阵
r
Δ
v
i
j
(
R
i
E
x
p
(
δ
ϕ
i
)
)
=
(
R
i
E
x
p
(
δ
ϕ
i
)
)
T
(
p
j
−
p
i
−
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
−
Δ
p
~
i
j
=
E
x
p
(
−
δ
ϕ
i
)
R
i
T
(
p
j
−
p
i
−
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
−
Δ
p
~
i
j
≈
(
I
−
(
δ
ϕ
i
)
∧
)
R
i
T
(
p
j
−
p
i
−
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
−
Δ
p
~
i
j
=
R
i
T
(
p
j
−
p
i
−
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
−
Δ
p
~
i
j
−
(
δ
ϕ
i
)
∧
R
i
T
(
p
j
−
p
i
−
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
=
r
Δ
v
i
j
(
R
i
)
+
[
R
i
T
(
p
j
−
p
i
−
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
]
∧
δ
ϕ
i
\begin{align*} \mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{R}_{i}\mathrm{Exp}(\delta\boldsymbol{\phi}_{i})) &=(\mathbf{R}_{i}\mathrm{Exp}(\delta\boldsymbol{\phi}_{i}))^{T}(\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})-\Delta\tilde{\mathbf{p}}_{ij}\\ &=\mathrm{Exp}(-\delta\boldsymbol{\phi}_{i})\mathbf{R}_{i}^{T}(\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})-\Delta\tilde{\mathbf{p}}_{ij}\\ &\approx(\mathbf{I}-(\delta\boldsymbol{\phi}_{i})^{\wedge})\mathbf{R}_{i}^{T}(\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})-\Delta\tilde{\mathbf{p}}_{ij}\\ &=\mathbf{R}_{i}^{T}(\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})-\Delta\tilde{\mathbf{p}}_{ij}-(\delta\boldsymbol{\phi}_{i})^{\wedge}\mathbf{R}_{i}^{T}(\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})\\ &=\mathbf{r}_{\Delta\mathbf{v}_{ij}}(\mathbf{R}_{i})+\left[\mathbf{R}_{i}^{T}(\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})\right]^{\wedge}\delta\boldsymbol{\phi}_{i} \end{align*}
rΔvij(RiExp(δϕi))=(RiExp(δϕi))T(pj−pi−viΔtij−21gΔtij2)−Δp~ij=Exp(−δϕi)RiT(pj−pi−viΔtij−21gΔtij2)−Δp~ij≈(I−(δϕi)∧)RiT(pj−pi−viΔtij−21gΔtij2)−Δp~ij=RiT(pj−pi−viΔtij−21gΔtij2)−Δp~ij−(δϕi)∧RiT(pj−pi−viΔtij−21gΔtij2)=rΔvij(Ri)+[RiT(pj−pi−viΔtij−21gΔtij2)]∧δϕi
综上可得到预积分位移残差对状态增量的雅可比矩阵
∂
r
Δ
p
i
j
∂
δ
ϕ
i
=
[
R
i
T
(
p
j
−
p
i
−
v
i
Δ
t
i
j
−
1
2
g
Δ
t
i
j
2
)
]
∧
∂
r
Δ
p
i
j
∂
δ
ϕ
j
=
O
∂
r
Δ
p
i
j
∂
δ
p
i
=
−
I
∂
r
Δ
p
i
j
∂
δ
p
j
=
R
i
T
R
j
∂
r
Δ
p
i
j
∂
δ
v
i
=
−
R
i
T
Δ
t
i
j
∂
r
Δ
p
i
j
∂
δ
v
j
=
O
∂
r
Δ
p
i
j
∂
δ
b
g
,
i
=
−
∂
Δ
p
~
i
j
∂
b
g
,
i
∂
r
Δ
p
i
j
∂
δ
b
a
,
i
=
−
∂
Δ
p
~
i
j
∂
b
a
,
i
\begin{array}{ll} &\frac{\partial\mathbf{r}_{\Delta\mathbf{p}_{ij}}}{\partial\delta\boldsymbol{\phi}_{i}}=\left[\mathbf{R}_{i}^{T}(\mathbf{p}_{j}-\mathbf{p}_{i}-\mathbf{v}_{i}\Delta{t}_{ij}-\frac{1}{2}\mathbf{g}\Delta{t}_{ij}^{2})\right]^{\wedge} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{p}_{ij}}}{\partial\delta\boldsymbol{\phi}_{j}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\Delta\mathbf{p}_{ij}}}{\partial\delta\mathbf{p}_{i}}=-\mathbf{I} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{p}_{ij}}}{\partial\delta\mathbf{p}_{j}}=\mathbf{R}_{i}^{T}\mathbf{R}_{j}\\ &\frac{\partial\mathbf{r}_{\Delta\mathbf{p}_{ij}}}{\partial\delta\mathbf{v}_{i}}=-\mathbf{R}_{i}^{T}\Delta{t}_{ij} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{p}_{ij}}}{\partial\delta\mathbf{v}_{j}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}_{\Delta\mathbf{p}_{ij}}}{\partial\delta\mathbf{b}_{g,i}}=-\frac{\partial\Delta\tilde{\mathbf{p}}_{ij}}{\partial\mathbf{b}_{g,i}} \quad&\frac{\partial\mathbf{r}_{\Delta\mathbf{p}_{ij}}}{\partial\delta\mathbf{b}_{a,i}}=-\frac{\partial\Delta\tilde{\mathbf{p}}_{ij}}{\partial\mathbf{b}_{a,i}} \end{array}
∂δϕi∂rΔpij=[RiT(pj−pi−viΔtij−21gΔtij2)]∧∂δpi∂rΔpij=−I∂δvi∂rΔpij=−RiTΔtij∂δbg,i∂rΔpij=−∂bg,i∂Δp~ij∂δϕj∂rΔpij=O∂δpj∂rΔpij=RiTRj∂δvj∂rΔpij=O∂δba,i∂rΔpij=−∂ba,i∂Δp~ij
实验:预积分实现GINS系统定位
本实验通过预积分方案实现GINS系统定位
观测残差
r
z
i
=
r
T
i
G
=
[
r
R
i
G
T
,
r
p
i
G
T
]
T
\mathbf{r}_{\mathbf{z}_{i}}=\mathbf{r}^{G}_{\mathbf{T}_{i}}=\left[{\mathbf{r}_{\mathbf{R}_{i}}^{G}}^{T},{\mathbf{r}^{G}_{\mathbf{p}_{i}}}^{T}\right]^{T}
rzi=rTiG=[rRiGT,rpiGT]T,其中
r
R
i
G
=
d
e
f
L
o
g
(
R
~
i
G
T
R
i
)
r
p
i
G
=
d
e
f
p
i
−
p
~
i
G
\begin{align*} \mathbf{r}^{G}_{\mathbf{R}_{i}}&\overset{\mathrm{def}}{=}\mathrm{Log}\left({\tilde{\mathbf{R}}^{G}_{i}}^{T}\mathbf{R}_{i}\right)\\ \quad\mathbf{r}^{G}_{\mathbf{p}_{i}}&\overset{\mathrm{def}}{=}\mathbf{p}_{i}-\tilde{\mathbf{p}}^{G}_{i}\\ \end{align*}
rRiGrpiG=defLog(R~iGTRi)=defpi−p~iG
T
~
i
G
=
[
R
~
i
G
,
p
~
i
G
]
\tilde{\mathbf{T}}^{G}_{i}=[\tilde{\mathbf{R}}^{G}_{i},\tilde{\mathbf{p}}^{G}_{i}]
T~iG=[R~iG,p~iG]为GNSS在第
i
i
i时刻观测到的位姿。暂不讨论
Σ
(
z
i
)
\boldsymbol\Sigma({\mathbf{z}_{i}})
Σ(zi)求解。
GNSS旋转残差对增量
δ
ϕ
i
\delta\boldsymbol\phi_{i}
δϕi的雅可比矩阵不能直接看出,需要求解,其余雅可比容易看出
∂
r
R
i
G
∂
δ
ϕ
i
=
J
r
−
1
(
L
o
g
(
R
ˇ
i
T
R
i
)
)
∂
r
R
i
G
∂
δ
p
i
=
O
∂
r
p
i
G
∂
δ
ϕ
i
=
O
∂
r
p
i
G
∂
δ
p
i
=
I
\begin{array}{ll} &\frac{\partial\mathbf{r}^{G}_{\mathbf{R}_{i}}}{\partial\delta\boldsymbol{\phi}_{i}}=\mathbf{J}_{r}^{-1}\left(\mathrm{Log}\left(\check{\mathbf{R}}_{i}^{T}\mathbf{R}_{i}\right)\right) &\frac{\partial\mathbf{r}^{G}_{\mathbf{R}_{i}}}{\partial\delta\mathbf{p}_{i}}=\mathbf{O}\\ &\frac{\partial\mathbf{r}^{G}_{\mathbf{p}_{i}}}{\partial\delta\boldsymbol{\phi}_{i}}=\mathbf{O} &\frac{\partial\mathbf{r}^{G}_{\mathbf{p}_{i}}}{\partial\delta\mathbf{p}_{i}}=\mathbf{I}\\ \end{array}
∂δϕi∂rRiG=Jr−1(Log(RˇiTRi))∂δϕi∂rpiG=O∂δpi∂rRiG=O∂δpi∂rpiG=I
本实验采用两帧优化模型,当IMU数据到来时,更新预积分协方差矩阵,预积分观测对零偏的雅可比等预积分相关量,并将预测结果在窗口显示,通过GNSS触发优化,即当RTK数据到来时,对当前帧与上一帧的系统状态进行优化,并将当前帧的优化结果在窗口显示,最后重置预积分相关量。在优化过程中不考虑某状态变量间更新对其他状态变量的影响,优化目标是使残差尽量小,本实验的图优化结构如下图
实验结果如下图,可以看到缺少GNSS观测时,单纯靠IMU积分会导致位移局部发散。在预积分方案中,可以选择优化迭代次数,并且可以调整与边关联的顶点。
附录
§1
任意
ϕ
∈
R
3
\boldsymbol{\phi}\in\mathbb{R}^{3}
ϕ∈R3,
R
∈
S
O
(
3
)
\mathbf{R}\in{SO(3)}
R∈SO(3),满足
R
E
x
p
(
ϕ
)
R
T
=
exp
(
R
ϕ
∧
R
T
)
=
E
x
p
(
R
ϕ
)
\mathbf{R}\mathrm{Exp}(\boldsymbol{\phi})\mathbf{R}^{T}=\exp(\mathbf{R}\boldsymbol{\phi}^{\wedge}\mathbf{R}^{T})=\mathrm{Exp}(\mathbf{R}\boldsymbol{\phi})
RExp(ϕ)RT=exp(Rϕ∧RT)=Exp(Rϕ)
由此可以推出
E
x
p
(
ϕ
)
R
=
R
E
x
p
(
R
T
ϕ
)
(A1)
\mathrm{Exp}(\boldsymbol{\phi})\mathbf{R}=\mathbf{R}\mathrm{Exp}(\mathbf{R}^{T}\boldsymbol{\phi})\tag{A1}
Exp(ϕ)R=RExp(RTϕ)(A1)
§2
对于 S = ∑ k = i j A k \mathbf{S}=\sum_{k=i}^{j}\mathbf{A}_{k} S=∑k=ijAk, A k ∈ R M × N \mathbf{A}_{k}\in\mathbb{R}^{M\times{N}} Ak∈RM×N,若 j < i j<i j<i,则 S = O \mathbf{S}=\mathbf{O} S=O;若 j ⩾ i j\geqslant{i} j⩾i,则 S = A i + ⋯ + A j \mathbf{S}=\mathbf{A}_{i}+\cdots+\mathbf{A}_{j} S=Ai+⋯+Aj
对于 P = ∏ k = i j A k \mathbf{P}=\prod_{k=i}^{j}\mathbf{A}_{k} P=∏k=ijAk, A k ∈ R N × N \mathbf{A}_{k}\in\mathbb{R}^{N\times{N}} Ak∈RN×N,若 j < i j<i j<i,则 P = I \mathbf{P}=\mathbf{I} P=I;若 j ⩾ i j\geqslant{i} j⩾i,则 P = A i ⋯ A j \mathbf{P}=\mathbf{A}_{i}\cdots\mathbf{A}_{j} P=Ai⋯Aj
§3、 S O ( 3 ) + t SO(3)+\mathbf{t} SO(3)+t的更新
S O ( 3 ) + t SO(3)+\mathbf{t} SO(3)+t的更新有两种方式
方式一:
R
w
b
′
←
R
w
b
δ
R
p
w
b
′
w
←
p
w
b
w
+
R
w
b
δ
p
\mathbf{R}_{wb^{\prime}}\leftarrow\mathbf{R}_{wb}\delta\mathbf{R}\quad\quad\mathbf{p}_{wb^{\prime}}^{w}\leftarrow\mathbf{p}_{wb}^{w}+\mathbf{R}_{wb}\delta\mathbf{p}
Rwb′←RwbδRpwb′w←pwbw+Rwbδp
此时
δ
R
=
R
b
b
′
\delta\mathbf{R}=\mathbf{R}_{bb^{\prime}}
δR=Rbb′表示摄动载体系(经摄动后的载体坐标系)的载体坐标系到载体系的旋转矩阵,
δ
p
=
R
b
w
(
p
w
b
′
w
−
p
w
b
w
)
=
R
b
w
p
b
b
′
w
=
p
b
b
′
b
\delta\mathbf{p}=\mathbf{R}_{bw}(\mathbf{p}^{w}_{wb^{\prime}}-\mathbf{p}^{w}_{wb})=\mathbf{R}_{bw}\mathbf{p}^{w}_{bb^{\prime}}=\mathbf{p}^{b}_{bb^{\prime}}
δp=Rbw(pwb′w−pwbw)=Rbwpbb′w=pbb′b表示载体坐标系原点到摄动载体系原点的矢量在载体坐标系下的坐标。
方式二:
R
w
b
′
←
R
w
b
δ
R
p
w
b
′
w
←
p
w
b
w
+
δ
p
\mathbf{R}_{wb^{\prime}}\leftarrow\mathbf{R}_{wb}\delta\mathbf{R}\quad\quad\mathbf{p}_{wb^{\prime}}^{w}\leftarrow\mathbf{p}_{wb}^{w}+\delta\mathbf{p}
Rwb′←RwbδRpwb′w←pwbw+δp
此时
δ
R
=
R
b
b
′
\delta\mathbf{R}=\mathbf{R}_{bb^{\prime}}
δR=Rbb′仍表示摄动载体系(经摄动后的载体坐标系)的载体坐标系到载体系的旋转矩阵,
δ
p
=
p
w
b
′
w
−
p
w
b
w
=
p
b
b
′
w
\delta\mathbf{p}=\mathbf{p}^{w}_{wb^{\prime}}-\mathbf{p}^{w}_{wb}=\mathbf{p}^{w}_{bb^{\prime}}
δp=pwb′w−pwbw=pbb′w表示载体坐标系原点到摄动载体系原点的矢量在世界坐标系下的坐标。
上述两种更新方式在实际应用中均可采取,区别在于 δ p \delta\mathbf{p} δp表示的物理意义不同。
§4、非欧式空间上的不确定性
若
x
=
x
0
⊕
δ
x
δ
x
∼
N
(
0
,
Σ
)
\mathbf{x}=\mathbf{x}_{0}\oplus\delta\mathbf{x}\quad\delta\mathbf{x}\sim\mathcal{N}(\mathbf{0},\boldsymbol{\Sigma})
x=x0⊕δxδx∼N(0,Σ)
其中
x
∈
D
o
m
(
x
)
\mathbf{x}\in\mathrm{Dom}(\mathbf{x})
x∈Dom(x),
D
o
m
(
x
)
\mathrm{Dom}(\mathbf{x})
Dom(x)为非欧式空间,
δ
x
∈
R
N
\delta\mathbf{x}\in\mathbb{R}^{N}
δx∈RN,
⊕
:
D
o
m
(
x
)
×
R
N
→
D
o
m
(
x
)
\oplus:\mathrm{Dom}(\mathbf{x})\times\mathbb{R}^{N}\rightarrow\mathrm{Dom}(\mathbf{x})
⊕:Dom(x)×RN→Dom(x),则
x
\mathbf{x}
x的不确定性完全来源于
δ
x
\delta\mathbf{x}
δx,可将
x
\mathbf{x}
x视为
δ
x
\delta\mathbf{x}
δx的函数
x
(
δ
x
)
\mathbf{x}(\delta\mathbf{x})
x(δx)
故
x
\mathbf{x}
x的概率分布为
p
(
x
)
=
p
(
x
(
δ
x
)
)
=
p
(
δ
x
)
∝
exp
(
−
1
2
∥
x
⊖
x
0
∥
Σ
2
)
p(\mathbf{x})=p(\mathbf{x}(\delta\mathbf{x}))=p(\delta\mathbf{x})\propto\exp\left(-\frac{1}{2}\|\mathbf{x}\ominus\mathbf{x}_{0}\|^{2}_{\boldsymbol\Sigma}\right)
p(x)=p(x(δx))=p(δx)∝exp(−21∥x⊖x0∥Σ2)
其中
⊖
:
D
o
m
(
x
)
×
D
o
m
(
x
)
→
R
N
\ominus:\mathrm{Dom}(\mathbf{x})\times\mathrm{Dom}(\mathbf{x})\rightarrow\mathbb{R}^{N}
⊖:Dom(x)×Dom(x)→RN