当前位置: 代码网 > it编程>软件设计>算法 > 在自动驾驶企业摆脱高精地图依赖的情况下,SLAM算法在自动驾驶行车过程中还有什么意义?

在自动驾驶企业摆脱高精地图依赖的情况下,SLAM算法在自动驾驶行车过程中还有什么意义?

2024年08月03日 算法 我要评论
传统高精地图制作与使用以谷歌和百度等第一波发展自动驾驶的企业为代表,其地图数据的采集主要利用测绘车获取环境数据并大体上按照上文中提及的制作流程完成高精地图的“生产”,可见:“过度依赖专业测绘车”、“人工标注成本和工期”和“应用资质”造成了高精地图生产的高昂成本,由此限制了其大规模的应用。为了缓和上述的约束条件,

在自动驾驶企业摆脱高精地图依赖的情况下,slam算法在自动驾驶行车过程中还有什么意义?

引言

在讨论自动驾驶及其相关技术的过程中,时常会遇到以下这几个观点:“自动驾驶技术偏感知”、“自动驾驶中是lidar方法有优势?还是视觉方案更优?”、“自动驾驶企业中感知岗位机会和待遇都不错”、“自动驾驶到底需不需要高精地图?”等,以上问题的讨论、回复和解答在网络上大都能一一对应地找到,但大多数的讨论和回答本人认为是缺乏一些 “系统大局视角” 和 “相似领域间的横向对比” 分析的,大部分的内容仅仅只是让读者们“知其然”而难以“明其所以然”。

恰巧本人在工作后接触了“移动机器人工业”和“自动驾驶工业”中定位建图技术的应用,故而本人将依据个人经验和理解,尝试从两个角度:

  1. 自动驾驶中的高精地图;

  2. slam算法在移动机器人和自动驾驶中的工业实现侧重点异同

来分析、讨论在 自动驾驶企业摆脱高精地图依赖的情况下,slam算法在自动驾驶行车过程中的意义。 文章结构是在第一节内容将讨论移动机器人自动导航和自动驾驶所使用的地图差异,第二节简述自动驾驶领域使用到的slam相关技术,随后在第三节讨论 “自动驾驶企业为何想摆脱对高精地图的依赖?”这个议题,最后在文末给出本人对“slam算法在自动驾驶中的意义”的理解。

文中内容、观点如有错误和不当,还请大家批评指正。

1、地图:高精地图?栅格地图?

在讨论移动机器人自动导航技术中的建图定位时,所构建的地图往往指的是 (占概率)栅格地图 ,此类栅格地图所能表达的内容十分有限:障碍物与边界、可自由通行区域和未知区域,而实际的作业环境中却包含着更丰富的、可具体描述障碍物、边界和通行区域的信息,比如:障碍物可以分成静止机器、堆放的杂物、货物等信息,边界可以分成墙面、栅栏等信息,可通行区域又可有行人区域、机器移动区域、人机混合区域的区分,等等。但就是这样仅仅包含如此“简陋”信息的栅格地图,却满足了移动机器人自动导航作业过程的定位、路径规划等的输入标准,其本质上是移动机器人的自动作业默认是在相对简单的环境中运行(工厂、仓库、小型室内环境等),移动机器人的运动满足最基本的“不撞墙”、“不撞人”等安全要求即可,由此并不需要丰富的环境信息就可以满足其移动机器人的作业要求。

image

图:栅格地图示例:地图中黑色表示障碍物与边界、白色表示可通行区域、灰色表示未知区域

与上述移动机器人的作业环境相对应的就是自动驾驶中的场景了,机动车的运动肯定是不如移动机器人运动的自由的,例如:机动车不能离开车道线行驶、不能罔顾行车道的指示胡乱逆行、机动车不能想停车就停车、想掉头就掉头、更甚之机动车的行驶速度也需要符合道路限速标准。于是乎,在移动机器人中使用的栅格地图或者原始点云地图就不能直接用作自动驾驶中的定位和决策等后续的功能逻辑模块了。由此可见,高精地图的需求或概念并非凭空出现,而是为了 满足“赋能自动驾驶在复杂环境下安全和稳定的运行、帮助自动驾驶的机动车扩大环境感知范围、辅助车辆实时定位和加强规划和决策能力等“复杂需求 而产生并发展至今。

image

图:高精地图示例:地图中包含车道线、交通灯、斑马线、停车线等多元道路交通信息

2、slam技术在自动驾驶中的应用

