《 Targetless Extrinsic Calibration of Multiple Small FoV LiDARs and Cameras using Adaptive Voxelization》理论阅读
- 第一章:自适应体素化(1)——译文、理论
- 第一章:自适应体素化(2)——代码阅读
- 第二章:多雷达外参标定(1)——译文
- 第二章:多雷达外参标定(2)——推导损失函数降维
- 第二章:多雷达外参标定(3)——推导二阶闭式导数的两个引理
- 第二章:多雷达外参标定(4)——推导二阶闭式导数
- 第二章:多雷达外参标定(5)——代码阅读、公式补充
- 第三章:雷达相机外参标定——译文、代码阅读
文章目录
前言
主要记录论文mlcc
关于多雷达外参标定的部分,由于理论过程使用Latex导致字数超过限制,因此将理论推导拆分为多个章节记录。
一、文章内容
With adaptive voxelization, we can obtain a set of voxels of different sizes. Each voxel contains points that are roughly on a plane and creates a planar constraint for all LiDAR poses that have points in this voxel. More specifically, considering the l − t h l-th l−th voxel consisting of a group of points P l = G P L i , t j \mathcal{P}_{l}={_{}^{G}P_{L_{i},t_{j}}} Pl=GPLi,tj scanned by L i ∈ L L_{i} \in \mathcal{L} Li∈L at times t j ∈ T t_{j} \in \mathcal{T} tj∈T.We define a point cloud consistency indicator c l ( L i G T t j ) _{c_{l}}(_{L_{i}}^{G}T_{t_{j}}) cl(LiGTtj) which forms a factor on S \mathcal{S} S and E L \mathcal{E}_{L} EL shown in Fig. 4(a). Then, the base LiDAR trajectory and extrinsic are estimated by optimizing the factor graph. A natural choice for the consistency indicator c l ( ⋅ ) c_{l}(\cdot) cl(⋅) would be the summed Euclidean distance between each G P L i , t j _{}^{G}P_{L_{i},t_{j}} GPLi,tj the plane to be estimated (see Fig. 4(b)). Taking account of all such indicators within the voxel map, we could formulate the problem as arg min S , E L , n l , q l ∑ l ( 1 N l ∑ k = 1 N l ( n l T ( G p k − q l ) ) 2 ) ⏟ l − t h f a c t o r \arg\min_{{\mathcal{S},\mathcal{E}_{L},{n}_{l},{q}_{l}}}\sum_{l}\underbrace{{\left(\frac{1}{N_{l}}\sum_{k=1}^{{N_{l}}}\left({n}_{l}^{T}\left(^{G}{p}_{k}-{q}_{l}\right)\right)^{2}\right)}}_{{l\mathrm{-th~factor}}} argS,EL,nl,qlminl∑l−th factor (Nl1k=1∑Nl(nlT(Gpk−ql))2), where G p k ∈ P l _{}^{G}p_{k}\in \mathcal{P}_{l} Gpk∈Pl, N l N_{l} Nl is the total number of points in P l \mathcal{P}_{l} Pl, n l n_{l} nl is the normal vector of the plane and q l q_{l} ql is a point on this plane.
Fig.4 :(a) The l − t h l-th l−th factor item relating to S \mathcal{S} S and E L \mathcal{E}_{L} EL with L i ∈ L L_{i} \in \mathcal{L} Li∈L and t j ∈ T t_{j} \in \mathcal{T} tj∈T . (b) The distance from the point G p k _{}^{G}p_{k} Gpk to the plane π \pi π.
通过自适应体素化,我们可以获得一组不同大小的体素。每个体素包含大致在一个平面上的点,并为所有包含在此体素内的雷达姿态创建一个平面约束。更具体地说,考虑由
L
i
∈
L
L_{i} \in \mathcal{L}
Li∈L在时刻
t
j
∈
T
t_{j} \in \mathcal{T}
tj∈T扫描的一组点组成的第
l
l
l个体素。我们定义了一个点云一致性指标
c
l
(
L
i
G
T
t
j
)
_{c_{l}}(_{L_{i}}^{G}T_{t_{j}})
cl(LiGTtj) ,它在图4(a)中形成了
S
\mathcal{S}
S 和
E
L
\mathcal{E}_{L}
EL上的因子。然后,通过优化因子图来估计基准雷达的轨迹和外参。对于一致性指标
c
l
(
⋅
)
c_{l}(\cdot)
cl(⋅)的一个自然选择是计算每个
G
P
L
i
,
t
j
_{}^{G}P_{L_{i},t_{j}}
GPLi,tj到平面的欧几里得距离之和(见图4(b))。考虑到体素图中所有这样的指标,我们可以将问题表述为
arg
min
S
,
E
L
,
n
l
,
q
l
∑
l
(
1
N
l
∑
k
=
1
N
l
(
n
l
T
(
G
p
k
−
q
l
)
)
2
)
⏟
l
−
t
h
f
a
c
t
o
r
\arg\min_{{\mathcal{S},\mathcal{E}_{L},{n}_{l},{q}_{l}}}\sum_{l}\underbrace{{\left(\frac{1}{N_{l}}\sum_{k=1}^{{N_{l}}}\left({n}_{l}^{T}\left(^{G}{p}_{k}-{q}_{l}\right)\right)^{2}\right)}}_{{l\mathrm{-th~factor}}}
argS,EL,nl,qlminl∑l−th factor
(Nl1k=1∑Nl(nlT(Gpk−ql))2)
,其中
G
p
k
∈
P
l
_{}^{G}p_{k}\in \mathcal{P}_{l}
Gpk∈Pl,
N
l
N_{l}
Nl 是
P
l
\mathcal{P}_{l}
Pl中所有点的总点数,
n
l
n_{l}
nl 是平面的法向量,
q
l
q_{l}
ql 是平面中的一点。
Fig.4 :(a) 第 l l l 个因子项,涉及 S \mathcal{S} S 和 E L \mathcal{E}_{L} EL,其中 L i ∈ L L_{i} \in \mathcal{L} Li∈L 且 t j ∈ T t_{j} \in \mathcal{T} tj∈T 。 (b)点 G p k _{}^{G}p_{k} Gpk到平面 π \pi π的距离.
It is noticed that the optimization variables ( n l , q l ) (n_{l}, q_{l}) (nl,ql) in (2) could be analytically solved (see Appendix A and the resultant cost function (3) is over the LiDAR pose L i G T t j _{L_{i}}^{G}T_{t_{j}} LiGTtj (hence the base LiDAR trajectory S \mathcal{S} S and extrinsic E L \mathcal{E}_{L} EL) only, as follows arg min S , E L ∑ l λ 3 ( A l ) \arg\min_{\mathcal{S},\mathcal{E}_{L}}\sum_{l}^{}\lambda_{3}(A_{l}) argS,ELminl∑λ3(Al) where λ 3 ( A l ) \lambda_{3}(A_{l}) λ3(Al) denotes the minimal eigenvalue of matrix A l A_{l} Al defined as A l = 1 N l ∑ k = 1 N l G p k ⋅ G p k T − q l ∗ ⋅ q l ∗ T , q l ∗ = 1 N l ∑ k = 1 N l G p k A_{l}=\frac{1}{N_{l}}\sum_{k=1}^{N_{l}}{_{}^{G}p_{k} \cdot_{}^{G}p_{k}^{T}-q_{l}^{\ast}\cdot {q_{l}^{\ast}}^{T}},q_{l}^{\ast} =\frac{1}{N_{l}}\sum_{k=1}^{N_{l}}{_{}^{G}p_{k}} Al=Nl1k=1∑NlGpk⋅GpkT−ql∗⋅ql∗T,ql∗=Nl1k=1∑NlGpk
. To allow efficient optimization in (3), we derive the closedform derivatives w.r.t the optimization variable x x x up to secondorder (the detailed derivation from (3) to (5) is elaborated in Appendix B):
λ 3 ( x ⊞ δ x ) ≈ λ 3 ( x ) + J ˉ δ x + 1 2 δ x T H ˉ δ x \lambda_3({x}\boxplus\delta{x})\approx\lambda_3({x})+{\bar{J}}\delta{x}+\frac12\delta{x}^T{\bar{H}}\delta{x} λ3(x⊞δx)≈λ3(x)+Jˉδx+21δxTHˉδx
,where J ˉ \bar{J} Jˉ is the Jacobian matrix, and H ˉ \bar{H} Hˉ is the Hessian matrix.The δ x \delta{x} δx is a small perturbation of the optimization variable x x x:
x = [ ⋯ L 0 G R t j L 0 G t t j ⋯ ⏟ S ⋯ L i L 0 R L i L 0 t ⋯ ⏟ E L ] {x}=[\underbrace{\cdots_{L_{0}}^{G}{R}_{t_{j}}\quad L_{0}^{G}{t}_{t_{j}}\cdots}_{\mathcal{S}}\underbrace{\cdots {}_{L_{i}}^{L_{0}}{R}\quad{}_{L_{i}}^{L_{0}}{t}\cdots}_{\mathcal{E}_{L}}] x=[S ⋯L0GRtjL0Gttj⋯EL ⋯LiL0RLiL0t⋯]
.Then the optimal x ∗ x^{\ast} x∗ could be determined by iteratively solving (6) with the LM method and updating the δ x \delta{x} δx to x x x.
( H ˉ + μ I ) δ x = − J ˉ T (\bar{{H}}+\mu{I}) \delta{x}=-\bar{{J}}^T (Hˉ+μI)δx=−JˉT
注意到优化变量
(
n
l
,
q
l
)
(n_{l}, q_{l})
(nl,ql)在方程(2)中可以解析求解(详见附录A),由此得到的损失函数(3)仅关于雷达姿态
L
i
G
T
t
j
_{L_{i}}^{G}T_{t_{j}}
LiGTtj(即基准雷达轨迹
S
\mathcal{S}
S和外参
E
L
\mathcal{E}_{L}
EL),如下所示:
arg
min
S
,
E
L
∑
l
λ
3
(
A
l
)
\arg\min_{\mathcal{S},\mathcal{E}_{L}}\sum_{l}^{}\lambda_{3}(A_{l})
argS,ELminl∑λ3(Al)其中
λ
3
(
A
l
)
\lambda_{3}(A_{l})
λ3(Al)表示矩阵
A
l
A_{l}
Al的最小特征值,
A
l
A_{l}
Al定义为
A
l
=
1
N
l
∑
k
=
1
N
l
G
p
k
⋅
G
p
k
T
−
q
l
∗
⋅
q
l
∗
T
,
q
l
∗
=
1
N
l
∑
k
=
1
N
l
G
p
k
A_{l}=\frac{1}{N_{l}}\sum_{k=1}^{N_{l}}{_{}^{G}p_{k} \cdot_{}^{G}p_{k}^{T}-q_{l}^{\ast}\cdot {q_{l}^{\ast}}^{T}},q_{l}^{\ast} =\frac{1}{N_{l}}\sum_{k=1}^{N_{l}}{_{}^{G}p_{k}}
Al=Nl1k=1∑NlGpk⋅GpkT−ql∗⋅ql∗T,ql∗=Nl1k=1∑NlGpk
。为了使式(3)中的优化高效,我们推导了优化变量
x
x
x的二阶闭式导数(从(3)到(5)的详细推导见附录B):
λ
3
(
x
⊞
δ
x
)
≈
λ
3
(
x
)
+
J
ˉ
δ
x
+
1
2
δ
x
T
H
ˉ
δ
x
\lambda_3({x}\boxplus\delta{x})\approx\lambda_3({x})+{\bar{J}}\delta{x}+\frac12\delta{x}^T{\bar{H}}\delta{x}
λ3(x⊞δx)≈λ3(x)+Jˉδx+21δxTHˉδx
。其中
J
ˉ
\bar{J}
Jˉ是雅可比矩阵,
H
ˉ
\bar{H}
Hˉ是海森矩阵。
δ
x
\delta{x}
δx是优化变量
x
x
x的小扰动:
x
=
[
⋯
L
0
G
R
t
j
L
0
G
t
t
j
⋯
⏟
S
⋯
L
i
L
0
R
L
i
L
0
t
⋯
⏟
E
L
]
{x}=[\underbrace{\cdots_{L_{0}}^{G}{R}_{t_{j}}\quad L_{0}^{G}{t}_{t_{j}}\cdots}_{\mathcal{S}}\underbrace{\cdots_{L_{i}}^{L_{0}}{R}\quad {}_{L_{i}}^{L_{0}}{t}\cdots}_{\mathcal{E}_{L}}]
x=[S
⋯L0GRtjL0Gttj⋯EL
⋯LiL0RLiL0t⋯]
。然后,最优解
x
∗
x^{\ast}
x∗可以通过迭代求解公式(6)并使用LM的方法更新
δ
x
\delta{x}
δx到
x
x
x来确定。
(
H
ˉ
+
μ
I
)
δ
x
=
−
J
ˉ
T
(\bar{{H}}+\mu{I}) \delta{x}=-{\bar{{J}}}^T
(Hˉ+μI)δx=−JˉT
二、 参考文献
[2]《BALM: Bundle Adjustment for Lidar Mapping》
[3]《BALM论文阅读》——epsilonjohn的博客文章
[4]《A micro Lie theory for state estimation in robotics》