美文网首页无人驾驶
自动驾驶软硬件与算法简介

自动驾驶软硬件与算法简介

作者: 7ff1cc2db57c | 来源:发表于2018-10-24 09:32 被阅读65次
timg.jpg

自动驾驶汽车,作为一个可被控制的人工系统,大致包含以下及部分内容:

  1. 硬件:传感器、V2V通信、执行器(发动机、方向盘等);
  2. 软件:车载系统,感知、规划、和控制软件,以及其他支撑软件;
  3. 算法与模型:算法和模型都是以软件的形式存在,但是这些算法设计到传感器融合、图搜索、路径规划、运动规划、运动控制、深度学习态势评估等。

硬件篇

陈老师在专栏(无人驾驶干货铺)里面详细的介绍了百度无人车的硬件系统,通常来说离开硬件来谈自动驾驶都是耍流氓。自动驾驶汽车所需要的硬件总结如下:
汽车,尽量选择电动汽车,空间尽可能大,电机底层控制要比燃油车底层控制简单些;
自动驾驶控制器,通常选择工控机,根据技术需求选择工控机配置GPU等
通信模块,CAN卡,汽车个不同子系统之间的通信基本上是通过CAN协议进行
GPS+IMU,用于为车辆提供全球位置信息惯性测量单元,提供车体的加速度、角速度、航向等信息
环境感知传感器,主要包括自动驾驶领域耳熟能详的摄像头、激光雷达、毫米波雷达、超声波雷达等,用于感知道路信息、交通状况、行人信息,为车辆规划提供大量的信息。

软件篇

自动驾驶汽车软件主要总结如下:

  • 感知模块,利用各种传感器数据,进行信息融合,得到汽车完成任务所需要的信息、保证安全所需要的信息,具体包括:障碍物位置,速度,以及行为预测,汽车可行驶的管道,实时交通状况、交通信号与指示信息等。其中包括,将激光雷达点云图数据处理得到行人、车辆、障碍物信息,将图像进行处理得到车道线、可行驶区域、其他车辆、行人、交通标志和信号灯信息。另外,感知模块基于GPS和IMU惯性导航系统为无人车进行定位,并利用SLAM、基于激光点云数据匹配定位的高精度地图等软件来对车辆进行高精度定位。

规划模块主要包含:

  • 任务规划,根据道路信息进行汽车出发点到目标点的路径规划,解决汽车去去哪儿、走哪条路线的问题
    行为规划,也称Decision Maker,在跟踪任务规划给定的路线过程中,根据实时路况和环境(包含其他车辆、行人、交通信号标志灯)信息,给出汽车的行为序列(比如停车,绕行、超车等),可通过有限状态机实现。
  • 动作规划,根据行为规划给定的行为、当前汽车的位置、速度、方向信息、以及环境信息,根据汽车执行器的操作范围,规划汽车在完成给定行为所需的位置、速度、加速度、方向等状态序列,
  • 控制模块,是根据动作规划给定的状态序列、当前汽车的状态,利用反馈控制思路,给出汽车油门、方向盘转向、刹车等执行器的指令。

规划与控制可以这样总结:

  • 任务规划,给出整个任务时间内汽车应该遵循的路线,通常规划一两次;

  • 行为规划,给出某段路线中,汽车应该切换的模态(超车、停车、绕行等),通常某段路线中规划数十次甚至上百次,整个路线中,规划成百上千次;

  • 动作规划,根据行为规划给出的模态,给出汽车在某段路线中、某个模态下应该遵循的状态轨迹(这里不仅仅是路径了,还包括未来某时刻汽车应该在什么位置、速度多大、加速度多大、航向多少等信息),通常一个模态中,汽车需要迭代优化其动作序列,一个动作对应的轨迹可能不同,比如超车怎么超、绕行绕多远,都得根据实时态势来决定,因此汽车需要实时根据自身状态和环境信息进行动作规划,每次间隔时间可在0.1秒,可以更小,也可以稍大。

  • 控制,是要实时根据自身状态和期望状态去进行反馈控制,控制量的改变间隔在10毫秒左右即可,当然考虑到汽车本身的特性,这个间隔量可以根据性能需求来确定。

算法与AI模型

前面介绍的自动驾驶汽车的软硬件情况,各个软件模块的核心是算法,总结如下:

  • 感知模块涉及算法:多传感器信息融合技术(卡尔曼滤波等)、模式识别技术、图像处理技术、深度学习技术、SLAM技术、高精地图构建技术等

  • 规划模块涉及算法:图搜索技术、有限状态机、路径规划算法、轨迹规划算法等

  • 控制模块涉及算法:PID比例-积分-微分控制技术,MPC模型预测控制技术等。

  • AI模型方面:点云高精地图匹配、车道线检测、行人检测、交通信号灯识别、标志识别、行为检测等都需要利用深度神经网络训练好的模型去实时预测。

AI模型的运行流水线大致如下:利用Python得天独厚的条件、大量采集的离线数据、TF等深度学习工具训练目标模型====》利用C++的高性能优势,基于深度学习工具API,调用训练好的AI模型====》根据当前感知输入,利用模型给出预测结果。

原力源同名微信公众号ID:force-ai

相关文章

  • 自动驾驶软硬件与算法简介

    自动驾驶汽车,作为一个可被控制的人工系统,大致包含以下及部分内容: 硬件:传感器、V2V通信、执行器(发动机、方向...

  • 特斯拉第二代自动驾驶系统曝光

    近日,有消息透露了特斯拉第二代自动驾驶系统的细节。在进行了软硬件同步升级之后,当前车型自动驾驶功能将获得拓展与完善...

  • 数据结构与算法简述(下)

    目录: 算法简介 排序算法 递归与穷举 贪心与分治 动态规划和回溯 1.算法简介 解题方案的准确而完整的描述,是一...

  • 自动驾驶汽车的算法

    最近需要做一个关于自动驾驶汽车的英语演讲部分,因为是小组性质的,我负责自动驾驶汽车算法部分,着重强调了机器学习算法...

  • LGSVL 强化学习环境 —— gym-lgsvl

    引言 OpenAI gym 是目前非常流行的强化学习算法测试平台。它包含了丰富的仿真环境,其中也有与自动驾驶相关的...

  • 白话自动驾驶线控的重要性

    1.简介自动驾驶现阶段发展:现在正是自动驾驶的高研发阶段,对于现在市场的自动驾驶等级是l4,大家会问什么是l4,在...

  • 转载 | 自动驾驶开源数据集总结

    前言 数据是人工智能时代的石油,随着汽车行业的发展、自动驾驶商业场景的落地,自动驾驶算法变得尤为重要,想要打磨自动...

  • 计算机科学基础课程

    基础课程 大学计算机——计算思维的视角(山东大学 )简介: 简述计算机发展 , 软硬件系统 , 计算机问题求解与算...

  • 读懂无人驾驶,继续拥抱科技

    智能软硬件完美结合 就目前而言,市面上多数自动驾驶汽车均配备了雷达和摄像头等传感器,以检测车辆周边环境或者提供实时...

  • 关于自动驾驶的预测

    今天听了几则罗胖的音频,568期“人类的最后领地”中提到自动驾驶的例子,认为自动驾驶算法会存在伦理上的两难取舍,...

网友评论

    本文标题:自动驾驶软硬件与算法简介

    本文链接:https://www.haomeiwen.com/subject/gjhttqtx.html