自动驾驶规划方法综述
点击上方“小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达
仅作学术分享,不代表本公众号立场,侵权联系删除
转载于:本文来源:知乎、RoboCar,
https://zhuanlan.zhihu.com/c_1151894361196412928
最近看到一篇非常好的关于自动驾驶规划方法的综述(A Review of Motion Planning Techniques for Automated Vehicles),写的非常好,总结了近几十年来总动驾驶规划的发展之路,引用了许多经典的文章。觉得可能对做规划的小伙伴会有帮助,所以分享出来。
这篇文章的一个观点非常好,他把自动驾驶的运动规划分成四大类:graph search 图搜索,采样,插值和数值优化。下面展开论述。
A. Graph search based planners
这种方法把状态空间表达成网格或者lattice的形式,然后在这些状态里面找到一个可达的path。这类方法主要有A* D* Dijkstra algorithm 算法。值得一提的还有state lattice算法,虽然这个图看起来和Apollo里面的lattice不一样,但是这个是爸爸,在这篇文章[1]里面提出了时空lattice,这个也就是后来Apollo算法里面用的。
B. Sampling based planners
这个主要介绍了RRT算法,嗯非常经典好用,如果有感兴趣的可以单独开讲。
C. Interpolating Curve Planners
这里介绍了几种曲线生成的方法,主要有羊角螺旋线(Clothoid Curves)多项式曲线(Polynomial Curves) 贝塞尔曲线(Be ́zier Curves)
分别介绍了这几类样条曲线在路径规划的优化过程中作用。
clothoid curves 是个比较神奇的曲线,天生适合车辆规划,因为它的曲率是线性变化的,又因为车辆运行轨迹的曲率和方向盘基本上成正比,也就是说这种线型出来的结果方向盘会非常顺滑。
贝塞尔曲线 计算简单 速度快。
多项式拟合也是一个比较好的方法。
D. Numerical Optimization:
数值优化的方法讲的比较粗略,基本上只是讲了下势能场法的应用。
在这一段的结束,作者给出了一个大的表格,比较不同方法的优劣,感觉这个比较强大,不是大佬很难总结的如此精辟。
各种规划算法的优劣对比
下面这幅图,作者阐述了不同项目/公司的motion planning的技术方案,从下面这个图可以看出来,各家公司很少会依赖单一的规划方法进行规划,而是根据使用场景,结合两个甚至更多种的规划方法来进行规划。比如斯坦福大学和合作机构采用了A*算法,基于优化的算法甚至用羊角螺旋线进行插值。
大多数企业采用了基于样条曲线,羊角螺旋线的方法,主要是考虑可以获取细致的道路信息。采用search 方法的主要原因是这样的速度快,在复杂场景下而且可以搜索到比较好的曲线。目前规划存在的挑战在于实时性,由于越来越多的障碍物,感知留给规划的时间窗口越来越小。下一步的motion planning的研究,应该考虑感知的不确定性以及控制的约束。这样会更加安全,舒适。
[1] Spatiotemporal state lattices for fast trajectory planning in dynamic on-road driving scenarios
原文链接:https://zhuanlan.zhihu.com/c_1151894361196412928
下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。
下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。
下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。
交流群
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~
自动驾驶规划方法综述相关推荐
- 高速场景下自动驾驶车辆定位方法综述
文章:A Survey of Localization Methods for Autonomous Vehicles in Highway Scenarios 作者:Johann Laconte ...
- 【自动驾驶规划】综述(一)
无人驾驶规划概要 Overview What is motion planning? Motion planning 的三个领域 如何解决一个Motion Planning问题? 基本Planning ...
- 自动驾驶规划术语与搜索空间的几种方法
1. 导读 目前,自动驾驶或自动驾驶汽车是学术界和汽车界研究的核心,因为它具有多方面的优势,包括提高安全性.减少拥堵.降低排放和提高机动性.其实软件是支持自动驾驶的关键驱动因素,在将乘客或货物从指定的 ...
- 无人驾驶车辆运动规划方法综述
无人驾驶车辆运动规划方法综述 1. 定义 车辆运动规划(Motion Planning)是指生成衔接车辆起点与终点的几何路径,同时给出车辆沿该路径运动的速度信息,并使车辆在整个运动过程中满足运动学 / ...
- 自动驾驶规划控制(A*、pure pursuit、LQR算法,使用c++在ubuntu和ros环境下实现)
文章目录 1 目录概述 2 算法介绍 2.1 Astart改进 2.2 ROS(Gazebo仿真) 2.2.1 使用Gazebo仿真需要安装的功能包 2.2.2 创建工作空间 catkin_ws 2. ...
- 【智能驾驶】基于计算机视觉的自动驾驶算法研究综述
近年来,随着人工智能技术的迅速发展,传统汽车行业与信息技术结合,在汽车自动驾驶技术方面的研究取得了长足进步,业内很多大公司都在此领域投入巨资进行研发,如国外的谷歌.丰田,国内的百度.比亚迪等公司都推出 ...
- Apollo星火计划学习笔记——第七讲自动驾驶规划技术原理1
文章目录 前言 1. 规划技术功能概述 1.1 自动驾驶系统 1.2 规划的作用 1.3 规划主要功能 1.3.1 路由寻径(Routing) 1.3.2 行为决策 1.3.3 轨迹规划 2. Apo ...
- 【自动驾驶规划算法】方向盘角速度限速
背景 自动驾驶路测中经常出现规划和控制匹配的问题,规划的路径理论可执行,但是控制不能有效跟踪.究其原因是控制算法性能受到方向盘角速度限制.为解决这一问题,在速度规划层添加方向盘角速度限速项. 理论基础 ...
- 自动驾驶规划控制系列文章(一)——车辆数学模型
目录 一.车辆自行车运动学模型(kinematic bicycle model) 1.基于车辆重心的运动学模型 2. 以后轴中心为原点的运动学模型 二.车辆自行车动力学模型(kinematic bic ...
最新文章
- 学习linux决心书
- String与NSString关系
- python列表split_Python-split()函数实例用法讲解
- 黑鲨或将在明天公布黑鲨4系列游戏手机
- Python 数据结构与算法 —— 哈弗曼树
- mysql innodb 分区_MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)
- python初探偏微分方程数值解
- Windows下9001端口被占用
- 安川ga700变频器故障码集_安川变频器故障代码和报警参数大全
- 关于最短剩余时间优先算法-进程调度模拟【C++】
- linux带密码解压密码,linux下解压有密码的rar压缩包
- #Javascript基础
- ebp 函数堆栈esp_2.1ebp,esp与call
- 销毁铸造均衡Token的分析 - Helium
- 最新IP地理数据库(dat文件) --别花钱了
- Codeforces 1287C Garland
- DFS.04-海贼王之伟大航路
- 电脑如何用rdp协议登录服务器,RDP(远程桌面协议).ppt
- networkx画图(番外)——(1)自定义节点布局
- 篮球计分板课设,模块化LCD1602,数码管,矩阵按键,方便移植,使得主函数简洁明了
热门文章
- 江湖又现中科大少年班的传说
- 用Python解锁“吃鸡”正确姿势
- 前端抱怨 API 响应慢,怎么办?
- Netflix创始人:我不要求996,一样市值1万亿
- 星巴克不使用两阶段提交
- 重磅!阿里推出国产开源的jdk!
- Spring MVC 到 Spring BOOT 的简化之路
- 现实版“神笔马良”!“90后”小伙把贫困村画成网红景点,网友:一个人带动整个村GDP...
- 视觉Transformer最新综述
- 北大陈平原教授:写出优秀的学术论文,“小题大做”是关键