在自动驾驶技术问题中,定位技术(自身定位以及对周围环境相对位置的认知)似乎是无人驾驶汽车最难掌握的技术,这与城市的动态性质有关。例如施工路面、封闭道路、新标志和缺失的道路标志等,都是这种动态性和不确定性的例子。人类面对以上随时随地可能发生改变的因素都会感到困惑,更不用说机器了。目前没有方法可以完美地解决自动驾驶汽车的定位问题,但以下几种是当前最为有效也最有希望解决问题的办法。不同公司有不同的倾向性选择,本文将根据具体的公司策略对三种定位方法进行介绍。
自从特斯拉和Waymo等公司出现以来,车企对自动驾驶技术的关注愈发增加。这种情况在2018年更甚,从而加速了无人驾驶汽车尽快落地的可能。例如,通用汽车公司在旧金山的员工已经用上了没有方向盘或踏板的cruise;福特、大众、丰田和奔驰也都在自动驾驶竞争之列;上个月,特斯拉在芯片发布会上宣布,到2020年他们将制造出完全自动驾驶汽车。
无人驾驶的实现前途光明,但道路曲折。目前自动驾驶仍然面临很多难题,例如需要快速而连续地分析数据流、需要做对机器来说很繁琐但对人类来说只是鸡毛蒜皮的一些小事等。具体来说,物体检测、距离、速度、定位和交通法规等都是在驾驶过程中做决策时需要考虑的因素。为了达到SAE标准中的L5级别,计算机驾驶系统需要能够执行上述所有基本任务,找到针对不同问题的技术解决方案。以下列出了几种主要的自动驾驶技术难题及解决方案:
- 距离:激光雷达(光探测和测距)
- 速度:雷达(无线电探测器)
- 物体探测:相机、图像处理和机器学习
- 交通法规:物体检测(用于交通信号灯和标志)、图像处理(用于车道检测)和对本地数据的访问
- 路径规划:软件算法(如A*搜索算法)
- 定位:同时定位与地图创建(Simultaneous Localization and Mapping,SLAM)或预先制作的三维地图
在上述所有问题中,定位技术(自身定位以及对周围环境相对位置的认知)似乎是无人驾驶汽车最难掌握的技术,这与城市的动态性质有关。例如施工路面、封闭道路、新标志和缺失的道路标志等,都是这种动态性和不确定性的例子。人类面对以上随时随地可能发生改变的因素都会感到困惑,更不用说机器了。目前没有方法可以完美地解决自动驾驶汽车的定位问题,但以下几种是当前最为有效也最有希望解决问题的办法。不同公司有不同的倾向性选择,本文将根据具体的公司策略对三种定位方法进行介绍。
1.以特斯拉为代表的视觉SLAM定位
以特斯拉为例的一类企业倾向于使用基于视觉的Visual SLAM(简称VSLAM)技术进行定位,他们将尽可能多的视觉传感器置入汽车中,不依靠预先录制的地图,而是希望将图像处理和机器学习结合起来,让特斯拉车辆能够对周围环境做到实时了解。特斯拉车辆随时随地都在学习并与其他车辆分享知识。他们依靠周围的实时环境数据而不是历史数据,不存在依赖过时地图而出错的风险。
特斯拉的目标非常明确,即建造可以在任何条件下驾驶的车辆而不受周围环境的影响。前段时间特斯拉的芯片发布会上,因马斯克diss激光雷达还引起了一场轩然大波。马斯克说,使用激光雷达的定位方法摆脱了“丑陋,昂贵且不必要”的绘图设备,为此付出的代价是在处理不确定性时更加依赖相机和软件。特斯拉人工智能高级主管 Andrej Karpathy 强调物理数据的作用是无法代替的,相对于利用激光雷达建立虚拟高精地图来说,特斯拉更相信现实的物理数据,看图比看雷达更真实。
目前,使用VSLAM实现定位的自动驾驶车辆主要配备三类传感器:单目、双目(或多目)、RGBD。此外还有鱼眼、全景等特殊相机,由于在研究和产品中都属于少数在此不做介绍。就实现难度而言,这三类方法难易程度从难到易依次为:单目视觉、双目视觉、RGBD。在定位过程中,VSLAM自动驾驶车辆从一个未知环境中的未知地点出发,在运动过程中通过以上这些视觉传感器观测定位自身位置、姿态、运动轨迹,再根据自身位置进行增量式的地图构建,从而达到同时定位和地图构建的目的。定位和建图是两个相辅相成的过程,地图可以提供更好的定位,而定位也可以进一步扩建地图。VSLAM技术框架如下,主要包括传感器数据预处理、前端、后端、回环检测、建图。
2.以通用/奔驰/福特为代表的高精地图定位
通用汽车和奔驰都看好通过激光雷达或GPS预先制作的高精地图来进行定位的方法。通用汽车于2017年收购了自己的激光雷达供应商。福特与百度合作,向一家激光雷达供应商Velodyne 投资1.5亿美元,奔驰也与Velodyne签订激光雷达供应合约。
激光雷达是非常传统的定位传感器。它可以提供机器人本身与周围环境障碍物间的距离信息。常见的激光雷达有SICK、Velodyne、Rplidar等。使用激光雷达制作高精地图,实际上就是利用激光点云融合技术进行激光雷达扫描,返回场景分布点的技术。激光点云融合的技术又分为两种,一是基于点云融合的算法,其应用场景较广,不仅限于GPS场景;第二种是基于比较精确的差分GPS和精确惯导(IMU,惯性测量单元),其对场景依赖较强,必须在比较开阔的场景使用,对于高架桥等GPS信号弱的场景效果不佳。基于图像和GPS技术解决方案精度比较差,主要用来制作L2、L3的ADAS地图,而激光点云则可以满足L4、L5的需求。
这类车辆依赖于预先记录好的3D高分辨率地图,而这些地图是使用配备激光雷达的车辆预先捕获的。然后,自动驾驶车辆可以使用其自身配备的激光雷达设备获取周边环境的信息,与预先制作的高精地图进行比对,判断环境是否已经改变,然后在地图涵盖区域内实现自动驾驶。这显示了相对来说更加广泛的自动驾驶策略。为了保持地图的准确性和车辆的可用性,需要市政当局和汽车制造商之间更广泛的合作,以创建和维护最新的高精度地图供车辆使用。
以凯迪拉克的超级巡航系统为例,只有当车身雷达获取的信息与高精地图信息一致并通过安全检查时,车辆才能在预存了高精地图的高速公路上导航行驶。这种方法提供了高度的可靠性和可预测性,但高精地图所需要处理的数据量巨大,必须使用数据中心计算机集群来做处理,并且涉及很多并行计算和处理,这些对数据处理能力都是极大的考验;高精地图的实时更新也相当重要,道路环境有可能在不断的变化,需要实现快速有效的更新。以上这些由于记录地图和使用激光雷达设备制造车辆所需的努力,都使得实现无人驾驶所付出的成本相对更高。
3.以大众为代表的车联网定位
自动驾驶定位的另一种方法,不关注如何使汽车更灵活地适应环境,而是关注如何让环境为自动驾驶汽车服务,即创造更智能的环境。这减轻了车辆的负担,使其能够找出其环境中的所有不确定因素。在这种情况下,变化的环境因素会自己“找上门”,让车辆更准确地了解到周围环境的状况,建筑物可以直接“告诉”进入的汽车建筑区域和临时车道的具体位置。
大众汽车一直在努力建立自己作为V2X技术先驱的身份。在2017年大众就宣布所有2019年的车型都将配备完整的V2X功能套件。这些连接将提供大约500米以内的交通状况、事故和与当地环境共享的其他交通状况信息,甚至更广。
通过车联网方法进行定位的车辆通过GPS、RFID、传感器、摄像头图像处理等装置,在由车辆位置、速度和路线等信息构成的巨大交互网络中完成自身环境和状态信息的采集。在互联网信息库中,所有车辆将自身的各种信息传输汇聚到中央处理器,实现位置信息的交互共享。目前,国家强制要求所有运营车辆都要转配车载定位终端,同时接入相关企业服务平台,并最终接入省部级服务平台。
具体来说,车辆节点的定位和位置感知技术是车联网的技术核心。定位强调位置信息的唯一性,即定位得到的是真实的地理坐标信息,而位置感知侧重于节点之间在位置上的相对性,反映的是移动节点在时间维度和空间维度上的轨迹。
位置感知中,其位置信息是参照锚节点来计算的,而锚节点的产生视不同的算法实现而不同,主要采用非测距技术(Renge-free)来定位。无线测距的基本原理分为三边测量法、三角测量法、极大似然估计法和质心算法四种类型。三边测量法原理比较简单,是在已知3个锚节点二维坐标信息的前提下,就可以计算出1个未知节点的位置信息;三角测量法的原理是在网络中选定一系列的锚节点构成相互连接的三角形,通过测量某一三角形的三个角节点到某一位置节点的相对水平角度来对节点进行定位;极大似然估计法的原理是一句N个锚节点的坐标以及到未知节点的距离来对节点进行定位;质心算法中的质心是指多边形的几何中心,质心算法的实现原理是网络中的锚节点周期性地广播用于标识节点自身身份标识和坐标未知的分组,当未直接点接受到的锚节点的分组达到一个门限值时,或接受锚节点分组的时间达到预设值时,将由这些锚节点组成一个多边形,该多边形的质心便是该未知节点的坐标。
车联网的定位技术则是通过合理部署在城市交通道路周边的RSU,利用无线测距技术实现对移动中车联的实时定位。目前所采用的技术主要有利用接收信号强度值(RSSI)、到达时间(TOA)、到达时间差(TDOA)、到达角度(AOA)及到达频率差(FDOA)等。FDOA定位技术具有无模糊区、精度高等优点,它可以与TDOA等定位技术结合,实现更加完善的定位功能,成为车联网定位技术的一个发展方向。在此不做具体介绍。
虽然目前对车联网定位和感知技术的研究取得了一定的成果,但仍然有很多问题需要进一步解决,主要体现在专门针对车联网的定位和感知技术、室外移动三维定位技术、精准无缝的协作定位等方面。
当然,能够辅助实现定位目的的有例如GPS 、卫星、激光雷达、相机及其他多种传感器,本文介绍的三种方法是实现自动驾驶定位的三种不同思路,思路上的不同并不排斥具体使用技术上的借鉴与融合。
技术只是自动驾驶的一个方面,道路安全法律法规也需要适应自动驾驶市场的变化。今年福特、通用和丰田在自动驾驶汽车相关安全法规上就达成了合作伙伴关系。另外,在人类社会不断向前发展的进程中,经验是一个不可忽视的关键因素,无论现时段自动驾驶面临了什么小成就和大挫折,都必须清楚地明白一点:我们生活在技术不断创新的时代,新技术解决新困难,时间会说明自动驾驶是如何向我们一步步走来的。