分享

基于先验时间一致性车道线的IPM相机外参标定

 点云PCL 2021-06-16

文章:Online Extrinsic Camera Calibration for Temporally Consistent IPM Using Lane Boundary Observations with a Lane Width Prior

作者:Jeong-Kyun Lee, Young-Ki Baik, Hankyu Cho, and Seungwoo Yoo

编译:点云PCL

本文仅做学术分享,如有侵权,请联系删除。欢迎各位加入免费知识星球,获取PDF论文,欢迎转发朋友圈。内容如有错误欢迎评论留言,未经允许请勿转载!

公众号致力于分享点云处理,SLAM,三维视觉,高精地图相关的文章与技术,欢迎各位加入我们,一起每交流一起进步,有兴趣的可联系微信:920177957。本文来自点云PCL博主的分享,未经作者允许请勿转载,欢迎各位同学积极分享和交流。

摘要

本文提出了一种对相机的在线外参标定的方法,即在连续的驾驶场景图像中,从路面信息估计俯仰角、偏航角、横滚角和摄像机高度。该方法分两步估计相机的外部参数:

1)利用一组车道线观测值计算的消失点同时估计俯仰角和偏航角;

2)通过最小化车道宽度观测值和车道宽度先验值之间的差异来计算横滚角和摄像机高度。利用扩展卡尔曼滤波(EKF)对摄像机外部参数进行连续更新,最后利用逆透视映射(IPM)生成时间一致的鸟瞰图(BEV)。该文章证明了该方法在合成和真实数据集上的优越性。

介绍

近年来,随着先进的驾驶辅助系统(ADAS)和自动驾驶(AD)的应用,基于相机的视觉感知的研究得到了广泛的应用。许多研究主要集中在从前置摄像头采集的输入图像中检测相邻物体和驾驶环境,如车道边界检测、交通标志检测、目标检测与跟踪等。特别是对于路面标志线,主要采用逆透视映射(IPM),因为它们受摄像机透视失真的影响更大。给定摄像机与路面的几何关系,即摄像机的外部参数,可以将输入图像转换为鸟瞰图像,从而保持路面标线的实际形状,提高检测性能。此外,在单目相机系统中,外部相机参数被广泛用于估计目标的距离,并通过生成增强的特征来提高目标检测的性能。

对于单目相机的外参的标定,可利用在驾驶场景中连续的图像序列进行在线外部相机标定。他们使用视觉里程计或车道边界消失点(VP)估计的相机运动来更新相机的外参数,并生成显示平行车道边界的BEV图像。然而,这些工作并没有纠正所有的外在相机参数。它们只更新俯仰角和偏航角,因此,当横滚角和相机高度发生变化时,它们仍然可以生成BEV图像,但是路面波动和比例(如车道宽度和对象之间的距离)不一致。

本文提出了一种在线非本征相机标定方法,该方法可以估计连续驾驶场景图像中俯仰角、偏航角、横滚角和摄像机离路面高度等几何关系。据我们所知,这是第一个以在线方式同时计算所有四个外部相机参数的工作。该方法分两个阶段估计摄像机的外参:

1)俯仰角和偏航角,

2)横滚角和摄像机高度。

俯仰角和偏航角是使用一组车道边界观测值计算的VP同时估计的。然后,给定车道宽度作为先验,通过最小化车道宽度观测值和先验车道宽度之间的差异来计算横滚角和摄像机高度。所提出的方法使用扩展卡尔曼滤波(EKF)更新序列图像中相机的外参,以便产生如图1(c)所示的时间一致的IPM结果。

图1 这是一个改进的例子,我们的在线外参标定的驾驶场景图像(a),

(b) 和(c)分别是应用我们的方法之前和之后利用相机外参通过IPM获得的BEV图像。

主要内容

我们提出了一种在线的相机外参标定方法,即从路面估计俯仰角、偏航角、横滚角和相机机高度,从而产生时间一致的IPM结果。我们假设摄像机是知道内参,路面是平坦的,路面上所有的车道边界是平行的,并且车道宽度与之前的车道宽度相同。

