大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
雷锋网按:作者地图传感器,本文系雷锋网(公众号:雷锋网)独家首发文章。本篇文章为《高精度地图系列》的开篇,地图传感器将会由浅入深为我们讲述高精度地图的原理和应用。
今年美国一辆特斯拉Model S在开启了自动驾驶的模式下发生车祸,导致驾驶员死亡,这也是自动驾驶技术应用以来第一起己知的导致死亡的车祸。
据事后的事故分析,当时这辆特斯拉Model S自动驾驶处于开启状态,车辆行驶在一条双向、有中央隔离带的公路上,此时一辆对向行驶的拖挂车在特斯拉Model S前方左拐。
在逆光的影响下,特斯拉Model S的传感器都没有成功的检测出前面出现的是一辆拐弯的拖挂车,从而导致车辆直接相撞。由此可见,单纯的使用雷达、摄像头、Lidar这类传感器感知是有一定的局限性,探测的范围是有限的,一旦感知错误,没有发现目标,或者发现得不及时,悲剧就有可能发生了。
那么假如在车上安装的传感器所能感知的范围之外,也就是常说的超视距范围外,如果有一张辅助的高精度地图能否避免这类事故?
我们可以提前500米就知道前方有个路口,而且是个三岔路口,并且知道这个路口的形状,有两条车道,甚至有可能知道,这个路口经常有大型拖挂车通过。
知道上述信息后,自动驾驶车辆的决策系统就在靠近路口的时候要求车辆需要提前减速,并且知道靠左行驶会更安全,所以也可以提前变换到左车道来,在结合道路的航向以及当时时间和天气,车辆也可以适当的调整摄像头的曝光参数以降低逆光的影响等等。
也许有了这些信息,这一类的事故就可以避免。
via:n1.itc.cn
- 这里提到的高精度地图,究竟是什么?
所谓的高精度地图,实际上是和我们现在已经普及的普通导航电子地图做比较来说的。
高精度,一方面是说高精度电子地图的绝对坐标精度更高。绝对坐标精度指的是地图上某个目标和真实的外部世界的事物之间的精度。
另一方面,高精度地图所含有的道路交通信息元素更丰富和细致。
普通的导航电子地图的绝对坐标精度大约在10米左右,由于是辅助驾驶员做导航使用,外加上GPS设备的定位精度也在10米左右,所以这样的精度对整体来说影响不大。
而应用在自动驾驶领域的高精度地图就不行了,自动驾驶汽车需要精确的知道自己在路上的位置,往往车辆离马路牙子和旁边的车道也就几十厘米左右,所以高精度地图的绝对精度一般都会在亚米级,也就是1米以内的精度,而且横向的相对精度(比如,车道和车道,车道和车道线的相对位置精度)往往还要更高。
高精度地图不仅有高精度的坐标,同时还有准确的道路形状,并且每个车道的坡度、曲率、航向、高程,侧倾的数据也都含有。
普通的导航电子地图会描绘出道路,而高精度地图不仅会描绘道路,更会描绘出一条道路上有多少条车道,会真实地反映出道路的实际样式。
比如真实道路在某些地方变宽了,那么高精度地图中的道路数据也是变宽了,而某些地方因为汇合了而变窄了,高精度地图也是一样。
另外,每条车道和车道之间的车道线,是虚线,实线还是双黄线,线的颜色,道路的隔离带,隔离带的材质甚至道路上的箭头、文字的内容,所在位置都会有描述。
还有为了自动驾驶的考虑,诸如每条车道的限速,推荐速度也需要一并提供。而像人行横道,道路沿线的看板,隔离带,限速标志,红绿灯,路边的电话停等等,这类我们通常统称为交通参与物的绝对地理坐标,物理尺寸以及他们的特质特性等也都会出现在高精度数据中。
除此以外,普通的导航电子地图和高精度地图的一大区别在于,普通的导航电子地图是面向驾驶员,供驾驶员使用的地图数据,而高精度地图是面向机器的供自动驾驶汽车使用的地图数据。
via:easyread.ph.126
普通的导航系统基于普通的导航电子地图提供基础道路导航功能,包括由A地到B地的路径规划,车辆和道路的定位匹配,用于查询目的地的POI检索,在结合地图显示和道路引导的功能等。
而作为驾驶员的人类具有提取信息、关联信息、过滤信息、视觉判断的能力,结合导航系统提供的这些相对粗略的信息就足够完成日常的导航和驾驶需要。
可是作为自动驾驶车辆来说,无法完成诸如联想、解意、信息整合等工作,也许有一天人工智能足以匹敌人脑,但目前还远达不到人脑的高度,所以必须提供精细的地图信息。
因此高精度地图就需要具备辅助完成实现高精度的定位位置功能、道路级和车道级的规划能力、以及车道级的引导能力。
但是,现在的高精度地图,因为所含盖的信息量太过丰富,如果给驾驶员直接使用,反而会带来干扰。
在这里还要提一下,介于普通的导航电子地图和高精度地图之间,还有一种应用在ADAS(主动安全场景)的地图。
这种地图的的精度一般在1-5米左右,它是在普通的导航电子地图的基础上进行了扩充,比如在道路上补充了一些坡度、曲率、航向的一些辅助信息。另外也涵盖了车道数量、车道宽度的信息,并且道路的精度和形状信息更加的准确,只是这些信息的精度都和高精度地图有一个数量级的差别。
这种地图在自动驾驶车辆的感知传感器足够丰富的时候也是能支持自动驾驶而使用的,它的大部分应用场景主要是为了主动安全使用的。
究竟什么才是高精度地图? (二)
ADAS(主动安全)中如何使用地图?
接着上次的话题,这次我们先讲讲ADAS(主动安全)中如何使用地图。
其实说到ADAS,我们首先想到的诸如ACC(Adaptive Cruise Control 自适应巡航),LDW(lane departure warning车道偏离预警),LKA(Lane keeping assist车道保持),FCW(Early Warning of Front Vehicle Collision前车碰撞预警)。而这些技术已经成熟,产品也已经量产,在近几年的高端车辆上装配,并且这些技术都和摄像头,毫米波雷达以及车身控制器有关,貌似和地图并没有多大关系。实际上如果结合了地图,这些功能会变得更强大。
下面我们来举几个例子。
ACC(自适应巡航)实际上是由驾驶员设置一个最高的巡航速度,车上由前置的传感器,如摄像头或毫米波雷达来确认车辆正前方的可通行区域内是否有车辆,如果有车辆,则在安全制动距离内跟车,如果没有车辆,则加速到设置的循航速度。注意这里要特别强调“车辆正前方”,也就是车头的直线方向。如果是在直线行驶,或者道路曲率几乎可以视为直线的情况下,这种自适应巡航的功能是很棒的。
可是如果在弯道中,如下图,左侧车道中的车辆的传感器会错误的认为右方车道的车辆在自己前方,于是立即减速。可实际上车辆完全可以保持正常速度过弯。
图片由作者手工绘制
亦或者,如下图中,左侧车道的车辆根本就察觉不到自己车道内前方转弯处有一辆车,也许车辆跟上去的时候,或者前车突然紧急刹车时,已经来不及减速,继而就容易发生事故了。
图片由作者手工绘制
除此以外,地图能提供道路的曲率,车辆在过弯道的时候可以提前减速,确保安全。或者在弯道的时候,摄像头的识别也可以针对性的变换识别模式,以提升弯道的车道线或交通参与物的检测准确性。
夜晚行车的时候,车辆也可以根据地图提供的曲率信息,在弯道处自动的左右调整车灯的照射角度,也可以根据地图提供的坡度信息,上下调整车灯的照射角度。
另一方面,目前很多摄像头识别的提供商通过摄像头来识别道路上的限速牌,来达到限速的功能,而其实地图却可以提供更好的服务,比如地图不仅可以告诉车辆在该路段上的限速,还可以在易发危险的路段,桥梁,隧道,上下匝道的时候都可以提供推荐的车速。不仅如此,还可以细化到各个车道的推荐车速,这里还需要强调下,在主动安全及自动驾驶的情况下,推荐的行驶速度比道路的限速更具有实用价值。
基于坡度数据,车辆在上坡前可以加油门,从而适当的加速,而当到达坡顶的时候减小油门,下坡的时候不加油,大陆公司做的电子地平线(Electronic Horizon)就是基于以上完成的,据说能节能达3%,该功能在商用车以及物流公司节约日常运营成本上的意义就更为突出。
也有较为初级的自动驾驶可以基于地图来实现,例如在高速公路上的自动驾驶场景上,直线行驶的时候或者说在车道内行驶的时候,车辆靠ADAS的主要功能完成,也就是ACC(自适应巡航)+LKA(车道保持)+FCW(前车预警)。
在需要变道的时候,这个变道的指令可以是人工打个转向灯,也可以是自动驾驶系统自己决策的变道,此时由地图提供的车线信息来确认当前车辆的区域是否可以变道。如果是要下匝道,地图可以提前一个很远的距离通知车辆前方有匝道口,此时车辆有足够的时间,借用地图数据先慢慢靠到最右侧车道,准备下匝道。而如果不下匝道,或者有汇入车流的地方,车流也可以有足够的时间先靠到最左侧的超车车道中,以保证行车的安全。
除此以外,还有大量脑洞大开的应用方法。
接着上次的话题,咱们讲地图在ADAS实现的技术方案以及ADASIS的工作原理。
乘着自动驾驶的这股热风,ADAS概念越来越为人们所熟知,ADAS产品也越来越普及,车厂与供应商们也都脑洞大开不断研发各种新的ADAS产品,提供越来越安全、轻松、环保的驾驶体验。例如:ACC、FCW、LKA、前车灯跟随等等。
ADAS的实现离不开车辆上的各种如摄像头和雷达等感知传感器,但无论是多么豪华的传感器都是有其感知的局限性,或者称为感知范围。如果能够让车辆获取到更远地方的数据,那么ADAS的功能必然可以得到增强。
如何得到远方的数据呢?
在目前的技术条件下,获取远方数据的方式有很多,比如V2X技术,通过前方车辆或道路两旁的V2X设备想车辆发送路况信息;
又或者通过云技术也可以实现,从云端下发车辆收集的道路信息。但是这些方式都存在建设成本相对较高、建设周期长的问题。
这时候地图被人们发掘出来,经过导航软件的普及欧美、日本、中国的电子地图实际上基本比较成熟,由于ADAS对地图的精度要求不是很高,和普通的导航电子地图精度要求差不多,只不过需要追加一些ADAS属性,比如曲率、坡度、Heading Angle、更加精确的车道数量等属性,制作成本相对不高。地图在ADAS系统中是作为一种特殊的传感器融入系统的(Map Sensor),提供道路先验知识。
目前应用比较成功的宝马ASR(Adaptive Speed Recommendation),ASR在减速的区域,会提前50-300米提醒用户减速,提前提醒的距离会依据目前车速、汽车刹车速度及司机反映时间。 在有转弯(curve)的路段,要考虑路宽、车道数目、整个路况等,ASR会综合以上因素计算合理的汽车速度。
ADAS系统包括感知系统、通信系统、决策系统和控制系统,地图信息如何在车辆的各个子系统中传输。
为了消除各图商、ADAS零部件供应商之间协议的差异,并且更有利于ADAS地图的推广,图商、车厂、ADAS零部件供应商联合起来成立了ADASIS Forum制定地图与ADAS系统之间的通信协议,也就是ADASIS。
ADASIS全称Advanced Driver Assistance Systems Interface Specifications,即是ADAS的接口说明。
ADASIS定义了地图在ADAS中的数据模型及传输方式,以CAN作为传输的通道。
现在DASIS Forum被划入ERTICO(ITS Europe,欧洲的智能交通组织)。
目前ADASIS已经发布了v1和v2版本。
在ADASIS v1中,系统会根据车辆当前位置以及最终目的地,提取所有的路径规划方案,将其中最为优先的路径称为最可能路径,而其他方案为备份方案。所有的方案都会被提取并进行重构,并最终给出选择哪条路径以及如何驾驶通过的建议,传递到不同的ADAS系统中,导致系统中传递的数据量过大,并没有真正被车厂量产,相反,越来越多的企业摈弃v1而推出了自己的通信方案。v1并不是一个成熟的协议,但验证了技术可行性。
由于ADASIS v1的不成熟严重影响了ADASIS的推行。所以ADASIS Forum开始讨论为什么其他企业不愿意使用ADASIS v1。最终,在排除企业内部因素之外,分析出这些企业不愿意使用v1的最主要原因在于标准过于复杂。复杂的通讯协议以及要求传输的数据过多,会让开发者在数据提取单元与重构单元上花费大量的时间与成本,尤其是在量产车型上,这显然是不被车厂接受的。因而,ADASIS Forum着手准备ADASIS v2(第二版ADASIS),着重在降低系统占用的CAN总线资源,以及使用最小原则提取并重构数据。目前ADASIS v2已经被多家车厂采用。
宏观上ADASIS v2结构中包含以下几个部分
-
ADAS Horizion Provider:地图信息提供者,负责数据组织与发送
-
ADAS Protocol:ADASIS协议
-
ADAS Application(ADAS Horizion Reconstructor):ADAS应用,负责数据接收与解析及数据的使用。
-
CAN Bus作为信息传送的通道
ADASIS v2 System Architecture
在ADASIS v2中,传输依照单路径(path)概念。也就是传递数据的时候只选择最有可能行驶的一条路径(实际上是地图上规划出来的路径),对于可能存在的备选路径,则以路径中的交叉路口(stub)来表示。每个交叉路口之间的路径称之为路段,路段被视为构成路径的基本单元,以每一个路段为单位,再进行数据的分析与利用。
ADASIS v2 Data Model
路段上属性则通过Profile和Segment来描述。Segment描述路段大部分相同的属性,Profile则描述剩余的属性,同时对属性数据进行压缩。另外传输数据时也不是每次发送所有数据,而是查询到数据变更或有新的数据才发送。这种数据组织与发送的方式去掉了大量冗余数据,减轻了通信负荷。
最后还有Position用来实时描述当前位置。
ADAS Horizion Provider遵循ADASIS协议将以上信息发送到CAN总线上。ADAS Application(ADAS Horizion Reconstructor)选择性的从CAN总线上获取自己有用的信息,重构地图,完成自己的应用。这样一来,ADAS地图数据可以有效的传输到使用端,并且车辆改造最小,对CAN总线的影响也最小,最重要的是一切都是符合车规要求。
不过,随着地图数据量的丰富,尤其进入到高精度地图时代,以及今后ADAS或自动驾驶的需要,都会对传输的数据量和传输频率提出更高要求,这时ADASIS v2也显现出他的不足。好在ADASIS Forum也在研究ADASIS v3,以及基于车身以太网的传输方式,所以对于未来的实现方式,我们拭目以待。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/166781.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...