自动驾驶科普:一辆无人车到底是怎样工作的?

简介:
本文来自AI新媒体量子位(QbitAI)

你可能对“自动驾驶”一词并不陌生了,但是否知道无人车是怎样在没有司机的情况下到达目的地的?

今天,Udacity的员工David Silver在外媒Medium上发文,科普了Udacity自动驾驶技术中的四个子系统。这份介绍轻快简明,条理清晰,是篇不错的自动驾驶入门读物。量子位编译整理,与大家分享。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

在我工作的Udacity有一辆无人车,我们叫她Carla。

整体来说,Carla上主要有四个子系统,分别为传感(Sensor)系统,感知(Perception)系统,决策(Planning)系统和控制(Control)系统。接下来我将为大家一一讲解Udacity的无人车是如何通过这些技术工作的。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

 每个系统中都包含很多小环节

传感(Sennor)

Carla的传感器系统中含有从环境中收集数据的物理硬件。

例如,Carla挡风玻璃的顶部安装了一些相机,用户能根据需要调整相机的数量。通常情况下,1到3个相机会排成一排。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

 挡风玻璃上的相机

Calar自带一个嵌入至保险杠的前置雷达,此外,车顶上还安装了一个360度激光雷达,是收集环境数据的主力。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

 激光雷达传感器(左)和采集到的点云数据(右)

有时Carla也会用到其他传感器,比如GPS、IMU和超声波雷达等。从这些传感器中收集到的数据汇将交由感知器处理。

感知(Perception)

Carla的感知子系统负责将原始的传感器数据转换成有意义的环境信息。根据功能不同,我们可将感知系统的组件分为两个区块:检测模块与定位模块,两者各司其职。

检测模块需要从传感器的环境信息中检测车辆外部的物体,包括信号灯的检测与分类、物体检测与追踪和自由空间探测。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

 车辆、行人、信号灯、指示牌……不同类别的物体被不同颜色的检测框圈起

定位模块告诉我们车辆的具体位置,这是一项听起来容易但做起来难的事。Carla自带的全球定位系统(GPS)帮助准确定位,但GPS的精度只能精确到1至2米,对无人车来说,这种精度远远达不到上路的要求。一辆自认为在车道中心行驶的车,如果加上这一两米的误差,可能会撞到行人或路崖。

所以,仅用GPS定位还不够。Carla结合了高精地图、激光雷达传感器和复杂的数学算法,将误差缩减到10厘米内。激光雷达先扫描外部环境,将看到的与高精地图做对比,最后找到精确的定位。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

 Carla将自己定位在一张高精地图上

之后,感知系统将其结果输出至决策系统上。

决策(Planning)

Carla的决策系统简明易懂,决策装置构建了一系列路径点,Carla只需沿路追寻这些点即可。值得注意的是,每个路径点都有指定位置,并且与目标速度相关联。当Carla经过路径点时,将与位置与速度相匹配。

同时,决策系统还负责根据感知器提供的数据预测其他车辆的运动轨迹,不断重新规划调整路径点的位置。

举个例子,如果决策系统预测Carla前面的车辆会减速,则决策系统会让Carla也走得慢点。之后,决策系统会根据轨迹生成组件创建新的减速路径点。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

对策系统对信号灯和交通标志等信息的处理也是用这种方法计算的。

一旦决策系统已经生成了新路径点路径,那这些路径会被传送至最后一个子系统,即控制系统。

控制(Control)

控制系统通过加速或刹车的方式驱动车辆行进,并且掌握第一手的车辆运行数据。这其中有些纯电子数据,有些则是物理数据。例如,当你坐在Carla里时,你会发现它自身也带方向盘。

控制系统将路径点作为输入信息,在决策系统的帮助下控制车辆速度。之后,控制系统将路径点和速度等信息传递给控制器。为了实现预定轨迹,控制器需要规划方向盘、加速、刹车等部件的动作。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

控制系统可用很多算法将路径点映射成方向盘和油门的相关指令,这些不同的算法被称为控制器。Carla用的是简单的比例-积分-微分控制器(PID控制器),当然还有其他复杂的控制器可供选择。

总结

我们将上面的四个系统的功能总结一下,可以梳理出Udacity自动驾驶汽车的工作流程。

首先,传感系统从Carla的相机、雷达和激光雷达中收集环境数据交于感知系统,感知系统利用这些数据在环境中检测物体并定位。之后,决策系统利用环境数据创建Carla的行进轨道。控制器通过方向盘、油门和刹车等保证车辆在预定轨道上行驶。

Carla进行了很多测试,她已经可以从山景城跑到旧金山了。Udacity的学生也可以在课程结束时把设计的代码加载到Carla上,看看在测试轨道上的驾驶情况如何。

我们为Carla自豪。

本文作者:安妮
原文发布时间:2017-09-07 
相关文章
|
机器学习/深度学习 人工智能 自动驾驶
苹果正在憋大招,动用所有资源制造自动驾驶车
苹果正在憋大招,动用所有资源制造自动驾驶车
苹果正在憋大招,动用所有资源制造自动驾驶车
|
人工智能 自动驾驶 安全
在不那么遥远的未来,自动驾驶汽车更可能“运货”而非“载人”
共享汽车服务的吸引力似乎比以往任何时候都要弱。
|
传感器 自动驾驶
飞行汽车比无人驾驶更早到来?清华猛狮团队研制出陆空两栖自主驾驶飞车
清华猛狮无人驾驶实验室一年前启动无人驾驶飞车研制项目,一年时间内,第一代研发样机已在河北清华发展研究院固安分院与延庆山区试飞成功。
|
传感器 边缘计算 自动驾驶
无人驾驶汽车是如何工作的
自动驾驶汽车不再是科幻小说。 很快,我们的汽车将能够在无需任何人工干预的情况下将我们从一个目的地带到另一个目的地。 特斯拉已经在出售自动驾驶解决方案,而Waymo已经在凤凰城推出,自动驾驶汽车革命已经在进行。 但是在您乘坐无人驾驶汽车之前,您可能想知道它们的实际工作原理。
550 0
无人驾驶汽车是如何工作的
|
人工智能 自动驾驶 安全
云栖科技评论85期:为自动驾驶汽车迎回人类司机鼓掌
当Waymo宣布他们的自动驾驶汽车中重新坐入人类驾驶员的时候,所得到的应当是掌声而非质疑,正是负责任的态度让前沿科技走得更好、更稳,而不是贸然的激进式创新和不负责任的“创新应用”。
10549 0
|
机器学习/深度学习 自动驾驶 大数据
业界 | 给美队设计车的老爷爷设计了一辆自动驾驶赛车,还完成了全球首次爬坡赛
在刚刚结束的英格兰赛车爬坡比赛Goodwood Festival of Speed上,Roborace生产的自动驾驶车Robocar成为了史上首辆完成爬坡赛的自动驾驶车。
1640 0