论文阅读《UV-SLAM: Unconstrained Line-Based SLAM Using Vanishing Points for Structural Mapping》R-AL 2022

Motivation

使用线特征的SLAM方法主要使用线特征的重投影模型,但由于线特征的投影只与Plücker表示中的normal vector有关而与direction vector无关,直线的方向无法被修正,难以解决线特征的退化问题。

本文提出了利用灭点进行结构化建图的无约束的线特征SLAM.重点是不使用任何结构化假设,如Manhattan world假设。算法从线特征中提取灭点,将当前帧中的灭点观测和通过direction vector计算的灭点估计的差异作为BA的残差。通过使用Fisher信息矩阵秩分析,证明了灭点测量约束可以得到唯一的建图结果。

Contribution

  1. 第一个使用灭点测量进行结构化建图的单目SLAM系统,不受相机运动和环境的限制,且不适用结构化假设,如Manhattan world假设。
  2. 基于3D直线的Plücker表示和正交表示,定义了vanishing point测量的残差和雅可比形式。
  3. 通过Fisher信息矩阵秩分析(FIM),证明了提出的方法保证了3D线特征的可观性。

Methodology

算法框架

在这里插入图片描述
采用LSD提取直线,LBD匹配直线

采用Plücker表示 L ( n , d ) ⊤ ∈ R 6 \mathbf{L}(\mathbf{n}, \mathbf{d})^{\top} \in \mathbb{R}^6 L(n,d)R6进行直线的三角化和重投影

采用正交表示 o = [ ψ , ϕ ] \mathbf{o}=[\boldsymbol{\psi}, \phi] o=[ψ,ϕ]用于后端优化,其中 ψ \psi ψ是3D直线相对相机坐标系的旋转的欧拉角表示, ϕ \phi ϕ是相机中心到线的最小距离

使用J-linkage算法对直线进行聚类,判断每一直线是否具有结构化约束

优化状态

待估计的变量如下
X = [ x 0 , x 1 , … , x I − 1 , λ 0 , λ 1 , … , λ J − 1 , o 0 , o 1 , … , o K − 1 ] , x i = [ p b i w , q b i w , v b i w , b a , b g ] , i ∈ [ 0 , I − 1 ] , o k = [ ψ k , ϕ k ] , k ∈ [ 0 , K − 1 ] , \begin{aligned} \mathcal{X}=& {\left[\mathbf{x}_0, \mathbf{x}_1, \ldots, \mathbf{x}_{I-1},\right.} \\ & \lambda_0, \lambda_1, \ldots, \lambda_{J-1}, \\ &\left.\mathbf{o}_0, \mathbf{o}_1, \ldots, \mathbf{o}_{K-1}\right], \\ \mathbf{x}_i=& {\left[\mathbf{p}_{b_i}^w, \mathbf{q}_{b_i}^w, \mathbf{v}_{b_i}^w, \mathbf{b}_a, \mathbf{b}_g\right], i \in[0, I-1], } \\ \mathbf{o}_k=& {\left[\boldsymbol{\psi}_k, \phi_k\right], k \in[0, K-1], } \end{aligned} X=xi=ok=[x0,x1,,xI1,λ0,λ1,,λJ1,o0,o1,,oK1],[pbiw,qbiw,vbiw,ba,bg],i[0,I1],[ψk,ϕk],k[0,K1],
其中
x i \mathbf{x}_i xi代表滑动窗口中的第i帧对应的body系状态,包括位置、四元数、速度、陀螺仪bias、加速度计bias

λ j , j ∈ [ 0 , J − 1 ] \lambda_j, j \in[0, J-1] λj,j[0,J1]代表特征点的逆深度, o \mathbf{o} o代表线特征的正交表示

Cost function