图2示出了所提出的方法的整体过程。首先,我们使用基于完全卷积网络的分割模型从输入图像中提取车道边界观测值。由于平行车道边界的VP只依赖于俯仰角和偏航角,并且对横滚角和摄像机高度的变化是不变的,因此我们从一组平行车道边界中找到一个VP,并使用VP(消失点)估计俯仰角和偏航角。然后,我们计算横滚角和摄像机高度,使车道宽度观测值和作为先验。最后,利用更新后的相机的外参计算IPM。

图2 本文提出的方案的流程

俯仰和偏航角估计

如论文中所述,我们将俯仰角和偏航角估计转换为寻找摄像机和路面上平行车道边界的VP之间的旋转关系,如图3所示。

图3  俯仰和偏航角估计    (a)相机和世界坐标系,(b) 和(c)分别是俯仰角和偏航角的定义。

C和W分别表示相机坐标系和世界坐标系。让我们将W世界坐标系的z轴定义为VP的方向,即VD(消失点方向)。然后,俯仰角和偏航角可以定义为如图3(b)和图3(c)所示的摄像机的前进方向和VD之间的角。这里采用了基于高斯球理论和RANSAC的鲁棒VP估计方法,因为车道边界观测可能有噪声。利用VP对俯仰角和偏航角进行初始化后,利用EKF对序列图像进行估计。

高斯球

在针孔相机模型中,以相机主点为中心的单位球称为高斯球。如图4所示,一个大圆是图3(a)(b)(c)的交点。俯仰和偏航角估计(a) 相机和世界坐标系(b) 和(c)分别是俯仰角和偏航角的定义。图4。描述高斯球和高斯球平面上的一条直线所确定的图像和主点。当平行线投影到像面上时在VP处相交,平行线对应的大圆在高斯球面上有一个交点,从主点到交点的方向变为VD。VD是由所有大圆法线(NGCs)确定的平面法向量,我们称之为NGC-VD正交性。正交性与图像平面中的线VP入射相同,即图像平面中的平行线入射到VP

图4 高斯球的描述

消失点估计

估计我们假设一组表示车道边界的线是给定的。该集合通常包含一些噪声线或离群点,因此我们使用RANSAC过滤掉离群点,然后估计对噪声线鲁棒的VP。当给定一组线段L时,RANSAC过程可描述为算法1。

俯仰和偏航角初始化

俯仰角和偏航角用θ 以及φ, 分别。由俯仰角和偏航角计算的旋转矩阵,即从世界坐标到相机坐标的变换矩阵,用RCW表示(θ, φ) 世界坐标系W中z轴的方向向量用dWZ=[0,0,1]>表示。那么dWZ和v有如下关系

我们可以将旋转矩阵分解为两个旋转矩阵,矩阵θ 以及φ 如下所示。

其中cθ 和sθ (cφ 和sφ) 是余弦和正弦函数θ (φ). 那么θ 以及φ 从v初始化。如下所示。

基于EKF的俯仰角和偏航角估计

我们使用EKF来估计图像序列中的俯仰角和偏航角。采用恒角速度模型来模拟驾驶过程中俯仰角和偏航角的变化。因此,用于俯仰和偏航角估计的状态向量X_py和系统模型f_py被定义为

横滚角和摄像机高度估计

由于投影特性和观测车道边界与摄像机外参数之间的非线性几何关系所产生的几何信息不足,利用车道边界的二维投影作为观测值标定横滚角和摄像机高度的方法更加复杂。为了简化,我们假设俯仰角和偏航角已经进行了修正。然后,可以将横滚角和摄像机高度估计视为计算其在xy平面上的近似值,如图6所示。通过将路面和l线投影到xy平面上,可以估计出路面与直线交点之间的距离应等于wp之前车道宽度的横滚角和摄影机高度值。

图6 横滚角和相机高度估计。(a) 横滚角和相机高度的定义。(b) 车道宽度的定义。(c) 线角度的定义。

主要有两步:

A 横滚角和相机高度初始化

B 基于EKF的滚动角和相机高度估计

逆透视变换

最后时间一致的IPM是可能的与相机外参数估计θ, φ, ψ, 和h。从摄像机坐标到世界(或地面)坐标的单应矩阵hwc计算如下。

