文章:LaneLoc: Lane Marking based Localization using Highly Accurate Maps

作者:Markus Schreiber, Carsten Knoppel and Uwe Franke

编译:点云PCL

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

本文为之前分享的Road-Map中对俯视图生成点云,及点云路标地图的建图和定位。与此相关的内容分享有:

AVP-SLAM:自动泊车系统中的语义SLAM

RoadMap:面向自动驾驶的轻型语义地图视觉定位方法

其中有很多地方可以讨论交流,欢迎各位大佬赐教!同时公众号也将分享更多与此类型相关的文章,包括其引用文献,敬请期待。

欢迎自动驾驶行业的小伙伴,按照“姓名+学校/公司”备注,添加微信“ly920177957”交流或者加入群聊。

摘要

在实际交通场景中实现精确且鲁棒的定位是自动驾驶和辅助系统面临的重要挑战,一般要求的精度在几厘米的范围内。在城市地区,标准全球导航卫星系统(GNSS)无法达到这种精度,我们的新方法使用立体相机系统和包含路沿和车道标记的高精度地图来实现这一要求,高精地图是使用扩展传感器设置预先创建的,全球导航卫星系统位置仅用于初始化定位,在本系统中定位过程中不需要的,在本文介绍了定位过程,并在已知条件下对试验路道进行了评估,以及对大约50公里的乡村道路进行了长期评估,在这些道路上,精度达到厘米范围。

图1.相机图像中的贴图和重投影示例。

主要内容

A 建图

通常商用导航地图或开放式街道地图中,将道路表示为具有附加属性的连接线,但是,不会对精确的道路几何图形进行编码,因此,这里我们生成自己的地图,其中包含道路上所有可见的车道标记物和路沿,为实现地图的高可靠性并保证无异常数据,可以手动检查和控制地图数据的选定表示形式,形式上,地图由一组具有不同属性的线段组成,每个线段li由起点psi,终点pei,i和描述属性ai定义,其中psi,pei,i∈ R3(纬度、经度、高度)和ai⊂ {实心、虚线、路沿、停车线},对于虚线,每个pi指定道路上标记线段的起点和终点,停车线通常垂直于行驶方向。如图4

图4.由Velodyne激光扫描仪生成的鸟瞰图,激光雷达具有远距离测距(左)和下向摄像头,具有高分辨率的相关车道标记和路沿信息(右)。

建图和在线定位是完全分离的,使用具有扩展传感器配置的车辆进行建图,其中位置数据由高精度GNSS单元获取,并记录GNSS原始数据进行后处理,velodyne激光扫描仪提供大范围360度环境,因此,可以捕获完整的道路几何图形,包括分流道路的一部分信息,使用带有向下摄像头和广角镜头的附加配置,以获得道路表面的高分辨率图像,而不会被其他车辆遮挡,此设置还限制了驾驶时改变横滚角和俯仰角的影响,从两个传感器生成鸟瞰图,在摄像机图像上,采用车道检测算法自动提取车道标记信息,但是,由于摄像头的方向,道路上的其他车道未被覆盖,对于另一侧的其他车道线或道路边界,使用激光扫描仪生成的图像,这些图像的低空间分辨率和对比度限制了自动车道检测算法的使用,因此必须手动标记道路信息(图5)。虽然我们假设自动生成的地图的精度约为2 cm,但手动标记的车道标记位置误差增加到10 cm。图2给出了建图过程的完整概述。

图2.建图过程概述:记录数据、处理GNSS数据、生成鸟瞰图图像、提取车道标记、手动审查

图3.正在记录地图数据的车辆:配备高精度GNSS装置、Velodyne激光雷达和相机。

图5.基于Velodyne点云数据手动标记车道标线的交叉口地图

B 在线定位

Pink提出的基于车道线标记的定位是基于迭代解算器,该解算器将卫星图像生成的地图中的车道标记块匹配到相机图像中,如果有足够数量的匹配的标记,此定位将显示良好的结果,为了提高在计算时间方面的定位效率的准确性和鲁棒性,我们从车道识别的角度考虑这个问题,卡尔曼滤波器的使用保证了高度的鲁棒性,并且标记检测可以通过经过良好测试的方法来执行,与标准车道识别系统类似,我们的定位系统使用前向摄像头系统和IMU(见图6),对于初始化,使用了一个额外的GNSS单元,接下来,介绍提出了基于卡尔曼滤波的定位模型、地图匹配技术以及车道标线和路沿的测量提取。

图6.定位车辆的传感器设置,全球导航卫星系统仅用于初始化

定位模型

如图7 车辆运动模型 

车辆通过固定坐标系(X/Y)中的点位置P和方向进行描述,如图7所示。相应地,状态向量由下式给出:

根据我们提出的非线性离散系统模型f(x,u)如下所示:

车辆坐标系(X/Y)中地图点PE和测量点PM之间的残差r如图7所示。

地图点PE在静止世界坐标系中确定,要在方程式4中使用PE,必须将PE转换为车辆坐标系(X'/Y'),如下所示:

C 地图匹配