min ⁡ X { ∥ r 0 − J 0 X ∥ 2 + ∑ i ∈ B ∥ r I ( z b i + 1 b i , X ) ∥ Σ b i + 1 b i 2 + ∑ ( i , j ) ∈ P ρ p ∥ r p ( z p j c i , X ) ∥ Σ p j c i 2 + ∑ ( i , k ) ∈ L ρ l ∥ r l ( z l k c i , X ) ∥ Σ l k c i 2 + ∑ ( i , k ) ∈ V ρ v ∥ r v ( z v k c i , X ) ∥ Σ v k c i 2 } \begin{aligned} &\min _{\mathcal{X}}\left\{\left\|\mathbf{r}_0-\mathbf{J}_0 \mathcal{X}\right\|^2+\sum_{i \in \mathcal{B}}\left\|\mathbf{r}_I\left(\mathbf{z}_{b_{i+1}}^{b_i}, \mathcal{X}\right)\right\|_{\Sigma_{b_{i+1}}^{b_i}}^2\right. \\ &+\sum_{(i, j) \in \mathcal{P}} \rho_p\left\|\mathbf{r}_p\left(\mathbf{z}_{p_j}^{c_i}, \mathcal{X}\right)\right\|_{\Sigma_{p_j}^{c_i}}^2+\sum_{(i, k) \in \mathcal{L}} \rho_l\left\|\mathbf{r}_l\left(\mathbf{z}_{l_k}^{c_i}, \mathcal{X}\right)\right\|_{\Sigma_{l_k}^{c_i}}^2 \\ &\left.+\sum_{(i, k) \in \mathcal{V}} \rho_v\left\|\mathbf{r}_v\left(\mathbf{z}_{v_k}^{c_i}, \mathcal{X}\right)\right\|_{\Sigma_{v_k}^{c_i}}^2\right\} \end{aligned} Xmin{r0J0X2+iBrI(zbi+1bi,X)Σbi+1bi2+(i,j)Pρprp(zpjci,X)Σpjci2+(i,k)Lρlrl(zlkci,X)Σlkci2+(i,k)Vρvrv(zvkci,X)Σvkci2
其中
r 0 \mathbf{r}_0 r0是边缘化残差
r I \mathbf{r}_I rI是IMU预积分残差
r p \mathbf{r}_p rp是特征点残差
r l \mathbf{r}_l rl是线特征残差
r v \mathbf{r}_v rv灭点残差

特征点残差和线特征残差使用Huber核函数
由于灭点残差有无界问题,使用inverse tangent核函数

cost function对应的因子图如下所示
在这里插入图片描述

Line Measurement Model

3D直线的投影方程如下
l c = [ l 1 l 2 l 3 ] = K ′ n c = f x f y ( K − 1 ) ⊤ n c = [ f y 0 0 0 f x 0 − f y c x − f x c y f x f y ] n c = n c \begin{aligned} \mathbf{l}^c &=\left[\begin{array}{l} l_1 \\ l_2 \\ l_3 \end{array}\right]=\mathbf{K}^{\prime} \mathbf{n}^c=f_x f_y\left(\mathbf{K}^{-1}\right)^{\top} \mathbf{n}^c \\ &=\left[\begin{array}{ccc} f_y & 0 & 0 \\ 0 & f_x & 0 \\ -f_y c_x & -f_x c_y & f_x f_y \end{array}\right] \mathbf{n}^c=\mathbf{n}^c \end{aligned} lc=l1l2l3=Knc=fxfy(K1)nc=fy0fycx0fxfxcy00fxfync=nc
本文提出的算法在归一化平面上进行,因此,K和K’是单位阵。投影直线方程等于Plücker表示中的normal vector。

线特征重投影残差如下
r l = [ d ( p s , l c ) d ( p e , l c ) ] \mathbf{r}_l=\left[\begin{array}{l} d\left(\mathbf{p}_s, \mathbf{l}^c\right) \\ d\left(\mathbf{p}_e, \mathbf{l}^c\right) \end{array}\right] rl=[d(ps,lc)d(pe,lc)]
其中
d ( p , 1 c ) = p ⊤ l c l d , l d = l 1 2 + l 2 2 p s = ( u s , v s , 1 ) , p e = ( u e , v e , 1 ) d\left(\mathbf{p}, 1^c\right)=\frac{\mathbf{p}^{\top} \mathbf{l}^c}{l_d}, l_d=\sqrt{l_1^2+l_2^2} \\ \mathbf{p}_s=\left(u_s, v_s, 1\right), \mathbf{p}_e=\left(u_e, v_e, 1\right) d(p,1c)=ldplc,ld=l12+l22 ps=(us,vs,1),pe=(ue,ve,1)

对应Jacobian如下
在这里插入图片描述
在这里插入图片描述
其中
在这里插入图片描述
T c b \mathcal{T}_c^b Tcb是Plücker的变换矩阵

Vanishing point measurement model

将直线上的3D点的齐次坐标表示为如下形式
在这里插入图片描述
其中
在这里插入图片描述
灭点相当于该直线上的无穷远点在像素平面上的投影
在这里插入图片描述
其中 P = K [ I ∣ 0 ] \mathbf{P}=\mathbf{K}[\mathbf{I} \mid \mathbf{0}] P=K[I0]是相机投影矩阵

在UV-SLAM中,灭点对应直线的direction vector

灭点的估计值是 v c \mathbf{v}^c vc和图像平面的交点,如下图所示
在这里插入图片描述
灭点残差如下
r v = p v − 1 v 3 [ v 1 v 2 ] \mathbf{r}_v=\mathbf{p}_v-\frac{1}{v_3}\left[\begin{array}{l} v_1 \\ v_2 \end{array}\right] rv=pvv31[v1v2]
其中 p v \mathbf{p}_v pv是灭点的观测值

Jacobian矩阵如下
$$
在这里插入图片描述
其中
在这里插入图片描述

可观性分析

判断标准:如果FIM奇异,则系统不可观。该结果等价于:如果Jacobian列满秩,则系统可观。
首先,直线观测模型对正交表示的FIM如下
在这里插入图片描述
其中
在这里插入图片描述
Ω l δ o \Omega_l^{\delta o} Ωlδo是直线观测的协方差矩阵的逆

由于 ∂ l c ∂ L c , ∂ L c ∂ L w , ∂ L w ∂ δ o \frac{\partial \mathbf{l}^c}{\partial \mathbf{L}^c}, \frac{\partial \mathbf{L}^c}{\partial \mathbf{L}^w}, \frac{\partial \mathbf{L}^w}{\partial \delta \mathbf{o}} Lclc,LwLc,δoLw均为满秩矩阵,Jacobian的秩由 ∂ r l ∂ l c \frac{\partial \mathbf{r}_l}{\partial \mathbf{l}^c} lcrl确定

∂ r l ∂ l c \frac{\partial \mathbf{r}_l}{\partial \mathbf{l}^c} lcrl是一个2x3矩阵,最大秩为2.考虑如下退化情况
在这里插入图片描述
此时其秩为1

由于正交表示中的直线具有4个参数,仅依靠直线的测量模型无法保证直线的可观性,为了解决这一问题,使用了新的观测,如下
p l = α p s + ( 1 − α ) p e , α ∈ ( 0 , 1 ) \mathbf{p}_l=\alpha \mathbf{p}_s+(1-\alpha) \mathbf{p}_e, \alpha \in(0,1) pl=αps+(1α)pe,α(0,1)
其中 p l \mathbf{p}_l pl是新的观测,添加该观测可以使Jacobian的秩变为2,直线仍不可观

考虑灭点测量的FIM如下
在这里插入图片描述
其中
在这里插入图片描述
类似地,只需分析 ∂ r v ∂ v c \frac{\partial \mathbf{r}_v}{\partial \mathbf{v}^c} vcrv,其秩为2,因此Jacobian的秩为2

通过特征值分解,可以得到同时考虑直线测量和灭点测量的FIM如下
在这里插入图片描述
其中
在这里插入图片描述
在新的Jacobian矩阵中,直线测量和灭点测量对应的行是相互独立的,因此除上文提到的退化情况外,新的Jacobian矩阵的秩为4.可以得出结论,加入灭点观测可以使线特征完全可观。

Evaluation

在Euroc数据集上进行了测试
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Conclusion

提出了 UV-SLAM,一种使用灭点测量的无结构化约束的点线SLAM.通过FIM秩分析证明了直线的可观性。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值