作者 | 小张Tt 编辑 | 3D视觉工坊
点击下方卡片,关注“自动驾驶之心”公众号
ADAS巨卷干货,即可获取
点击进入→自动驾驶之心【相机标定】技术交流群
本文只做学术分享,如有侵权,联系删文
本文介绍了一种用于道路场景中鲁棒的自动多摄像头校准和修正的方法。该方法利用了从粗糙到精细的随机搜索策略,可以解决初始外部参数的较大扰动,并弥补了非线性优化方法陷入局部最优值的缺陷。通过在实际和模拟环境中进行的定量和定性实验,结果表明所提出的方法可以实现准确性和鲁棒性的性能。
1 前言
本文提出了一种基于光度误差的道路场景下全景相机外部参数校准的全自动无目标方法。该方法使用了从粗糙到精细的随机搜索策略,可以适应较大的初始外部参数误差,同时避免了在非线性优化方法中陷入最优局部值的问题。在模拟和真实数据集上,该方法表现出有希望的性能。
作者的贡献有三个方面:
提出了一种全自动、无目标的方法,基于道路场景下鸟瞰视图中重叠区域的光度误差来进行全景相机外部参数校准。
使用了从粗糙到精细的随机搜索策略,可以适应较大的初始外部参数误差。同时,避免了在非线性优化方法中陷入最优局部值的问题。
所提出的方法在作者的模拟和真实数据集上表现出有希望的性能;同时,基于分析,作者开发了一款实用的校准软件,并在GitHub上开源,以造福社区。
2 相关工作
车道线基于的方法依赖于捕捉到两条平行车道线,而基于里程计的方法将校准问题纳入到视觉里程计或完整SLAM系统的优化中。基于光度的方法采用直接图像对齐的方法,利用局部亮度来确定优化步骤。这些方法都存在一些局限性和缺点,例如强依赖平行车道线的方法对SVS情况不适用,而基于里程计的方法需要大量时间和计算资源。基于光度的方法虽能在稀疏纹理场景下表现出更好的鲁棒性,但仍然基于非线性优化方法,不能解决较大的干扰。因此,需要进一步研究基于SVS的在线校准方法,以克服上述方法的局限性并提高校准的鲁棒性和效率。
3 方法
本节介绍了作者方法的细节,包括纹理关键点提取、优化损失和从粗到细的解决方案。
3.1. Texture points extraction and optimization loss —— 纹理点提取和优化损失
本节将讨论如何生成BEV图像、提取纹理、将纹理像素投射回原始点云,并优化损失函数。
投射模型 本节介绍了如何基于相机投影模型生成BEV图像,并从中提取纹理,然后将纹理像素投影回原始点云,并使用损失优化方法。投影模型利用相机的姿态和内参矩阵,将地面坐标系的点投影到相机图像平面上。然后,将BEV图像的坐标反投影回相机坐标系,以获得原始相机图像上点的坐标。最后,通过对映射关系的应用,可以得到每个相机视角的BEV图像。
2)纹理点提取
本节介绍了纹理点提取的方法。根据相邻相机的公共视野,利用多视角几何先验知识和初始校准参数,将一个相机的BEV纹理像素投影回另一个相机的图像,并通过计算光度损失对其进行优化,使得两个相机的BEV纹理位置重叠。在公共视野区域,通过计算像素的光度梯度,并与阈值进行比较,可以提取纹理像素点。此外,如果相邻相机具有不同的曝光条件,需要进行处理。
3)计算光度损失
本节介绍了如何计算光度损失。首先,将相机的BEV纹理像素点投影到相机的图像上,得到对应的像素点,并计算这两个相机视图之间的光度损失。光度损失衡量了相机的BEV图像和相机图像之间的差异。通过将方程展开,可以得到光度损失的计算公式。
通过结合位姿和相机投影方程将公式进一步展开。
3.2. The coarse-to-fine solution —— 由粗到细的解决方案
本文介绍了一种旨在生成无缝车辆环视图像的校准方法。首先利用前视摄像头通过消失点和水平线校准相机到车体的外参。然后通过递归优化相邻摄像头的光度损失来优化所有其他摄像头的外参。由于光度损失优化的图像对齐问题是非凸优化问题,很难通过凸优化技术进行优化,因此需要提供合理而稳健的初始外参估计。为此,本文采用了粗到精的随机搜索策略,通过在当前最优参数周围随机搜索参数空间来优化光度损失。该策略类似于非线性优化中的梯度下降方法,但可以避免陷入局部最优值。在每个阶段的随机搜索中,通过计算光度损失来评估当前姿态的效果,并根据评估结果更新最优姿态。通过多轮随机搜索,可以得到相对最优的姿态,从而生成具有较小光度损失的车辆环视图像。
4 实验
本文的实验部分分为真实实验和模拟实验两个部分。真实实验在作者的无人驾驶车辆测试平台上进行,而模拟实验基于Carla引擎进行。这样的设计使得作者能够在真实环境和虚拟环境下对所提出的方法进行全面的测试和评估。
4.1. 实验设置
本文的实验部分介绍了机器配置和数据集的设置。作者的算法在Ubuntu操作系统上执行,使用了特定配置的处理器。实验使用了Carla模拟数据和真实世界的鱼眼摄像头数据。为了去除自车占据的区域,作者使用了ROI对BEV图进行滤波处理。这样的实验设置可以帮助作者评估和验证算法的性能和效果。
4.2. 定性结果
作者的方法通过校准内参和外参参数,将四个相机投影到BEV中,以更好地可视化性能。图5展示了针孔相机的结果,而图6和图7则展示了鱼眼相机校准前后的结果。
4.3. 定量结果
本研究通过与现有工作进行比较,证明了作者的校准方法在环景视图系统在线外参校正问题上具有较高的精度。在初始误差超过0.3°后,有些的方法无法继续校准,而作者的方法仍然能够获得更好的结果。作者的校准算法能够将初始误差控制在3°范围内。
5 总结
本研究中,作者通过采用分级粗到细的随机搜索方法来解决了环景视图相机的在线校准问题,并克服了传统特征或直接方法的一些局限性。作者的方法在处理失真和非线性优化问题时表现良好,并且能够有效处理较大的初始误差。未来的研究方向包括优化算法的实时性能,并在纹理不明显的环境中进一步提升算法性能。
—END—① 全网独家视频课程
BEV感知、毫米波雷达视觉融合、多传感器标定、多传感器融合、多模态3D目标检测、点云3D目标检测、目标跟踪、Occupancy、cuda与TensorRT模型部署、协同感知、语义分割、自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码学习)
视频官网:www.zdjszx.com② 国内首个自动驾驶学习社区
近2000人的交流社区,涉及30+自动驾驶技术栈学习路线,想要了解更多自动驾驶感知(2D检测、分割、2D/3D车道线、BEV感知、3D目标检测、Occupancy、多传感器融合、多传感器标定、目标跟踪、光流估计)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频,期待交流!
③【自动驾驶之心】技术交流群
自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多模态感知、Occupancy、多传感器融合、transformer、大模型、点云处理、端到端自动驾驶、SLAM、光流估计、深度估计、轨迹预测、高精地图、NeRF、规划控制、模型部署落地、自动驾驶仿真测试、产品经理、硬件配置、AI求职交流等方向。扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)