自动驾驶汽车的软硬件架构如图1所示,主要分为环境认知层、决策规划层、控制层和执行层。环境认知层主要通过激光雷达、毫米波雷达、超声波雷达、车载摄像头、夜视系统、GPS、陀螺仪等传感器获取车辆所处环境信息和车辆状态信息,具体来说包括车道线检测、红绿灯识别、交通标识牌识别、行人检测、车辆检测、障碍物识别和车辆定位等;决策规划层则分为任务规划、行为规划和路径规划,根据设定的路径规划、所处的环境和车辆自身状态等规划下一步具体行驶任务(车道保持、换道、跟车、超车、避撞等)、行为(加速、减速、转弯、制动等)和路径(行驶轨迹);控制层及执行层则基于车辆动力学系统模型对车辆驱动、制动、转向等进行控制,使车辆跟随所制定的行驶轨迹。
环境感知指对于环境的场景理解能力,例如障碍物的类型、道路标志及标线、行车车辆的检测、交通信息等数据的语言分类。定位是对感知结果的后处理,通过定位功能从而帮助车辆了解其相对于所处环境的位置。环境感知需要通过传感器获取大量的周围环境信息,确保对车辆周围环境的正确理解,并基于此做出相应的规划和决策。自动驾驶车辆常用的环境感知传感器包括:摄像头、毫米波雷达、激光雷达、超声波雷达和红外传感器等。摄像头是自动驾驶车辆最常用、最简单且最接近人眼成像原理的环境感知传感器。通过实时拍摄车辆周围的环境,采用 CV 技术对所拍摄图像进行分析,实现车辆周围的车辆和行人检测以及交通标志识别等功能。摄像头的主要优点在于分辨率高、成本低。但在夜晚、雨雪雾霾等恶劣天气下,摄像头的性能会迅速下降。此外摄像头所能观察的距离有限,不擅长远距离观察。毫米波雷达也是自动驾驶车辆常用的一种传感器,毫米波雷达是指工作在毫米波段(波长 1~10mm,频域 30~300GHz)的雷达,其基于 ToF 技术(time of flight)对目标物体进行检测。毫米波雷达向外界连续发送毫米波信号,并接收目标返回的信号,根据信号发出与接收之间的时间差确定目标与车辆之间的距离。因此,毫米波雷达主要用于避免汽车与周围物体发生碰撞,如盲点检测、避障辅助、泊车辅助、自适应巡航等。毫米波雷达的抗干扰能力强,对降雨、沙尘、烟雾等离子的穿透能力要比激光和红外强很多,可全天候工作。但其也具有信号衰减大,容易受到建筑物、人体等的阻挡,传输距离较短,分辨率不高,难以成像等缺点。激光雷达也是通过 ToF 技术来确定目标位置与距离的。激光雷达是通过发射激光束来实现对目标的探测,其探测精度和灵敏度更高,探测范围更广,但激光雷达更容易受到空气中雨雪雾霾等的干扰,其高成本也是制约其应用的主要原因。车载激光雷达按发射激光束的数量可分为单线、4 线、8 线、16 线和 64 线激光雷达。各类环境感知部件(雷达、红外传感器与摄像头)特性对比如图2所示。自动驾驶环境感知通常采用“弱感知+超强智能”和“强感知+强智能”两大技术路线。其中“弱感知+超强智能”技术是指主要依赖摄像头与深度学习技术实现环境感知,而不依赖激光雷达。这种技术认为人类靠一双眼睛就可以开车,那么车也可以靠摄像头来看清周围环境。如果超强智能暂时难以达到,为实现无人驾驶,那就需要增强感知能力,这就是所谓的“强感知+强智能”技术路线。相比“弱感知+超强智能”技术路线,“强感知+强智能”技术路线的最大特征就是增加了激光雷达传感器,从而大幅提高感知能力。特斯拉采用“弱感知+超强智能”技术路线,而谷歌 Waymo、百度 Apollo、Uber、福特汽车等人工智能企业、出行公司、传统车企都采用“强感知+强智能”技术路线。
精准定位技术的目的是获取自动驾驶车辆相对于外界环境的精确位置,是自动驾驶车辆必备的基础。在复杂的道路行驶,定位精度要求误差不超过 10cm。例如:只有准确知道车辆与路口的距离,才能进行更精确的预判和准备;只有对车辆进行准确定位,才能判断车辆所处的车道。如果定位误差较高,严重时会造成交通事故。GPS 是目前最广泛采用的定位方法,GPS 精度越高,GPS 传感器的价格也越昂贵。但目前商用 GPS 技术定位精度远远不够,其精度只有米级且容易受到隧道遮挡、信号延迟等因素的干扰。为了解决这个问题,Qualcomm 开发了基于视觉增强的高精度定位(VEPP)技术,该技术通过融合 GNSS 全球导航卫星、摄像头、IMU 惯性导航和轮速传感器等多个汽车部件的信息,通过各传感器之间的相互校准和数据融合,实现精确到车道线的全球实时定位。
决策规划是自动驾驶的关键部分之一,它首先是融合多传感器信息,然后根据驾驶需求进行任务决策,接着能够在避开存在的障碍物前提之下,通过一些特定的约束条件,规划出两点之间多条可以选择的安全路径,并在这些路径当中选择一条最优的路径,作为车辆行驶轨迹,这就是规划。按照划分的层面不同,可以分为全局规划和局部规划两种,全局规划是由获取到的地图信息,规划出一条在特定条件之下的无碰撞最优路径。例如,从上海到北京有很多条路,规划出一条作为行驶路线即为全局规划。如栅格法、可视图法、拓扑法、自由空间法、神经网络法等静态路径规划算法。局部规划则是根据全局的规划,在一些局部环境信息的基础之上,能够避免碰撞一些未知的障碍物,最终达到目标点的过程。例如,在全局规划好的上海到北京的那条路线上会有其他车辆或者障碍物,想要避过这些车辆或者障碍物,需要转向调整车道,这就是局部路径规划。局部路径规划的方法包括人工势场法、矢量域直方图法、虚拟力场法、遗传算法等动态路径规划算法等。
决策规划层是自主驾驶系统智能性的直接体现,对车辆的行驶安全性起到了决定性的作用,常见的决策规划体系结构有分层递进式、反应式以及二者混合式。