在讨论“slam技术在自动驾驶中的应用”前,不妨先简单总结下slam技术涵盖的内容。参考基于lidar传感器的loam系、google的cartographer工程和基于视觉传感器的vins、orb-slam等经典的slam系统,不难总结出经典的slam系统可以大体上分成:数据预处理、前端里程计、后端位姿优化和地图构建这四个模块。

  • 数据预处理(data preprocessing) :在slam系统开始针对传感器数据的接收,在标定不充足的机器系统中会进行多传感器数据的时间同步和坐标系标定等工作,再是进行“数据清洗”的工作以过滤无效值和离群值,进行点云(或图像)的去畸变过程,根据slam系统在匹配算法时使用的是直接法还是间接法来选择性地进行点云(或图像)特征的提取;

  • 前端里程计(lio) :基于预处理过后的传感器数据,使用多传感器融合技术以进行机器人的位姿估计;多传感器融合的具体方案可以基于滤波也可以基于优化方法,可以是松耦合系统也可以是紧耦合系统,融合方案的选择与机器人传感器布局和场景需求有关;基于lidar或视觉的匹配算法,可以是scan-to-scan也可以是scan-to-map,匹配算法可根据场景需求进行选择,但无论采用什么融合方案和匹配算法,都是为了实现高精度、高效率、高鲁棒的里程计位姿估算;

  • 后端位姿优化(posegraph optimization) :当代slam系统中必不可少的一环,目的是为了消除前端里程计累积的误差,以保证slam过程中轨迹的全局一致性;后端一般是通过回环检测与位姿优化相结合的方法完成前端里程计误差的消除,具体回环检测算法方案都是大同小异,大体上是在回环识别效率和鲁棒性上下功夫,全局位姿的优化有基于ceres、g2o、gtsam等优秀开源优化库的方案,大体上位姿图的构建也都是以key frame(lidar pose或camera pose)为优化对象,辅以回环检测约束、全局传感器gnss及landmark和惯性传感器的约束或因子完成位姿图的维护过程;

  • 地图构建(map building) :根据slam系统中维护的位姿图信息,将预处理过的环境传感器的数据信息(点云、图像特征)进行拼接,完成点云(特征)地图的构建与保存,除此之外,还可以保存slam过程中的中间数据,如轨迹、位姿图、关键帧点云(特征)、二维栅格地图等。

完成对slam技术模块的简单讨论后,再次回到自动驾驶技术的议题中时可以发现:自动驾驶中的定位技术中是与slam系统中的前端里程计模块不说是一模一样,但至少是存在大部分“重合”内容的:不论何种自动驾驶作业场景下,都少不了对传感器的标定、时间同步、基于多传感器融合技术的位姿估计 。如果有高精地图,又可以基于定位图层进行自动驾驶定位算法的全局地图匹配以消除误差、保证精度。

3、摆脱高精地图的“长征”

到此,基于第二节中简述了的自动驾驶定位模块中应用到了的slam相关技术,其实算是回答了问题的后半句:“slam算法在自动驾驶行车过程中的意义”这个议题了,而除了自动驾驶的定位模块,自动驾驶中的建图模块也使用到了slam领域的相关技术,但是具体包含哪些slam相关技术的应用和问题描述中的前半句:“自动驾驶企业为何想摆脱对高精地图的依赖?”的回答暂时没有展开。本小节将根据上文第一节中针对高精地图的简单描述,结合个人理解来浅谈下为何自动驾驶企业开始倾向于摆脱高精地图。

首先不妨先大致了解下“高精地图“是如何制作出来的,制作高精地图的过程可以简单划分为三个阶段:

  1. 数据收集:高精地图的数据采集主要基于gnss数据、配以imu和轮速计的惯性传感器来进行车辆位姿的估算,激光雷达点云以及摄像头图像的作用不再像slam系统那样用以匹配算法,而是简单地提供车辆周围的三维环境信息 ;

  2. 数据处理:基于采集获得的数据和标定参数,进行类似slam系统的数据预处理工作,一方面是进行传感器时间对齐以便于地图拼接,另一方面是进行点云(或图像)的去畸变,拼接过后的原始地图再进行“语义提取”,尽可能自动化地根据原始地图获取必要信息,如车道线、坡度、曲率等道路信息和交通标志、道路边缘类型、红绿灯、路口等设施信息;

  3. 数据重标注与图层处理:该步骤目的是为了进一步确保语义信息提取的正确性并人工补充和修正遗漏的高精地图信息,原始点云地图的构建采用的大致方法还是 类似slam系统中的地图构建技术:对每一帧的点云数据做位姿优化并进行点云叠加以生成原始的点云地图 ,最后在原始点云地图的基础上建立各类车道线信息、道路分隔线、道路环境中的设施信息以生成最终的高精地图;