使用的地图包含车道或路沿的线段,而这里的测量值是作为点云获得的,地图匹配的目标是实现点云测量值与线段的最佳匹配,这意味着横向关联和纵向关联,这不是通过搜索测量点云和线段之间的最短距离来确定的(图8),因此,将对每个地图线段进行采样以映射到点云中(图8c)。对于每个地图点,搜索最近的测量点,以提取上述残差,这实现了横向和纵向残差。

图8.一条虚线车道标记的鸟瞰图处的三种测量连接情况;红色点表示测量值,连接/残差显示为绿线

(A) 显示是最好的情况,现实中不可能的

(B) 显示无纵向约束的最小点线距离匹配

(C) 显示与来自贴图线的采样点云的连接。

图9 沿路停车的市中心场景,自由空间以绿线显示,仅使用检测到的自由空间内的测量值(红色交叉)。

D 点云标记提取

1) 车道线:定向匹配滤波器用于检测车道标线,因为它被成功地用作常见车道检测系统中的稳健车道测量提取[8]。尽管如此,仍然存在由物体(如汽车、墙壁等)上的错误标记测量引起的问题,为了减少这一问题,我们仅评估立体视觉系统提供的自由空间中的图像区域。要检测车道线,使用当前估计值将地图投影到图像中,并在预期车道标记位置周围定位搜索线特征,定向匹配滤波器将根据图像中的标记测量在这些搜索线内识别低-高-低灰度值的图案,借助立体深度信息,将这些检测位置投影到平坦道路上。由于该投影对自运动的车辆俯仰角非常敏感,因此驾驶时俯仰角的典型变化会导致投影误差,为了解决这个问题,另外执行基于V-视差法的俯仰角估计。

2) 路沿:在论文中提出了一种在城市场景中高精度地图中识别路沿的方法,在基于分类器的识别中,使用了强度图像和高度轮廓,作为结果,获得了图像中的位置和存在的概率。图11显示了城市地区的一个示例。

图11.右侧的路沿分类。

实验

A  数据集

定位算法在两个不同的数据集上进行评估:辅助试验场地和50公里的乡村道路,第一条测试跑道是平坦测试场地上的圆形跑道,道路标线清晰可见,但缺乏路沿和其他交通工具,它用于在良好条件下证明基本功能和精度。为了获得最佳效果,地图完全自动生成,由于道路标记具有良好的可见性,因此无需进一步手动标记(图12)。

图12.自动生成的圆形球场高精地图

较大的数据集记录在德国典型的郊区,带有乡村道路的较长部分与道路沿线的小城镇和城市区域交替。路线包括典型的交叉口、环形交叉口、地下通道和隧道,全长约50公里。如图13所示。

图13.真实交通数据集的典型场景

B 地图真值

所有真值都有一个共同点,即真值数据不可用,由于遮挡、多径效应或大气干扰,全球导航卫星系统位置的测量误差超过了定位系统的要求精度,即使使用后处理的全球导航卫星系统数据,误差也大于预期精度,因此,计算的位置不能直接与全球导航卫星系统单元的位置进行比较。

C 测试评估

道路测试评估的目的是在良好条件下确定定位系统的精度,由于车道标记清晰可见,因此不存在异常值,此外,不存在其他可能阻塞标记的交通。横滚角和俯仰角的影响受到平坦地面上低速的限制,这些条件也为具有高地图精度的自动化和精确地图绘制过程提供了最佳基础,为了确定在线定位的精度,在整个轨道过程中以及在每幅图像中摄像机前方15米的测量距离内,考虑平均残差,对于测试轨迹数据集,精度达到7.0 cm,因此,结果接近假定的建图精度。

D 道路数据集的评价

较大的数据集评估是在实际交通场景中的白天条件下进行的,事先为该路线创建了地图,定位系统已在50公里路线开始时通过全球导航卫星系统定位系统进行初始化,在整个驾驶的剩余路段,不再使用GNSS,需要指出的是,没有必要重新初始化。

图14.以厘米为单位的平均残差测量直方图。该图显示了完整数据集上的测量残差直方图,将所有测量值视为15米的距离,以确定以厘米为单位的平均残差(通过立体重建获得)

图15.左侧(蓝色)和右侧(红色)的平均残差测量值直方图,单位为厘米

总结

在该方法中,提出了一种使用高精度地图(包括可见车道线和路沿)进行精确和鲁棒定位的新方法,众所周知的道路标记和路沿检测器用于在线检测车辆中的标记和路沿,并将其与地图匹配,定位系统仅使用立体双目系统和车辆的IMU数据,因此,现代高级车辆已经配备了所有必要的传感器,这些系统在农村条件下运行良好,在这里可以达到几厘米的精度,这足以自动驾驶,由于定位精度在地图精度范围内,因此未来的工作将集中于改进地图绘制过程,使用新的摄像系统,可以获得更高分辨率和范围的图像,并可以取代低分辨率的Velodyne数据。

资源

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

【点云论文速读】基于激光雷达的里程计及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文档,和更多热爱分享的小伙伴一起交流吧!

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

扫描二维码

