论文标题:
Hong Kong World: Leveraging Structural Regularity for Line-Based SLAM
论文作者:
Haoang Li, Ji Zhao, Jean-Charles Bazin, Pyojin Kim, Kyungdon Joo, Zhenjun Zhao, Yun-Hui Liu
导读:
在视觉感知技术中,理解和描述复杂的三维室外场景至关重要,尤其是自动驾驶技术的发展要求对陌生环境具有更强的适应能力和鲁棒性。传统上,使用“曼哈顿世界”和“亚特兰大世界”模型来描述具有垂直和水平结构的城市场景。
当遇到像香港这样地形复杂或发展中的城市区域时,这些模型就存在明显的局限性。为了处理这些复杂且不规则的场景,研究者提出了“香港世界”模型。该模型比曼哈顿和亚特兰大世界更为通用,不仅可以描述垂直和水平结构,还能处理斜坡和倾斜建筑。
作者基于该“香港世界”模型开发了一套SLAM系统,通过实验证明,使用这一模型作为先验信息后,SLAM系统在复杂陌生环境中的表现显著提升。©️【深蓝AI】编译
1. 背景简介
研究人员已经深入研究了结构化环境,尤其是在计算机视觉和机器人领域。传统上,此方法使用了“曼哈顿世界”和“亚特兰大世界”模型来描述城市中的场景:
●曼哈顿世界:假设城市中的建筑和街道都是垂直或水平排列的,这些方向都是互相正交的。
●亚特兰大世界:扩展了曼哈顿世界的概念,假设除了垂直方向外,还有多个不一定相互正交的水平方向。
▲图1|曼哈顿、亚特兰大和香港三种城市模型的示意图©️【深蓝AI】编译
虽然这些模型在描述平坦的城市区域时效果很好,但当此方法面对像香港这样的复杂地形时,它们就不够用了。香港的地形包括许多坡度和斜面,传统的模型难以准确描述这种环境。同样的问题也出现在“山城”重庆。
为了解决这些问题,本文提出了一种新的模型,叫做“香港世界”。这个模型不仅能描述垂直和水平的结构,还能处理各种斜坡和倾斜的建筑结构。这样,不仅可以描述平坦的高楼大厦,还能精确描绘建在山坡上的房屋。
在“香港世界”中,存在这样几种主要的方向:
●垂直方向,与所有水平方向正交。比如房屋是沿重力方向建造的;
●每个水平方向,与一组倾斜方向正交。比如房屋的墙壁与斜坡道路相邻;
●多对水平和倾斜方向互相正交。例如,两面相互垂直的墙壁,或者车道线与斜坡法线;
●基于这些方向,通过一组共享公共垂直轴或水平轴的坐标系来建模“香港世界”。这样,“香港世界”就像是亚特兰大世界的升级版,可以表示更多样化的环境。
“香港世界”模型有两个主要优势:
●它比曼哈顿和亚特兰大世界更通用,可以描述有坡度的环境,如有丘陵的城市、有斜屋顶的房屋和有楼梯的公寓;
●它比混合曼哈顿世界模型更紧凑和准确,因为它的方向是紧密联系在一起的。
“香港世界”模型在3D重建、场景理解和机器人导航等领域有广泛的潜在应用。此方法重点讨论其在机器人导航中的关键技术–SLAM中的应用。现有的基于点的SLAM方法在没有纹理的环境中表现不稳定。为了解决这个问题,已经提出了几种基于线的SLAM方法。然而,这些方法忽略了3D线之间的空间关系,而这些关系可以提供有效的几何约束,因此它们的精度不够理想。相比之下,最近的基于线的方法考虑了结构化场景中3D线之间的特定空间关系,如平行和正交。尽管这些方法提高了精度,但其适用范围有限,仅适用于曼哈顿和亚特兰大世界。为了克服这一限制,研究者提出了一种利用“香港世界”结构特征的单目基于线的SLAM方法。
这种SLAM方法具有很高的可靠性,主要得益于三项技术创新:
●通过半搜索的方法来估计“香港世界”中的主导方向和消失点。
●通过利用“香港世界”中主导方向之间的空间关系来计算相机的姿态,这种方法生成简洁的多项式,比现有的针对非结构化场景的方法更准确和高效。
●通过一种新的基于滤波的方法来优化估计的主导方向,然后使用这些优化后的主导方向来进一步优化相机姿态和3D线条,从而提高了准确性和鲁棒性。
这个SLAM方法中最大的亮点就是使用了消失点——这个相对于特征点提取,光流更少用到的方法来估算相机的位姿,对于这一点笔者将在方法部分详细介绍。
▲图2|曼哈顿,亚特兰大,香港描述模型的数学几何建模©️【深蓝AI】编译
2. 基于“香港世界”的SLAM
▲图3|SLAM 框架©️【深蓝AI】编译
基于“香港世界”的SLAM框架包括三个主要部分:规则编码器、前端和后端(见图3)。
■2.1 规则编码器
本方法使用主导方向和消失点来捕捉“香港世界”的结构特点。在校准过的图像中,消失点实际上就是主导方向。简单来说,主导方向是由消失点和相机中心定义的3D方向。
关于消失点这个概念,可能有些读者较为陌生,笔者在这里展开讲解一下:
消失点是指在透视投影中,平行于某一方向的直线在图像平面上汇聚成一点的现象。它反映了三维场景中物体的方向信息,是理解和重建场景的重要工具。在基于消失点的SLAM(同步定位与地图构建)方法中,消失点用于估计相机的位姿,即相机的位置和方向。
在这种方法中,首先通过边缘检测和直线检测(如Hough变换)从图像中提取直线,确定这些直线的交点即消失点。例如,在城市街道场景中,建筑物的边缘和道路通常会形成显著的消失点。确定消失点后,可以利用这些点来估计相机的姿态。消失点对应于三维空间中的方向向量,通过相机内参矩阵(包括焦距和光心位置),将图像中的消失点坐标转换为相机坐标系中的方向向量。这些方向向量代表了相机视角下的特定方向,如建筑物的垂直方向或水平方向。
通过分析这些方向向量的几何关系,可以确定相机的旋转矩阵和位移向量,描述相机相对于场景的旋转和位置。具体方法是将图像中检测到的消失点与已知的三维方向匹配,最小化误差来估计相机的旋转和位移,下面的流程图展现了通过消失点检测估算相机位姿的流程:
可以想象一个自动驾驶汽车在城市街道上行驶,车载相机捕捉到前方建筑物和道路的图像。通过检测这些图像中的消失点,能够推断出车道线的延伸方向和建筑物的垂直方向。这些信息不仅有助于定位汽车的当前位置,还能帮助构建周围环境的三维地图,感知周围环境。
回到本文,消失点可以用相机的校准矩阵和主导方向来表示。此方法从图像中提取出若干条直线,计算这些直线所在平面的法线。通过计算图像线的两个端点之间的叉积来得到这些法线。然后,此方法根据这些法线来确定它们属于哪些主导方向。此方法的规则编码器为前端和后端提供了几何约束,从而提升它们的性能,图4展示了“香港世界”中消失点和相机视角的投影关系,理解了图4,就能够理解该方法是如何利用“香港世界”中的消失点来估计相机位姿的,下面我们一起来仔细解读一下图4。
在图4左侧的球体图解中,中心点代表相机的位置,周围的球体展示了相机视角下的三维空间。L1和L2是三维空间中的两条线,可能是建筑物的边缘或街道的边线。这些线条在相机的投影平面上形成图像中的直线l1和l2。图中的投影平面表示相机捕捉图像时的那一层。L1和L2都沿着一个水平的主导方向(h)延伸,表示它们的方向一致。此外,n1和n2是投影平面的法线,显示这些平面与相机视角的关系。在右侧的小图框中,展示了相机捕捉到的图像,l1和l2在图像平面上相交于一个消失点。这个消失点反映了这些线条在三维空间中的方向,利用这个信息,从而可以估算相机的位姿。
▲图4|消失点图示©️【深蓝AI】编译
■2.2 前端
在前端部分,此方法使用了一种称为LBD(线段二进制描述符,Line Band Descriptor)的特征描述符来匹配两幅图像中的直线。LBD描述符通过编码线段的局部特征,使得在不同视角下拍摄的图像中识别和匹配同一条线段成为可能。
首先,此方法在每幅图像中检测并提取线段特征。通过将两幅图像中的直线特征进行对应匹配,此方法能够确定这些直线在三维空间中的位置。具体来说,通过三角测量技术,将匹配的2D线段重建为3D空间中的线段,从而生成三维直线。这些三维直线会与图像中的线段描述符相关联,以保持线段在不同视角下的一致性。
接下来,此方法根据LBD描述符,将先前生成的3D线段与新图像中提取的线段进行匹配。匹配过程基于描述符的相似性,通过计算描述符之间的距离,选择最相似的线段作为匹配对象。这一过程确保了3D线段与新图像中的线段之间的正确对应关系。
此外,此方法利用规则编码器提供的主导方向之间的空间关系来计算相机的位置和方向。规则编码器通过识别和分析消失点和主导方向,提供了场景中的几何约束信息。通过将这些几何约束与线段匹配结果结合起来,此方法可以精确地估计相机的姿态,即相机在三维空间中的位置和方向。
这种结合了几何约束和线段匹配的策略,使得相机姿态的计算更加准确和高效。利用主导方向的几何关系,不仅增强了位姿估计的鲁棒性,还提高了计算的效率,减少了对复杂环境下位姿估计的误差。这种方法特别适用于具有复杂几何结构的场景,可以说是为“香港世界”模型量身打造,从而提升了SLAM系统在实际应用中的性能和可靠性。
■2.3 后端
在后端部分,此方法按照传统的SLAM方法,将第一个相机帧作为基准点,即世界坐标系的起点。全局和局部主导方向分别表示整个场景和当前相机视角下的主要方向。在每个相机帧中,规则编码器通过检测和分析消失点与直线特征,逐帧估计出局部主导方向。
为确保全局一致性,此方法使用了一种滤波策略来优化这些局部主导方向。具体来说,滤波策略通过将当前帧的局部主导方向与之前估计的全局主导方向进行对比和调整,消除噪声和误差,使得这些主导方向在整个场景中保持一致。这种优化过程基于贝叶斯滤波或卡尔曼滤波等先进的滤波算法,通过结合当前观测与先验信息来递归地优化主导方向。
在优化相机姿态时,此方法将局部主导方向与优化后的全局主导方向对齐,从而进一步精确估计相机的位姿。通过这种对齐过程,相机姿态的估计不仅依赖于当前帧的观测,还受益于全局几何结构的约束,提高了位姿估计的准确性和鲁棒性。
此外,此方法在优化过程中还将三维直线特征对齐到全局主导方向。具体来说,3D直线通过与全局主导方向的对齐,确保其在三维空间中的正确定位和方向。这一对齐过程利用了场景中的几何约束,使得三维结构的重建更加精确。通过对3D直线的优化,不仅提高了三维地图的精度,还增强了SLAM系统在复杂环境下的适应性。
总的来说,这个SLAM框架通过结合主导方向和消失点,提供了一种更为精确和高效的相机姿态计算方法。通过利用规则编码器提供的几何约束和先进的滤波技术,系统能够更好地处理复杂的城市环境,尤其是在地形起伏较大的地区,如香港这样的城市环境。该方法显著提高了SLAM系统的精度和鲁棒性,为机器人导航和自动驾驶等应用提供了坚实的技术支持。
3. 实验效果
既然是Hong Kong World,实验数据集必然充满了香港的景象,在实验部分作者使用了大量的香港街景作为输入(各位读者可以在观看实验数据之余,云游一下香港~)。
▲图5|实验数据集图示©️【深蓝AI】编译
作者首先在香港街景数据集中对本文提出的方法进行了精度测试,同时进行了大规模的对比实验。数值结果如下表所示,可以看到本文提出的SLAM方法在室外场景的精度基本上能控制在1m之内,比起当前最SOTA的如SL-SLAM等方法都不遑多让。
▲图6|数值实验结果©️【深蓝AI】编译
同时作者对SLAM得到的运动轨迹进行了可视化,还将SLAM过程中提取的空间几何特征投影回到了世界坐标系。
从轨迹可视化和几何特征的重投影都能看出本文方法的高精度,特别是几何特征的重投影,仅仅通过简单的直线,一幅幅真实的室外场景已经“跃然纸上”。
▲图7|SLAM轨迹可视化与空间几何特征重投影©️【深蓝AI】编译
除此之外,在作者记录的“香港世界”数据集中,他把从三维世界抽象出来的空间几何描述也进行了重投影。可以看到比起其他的描述方法,本文提出的“香港世界”更能够准确描述复杂的室外环境,抽象出更加准确的结合结构,相关结果如下图所示。
▲图8| “香港世界”几何结构重投©️【深蓝AI】编译
4. 总结
本文作者提出了一种名为“香港世界”的室外场景描述方法,将复杂的城市环境抽象为常见的几何结构。基于这一描述,作者还提出了一种SLAM方法,通过利用几何结构中的消失点来估算相机的位姿。
“香港世界”模型及其SLAM方法能够更好地处理复杂的城市环境,为机器人导航和自动驾驶等在陌生环境中的应用提供了坚实的技术支持。这一方法显著提高了系统在多样化和非规范性城市环境中的适应能力和精度。
编译|阿豹
审核|Los
移步公众号【深蓝AI】,第一时间获取自动驾驶、人工智能与机器人行业最新最前沿论文和科技动态。