image

图:高精地图:带有车道线、交通灯、斑马线、停车线等多元道路交通语义信息

正如在第一节中提到的,机动车在复杂的城区的自动驾驶任务远远难于移动机器人的自动导航作业任务,通过高精地图可以进一步保证自动驾驶过程中车辆的定位,导航,规划等每一个需要“依赖“地图的环节。即使如此,在投入如此巨大后获取的自动驾驶高精地图其精度和稳定性也是堪忧,其地图质量还是远不如测绘工作中获取的三维重建地图。

image

image

image

图:测绘地图和三维重建地图

凡事都有两面性,高精地图给自动驾驶带来巨大辅助作用的头顶上却是悬挂在“三把危险的利刃“:第一把利刃是大量前期投入—资金、人力和周期、第二把是实现高精地图的技术、第三把则是政治、资质的问题。

本节并不会针对上述提到的三个制约问题进行展开,而是继续介绍一些尝试摆脱“制作高精地图”的方案,并尝试从中找出slam相关技术的影子。 传统高精地图制作与使用以谷歌和百度等第一波发展自动驾驶的企业为代表,其地图数据的采集主要利用测绘车获取环境数据并大体上按照上文中提及的制作流程完成高精地图的“生产”,可见:“过度依赖专业测绘车”、“人工标注成本和工期”和“应用资质”造成了高精地图生产的高昂成本,由此限制了其大规模的应用。为了缓和上述的约束条件,尝试代替高精地图的第一个阶段性方案就是用“众包”替换“直接制作“ ,以特斯拉fsd、mobileye的rem(road experience management)和civil maps的cityscalehdmaps为例,其强调的是不采用基础地图作为数据,而是通过训练感知与预测算法,直接上传车辆行驶过程中的环境数据到云端,再由云端实现数据的处理和地图制作,最后在车辆需要使用地图时进行车端下载和使用,由此可以在传统高精地图的第一和第三阶段节省大量的资金、人力和时间投入,将繁杂的”高精“制作流程改良成了”轻量化“的地图生成。除此之外,第二种优化的策略是改善传统高精地图第二阶段中的复杂信息提取 ,避免人工标注成本,很多研究机构和企业倾向于使用更加简单轻量的语义信息来生成车载端需要的自动驾驶地图以辅助自动驾驶的定位、感知、决策等模块,例如华为智能车bu发表的roadmap:利用语义分割的方法提取斑马线、行车道路信息和地面标识等语义信息,累积多帧数据构建local map和投影到此local map的语义信息 ,最后以”语义local map“为单位上传至云端处理。从自动驾驶的复杂需求到近期热门的自动驾驶领域子业务—自动泊车(autonomous valet parking),不难发现其技术的工程应用中也是“摒弃”了高精地图的使用,但不使用高精地图并代表不需要地图,市面上较为成熟的自动泊车业务应用中多数是使用带有语义特征信息的地图来辅助车辆定位的高精度、高鲁棒性实现,仍以秦通大佬的作品avp-salm为例:使用环视视觉图片完成语义特征的提取,随后利用车辆里程计的位姿估计完成语义特征的多帧拼接构建地图,通过回环检测来修正误差以完成定位图层的生成。

image

图:avp-slam的应用

至此,完成了简单了替代“高精地图”方案的介绍,但可以得出的是即使不进行高精地图的制作与使用,自动驾驶或自动泊车领域仍然需要地图,而且地图的生成还是与slam技术中地图构建操作存在重合:依据车辆多传感器融合的里程计位姿输出,拼接环境传感器的数据信息(语义、图像特征),并还采用回环检测技术修正里程计误差,最终完成定位图层的地图构建与保存。

4、小结

最后,不妨结合上文,针对移动机器人的自动导航应用与自动驾驶领域应用,做这两个“相似”领域间的横向对比分析,

  • 相似点:自动驾驶定位模块中需要做利用多传感器融合技术进行车辆(对应机器人)的位姿估计以完成里程计的高精度稳定的输出,自动驾驶领域中强调的感知模块一方面是加强车辆在自动驾驶过程中的规划、决策控制(对应机器人中自动导航中的简单感知),另一方面是可作用在建图模块前的(语义等)特征提取,再就是自动驾驶中的建图模块完成基于里程计信息和回环检测的(语义)特征拼接和标注(与机器人建图模块实现相似),最后不论是自动驾驶还是自主代客泊车都是规划决策和运动控制利用输出的(语义标注)特征地图进行自动化实现。

  • 差异点:自动驾驶中前端强依赖惯导做里程计推算(个人理解),往往不需要lidar(或视觉)的匹配算法,即使需要使用外部传感器也是以gnss\rtk为主,地图构建部分虽还是拼接车端外部传感器(视觉传感器)获取的环境信息,但自动驾驶中的环境信息需要有更加精细地预处理的步骤(比如语义特征点云信息提取+标注),而机器人的建图是由原始点云或特征拼接即可。

