一文详解高精地图构建与SLAM感知优化建图策略
点击上方“3D视觉工坊”,选择“星标”
干货第一时间送达
作者 | Aimee
高精度地图对自动驾驶系统功能研发的影响已经越来越明显,整体上来讲主要包含但不仅限于提升车端感知性能、拓展自动驾驶新功能、动态建图等相关应用。具体体现在如下几个重要方面:
应用总述 |
提升车端感知性能 |
拓展新功能 |
动态建图与应用 |
详述 |
• 补充车道线识别结果,通过重投影补齐车道线 • 提升TSR(交通标志识别)识别功能,涵盖多种特殊类别 • 获取复杂驾驶场景信息(收费站、路口等复杂路况的先验感知) • 提供车道与交通要素(红绿灯、标志牌、路面箭头)的对应关系 |
• 自动切换车道 • 对行驶较慢车辆的自动超越 • 智能设定巡航车速 • 匝道的自动驶入和驶离 |
• 高精地图元素更新 • 冷启动从0-1建立全路网高精地图 • 自建局部“记忆地图”,支持记忆泊车、园区记忆式自动驾驶 • 事件型动态信息采集与上报(施工、拥堵、事故等) |
如上所述提升车端感知能力是通过先验感知的高精度定位引入地图信息补充获取车道线、交通标志等交通要素从而提供超距感知:不受距离、遮挡的限制。同时,通过提供车道与交通要素(交通标志、交通灯、路面箭头)的对应关系,获取复杂路况先验信息。
地图作为智能驾驶唯一的超距传感器,突破空间、时间的限制,可以说地图是通过定位实现的智能驾驶的“知识图谱”。高精度定位本质上是“知识图谱读取”,高精度建图可以实现“知识记忆”实时更新。通过高精度匹配定位引入地图从而获取环境信息,为车辆提供超传感器距离的感知能力,拓展多种复杂功能场景ODD,是ADAS系统向高级别智能驾驶演变的核心。总体来说,通过高精度匹配定位引入地图获取环境信息,可以拓展多种复杂功能场景自动驾驶设计运行使用范围。
高精地图众包采集方案
动态高精地图的本质是实时交通数据信息的时空载体,众包数据是高频更新的核心。众包更新能够将地图更新的时间压缩到分钟级,高精地图实时构建与动态信息观测采集,构建起未来智能网联汽车数据生态系统。
高精地图模型分为四个图层,每个图层更新的频率不同,可以支持不同功能应用场景。图商采取分级采集的方案,满足高精地图不同图层的更新需求,主要包含如下几种采集方案:
专业采集:通过高精地图底图,每月更新一次,其精度为10cm;
行业众包采集:其地图更新、施工、交通管制信息等按照每小时更新,精度50cm左右;
社会众包采集:包含基于底图坐标的准实时更新、车流量、人流量、天气等。按照每分钟/每秒更新一次,精度米级;
如上图中,地图基础建图中有多种方法。其中,GPS 导航适合于室外空旷驾驶道路中的移动车辆,在封闭场景(如隧道、山路等)中 GPS 的信号较弱,无法用于移动机器人的定位导航。惯性导航主要是依赖惯性测量单元和轮式编码器来构建一个惯性里程计,增量式地确定移动车辆的位置。惯性里程计一定程度上能够满足机器人自主定位的需求,且不需要额外的对环境进行改造,但由于惯性传感器和轮式编码器都存在漂移的问题,且漂移误差会随着时间累积,一段时间后车辆就无法准确确定自己的位置。为了能够实现车辆在未知的道路环境中准确的定位,SLAM 问题就这样被提了出来。
近年来,利用传感器感知信息作为建图的基础已经越来越得到行业内的重视和关注,其中SLAM 技术作为一种即时定位与地图构建方法,作为移动车辆实现自主定位与导航的核心,它要求自车在一个未知的环境中在不知道自己位置的先验信息的情况下,增量式地构建具有全局一致性的地图,同时确定自身在这个地图中的位置。这一过程是通过车身传感器来获取周围环境的信息,依靠这些信息一边确定自车的位置,一边构建环境的地图。目前 SLAM算法常用的传感器有激光雷达和相机,分别对应了激光 SLAM 算法和视觉 SLAM算法。
详细的SLAM建图构建算法概述
SLAM 是一个庞大的理论体系,涉及传感器处理、贝叶斯滤波、非线性优化、地图的表示、图形处理等各方面的相关理论。早期 SLAM 的基本理论是以扩展卡尔曼滤波(Extended Kalman Filter,EKF)为代表的滤波方法为主。
如下图所示表示了一种典型的 SLAM 系统建图方法,系统主要由前端(front-end)和后端(back-end)两个部分组成,前端根据传感器观测到的环境信息估计车辆的位姿,然后将车辆的位姿信息传递给后端进行优化估计,得到具有全局一致性的地图,最后得到整体的 SLAM 估计。SLAM 的前端算法包括了特征提取和数据关联两部分。特征不但可以用来确定机器人的位置,而且可以用来进行闭环检测,从而构建具有全局一致性的环境地图。因此特征提取是 SLAM 研究中非常重要的一个环节。
目前在 SLAM 的研究中,前端主要是以滤波的方法获得车辆位姿的更新信息,后端则大多是基于优化的方法对机器人全局的位姿和地标信息进行优化。
基于视觉感知的SLAM基础建图构建
在SLAM算法构建中,前视摄像头/激光雷达化身“智能采集终端”,众包生产“动态高精地图数据”,动态高精地图的本质是实时交通数据的时空载体,众包数据是高频更新的核心。主要通过如下几个步骤进行实时建图:
1)实时构建高精度地图:即基于视觉或激光点云数据建图,并与云端融合冷启动从0-1构建全路网高精地图提升高精地图“广度”。
2)更新高精地图元素:通过要素关联与变化检测发现地图元素的变化并实时更新,以确保高精地图的“鲜度”;
3)自建 “ 记忆地图 ”:通过自建局部记忆地图支持记忆泊车、园区记忆式自动驾驶“记忆地图”提升驾驶体验;
4)上报事件型动态信息:通过事件型动态信息采集与上报(施工、拥堵、事故等)构建高精地图“动态信息层”。
如上图表示了一种典型的视觉SLAM技术方案框图,其中整个智能驾驶摄像头(包含前视、侧视、环视以及后视摄像头等)形成SLAM的输入数据端,使用单目相机的 SLAM 称为单目视觉 SLAM,单目相机使用一个摄像头进行移动机器人的定位,由于单目摄像头只能获取周围环境的二维信息,无法给出物体的深度信息,因此会带来尺度不确定的问题。使用双目相机的 SLAM 称为双目视觉 SLAM,也称为立体视觉 SLAM,它可以通过比较两个摄像头图像的差异判断物体的远近,获得物体的深度信息。通过中央处理器对输入图像进行感知、分割、检测、跟踪等操作,输出给导航网络端进行语义建图及匹配定位,同时通过目标识别形成相应的ADAS系统目标属性。最后分两方面进行输出:其一是通过太网连接高精地图盒子,其接收到相应的局部地图建图结果后,更新地图底图。其二是通过输出给MCU(微处理器单元)进行融合定位及车辆控制。这里需要注意的是MCU通过CAN网络也接收了诸如GNSS、IMU等相关信息,并输入给AI芯片进行建图优化和确认。
同时,先进的SLAM方案通过云端多源 V2X 感知部署,打造安全出行解决方案。一方面,通过创新模式与路方合作,利用既有道路信息基础能力,有效整合路侧信息,通过个体级车辆的交通场景感知算法,实施云端 V2X 信息处理,通过导航地图优势,为实时建图提供统一入口。另一方面,由于车路协同系统中将产生大量数据采集和处理,为进一步挖掘相关数据价值,提升智慧出行效率。基于大数据和人工智能能力,可以对相关数据进行人工智能模型训练,从而进一步提高建图能力,优化建图精度。如下图是一种典型的将云端数据纳入到建图过程中的例子。
基于激光雷达的SLAM基础建图构建
除了如上所述的视觉SLAM建图以外,还包括了激光雷达数据建图。激光雷达虽然比相机要贵很多,但因其测量精度高,测量性能稳定,目前在工业中应用更加广泛。激光雷达不能直接给出车辆的位置变化,但它能提供周围物体的距离信息,可以用于车辆的实时定位、避障等场合。
早期的激光雷达主要是利用三角测距的原理进行测距,后来发展出基于飞行时间法(Time Of Flight,TOF)测距原理的激光雷达。TOF 测距原理比较简单,通过记录激光从发射出去到被接收所经历的时间可以计算出激光所走过的距离,从而得到激光雷达周围环境的距离信息。
针对激光雷达和相机,目前都已经有很多非常知名的开源算法的实现。在激光 SLAM 领域目前的很多开源算法都是使用 2D 激光雷达实现 SLAM。如谷歌公司在 2016 年开源的Cartographer SLAM 算法是一个跨平台的激光 SLAM 方案,能够同时实现 2D 激光和 3D 激光的实时 SLAM。在视觉 SLAM 领域也出现了许多优秀的开源方案。如Davison 等人在 2007 年提出的单目视觉 SLAM 系统 MonoSLAM 是第一个实时的单目 SLAM,它以扩展卡尔曼滤波为基础,把相机的当前状态和所有路标的信息作为状态量来更新均值和协方差信息。SLAM 的理论在国外发展的比较早,理论比较成熟,国内在这方面起步比较晚,大部分研究都集中在 SLAM 的工程应用上,重点解决工程应用中的一些实际问题。SLAM 的前端算法包括了特征提取和数据关联两部分。特征不但可以用来确定机器人的位置,而且可以用来进行闭环检测,从而构建具有全局一致性的环境地图。因此特征提取是 SLAM 研究中非常重要的一个环节。
激光雷达扫描后会获得一组由环境中的物体反射回来的点云,对于激光雷达的扫描点云,常用的特征有点、线段、平面等。点特征是日常环境中常见的一种特征,通常会从环境中提取角点、交叉点或墙的端点等一些特殊的点作为特征点。线段特征是室内移动机器人定位、导航时广泛使用的一种特征,它在结构化环境中容易获取,特征之间也容易建立约束,对激光雷达的数据关联和闭环检测来说都是一种非常好的特征。面特征主要应用于室外环境中 3D 激光雷达扫描匹配,如无人车行驶在城市环境中可以利用 3D 激光雷达提取到大量的曲面和平面特征来定位。由于线段特征具有容易识别、鲁棒性好等优点,在 2D 激光 SLAM 中应用比较广泛。下面将对激光雷达点云建图中一种基本的线段拟合防范进行简单说明。
如上图表示激光雷达扫描得到的点云离散数据,针对线段特征提取的主流方法主要是采用分割-合并方法(Spilt-and-Merge,SM),且许多线段特征的提取方法都是分割-合并方法的变形。分割-合并的基本过程就是对点云进行聚类,聚类过程中分别设定一定的阈值进行分割-合并-分割-合并依次循环的过程,从而实现线段的有效提取。
在分割阶段,首先从给定的点集中拟合出一条直线。然后找出点集中到拟合直线距离最远的点,计算该点到拟合直线的距离作为拟合误差,如果拟合误差大于设定的距离阈值,则从点集中按照某种规则找出一个点,将直线从该点处进行分割。不断重复这个过程直到拟合误差小于设定的距离阈值则不再分割。在合并阶段,如果相邻的两条线段的拟合误差小于距离阈值,就将这两条相邻线段合并成一条线段。
总结
激光 SLAM 发展至今已经有比较丰富的理论研究成果,激光测距的原理比较简单,测量精度高,测量距离比较远,稳定性、可靠性也都比较高,但其成本较大,目前激光雷达有向低成本发展的趋势。但在实际的应用中仍然存在定位精度不够、地图构建不准确等问题,给机器人执行相关任务带来了一定的障碍。与激光雷达相比,相机的成本要低很多,且能提供更多的信息,也更能满足人们对机器人的想象。但目前相机仍存在着测量范围小、测量噪声大、易受日光干扰等问题。视觉定位与建图带来的驾驶功能提升使得视觉定位在单车视觉感知局限得以解决
本文仅做学术分享,如有侵权,请联系删文。
下载1
在「3D视觉工坊」公众号后台回复:3D视觉,即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。
下载2
在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总,即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。
下载3
在「3D视觉工坊」公众号后台回复:相机标定,即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配,即可下载独家立体匹配学习课件与视频网址。
重磅!3DCVer-学术论文写作投稿 交流群已成立
扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。
同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。
一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。
▲长按加微信群或投稿
▲长按关注公众号
3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近3000星球成员为创造更好的AI世界共同进步,知识星球入口:
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、可答疑解惑、助你高效解决问题
觉得有用,麻烦给个赞和在看~
一文详解高精地图构建与SLAM感知优化建图策略相关推荐
- 高精地图构建与SLAM感知优化建图策略
高精度地图对自动驾驶系统功能研发的影响已经越来越明显,整体上来讲主要包含但不仅限于提升车端感知性能.拓展自动驾驶新功能.动态建图等相关应用.具体体现在如下几个重要方面: 如上所述提升车端感知能力是通过 ...
- 模型实践 | 高精地图构建模型HDMapNet助力更精准的自动驾驶
实验 | Freja 算力支持 | 幻方AIHPC 高精地图是自动驾驶系统的关键模块,可以有效提升自动驾驶汽车的行驶安全度,强化自动驾驶系统的整体感知能力和决策能力.然而传统的高精地图构建流程复杂 ...
- 一文详解基于先验地图的视觉定位
作者丨cc.fy@知乎 来源丨https://zhuanlan.zhihu.com/p/460001686 编辑丨3D视觉工坊 问题定义 给定一份高精度地图或环境模型,给定相机(不限于单目,双目,多目 ...
- 业内首发车道级导航背后——详解高精定位技术演进与场景应用
导读 10月30日,华为联合高德.千寻发布了业内首家面向手机用户的车道级导航应用.在这背后是高精度定位技术不断演进发展,最终走向成熟量产的过程.本文将结合高德地图在车道级导航及自动驾驶等领域的工作,分 ...
- 二、Apollo高精地图详解(2. 高精地图的采集、生产与格式规范)
2. 高精地图的采集.生产与格式规范 高精地图的采集--传感器 传感器 原理 备注 GPS 确定四颗或者更多卫星的位置并计算出GPS接收设备与每颗卫星之间的距离,然后用这些信息使用三维空间的三边测量法 ...
- 智能网联汽车高精地图白皮书(2020)
1. 前言 高精地图的发展与智慧交通.智能网联汽车紧密相关,从智能网联汽车上路伊始,高精地图产业就应势而生并飞速发展.相对于以往的导航地图,高精地图是智能网联汽车交通的共性基础技术,其服务的对象并非仅 ...
- 面向自动驾驶的高精地图及数据采集生产体系
前言:又到春招季!作为国民级出行服务平台,高德业务快速发展,大量校招/社招名额开放,欢迎大家投递简历,详情见文末.为帮助大家更了解高德技术,我们策划了#春招专栏#的系列文章,组织各业务团队的高年级同学 ...
- self_drive car_学习笔记--第7课:HD MAP高精地图 V2X
前言:这节课主要介绍高精地图相关知识.个人水平有限,有理解错误地方,欢迎大大们批评指出. CONTENTS: 1. HD MAP OVERVIEW[高精地图介绍] 2. OPENDRIVE PROTO ...
- 高精地图中导航标识识别
高精地图中导航标识识别 思路 主要介绍高精地图导航标识识别上的技术演进,这些技术手段在不同时期服务了高精地图产线需求. 高精地图介绍 当你开车导航的时候,导航地图会向我们推荐一条或几条路线,有些地图甚 ...
- Apollo自动驾驶入门课程第②讲 — 高精地图
目录 1. 高精地图与传统地图 2. 高精地图与定位.感知规划的关系 2.1 高精地图用于定位 2.2 高精地图用于感知 2.3 高精地图用于规划 3. Apollo高精度地图与构建 3.1 Apol ...
最新文章
- linux LVM的创建和管理
- 寻找U2OS中表达的基因及其promoter并用于后续annotation
- 《移山之道》第十一章:两人合作 读书笔记 PB16110698 第六周(~4.15)
- (转ORCLE导入导出命令)
- 字节跳动开发者工具_FAQ | 字节跳动小游游戏发布常见问题汇总
- java多线程之Executor框架
- 互亿无线短信平台接口java实现
- 红米6pro刷Android原生,红米6 Pro 魔趣OS 安卓9 MagiskV21版 完美ROOT 纯净完美 原生极简 纯净推荐...
- 防火墙、waf、ips和ddos的部署
- spring boot整合elk
- 文件访问被拒绝XXX 你需要权限才能执行此操作你需要计算机管理员提供的权限才能对此文件进行更改
- 3D动画制作太复杂?谷歌推出MonsterMash,绘画小白都能用
- win10分区工具下载
- 2029年会实现通用人工智能吗?
- Vue - 适配iPhoneX微信浏览器
- Memcached快递上手之C#
- ndk开发(二)JNI、java互调
- 楼天成 男人八题 多重背包问题O(VN)
- CF891E Lust(推式子,EGF)
- 简单体验 Windows XP Service Pack 3 简体中文版
热门文章
- cad无法安装_装机必备!免安装CAD迷你看图特别版PC软件
- 音频3A测试 AGC自动增益测试
- android模拟器directx,DX千骑驱动器模拟器
- mysql关联查询关键字_MySQL数据高级查询之连接查询、联合查询、子查询
- MTK modemlog分析
- 修改 mysql 的默认端口号_mysql的默认端口号修改方法
- leetcode题目总结
- 微信公众号扫码登录(一)—— 获取微信公众号二维码
- CorelDRAWX4的VBA插件开发(三十六)调用C++实现一键智能群组(第5节)导出动态链接库并在VBA中静态调用
- 计算机样式的ppt,计算机应基础使用样式修饰页面.ppt