关注我们

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

分享及合作方式:微信“920177957”(需要按要求备注) 联系邮箱:dianyunpcl@163.com,欢迎企业来联系公众号展开合作。

点一下“在看”你会更好看耶

LaneLoc:基于高精地图的车道线定位相关推荐

  1. 浅析基于高精地图的车路协同智能交通系统

    谈及 "车路协同",恐怕除了专业人士,绝大多数人未必听说过这个名词.实际上,"车路协同"是近年以下两大技术概念相结合能否实现 1+1>2 作用中重要的一环 ...

  2. 基于自适应逆透视变换的车道线SLAM

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

  3. 智能网联汽车高精地图白皮书(2020)

    1. 前言 高精地图的发展与智慧交通.智能网联汽车紧密相关,从智能网联汽车上路伊始,高精地图产业就应势而生并飞速发展.相对于以往的导航地图,高精地图是智能网联汽车交通的共性基础技术,其服务的对象并非仅 ...

  4. 高精地图,比想象更重要

    写在前面:自动驾驶是IT领域很重要的一个产业趋势.自动驾驶覆盖的产业链环节较多,涉及到计算机.电子.汽车.通信等多个行业.我们一个比较粗糙的判断是,未来的自动驾驶汽车就是一个IT产品.IT产品很重要的 ...

  5. 高精地图与自动驾驶(下)

    高精地图与自动驾驶(下) 二.高精地图与自动驾驶 谈到高精地图对自动驾驶的作用,可以对比自动驾驶和人类驾驶的流程的相通性. 人驾驶的时候以眼睛为主,耳朵辅助观察测量环境:自动驾驶车用多种传感器包括摄像 ...

  6. Apollo进阶课程 ⑥ | 高精地图与自动驾驶的关系

    目录 1)高精地图与自动驾驶 2)什么是高精地图 3)高精地图与导航地图 4)高精地图---无人驾驶的核心基础模块 5)高精地图与定位模块的关系 6)高精地图与感知模块的关系 7)高精地图与规划.预测 ...

  7. 自动驾驶--高精地图技术

    [摘录自百度技术培训中心的课程](https://bit.baidu.com/productsBuy?id=69) 高精地图的定义与价值 高精地图是普通导航地图的一种,数据精度在厘米级,数据要素更加精 ...

  8. 模型实践 | 高精地图构建模型HDMapNet助力更精准的自动驾驶

    实验 | Freja   算力支持 | 幻方AIHPC 高精地图是自动驾驶系统的关键模块,可以有效提升自动驾驶汽车的行驶安全度,强化自动驾驶系统的整体感知能力和决策能力.然而传统的高精地图构建流程复杂 ...

  9. 百度Apollo智能驾驶进阶课程——第四章 百度Apollo高精地图

    高精地图 1 高精地图与自动驾驶的关系 1.1 高精地图与自动驾驶 1.2 什么是高精地图 1.3 高精地图与导航地图 2 高精地图与其他模块的关系 2.1 高精地图与定位模块的关系 2.2 高精度地 ...

最新文章

  1. visio 画类图时 方法里如何加参数
  2. 汇总|计算机摄影学资源,涉及视频、书籍以及国内外著名实验室
  3. SCCM2012之客户端发现与安装
  4. VC屏幕截图并保存为bmp文件
  5. 要是想让程序跳转到绝对地址是0x100000去执行
  6. python写剧情文字游戏_文字游戏引擎试用心得之一:Ren'py 和 Fungus
  7. linux 常见命令 cp,Linux 常用命令之cp,一个可以煮饭的工具;
  8. “我恨Google无人车”
  9. Nginx常用命令介绍
  10. 【牛客练习赛58-C】矩阵消除游戏(dfs+状态标记)
  11. SAS笔记#SAS中的SQL语言
  12. mysql proxy maxscale_通过Maxscale代理,实现MySQL读写分离
  13. 也许尘埃落地,我们才能心平气和谈谈抖音多闪和聊天宝
  14. PTA 发布关于巴基斯坦境内允许的频段和输出功率限制新规
  15. Cortex-M核心寄存器
  16. 难得一读的古老的俗话
  17. 互联网早报:腾讯内测游戏社交 App“NokNok”,对标 Discord
  18. 从零基础到拿到网易Java实习offer,我做对了哪些事
  19. 菜鸟成长手册:路由器技术深入剖解
  20. 二、RPA机器人开发基础

热门文章

  1. 2022-2023年度必备宇宙最全Windows系统软件清单
  2. Eclipse安装STS
  3. 淘宝直通车提取数据“_h”值 最新生成方案(2020.11.27)
  4. VNT6656G无线网卡在mini2440 上的移植
  5. DMOZ分类目录对网站推广的作用
  6. 应用案例 | 2014款宝马116i车偶尔冷车难起动
  7. k8s修改默认命名空间
  8. 简单有趣的互动小游戏介绍:好玩的密室脱逃H5互动小游戏
  9. U盘启动晨枫U盘维护工具V2.0版
  10. [转]Google Linux Cluster的系统结构分析(余一娇)