由此可见,自动驾驶和移动机器人中slam技术实现与应用细节差别很大,移动机器人仍强依赖lidar(或视觉)的匹配算法和回环修正,基于惯性传感器的位姿推算模块不如自动驾驶中那么重要。

回归主题:“在自动驾驶企业摆脱高精地图依赖的情况下,slam算法在自动驾驶行车过程中还有什么意义?”,根据上文的介绍可得出两点结论,第一,自动驾驶所谓的“摆脱”高精地图并不等价于自动驾驶不需要地图,真正想要“摆脱”的是传统高精地图制作流程的限制、制约,替代方案中“众包”和语义提取也是仅仅改变了高精地图制作时数据的采集、存储和信息提取的方式,但地图生成与构建的技术方案仍与之前大致相同,与slam技术中地图构建技术存在大量重合。第二,slam技术可以说是自动驾驶实现与应用的基础,比如传感器的标定、时间同步、数据预处理、多传感器融合、回环检测、位姿图优化和地图构建等,只不过自动驾驶中会在其基础上加强感知模块和决策控制模块的介入,特别是感知模块在自动驾驶中会有更大的舞台表现,突出在实现自动驾驶这个复杂需求时的细节描述与表达,帮助自动驾驶技术在复杂场景下仍能稳定安全地运行。

最后的最后,不论是slam技术还是自动驾驶技术,其涵盖的知识和内容是如同广袤深海一般无穷无尽,本人仅仅是针对“在自动驾驶企业摆脱高精地图依赖的情况下,slam算法在自动驾驶行车过程中还有什么意义?”这一主题进行简单的经验和理解分享,写到此处的我仍觉得很多细节难以展开说明,很多概念仍有些模棱两可难以表述清晰。但不论如何,本人尝试尽可能地能持以一个“系统大局”和“相似领域间的横向对比”的角度来完成此篇分享,希望能提出一些新的思考和展开一个新的角度。勉之期不止,多获由力耘,路漫漫其修远兮,吾将上下而求索。

参考文献:

[1] qin, tong, et al. “avp-slam: semantic visual mapping and localization for autonomous vehicles in the parking lot.” 2020 ieee/rsj international conference on intelligent robots and systems (iros), 2020, doi:10.1109/iros45743.2020.9340939.

[2] “变革前夜生变?解读高精地图的宿命之争.”新出行, http://www.xchuxing.com/article/27774.

[3] civil maps, http://civilmaps.com/#.

[4] “去年被福特投资后,civil maps为自动驾驶车交出了新的成绩单.” 雷峰网, http://www.leiphone.com/category/transportation/po2emnwpcoltqljn.html.

[5] qin, tong, et al. “a light-weight semantic map for visual localization towards autonomous driving.” 2021 ieee international conference on robotics and automation (icra), 2021, doi:10.1109/icra48506.2021.9561663.

[6] t. schneider, m. dymczyk, m. fehr, k. egger, s. lynen, i. gilitschenski, and r. siegwart, “maplab: an open framework for research invisual-inertial mapping and localization,” ieee robotics and automation letters, vol. 3, no. 3, pp. 1418–1425, 2018.

[7] t. qin, p. li, and s. shen, “relocalization, global optimization and map merging for monocular visual-inertial slam.” in proc. of the ieee int. conf. on robot. and autom., brisbane, australia, 2018, accepted.

[8] m. schreiber, c. knoppel, and u. franke, “laneloc: lane marking ¨ based localization using highly accurate maps,” in 2013 ieee intelligent vehicles symposium (iv). ieee, 2013, pp. 449–454. [17]

[9] a. ranganathan, d. ilstrup, and t. wu, “light-weight localization for vehicles using road markings,” in 2013 ieee/rsj international conference on intelligent robots and systems. ieee, 2013, pp. 921– 927.

[10] j. jeong, y. cho, and a. kim, “road-slam: road marking based slam with lane-level accuracy,” in 2017 ieee intelligent vehicles symposium (iv). ieee, 2017, pp. 1736–1473.

[11] m. herb, t. weiherer, n. navab, and f. tombari, “crowd-sourced semantic edge mapping for autonomous vehicles,” in 2019 ieee/rsj international conference on intelligent robots and systems (iros). ieee, 2019, pp. 7047–7053.

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com