其中aX和aZ是决定BEV图像分辨率的尺度参数,bX和bZ是世界坐标系中X轴和Z轴的尺寸参数,Rri是矩阵R的第i行(θ, φ, ψ) 计算公式为

实验

a) 车道边界检测:为了获得车道边界观测,这里采用了基于完全卷积网络的分割模型。分割模型在每个语义车道边界都有自己的类的情况下进行多类分割。我们使用ResNet-18作为骨干,并采用标准SGD方法进行训练,并具有交叉熵损失。如图7所示,分割模型通过生成每个语义车道的像素概率图来提供每个语义车道边界实例。然后,对于概率大于0.5的每个车道边界,我们通过搜索像素上的平均位置,然后采样代表点以供下次使用来提取顶点。

图7 分割模型的结果。
(a) 输入图像。
(b) 分割模型输出,其中每个颜色表示每个语义车道边界实例。

图8 在线非本征摄像机标定结果没有车道边界检测的合成场景中的噪声σ2 = 1. 左右图分别显示了该方法产生的输入图像和它们的BEV图像

b) 数据集:使用图8和图9的多个合成和真实世界数据集来评估所提出的方法。

我们在真实场景中在线外参标定的结果。在每个三组图像中,上、左下和右下图像分别显示输入图像、基于给定外部相机参数的BEV图像和基于所提出方法更新的BEV图像。在输入图像中,红色顶点和绿色线来自车道边界检测。

综合数据集中的评估

表一显示了在合成数据集中评估的结果。rmse与噪声方差成比例增加,但旋转角度和相机高度估计的rmse分别小于0.2度和2厘米,即使在存在严重噪声的情况下σ 2=9像素。此外,该方法生成的两帧BEV图像在时间上是一致的,尽管存在运动变化和噪声。总之,该方法在合成数据集上表现良好。

总结

本文提出了一种基于车道宽度先验知识的基于车道边界观测的非本征摄像机在线标定方法。该方法分两步估计摄像机与路面的几何关系,即首先估计基于VP的俯仰角和偏航角,然后基于车道宽度的一致性,利用前一步的俯仰角和偏航角估计侧倾角和摄像机高度。通过EKF,我们的方法最终得到了波动较小、车道宽度相等的时间一致的BEV图像。

资源

三维点云论文及相关应用分享

【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法

3D目标检测:MV3D-Net

三维点云分割综述(上)

3D-MiniNet: 从点云中学习2D表示以实现快速有效的3D LIDAR语义分割(2020)

win下使用QT添加VTK插件实现点云可视化GUI

JSNet:3D点云的联合实例和语义分割

大场景三维点云的语义分割综述

PCL中outofcore模块---基于核外八叉树的大规模点云的显示

基于局部凹凸性进行目标分割

基于三维卷积神经网络的点云标记

点云的超体素(SuperVoxel)

基于超点图的大规模点云分割

更多文章可查看:点云学习历史文章大汇总

SLAM及AR相关分享

【开源方案共享】ORB-SLAM3开源啦!

【论文速读】AVP-SLAM:自动泊车系统中的语义SLAM

【点云论文速读】StructSLAM:结构化线特征SLAM

SLAM和AR综述

常用的3D深度相机

AR设备单目视觉惯导SLAM算法综述与评价

SLAM综述(4)激光与视觉融合SLAM

Kimera实时重建的语义SLAM系统

SLAM综述(3)-视觉与惯导,视觉与深度学习SLAM

易扩展的SLAM框架-OpenVSLAM

高翔:非结构化道路激光SLAM中的挑战

SLAM综述之Lidar SLAM

基于鱼眼相机的SLAM方法介绍

如果你对本文感兴趣,请后台发送“知识星球”获取二维码,务必按照“姓名+学校/公司+研究方向”备注加入免费知识星球,免费下载pdf文档,和更多热爱分享的小伙伴一起交流吧!

以上内容如有错误请留言评论,欢迎指正交流。如有侵权,请联系删除

扫描二维码

                   关注我们

让我们一起分享一起学习吧!期待有想法,乐于分享的小伙伴加入免费星球注入爱分享的新鲜活力。分享的主题包含但不限于三维视觉,点云,高精地图,自动驾驶,以及机器人等相关的领域。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多