环境感知

环境感知

面向结果的自动驾驶功能评价

博客别碰我的刘海 发表了文章 • 0 个评论 • 1875 次浏览 • 2019-04-23 10:34 • 来自相关话题

1引言 自动驾驶功能的重要性日益凸显,但仍没有统一的方法评价其性能。因为道路测试需要投入过多的时间和费用,因此当前业界普遍认为需要一种仿真测试方法。用于测试的仿真环境通常包括3个关键部分:车辆模型(本车)、被测系统模型(system under t ...查看全部
1引言
自动驾驶功能的重要性日益凸显,但仍没有统一的方法评价其性能。因为道路测试需要投入过多的时间和费用,因此当前业界普遍认为需要一种仿真测试方法。用于测试的仿真环境通常包括3个关键部分:车辆模型(本车)、被测系统模型(system under test , SUT, 此处即指ADF)和系统预期运行环境条件模型。环境条件通常概述于“场景”中,包括但不限于道路属性(车道数、坡度、出口、路障、道路条件等)、交通属性(其他交通参与者的数量和速度、其他驾驶员的可能模型)和总体环境条件(能见度、天气条件等)。典型的基于场景的ADF评价首先通过对真实数据分析识别得到相关交通状况,然后对场景进行建模并用于ADF的仿真和评价。
tu1.png
图1 总体评价结构
随着ADF功能性提高和运行持续时间延长,很难找到一组先验定义的相关场景。例如为了评价自适应巡航控制器(Adaptive Cruise Controller, ACC)的燃油节省量,场景中必须包括实际交通中经常出现的“正常工况”(normal cases);而对于安全性评价,导致事故的“极限工况”(limit cases)至关重要。目前为止,对于同一功能的使用场景并没有唯一的定义,以ACC为例,根据关注点是燃油经济性还是安全性,可以使用完全不同的场景进行评价。考虑到这一情况,献中推荐使用连续交通微观仿真环境,而不是纯粹基于场景进行测试,这些仿真环境包括旨在反映真实驾驶情况的交通模型。
仿真测试存在一些局限性。首先,仿真结果不是先验正确的,因为没有模型是完美的并且可以无限精确地表示真实行为。其次,重要特征可能在建模阶段受到人为影响,或者在仿真运行中表现不足或过多,导致评价结果出现偏差。此外,尽管相比于道路测试,仿真测试速度更快且重复性好,但若考虑所有工况,仿真仍需要大量时间。在实践中经常使用先验停止标准(a priori stopping criteria)来执行测试,例如每种工况的最长仿真时间或固定重复次数,由此得到的最终结果通常是无需进一步分析的某些绩效指标的平均值。
已有研究显示,在不评价统计特性的条件下使用和比较仿真结果可能会产生误导,因此我们建议将结果的统计显著性评价与仿真运行相关联,这可以为所有仿真运行确定先验显著性水平,以使结果有可比性或可用于其他方案的评价。
 
2评价方法
2.1 ADF目标确定
每个ADF具有至少有一个必须满足的关键功能,例如ACC的速度跟踪功能和制动辅助的紧急情况减速功能等,通常用与控制器任务直接相关的可测变量来量化其性能。如果我们用变量x表示本车状态,则控制器目标可用目标集X*进行识别。以ACC为例,目标集是本车的期望速度。在评价已定义的ADF质量,即实际数据与目标集之间的差距时,对于ACC,这可以是由周围交通的扰动引起的与期望速度的偏差。
[b]2.2 与目标一致的KPI定义[/b]
评价过程的第二步是定义一个能够“观察”SUT与期望目标或行为间偏差的指数。若我们将SUT的状态视为随机过程X(t),则关键绩效指标(Key Performance Index,KPI)可定义为在系统状态下通过定义函数f(KPI)得到的另一个随机过程Y(t)。原则上,选定的函数f(KPI)既不能忽略SUT由于测试过程中的扰动而产生的与其期望行为的偏差,也不能突出这一偏差。对函数f(KPI)的最低要求是单边有界,并在X*处达到其最小值。为了清楚起见,我们指出,原则上,KPI可以同时评估多个目标但不能作为风险函数。只有在进行单一安全评价的情况下才可以用风险函数表示KPI。
2.3 KPI描述统计值选定
由于KPI是一个随机变量,我们感兴趣的是它在统计方面的表征(本文中指其统计特征参数)。因此,所研究参数的随机“时刻”(平均值、方差或等效标准偏差)、中位数以及形状参数(如偏度、峰度、所研究参数的置信区间)是出于这一目的考虑的自然统计参数。用通用统计数据值q(KPI)描述KPI,并假设由于实际原因,q(KPI)是有限的。
这些参数的估计只能通过在仿真期间收集KPI测量值来完成。应特别注意用于收集测量值和估计随机过程统计数据的方法,因为一般来说它会影响估计。                                       
2.4 仿真流程定义
对于随机过程,文献中提供了大量针对期望算子的估计方法。通常,不同的估计程序可导致对相同量估计的不同,这些结果既受基础随机过程的性质的影响,也受到用于评价的样本的代表性的影响。另外,抽样过程也取决于估计目标。
第一种期望估计方法称为遍历。这一方法假设在足够长的观察时间内,随机过程的每个轨迹都将在相同的评价时刻显示其样本几何的相同特征,即状态空间平均值可以用时间平均值代替。第二种期望估计方法称为蒙特卡洛方法,这一方法将随机过程Y中的N个互相独立的、时长足够的仿真中出现的极限值视为总体样本。
2.5 收敛准则定义
仿真运行期间,模拟器产生的场景(包括周围交通和本车的轨迹)会扰乱SUT,并通过估计KPI的值测量实际数据与控制器目标间的偏差。经过一定的仿真时间(或n个样本)后,将不再有新事件产生,即KPI的统计量不会随着仿真时间的增加而显著变化。收敛意味着随着仿真时间的增加,统计量的估计值会收敛到一个恒定值,并且值置信水平很高。一般而言,从统计角度来看,关键是有足够的样本量以确保KPI统计量具有一定的置信度。
 
3应用案例及结果
3.1 应用案例
ACC在跟踪期望速度的同时,还应确保不会对周围交通造成危险。在本文中,我们以ACC功能评价为例应用所提出的方法。控制器输入为纵向加速度a,并考虑到真实驾驶情况,将a的值限定在±2.5m/s^2之间。控制器则根据本车状态变量进行控制,周围交通环境中的所有相关信息在建模中视为本车状态扰动。ACC功能被认为是在两种行为模式之间转换:本车速度控制目标为期望速度的巡航模式;本车速度控制目标为前车速度的跟车模式。对于两种行为模式需要分别选取合适的KPI。
本文中用于评价SUT的仿真环境包括在贝叶斯网络图形模型基础上建立的随机交通环境模型,交通参与者的预期运动位置建模则使用的是叫作条件线性高斯模型的一类特殊贝叶斯网络,根据其前后驾驶行为对其状态进行分区,针对每个预定义的前后驾驶行为(巡航、跟车、向左换道、向右换道)提出合理假设,并在实际交通测量数据基础上进行训练。
tu222.png
图2 仿真环境示意图(红色为本车)
由于ACC有两种运行状态,故f(KPI)由两部分组成,计算定义如下:
tu2.png

当相对速度小于0时,即本车速度小于前车速度,计算式中两者均不为0,即ACC功能性能损失增加。因此,该参数的引入可以防止ACC功能产生过于保守的减速行为。
f(KPI)的值在本文研究中需要进行两次估计分析。第一次估计分析采用的是遍历方法,随后采用蒙特卡洛方法对第一次分析所得的f(KPI)估计值进行第二次估计。
3.2 仿真结果
tu22.png
图3 某次仿真过程所得结果
对于图3中的仿真过程,本车最初处于巡航模式下,并在ACC的控制下以期望速度行驶,在此阶段,不对f(KPI)进行评价。一旦安全距离内出现前车,ACC则切换到跟车模式,并开始对f(KPI)进行评价。本文共进行了200次仿真,f(KPI)值的分布如图4所示。
涂.png
图4 f(KPI)值分布直方图和拟合曲线
本文同时研究了样本大小n对f(KPI)值置信区间的影响。按图5所示,直方图分布服从Gamma分布,且随着n的增加,95%置信区间变窄。
tu5.png
图5 样本大小对f(KPI)值置信区间的影响
图5的结果表明,为了在随机仿真环境中评估ADF,应仔细选择仿真持续时间。较短的仿真(本文中小于1000或2000个样本)可能得到误导性的性能评价,其结果仅表征特定仿真下的ADF行为。而从一定的仿真长度开始(本文中为3000-4000个样本),测试中的ADF性能变得可靠,且几乎独立于随机模型生成的仿真条件。
 
4结论和展望
本文提出了一种在随机仿真环境中评价自动驾驶功能的整体方法。本文讨论的关键问题是如何确定必要的仿真时间以获得可靠的评价结果。基于ACC的应用案例表明,随机环境中较短的仿真可能导致对ADF性能评价做出错误的结论。另一方面,过长的仿真并不能提供有关ADF性能的额外信息,且计算成本大幅提高。
目前的研究是在对正常交通行为进行校准的交通随机模型上进行的。这项工作可扩展至探索在不同校准或甚至产生更危险的情景特定校准下,KPI估计值如何变化。我们还期望通过使用基于KPI的ADF性能统计分析,以实现不同交通场景之间的比较(例如对于测试中的ADF更具挑战性的场景)以及不同ADF之间的比较(执行相同的操作任务)。一旦成功,还可以进一步预选出对相应ADF的测试来说至关重要的场景,这将意味着显著减少评价ADF所需的时间和成本。

谷歌ChauffeurNet:训练能够鲁棒地驾驶实车的网络

知识讲堂betty19920416 发表了文章 • 0 个评论 • 1746 次浏览 • 2019-04-23 10:21 • 来自相关话题

编者按:Waymo于2018年底发表了本论文,介绍如何利用并改进模仿学习以获得能够较为鲁棒的驾驶模型ChaufferNet。它与典型的端到端学习不同,采用的是mid-mid的方式,在仿真环境和实车测试中都有不错的表现。模型一方面基于大量数据模仿学习合理的驾驶行 ...查看全部
编者按:Waymo于2018年底发表了本论文,介绍如何利用并改进模仿学习以获得能够较为鲁棒的驾驶模型ChaufferNet。它与典型的端到端学习不同,采用的是mid-mid的方式,在仿真环境和实车测试中都有不错的表现。模型一方面基于大量数据模仿学习合理的驾驶行为,另一方面通过在合理驾驶轨迹上附加扰动以制造各种特殊的驾驶情形,结合对应的附加损失函数,训练网络如何应对扰动和避免不良行为。ChaufferNet驾驶模型具有较好的鲁棒性,虽然目前还不能够和运动规划方法竞争,但的确是机器学习驾驶模型前进的一大步。
 
 
摘要:
我们的目标是通过模仿学习训练出能足够鲁棒地驾驶真实车辆的网络。我们发现单纯的行为模仿不能应对复杂的驾驶场景,即使我们利用感知系统预处理传感器输入,同时利用控制器在车辆上执行模型输出:3000万量级的学习样本仍然不够。我们尝试利用在合理驾驶的数据上附加扰动得到的合成数据来辅助学习,创造出一些特别的驾驶情形,如车辆发生碰撞或驶离道路。我们不是纯粹模仿所有合理驾驶的数据,而是在模仿损失上增加了一些损失,用于惩罚不良的行为并鼓励学习的进展。在合理驾驶的数据上增加的扰动为这些损失提供了重要信号,并导致学习得到的模型具有鲁棒性。我们证明了ChauffeurNet模型可以应付仿真环境中的复杂情形且能够合理地应对随机因素,同时进行了实验对本文提出的各项改进的重要性加以说明。最后我们展示了使用训练得到的模型在现实世界中驾驶汽车的效果。
 
关键词:深度学习 mid-mid驾驶 驾驶行为学习 轨迹预测
 
 
1.介绍
 
驾驶员在驾驶时需要观察和理解环境中的各种物体,预测它们未来可能的行为和交互情况,然后思考如何控制汽车,在遵从道路交通规则的条件下安全到达目标位置。这项任务对于机器来说是很有挑战性,人类却可以很好地完成,因此模仿学习是解决这个问题的一种很有前景的方法。我们工作的目标就是使得模仿学习得到的模型能够达到可用于驾驶真实车辆的水平。我们在利用大量训练数据(3000万现实世界中合理驾驶的样本,相当于持续驾驶约60天)的基础上尽可能高效地构建了我们的系统。的确,端到端的驾驶行为学习有很多令人兴奋的地方。它们通常致力于通过学习,在相机或激光雷达数据等原始传感器输入数据的基础上,直接预测诸如转向或制动等原始控制输出。但为了降低样本的复杂性,我们选择了建立在感知和控制组件之上的中级输入和中级输出表示。我们使用能够加工处理原始传感器信息的感知系统来产生这种中级输入:俯视的环境表达和目标路线,车辆等物体被绘制为有向的边界框,道路信息和交通信号灯状态也在其中。我们将这种中级输入注入到一个名为ChauffeurNet的循环神经网络中,由这个网络输出一条驾驶轨迹,再由控制器将此驾驶轨迹转换为转向和加速度控制指令。使用这些中级表示的另一个优点是:网络既可以使用实际数据,也可以使用模拟数据来训练,且可以在部署到实车之前在闭环仿真中轻松完成测试和验证工作。
 
我们的第一个发现是,即使在拥有3000万个驾驶样本并使用中级输入和中级输出表示减轻感知与控制负担的条件下,单纯的模仿学习依然不能达到目标。例如我们发现这种情形:本车会与一辆停在狭窄街道一侧的车发生碰撞或者卡在这辆车后不动,然而此时避让和超车都是完全可行的。关键的挑战是我们需要闭环地运行系统,而误差的累积将会导致驾驶情形偏离训练时的分布。这一结果是单纯的模仿学习在驱动车辆驾驶领域具有局限性的很有价值的证据。此外我们还发现在模仿损失的基础上,增加一些抑制不良行为并鼓励学习进展的损失,同时增加附加了扰动的合成驾驶轨迹可以克服这一挑战。这些改进使得模型能够接触到发生碰撞和驶出道路等非常规行为,同时损失函数的增大将引导模型避免这些行为。正是由于采用中级的输入输出表示,我们才能得到大量这样的合成驾驶轨迹。这些扰动很难从原始传感器输入或直接馈送到车辆的控制器输出中生成。
 
我们首先在仿真中评估整个系统以及进行损失函数扩增和数据扩增的重要性,之后展示最终模型如何在现实世界中驾驶汽车,并协调处理涉及其他交通参与者、转弯、停车标志和交通信号灯等对象的驾驶情形。变道等具有高度互动性的驾驶情形,仍然需要在强化学习的框架内进行大量的探索。这就要求实现对其他交通参与者例如行人的模拟,而这种模拟也是一个正在迅速发展的值得探索的研究领域。本文的贡献可以理解为:在没有使用强化学习的条件下,我们仍然可以用纯粹的离线数据来完成更多的驾驶学习任务。
 
2. 相关工作
 
ALVINN上数十年的工作(Pomerleau(1989))揭示了浅层神经网络如何直接利用相机数据和激光测距数据使车辆沿着道路行驶。以端到端的方式学习自主驾驶在近些年掀起新的热潮。Chen等人最近的工作(2015)展示了使用一个卷积网络来预测可行驶空间,例如和前方车辆的距离。预测的可行驶空间可用于控制器的编程,控制在高速公路上行驶的车辆。NVIDIA的研究者们(Bojarski等人(2016,2017))展示了如何训练一个端到端的深度卷积神经网络,利用相机输出的数据作为输入,控制车辆的转向。Xu等人同样利用相机输出的数据,训练了一个神经网络用于预测离散的或连续的动作。Codevilla等人(2018)也训练了一个网络,使用相机的输出作为输入,使用高级的控制指令来输出对转向和加速度的控制。Kuefler等人(2017)使用生成对抗模仿学习(GAIL),使用简单的affordance-style特征作为输入,以克服基于行为复制策略得到的模型中经常出现的过大误差,因而对于扰动有更好的鲁棒性。Hecker等人最近(2018)训练了一个使用360度环视相机输出作为输入,包含目标路线规划模块的驾驶模型,可以预测转向和车速。CARLA模拟器(Dosovitskiy等人(2017))在Sauer等人的工作(2018)中都有用到,它可以基于传感器数据估计若干个可行驶空间并在仿真的城市环境中驾驶车辆。Muller等人(2018)利用和本文思路相似的中级表示,在仿真环境中使用CARLA训练了一个系统。具体的方法是从一个场景分割网络中训练驾驶策略,并输出高级的控制指令,方便了后续基于迁移学习的方法利用现实世界驾驶数据训练得到的一个不同的场景分割网络。Pan等人(2017)同样描述了如何利用基于学习的intermediate场景标注方法,将仿真环境中训练得到的模型向真实世界中迁移。Shalev-Shwartz等人(2016)提到在模拟器中使用强化学习训练机器完成诸如变道等复杂的且具有高度交互性驾驶任务。目前已经有机器学习之外的大量的车辆运动规划方面的工作,Parden等人(2016)对此给出了一个很好的调研。
 
3.模型架构
 
3.1输入输出表示
首先描述网络如何处理俯视的输入表示,进而输出可行驶的轨迹。在任何时间t,本车状态可以俯视坐标系中的坐标pt,θt,st来表示,其中pt=(xt,yt)表示位置,θt表示航向角或行驶方向,st表示速度。俯视的坐标系按照以下规则选定:本车在当前时刻t=0的位置p0始终位于图像中的固定位置(u0,v0)。为了在训练阶段扩增数据,每一个训练样本都在θ0±Δ的角度范围内随机选择坐标系的方向,其中θ0表示本车在当前时刻t=0的航向角或行驶方向。俯视图由一组分辨率为W×H的图像表示,地面的采样分辨率为φ米/像素。随着本车的移动,这些环境视图也发生移动,因此本车总是观察一个固定前视范围内的环境,即[Rforward=(H-v0)φ]米。这样就模拟出了车载的传感器只观察车辆前方Rforward米范围内的环境的情形。
 

1.webp_.jpg

                                                                                    图1:驾驶模型的输入(a-g)和输出(h)
 
如图1所示,模型的输入由几个大小为W×H,并且调整到俯视坐标系的图像组成。(a)路线图:一幅3通道彩色图像,包含各种地图特征如车道、停车标志、人行横道和路缘等。(b)交通信号灯:灰度图像的时间序列,序列中的每一帧表示一个过去时间步的交通信号灯状态。我们在每一帧中为每个车道的中心线着色,最亮的灰度级对应红灯,中间灰度级对应黄灯,较暗的灰度级对应绿灯或未知信号灯。(c)限速:单通道图像,车道中心的着色灰度与本车道对应的限制车速成比例。(d)路线:驾驶的目标路线,它由一个路线规划模块产生。(e)本车边界框:显示了本车在当前时间t=0的完整边界框。(f)环境中的动态对象:图像的时间序列,序列中用有向边界框的形式显示所有的动态物体(车辆,骑自行车者,行人等)。(g)本车的历史位姿:本车的在各个历史时刻的位姿,用单个灰度图像中某个点的运动轨迹表示。

2.webp_.jpg

图2:驾驶模型的训练 (a)ChauffeurNet的模型核心是一个FeatureNet网络和一个AgentRNN网络 (b)共同训练的路标预测网络和PerceptionRNN (c)训练的损失函数以蓝色显示,绿色部分代表真值。虚线箭头表示从一次迭代到下一次迭代的预测值的循环反馈。
 
我们使用δt的固定时间间隔,来采样过去或者未来时间点上的信息,例如上述输入中的交通信号灯状态和动态对象状态。在过去的Tscene秒内对交通信号灯和动态对象进行采样,在过去的Tpose秒甚至更长的时间间隔内对本车的位姿进行采样。这种简单的输入表示,特别是用边界框表示其他动态对象,使得从仿真或实际感知系统记录的检测和跟踪对象日志中生成输入数据变得更加容易。这样在实车运行之前,就可以在闭环仿真中完成测试和验证的工作。仿真数据的利用,使得模型可以充分探索现实中较少发生的驾驶情形,从而改进模型。例如在现实世界中,我们很难获得与发生碰撞相关的数据。使用二维的俯视图还意味着可以实现有效的卷积输入,允许以灵活且易读的方式表示各种数据以及它们的空间关系。使用I表示上面列举的输入图像的集合,ChauffeurNet模型便以这些输入为基础反复预测本车的未来位姿,如图1(h)中绿色的点所示。

3.webp_.jpg

                                                            图3:(a)ChauffeurNet概览    (b)多次迭代中的存储单元更新
 
公式1中,当前位姿p0是已知的输入,然后ChauffeurNet执行N次迭代并输出预测的未来轨迹{ pδt,p2δt,…,pNδt }和如未来速度等一些其他的属性。该轨迹可以输入到优化控制器内,以计算出具体的驾驶控制指令(例如转向和制动命令)。当然,这些控制指令要满足车辆动力学约束。不同类型的车辆可能利用不同的控制输出来实现相同的驾驶轨迹,这也印证了训练网络直接输出低层次的转向和加速度控制指令在这里是不太合适的。
 
3.2 模型设计
概括地说,驾驶模型由如图2所示的若干部分组成。图中(a)部分是ChauffeurNet模型的主要部分,由特征提取卷积网络(FeatureNet)组成。FeatureNet使用中级输入数据来创建可由其他网络共享的特征表示。这些特征被本车的循环神经网络(AgentRNN)使用,以迭代地预测驾驶轨迹中的后继点。轨迹中时刻t对应的点用位置pt=(xt,yt),航向角θt和速度st来描述。AgentRNN还在未来的每个时间步上,以heatmap的形式预测车辆的边界框。图的(b)部分可以看到另外两个网络,它们使用相同的特征表示作为输入共同训练。Road Mask网络预测视野中的可驾驶区域(道路与非道路),感知循环网络(PerceptionRNN)迭代地预测描述空间分布的heatmap。利用和主要任务共享的特征表示来很好地完成这些附加任务,改进了模型在完成主要任务基础上的泛化能力。图2(c)显示了训练模型过程中使用的各种损失,这些损失将在下面详细讨论。

                                                           
4.webp_.jpg

                                                                图4:信息流图表示的端到端驾驶软件架构
 
图3更详细地说明了ChauffeurNet模型。图1中的输入传递给具有skip-connections结构的卷积神经网络FeatureNet。FeatureNet输出的特征表示F中包含了环境的上下文信息。这些特征被提供给AgentRNN,并由AgentRNN基于一系列条件预测驾驶轨迹的下一个点pk以及预测本车边界框的heapmap:Bk。这些条件包括FeatureNet得到的特征表示F,迭代次数k:{1,…,N},对AgentRNN的过去获得的预测结果的记忆Mk-1,以及在前一次迭代中预测的本车边界框heatmap:Bk-1
                                                             
                                                                         
5.webp_.jpg

 
存储单元Mk是由单通道图像组成的叠加式存储单元。AgentRNN的第k次迭代中,存储单元(单通道图像)在AgentRNN预测的图像位置pk处增加1个点,然后此存储单元传递给下一次迭代。AgentRNN在heatmap上输出对本车下一位姿的预测,使用arg-max操作可从heatmap中获取位姿的粗略估计pk。AgentRNN采用一个较浅的且具有一个全连接层的卷积网络,对姿势δpk进行亚像素级别的细化,并估计出航向θk和速度sk。在训练时AgentRNN会展开固定次数的迭代,下面要描述的损失将在这些展开的迭代步中进行累加。这样之所以可行,是因为我们使用的是非传统的RNN,采用的存储单元是显式设计的而不是通过学习产生的。
 
3.3系统架构
图4表示的是在自动驾驶系统中如何使用神经网络的系统层面的概述。通过感知系统处理真实世界传感器输出或者从仿真环境获取,更新本车和环境状态。目标路径从路径规划模块获得,且根据本车是否能够跟随过去的目标路径驾驶进行动态更新。环境信息被整合到图1所示的输入图像中并传递给RNN,由RNN输出未来的轨迹并送到优化控制器,进而输出驱动车辆的低级控制信号(在现实世界或仿真环境中)。
 
 
4. 模仿合理行为
 
4.1 模仿损失
4.1.1本车位置,航向角和边界框预测
AgentRNN在每次迭代k产生三个输出:(1)基于空间softmax得到的预测路点在空间坐标系中的概率分布P
k(x,y)。(2)当前时间步k对应的预测本车边界框heatmap: Bk(x,y),基于逐像素的sigmoid激活函数生成,表示本车占据特定像素的概率。(3)回归获得的边界框航向角输出θk。掌握上述预测量真值的条件下,我们可以为每次迭代定义相应的损失:
 

                                                                                         
6.webp_.jpg

 
其中上标gt表示对应的真值,而H(a,b)是交叉熵损失函数。注意[Pgtk]是二值图像,只有对应目标真值坐标的像素的值才被设置为1。
 
4.1.2本车预测
预测网络在每一次迭代中,基于特征并且使用回归的方式,对粗略的路点估计结果生成亚像素级别细化的δp
k以及每个点的速度估计sk。我们对这两种输出均采用L1损失函数:
 

7.webp_.jpg

 
4.2 对过去运动行为的dropout
训练过程中,过去的运动历史被作为输入之一提供给模型。训练过程中的运动历史来自合理驾驶的示范,因此网络可以基于过去作出僵化的推断而不是发现行为背后的具体原因,类似“欺骗”。在进行闭环推理时这种“欺骗“就会崩溃,因为运动历史来自于网络本身在过去的预测。这样训练出来的网络,也许会只有在过去运动历史中发现减速时,才在停车标志前停车,永远不会在闭环推理时在停车标志前停车。为了解决这个问题,我们引入了一个针对运动历史的dropout机制:对于50%的样本,在输入数据中的本车历史位姿这一通道中,仅仅保留本车当前位姿(u0,v0)。这一点迫使网络寻找环境中的其他线索,来解释训练样本中的提供的未来运动数据。
 

8.webp_.jpg
图5:轨迹的扰动。(a)原始记录的训练样例,其中智能体沿着车道的中心行驶。 (b)扰动样例,通过扰动原始记录中当前智能体的位置(红色点)使其远离车道中心,然后拟合新的平滑轨迹,该轨迹使智能体沿车道中心返回到原始目标位置。
 
 
5. 在纯模仿之外的工作
 
5.1合成扰动
将模型作为闭环系统的一部分运行,随着时间的推移,输入数据会偏离训练时的分布。为了防止这种情况出现,我们在训练模型时对一部分本车轨迹的样本,附加现实中可能出现的各种扰动。轨迹的起点和终点保持不变,扰动施加在轨迹中点的周围,且在周围的多个轨迹点上得到平滑。定量地来看,各个轴上产生在[-0.5,0.5]m范围内均匀分布的随机抖动,航向角产生在[-π/3,π/3]弧度范围内的随机抖动。我们用平滑的轨迹拟合扰动后的点和原始的起点与终点。这类附加扰动的训练样本,使汽车在受到扰动后能够回到原来的行驶轨迹上。我们通过设置轨迹曲率的阈值,滤除了一些实际中不太可能出现的扰动后的轨迹。我们允许扰动后的轨迹与其他车辆发生碰撞或驶离道路,因为只有这样,网络才能在原有样本中没有类似情况出现的条件下,也能经历并且学会如何避免这样的行为。训练过程中我们给附加了扰动的样本的权重是真实样本的权重的1/10,避免学到的模型有始终在扰动状态下驾驶的倾向。
 
5.2 模仿损失之外的损失
5.2.1 碰撞损失

由于我们的训练数据没有任何实际碰撞,因此避免碰撞的想法是隐式的,不能很好地泛化。为了缓和这个问题我们增加了一个专门的损失函数,直接度量在每一个时间步上预测的边界框Bk与场景中所有物体的边界框真值的重叠率。
 

9.webp_.jpg

 
其中Bk是输出本车边界框预测的似然图,Objgtk是时间k对应的二值化的掩模图像,所有被其他动态物体(其他车辆,行人等)占据的像素的值都为1。训练过程中的任何时候,如果模型预测到将会发生碰撞,大的重叠率会造成的损失增加,进一步影响到模型更新的梯度,从而纠正这种错误。但是这种损失仅在训练的初始阶段有效,也就是在模型还没有能够预测出接近真值的位置时。在轨迹上附加扰动之后,这个问题得到了缓和。这是因为在附加扰动的样本中,人为制造出来的碰撞情形使得上述损失函数在训练过程中能够发挥出作用,影响模型更新的梯度。此外这种方法还达到了类似在强化学习中设置在线探索的效果。
 
5.2.2 驶离路面损失
轨迹扰动同时会产生车辆驶离道路或驶上路缘的情形。为了训练网络避免车辆驶上道路边缘,我们增加了一个专门的损失函数,在每一个时间步k上度量预测的本车边界框和表示视野中的道路和非道路区域二值掩模图像Roadgt的重叠率。
                                                           
                                                               
                                                         
9.webp_.jpg
   
 
5.2.3 目标轨迹几何损失
我们希望显式地约束本车,使其沿着独立于速度曲线的目标轨迹行驶。通过用平滑曲线拟合目标路点,并将此曲线调整为俯视坐标系中的二值化图像,来对目标轨迹几何形状进行建模。该曲线的宽度被设定为和本车宽度相等。我们用类似定义碰撞损失的方式,通过预测的本车边界框和二值化的目标轨迹几何图像Geomgt的重叠率,度量这种与目标轨迹几何形状相关的损失。边界框的任何不与目标几何轨迹重叠的部分,都将被转化为惩罚值并加入损失函数中。
 
                                                               
10.webp_.jpg


                                                               
11.webp_.jpg
图6:在样例输入上将预测和损失函数可视化。上面一行是输入的分辨率,而下面一行是当前智能体位置周围的放大视图。
 
5.2.4 附加损失
与预测本车轨迹类似,循环网络也可以用来预测其他交通参与者。因此我们添加了一个感知循环网络PerceptionRNN,它使用FeatureNet创建的共享特征F和它自己在前一次迭代预测的heatmap:Objk-1作为输入,并预测每次迭代的heatmap:Objk。Objk(x,y)表示k时刻位置(x,y)被动态物体占据的概率。对于k=0的迭代步,使用动态对象的真值数据输入到PerceptionRNN中。
 

11、12.jpg

 
5.3 Imitation Dropout
总的来说我们的损失可能分为两组。模仿损失如下:
 

13.webp_.jpg

 
环境损失如下:
                                                          
                                                           
14.webp_.jpg

 
模仿损失导致模型模仿合理驾驶的示范行为,而环境损失抑制了诸如碰撞等不良行为。为了进一步增加环境损失的有效性,我们试验时使用了具有随机退出机制的模仿损失,称为"imitation dropout"。在实验中我们证明"imitation dropout"相比于简单地降低模仿损失的权重,可以得到更好的驾驶模型。在"imitation dropout"过程中,每个训练样本的模仿损失wimit被按照一定的概率随机置为0或1。整体损失由下式给出:

15.webp_.jpg

 
 
6. 总结
 
在本文中,我们介绍了让模仿学习在现实世界的完成驾驶任务也能拥有良好表现的研究经验。我们发现成功的关键在于,在合理驾驶行为的基础上附加扰动合成出各种驾驶情形,并增加适当的损失来抑制不良的行为。这些改进可以使模型学会如何避免发生碰撞和驶离道路,即使这些情形在合理驾驶的样本中很少出现。为了支持这一点,并更好地利用合理驾驶的数据,我们使用了中级的输入和输出表示,从而轻松混合真实和仿真数据并减轻学习感知和控制的负担。基于这些要素我们得到了一个足以驾驶真实车辆的模型。虽然该模型还没有完全实现与运动规划方法展开竞争,但我们认为这是机器学习驾驶模型迈出的一大步。通过在模拟中探索罕见和困难的情景,对合理的驾驶行为进行彻底的增强(也许是在强化学习框架中完成),将是提高这些模型的性能并将其用于具有高度交互性的交通场景的关键。

新能源和智能化“攻陷”上海车展 这8款车不得不看

博客betty19920416 发表了文章 • 0 个评论 • 1608 次浏览 • 2019-04-18 11:19 • 来自相关话题

近日,点燃汽车爱好者热情的2019上海车展正如火如荼。 今年如往年一样,我们发现了一些令人激动的新车从概念设计走向落地,尽管与最初概念车模样略有不同,但在这些量产车型中,我们依然可以发现一些酷炫美观,令人惊喜的新型号。 在本次上海车展中 ...查看全部
近日,点燃汽车爱好者热情的2019上海车展正如火如荼。
今年如往年一样,我们发现了一些令人激动的新车从概念设计走向落地,尽管与最初概念车模样略有不同,但在这些量产车型中,我们依然可以发现一些酷炫美观,令人惊喜的新型号。
在本次上海车展中,汽车制造商们蜂拥而至,各自拿出杀手锏,一时间展出了几十种电动车,从豪华SUV到定价低于1万美元的微型/紧凑型电动车,它们将与燃油车在性能、成本以及外观上一较高下,下面网易智能为大家速览最受关注的几款新能源与智能化汽车:

特斯拉 Model Y
Model Y与Model 3基于同一平台打造,公用75%零件,保留Model 3无进气格栅前脸、犀利的前大灯、隐藏式把手等讨喜设计,保险杠位于雾灯和前大灯之间,再加上由于车顶增高带来的使发动机盖更具幅度的视觉错觉,整个前脸更具层次感。
内饰上,新车与Model 3基本一致,保留车顶全景天窗、1.9m?的储物空间,车内最大的亮点在于,除了常规的5座布局外,还将提供2+3+2的7座布局选择,分体式折叠第二排座椅,使得车内体积也将更加紧凑。
动力方面,Model Y将搭载Model 3的同款21700电池组,配合第三代超级充电桩,峰值充电功率可以达到250kW,是目前V2超充的两倍,充电5分钟行驶120公里,15分钟即可充至50%。

小鹏P7
小鹏汽车的目标是想要造年轻人喜欢的互联网汽车。何小鹏曾说:要想造车,车的基础部分最多也就是那样了,还是要在别的方向上找到突破口。于是,小鹏汽车更注重做适应中国市场的自动驾驶以及更贴近中国用户的车载互联网功能。
这款P7诞生自SEPA平台架构,底层硬件具备扩展性、兼容性、共用性和进化性;同时,P7搭载智能双擎高通骁龙820A车规级芯片、系统级自动驾驶芯片NVIDIA DRIVE Xavier,在人机交互和高级智能辅助驾驶方面将较G3有进一步提升,可以支持L3级别自动驾驶。
动力部分,新车搭载双电机四驱系统,官方称百公里加速进入四秒俱乐部,NEDC续航超过600km,车长达到4.9米;轴距达到3米;底盘和悬挂规格及调教越级对标德系豪华运动车型。

理想ONE
前不久,“理想智造”品牌已经正式更名为“理想”,口号是“为用户打造没有里程焦虑的智能电动车”,因而采取了一条和绝大部分新造车不同的路线,它打造的是一台增程式电动车,一台需要加油的电动车,某种程度上,它与日系的混合动力还是有些相似。
理想ONE定位为中大型SUV,车长超过5米,宽度接近2米。内饰上,理想ONE提供6座和7座两个版本,分别采用222和232的座椅布局,内部布置保证了充裕的三排乘坐空间。
动力方面,理想ONE采用增程式电驱动系统,前后双电机实现了电动四驱,其综合总功率为326马力,最大输出功率达到530牛·米,0-100公里/小时加速时间为6.5秒。

威马EX5 Pro
对比其他几家新造车企业,业界人士认为,威马更像新能源车界的小米。
外观上,威马EX5 Pro在沿用标准EX5的基础上,细节进行了一定程度的运动升级,包括19英寸专属低风阻轮毂、空气动力学运动套件等。此外将整车风阻系数降至0.3以下,辅以Pro专属龙胆蓝外观配色、冰原蓝内饰拼色主题。
内饰上,采用了超纤绒和真皮的搭配,配有11个扬声器的WM-Sonic 立体环绕音响,动力部分,威马EX5 Pro搭载Living Motion三电动能系统,可实现0.2秒快速动力响应和百公里加速8.1秒的表现。

极星Polestar 2
前不久,作为从沃尔沃高性能部门独立出来的Polestar正式发布官方中文名称“极星”,为了更好地实现本地化,Polestar选择与高德地图、科大讯飞、阿里巴巴人工智能实验室等展开合作,
内饰上,Polestar 2采用11英寸大屏,支持OTA空中升级,海外版搭载了谷歌Android HMI、车机版Google智能助手等智能应用,未来国内方面也会跟进语音助手功能。
动力方面,前后双电机的配置可以提供300千瓦的最大输出功率和660牛·米的峰值扭矩,百公里加速的“目标”时间为4.7秒,72千瓦时电池组在NEDC工况下的“目标”续航里程为500公里。

奥迪e-tron
40年前的燃油车时代,奥迪凭借quattro竖起了拥有赛道动力的豪车招牌;如今,奥迪用e-tron展示电动化决心。
奥迪e-tron是奥迪首款纯电动SUV,外观上采用了奥迪家族新的设计理念,大尺寸的六边形进气格栅搭配两侧尖锐、狭长的大灯组,真皮多功能方向盘和换挡拨片的组合让整车运动感十足。
内饰上,新车配备了全液晶仪表盘,且搭载了双触控屏,分别控制着多媒体娱乐系统和空调系统,同时更有全景影像为泊车提供更加全面和安全的引导。
动力方面,奥迪e-tron采用双电机四驱的驱动形式,最大功率300马力,0-100km/h加速的时间小于6秒,初创性能可与跑车相媲美。

奔驰EQC
奔驰EQC外观上很大程度的还原了Generation EQ概念车的设计语言。前脸设计在保留了传统进气格栅设计的同时又进行了密封处理,并搭配上可发光的奔驰 LOGO以及LOGO上方的灯带,营造出了不俗的质感。
内饰上, EQC采用了双10.25英寸显示屏作为仪表盘和中控大屏,装配有EQ系列车型专属的“电路板风格”的空调出风口、蓝紫色的仪表背光、氛围灯和全新的三辐式方向盘并拥有双拇指控制(Dual Thumb Controls)系统。
动力部分,梅赛德斯-奔驰 EQC于底盘上搭载了前后双电机,其中后电机负责提供大的推力,前电机负责兼顾日常的轻度使用,并可实现四轮驱动。此外,该车还装配有动态扭矩分布,当超出一定的运转范围,电控系统会在车轴间智能分布扭矩,这将为达到高扭矩创造足够条件。双电机的最大输出功率达到300kW(408PS)、最大扭矩765N·m,可实现5.1s完成0-100km/h的加速和180km/h的最高速度。
“大象转身难”,作为汽车行业巨头,奔驰的电动化之路举步维艰。但也有人认为,在全球车企迎接新能源化的过程中,相比于BBA中的另外两大豪华品牌,奔驰的转身相对还算灵活。按照计划,奔驰EQC新车将于2019年底在华实现国产化生产。但这还远远不够,在豪华车品牌的下一个电动车战场,奔驰不止要大象转身,还要与更多新入局车企比拼速度,这需要让大象“跑”起来。

比亚迪E2
比亚迪E2外观的整体设计风格融入了“Dragon Face”的设计元素,,新车前脸采用了六边形大尺寸前格栅设计,内部则以点阵式进行装点,配合两侧棱角锋利的大灯组以及线条夸张的L型进气口,车尾部分比前脸更加激进,尾灯采用折线设计造型。
内饰上e2的内饰和 e1基本保持一致,诸如全液晶仪表盘、智能旋转大屏和三幅运动化平底方向盘都被保留,但在最终量产时,是否调整还未知。
动力方面,新车将搭载永磁同步电机,最大功率为70kW,电池方面使用的是镍钴锰酸锂电池,新车的NEDC续航里程有望达到360km或以上。
在转向新能源的路上,比亚迪走得非常迅捷,在去年,比亚迪品牌内部新能源车型销量首次超过传统燃油车,同时并未局限于入门级车型,而是完成了下至10万,上至30万的全方位产品布局,成为电动车行业里,竞争力不容小觑的参与者。
2019是汽车行业巨变的年份,四化(电动化、智能化、网联化、共享化)浪潮席卷整个产业,新能源汽车不断涌现,它们是汽车新秀,也是燃油派劲敌,而且这一次,不再是空泛的预测,一切将成为现实。
在2019年的路上,不少新伙伴就要与我们相见,记住这些全新的面孔,或许在你的车库,就有专为它留下的一隅。网易智能将持续关注汽车行业全新的变化和趋势,明年车展见。

自动驾驶发展现状及热点研究——感知模块

知识讲堂奇点汽车 发表了文章 • 0 个评论 • 2112 次浏览 • 2019-04-01 13:36 • 来自相关话题

对自动驾驶而言,传感器、感知、地图定位和规划控制是目前研究的热点,本文奇点汽车美研中心首席科学家兼总裁黄浴博士从多个方面综述了目前自动驾驶的技术水平以及不同板块的重要性。感知模块 下面谈感知模块。 感 ...查看全部
对自动驾驶而言,传感器、感知、地图定位和规划控制是目前研究的热点,本文奇点汽车美研中心首席科学家兼总裁黄浴博士从多个方面综述了目前自动驾驶的技术水平以及不同板块的重要性。感知模块

下面谈感知模块

感知是基于传感器数据的,以前反复提过了,传感器融合是标配,信息越多越好吗,关键在于怎么融合最优。比如某个传感器失效怎么办?某个传感器数据质量变差(某个时候,比如隧道,比如天气,比如夜晚,比如高温低温等等造成的)怎么办?如果你要用数据训练一个感知融合模型,那么训练数据是否能够包括这些情况呢?

这里当然谈到深度学习了,而且深度学习也不仅仅用在图像数据,激光雷达点云数据也用,效果也非常好,明显胜过传统方法。不过,深度学习有弱点,毕竟还是靠大量数据“喂”出来的模型,有时候很敏感,比如像素上改变一点儿对人眼没什么而机器识别就造成错误,还有当识别类别增多性能会下降,同时出现一些奇怪的误判,比如谷歌曾经把黑人识别成猩猩。机器学习一个问题是泛化问题(generalization),如何避免overfitting是一个模型训练的普遍问题,当然大家都提出了不少解决方法,比如data augmentation,drop out等。

深度学习发展还是很快的,好的模型不断涌现,如ResNet, DenseNet;好的训练方法也是,比如BN成了标配,采用NAS基础上的AutoML基本上可以不用调参了(GPU设备很贵呀);具体应用上也是进步很大,比如faster RCNN,YOLO3等等。

在激光雷达数据上,最近深度学习应用发展很快,毕竟新吗,而且这种传感器会逐渐普及,成本也会降下来,毕竟是3-D的,比2-D图像还是好。这里要提到sync和calibration问题,要做好激光雷达和摄像头数据的同步也不容易,二者的坐标系校准也是,去年有个CNN模型叫RegNet,就是深度学习做二者calibration的。

7.jpg


8.jpg



谈到融合,这里包括几个意思,一是数据层的直接融合,前面提到硬件层可以直接完成,软件也可以,而且还可以解决硬件做不了的问题:激光雷达毕竟稀疏,越远越稀疏,有时候还会有“黑洞”,就是不反射的物质,比如车窗玻璃;而图像可以致密,分辨率也可以很高,毕竟造价便宜,二者在深度图(depth map)空间结合是一个互补,深度学习可以帮上忙,有兴趣的可以看看MIT的论文。

9.jpg



除了数据层,还有中间模型层融合,以及最后任务层(一般指多个模型结果输出)的融合,目前深度学习用在激光雷达数据以及结合图像数据融合的目标检测识别分割跟踪等方面有不少论文,基本可以在这三个层次划分。

很有趣的现象是,激光雷达点云投射到平面上变成图像数据是一个很讨巧的方法,而且鸟瞰平面比前视平面(摄像机方向)效果好,当然也有直接在3-D数据上做的,比如VoxelNet,PointNet。很多工作都是将图像领域成功的模型用在激光雷达数据上,做些调整和推广,比如faster RCNN,其中RPN和RCNN部分可以通过不同传感器数据训练。

这里是一个激光雷达+摄像头融合做目标检测的论文截图:

10.jpg



谈到深度学习在图像/视频/深度图/3-D点云上的应用,不局限在检测识别分割上,这个以后再谈吧,又要写一篇才行。

感知的任务是理解自动驾驶车的周围环境,除了定位跟地图有关,像障碍物检测,运动目标跟踪,红绿灯识别,道路标志识别,车道线检测(根据需要而定,比如有些地图直接用路标或者特征匹配实现定位,车道线就是由地图给出)都是感知的任务。更高级的任务会涉及对周围其他物体的行为预测,比如行人,尤其是路口行人过马路的预测,比如行驶车辆,到底是打算cut-in还是仅仅偏离了车道,在高速入口的车辆,到底是想加速先过还是减速等你,这些都是“老司机”很擅长的,而提供线索的恰恰是感知模块。

这里是一个做红绿灯检测识别的NN模型例子:


11.jpg


而一个检测路牌的NN模型:

12.jpg



这是一个车道线检测的NN模型LaneNet示意图:车道线proposal network和车道线localization network。

13.jpg

14.jpg




这个NN模型就是对行人预测的:

15.jpg



应用场景可以看下面的示意图:激光雷达点云作为输入

16.jpg



顺便说一下,我对一些大讲“感知已经OK,现在最重要的是规划决策”的言论难以苟同,毕竟感知在这些行为细节上缺乏充分的数据提供给预测和规划部分,所以也很难有更细腻的规划决策模型来用。当然采用大数据训练的规划决策模型可以包括这些,但仅仅凭轨迹/速度/加速度这些输入信息够吗?大家也可以注意到一些startup公司已经在展示人体运动跟踪,头部姿态,路上人工驾驶车辆的驾驶员视线方向 (gaze detection) 和面部表情/手势识别的结果,说明大家已经意识到这些信息的重要性。

这里展示最近一些基于深度学习的人体姿态研究论文截图:

17.jpg

18.jpg

19.jpg





另外,感知模型基本上是概率决策,是软的推理(soft inference),最后是最小化误差的硬决定(hard decision),所以误差是难免的。现在一些安全标准,比如ASIL,ISO26262, NHTSA,要求做到功能安全,还有最近的SOTIF,要求考虑unknown safe/unsafe,这些对感知在自动驾驶的作用是提出了更严格的标准。说白了就是,以前给出判断就行,现在必须给出判断的可靠性以及不自信的警告(confidence score)。有时候融合就要考虑这个问题,最好给出多个模型输出,当一个模型可靠性不高的时候,就要采用其他可靠性高的模型输出,当所有模型都不可靠,自然就是准备进入安全模式了。对突发性事故的适应性有多强,就考验安全模型了。

以前提到过L2-L3-L4演进式开发自动驾驶模式和L4这种终极自动驾驶开发模式的不同,提醒大家可以注意一个地方:特斯拉的演进模式在用户自己人工驾驶的时候仍然运行自动驾驶程序,称之为“影子”模式,当用户的驾驶动作和自动驾驶系统的判断出现矛盾的时候,相关上传的数据会引起重视,以帮助提升自动驾驶系统性能,比如一个立交桥出现,自动驾驶系统误认为是障碍物,而驾驶员毫无犹豫的冲过去,显然这种传感器数据会重新被标注用来训练更新模型,甚至引导工程师采集更多相关数据进行训练;另外,当驾驶员突然刹车或者避让,而自动驾驶系统认为道路无障的情况,收集数据的服务器一端也会将这种数据重新标注。

这种影子模式就是演进式开发模式系统升级的法宝,同时大量驾驶数据的收集也可以帮助规划决策的提升,这个下面再讲。相比之下,谷歌模式在安全员操控车辆时候,自然也在收集数据,当运行自动驾驶出现报警或者安全员觉得危险需要接管的时候,这种数据也会像影子模式一样需要注意。两种开发模式都会及时获取特别数据方法,唯一不同的是前者是付钱的(买车),而后者是要钱的(工资)。

无人驾驶环境感知设备中 激光雷达和摄像头各自的优缺点

博客tututu 发表了文章 • 0 个评论 • 2189 次浏览 • 2019-02-25 17:23 • 来自相关话题

目前,国外和国内做激光雷达的厂商并不多。比如 Velodyne 推出 16 线、32 线、 64 线和128线激光雷达产品。Quanergy 早期推出的 8 线激光雷达产品 M-8(固态激光雷达在研)。Ibeo 主要推出的是 4 线激光雷达产品,主要用于辅助驾 ...查看全部
目前,国外和国内做激光雷达的厂商并不多。比如 Velodyne 推出 16 线、32 线、 64 线和128线激光雷达产品。Quanergy 早期推出的 8 线激光雷达产品 M-8(固态激光雷达在研)。Ibeo 主要推出的是 4 线激光雷达产品,主要用于辅助驾驶。速腾聚创(RoboSense)推出的是 16 线激光雷达产品。
到底多少线的激光雷达产品才能符合无人驾驶厂商,包括传统汽车厂商、互联网造车公司的需求?
多线激光雷达,顾名思义,就是通过多个激光发射器在垂直方向上的分布,通过电机的旋转形成多条线束的扫描。多少线的激光雷达合适,主要是说多少线的激光雷达扫出来的物体能够适合算法的需求。理论上讲,当然是线束越多、越密,对环境描述就更加充分,这样还可以降低算法的要求。
业界普遍认为,像谷歌或百度使用的 64 线激光雷达产品,并不是激光雷达最终的产品形态。激光雷达的产品的方向肯定是小型化,而且还要不断减少两个相邻间发射器的垂直分辨率以达到更高线束。
激光雷达产品参数包括四方面:测量距离、测量精度、角度分辨率以及激光单点发射的速度。我主要讲分辨率的问题:一个是垂直分辨率,另一个是水平分辨率。
现在多线激光雷达水平可视角度是 360 度可视,垂直可视角度就是垂直方向上可视范围。分辨率与摄像头的像素是非常相似的,激光雷达最终形成的三维激光点云,类似于一幅图像有许多像素点。激光点云越密,感知的信息越全面。
水平方向上做到高分辨率其实不难,因为水平方向上是由电机带动的,所以水平分辨率可以做得很高。目前国内外激光雷达厂商的产品,水平分辨率为 0.1 度。
垂直分辨率是与发射器几何大小相关,也与其排布有关系,就是相邻两个发射器间隔做得越小,垂直分辨率也就会越小。可以看出来,线束的增加主要还是为了对同一物体描述得更加充分。如果是不通过减少垂直分辨率的方式来增加线束,其实意义不大。
如何去提高垂直分辨率?目前业界就是通过改变激光发射器和接收器的排布方式来实现:排得越密,垂直分辨率就可以做得很小。另一方面就是通过多个 16 线激光雷达耦合的方式,在不增加单个激光雷达垂直分辨率的情况下同样达到整体减小垂直分辨率的效果。
但是,这两种方法都有一定的缺陷。
第一种方法,如果在不增加垂直可视范围情况下增加线束,是有一定天花板的。因为激光发射器的几何大小很难进一步再缩小,比如说做到垂直 1 度的分辨率,如果想做到 0.1 度,几乎不可能。
第二种方法,多传感器耦合,即多个激光雷达耦合,因为它不是单一产品,那么对往后的校准将会有很高的要求。
激光雷达和摄像头分别完成什么工作?
无人驾驶过程中,环境感知信息主要有这几部分:一是行驶路径上的感知,对于结构化道路可能要感知的是行车线,就是我们所说的车道线以及道路的边缘、道路隔离物以及恶劣路况的识别;对非结构道路而言,其实会更加复杂。
周边物体感知,就是可能影响车辆通行性、安全性的静态物体和动态物体的识别,包括车辆,行人以及交通标志的识别,包括红绿灯识别和限速牌识别。
对于环境感知所需要的传感器,我们把它分成三类:
感知周围物体的传感器,包括激光雷达、摄像头和毫米波雷达这三类;
实现无人驾驶汽车定位的传感器,就是 GPS 、IMU 和 EnCODer;
其他传感器,指的是感知天气情况及温、湿度的传感器。
对于环境感知所需要的传感器,我们把它分成三类:
感知周围物体的传感器,包括激光雷达、摄像头和毫米波雷达这三类;
实现无人驾驶汽车定位的传感器,就是 GPS 、IMU 和 EnCODer;
其他传感器,指的是感知天气情况及温、湿度的传感器。
对车道线的检测主要分成三个步骤:
第一步,对获取到的图片预处理,拿到原始图像后,先通过处理变成一张灰度图,然后做图像增强;
第二步,对车道线进行特征提取,首先把经过图像增强后的图片进行二值化( 将图像上的像素点的灰度值设置为 0 或 255,也就是将整个图像呈现出明显的黑白效果),然后做边缘提取;
第三步,直线拟合。
车道线检测难点在于,对于某些车道线模糊或车道线被泥土覆盖的情况、对于黑暗环境或雨雪天气或者在光线不是特别好的情况下,它对摄像头识别和提取都会造成一定的难度。
--------------------- 
作者:jingChenGauss 
来源:CSDN 
原文:https://blog.csdn.net/lc574260570/article/details/84136936 

环境感知的主要范畴有哪些?

回复

问答tututu 发起了问题 • 2 人关注 • 0 个回复 • 2645 次浏览 • 2019-02-25 17:19 • 来自相关话题

帮你理解无人驾驶的环境感知和路径规划

博客tututu 发表了文章 • 0 个评论 • 1517 次浏览 • 2019-02-25 17:12 • 来自相关话题

据业内专家估计,无人驾驶汽车,2020年将可能达到技术成熟,大规模上路运营。今年的9月6日,美国众议院为全球第一部自动驾驶法案投票,让人们进一步看到了,无人驾驶临近的曙光。 作为一个技术控,忍不住想知道,在车来人往的繁华都市里,在崎岖不平的乡村小 ...查看全部
据业内专家估计,无人驾驶汽车,2020年将可能达到技术成熟,大规模上路运营。今年的9月6日,美国众议院为全球第一部自动驾驶法案投票,让人们进一步看到了,无人驾驶临近的曙光。
作为一个技术控,忍不住想知道,在车来人往的繁华都市里,在崎岖不平的乡村小路上,如果都能无人驾驶,它是怎样做到的?
闭上眼睛,按照我们熟悉的驾车过程设想一下, 开车上路这件事,涉及到四个方面:驾驶员,汽车,道路,行人和车辆等“共路人”。处理好无人车与这些主体之间的关系,无人车应该可以畅行无阻,指哪打哪了吧。
无人驾驶汽车,让汽车除了做好自己本职工作,还要做好“人”的工作。
我们通常对驾驶员的要求:会开车,会认路。
分解会开车技能,包括知道什么时候加油;什么时候刹车;有车同向或者相对开过来,怎样处理;有行人出现在路上,怎样处理;路上突然出现了大石头或者大水坑,怎样处理;下雨下雪,要不要处理。
分解会认路技能,从张庄到李庄,一共有几条路,怎么走;走在路上,知道自己现在在哪里,大约还要多久能够到达李庄。
无人驾驶系统就是代替人,做好开车和认路这两件事。
1环境感知
环境感知,认路能力的一部分,通过传感器,采集周边和自身信息,实时发送给处理器,形成对周边环境的认知模型。从尺度上划分,环境感知包括定位和环境扫描两个层次。环境感知是无人驾驶系统其它技术的数据基础,为路径规划、实时决策和行车控制提供依据。
按照前文所述的两个层次,选择适用的传感器。
定位,需要在大尺度上确定自己所处的位置,这个数据一般从GPS或者斗导航系统获得。环境扫描,选择的传感器,按照远近不同,环境不同,同时使用激光雷达,视觉识别系统和毫米波雷达,形成组合,共同完成。
1.1定位
定位主要依靠全球卫星定位系统,获得经纬坐标。GPS,每个智能手机都自带的功能,我们自然不陌生。北斗导航系统,是我天朝的骄傲。另外还有两个常见导航系统: Glonass,俄罗斯;伽利略,欧盟 。
定位系统的工作原理,不再赘述,自行百度。
在无人车上使用导航系统,获得车辆实时位置坐标,结合车辆管理系统内置的离线地图,可以直接调用以往积累的环境信息。比如Google拥有自己的3D地图,可以调用详细的街景信息。
我们常用的高德地图、百度地图,能够用于导航,都是这个道理。
1.2 环境扫描
按照适用距离,适用环境,精度,抗干扰能力要求不同去选择环境扫描传感器。目前常用的类型包括激光雷达,照相机,毫米波雷达,此外还有超声波传感器,红外线传感器等。
激光雷达
激光的发散度极小,可以远距离传播,在无人车上,激光雷达一般被用于远程扫描,发现需要分析的区域。
激光雷达按照光源数量不同,分成单线激光雷达和多线激光雷达。其中,多线激光雷达水平360°扫描,垂直方向,具备一个俯仰角,因此不但可以测量物体距离,还可以扫描障碍物三维尺寸。
激光雷达安装到无人车上以后,需要校准坐标系,才能获得正确的测量结果。
相机
把相机安置在无人车上,对周围环境拍照,以获得环境的图像信息,这就是应用在无人车上的机器视觉技术。为了适应无人车上天气变化,车体震动等造成的干扰,相机需要经过特别设计。
相机的种类主要有,单目相机,双目相机,全景相机三大类。
其中,单目相机造价低廉,应用较广,是机器视觉行业翘楚以色列Mobileye 公司的主打产品。
双目相机,由于在运动的无人车上,成像精度不高,并没有被特别广泛的应用。
全景相机,是利用多台相机同时拍照,再经过计算机图像处理,合成再现环境图景,是应用在无人车上进行目标识别的先进武器。但也有一个小问题,计算量比较大。
毫米波雷达
其功能与激光雷达近似,只是传播距离比较短。之所以还有用武之地,在于它的抗天气影响能力非常好。在大雾,大雨天气也能正常工作。
2 路径规划
路径规划,是解决无人车从起点到终点,走怎样路径的问题。规划的总体要求是不要撞到障碍物,保证自身的安全和可能相遇的车辆和行人的安全。在此基础上,再去依次追求下列目标:车体平稳,乘坐舒适,寻求路径最短等等。
路径规划问题可以分成两类,总体路径规划和局部路径规划。前者是指,给无人车设定目的地,从出发地到目的地,走哪条路最好。后者指,在行进过程中,遇到障碍、行人、车辆、甚至小动物等,怎样获得理想的行进路径。
2.1局部路径规划
目前使用比较多的路径规划算法有四种。
Dijkstra‘s算法,在起点周围不会遇到障碍的所有可能点中,寻找最短路径,规划结果比较优越,但在没有足够约束条件情况下,计算量巨大;
随机采样算法,是在Dijkstra‘s算法基础上改良的。为了减少计算量,加入了启发式算法,配合随机采样,只计算样本中的最短路径。解决了计算量的问题,但路径可能不连续。
基于差值曲线的路径规划,降低了计算量,同时解决了路径不连续的问题,是比较有优势的一种算法。
基于数值最优,把无人车姿态和环境约束条件都加入模型的一种算法,可以得到较好的规划结果,但对计算能力依赖性强。
2.2整体路径规划
整体路径规划,在结构化道路上,一般由卫星定位和导航系统来完成。利用卫星定位和自身保存的离线地图,规划出理想路径,过程与我们用手机导航去一个地方非常类似。这里的结构化道路,指的是边缘比较清晰规则,路面平坦,有明显的车道线及其它人工标记的行车道路。
环境感知就如同人的眼睛,这个类比,我们不难认同。
路径规划呢,其实也是对人类的模仿。只要移动身体,我们都在路径规划,但为什么我们没感觉呢?
从我们的老祖先到我们自己,路径规划这个动作延续了太长时间,为了节约大脑的运算资源,规划过程早已内化到本能当中,不需要经过左脑,就能做出正确规划。没有刻意的思考,就没有进入我们的意识。
试想,你在黑暗中行进,伸手不见五指山,你的精神状态是怎样的,你的内心戏是怎样的?
你一定是全身紧绷,一边在脑袋里单曲循环:前面有没有坑,有没有坑,一边用脚慢慢试探着前进。
在不能采用熟悉的方式(用眼睛观察周边)感知环境时,我们刻意规划路线的意识才显现出来。
环境感知,路径规划的方式就是人类的翻版。
最后,你认为,无人驾驶汽车,会在什么时间点真正进入我们的生活呢?

环境感知的主要范畴有哪些?

回复

问答tututu 发起了问题 • 2 人关注 • 0 个回复 • 2645 次浏览 • 2019-02-25 17:19 • 来自相关话题

面向结果的自动驾驶功能评价

博客别碰我的刘海 发表了文章 • 0 个评论 • 1875 次浏览 • 2019-04-23 10:34 • 来自相关话题

1引言 自动驾驶功能的重要性日益凸显,但仍没有统一的方法评价其性能。因为道路测试需要投入过多的时间和费用,因此当前业界普遍认为需要一种仿真测试方法。用于测试的仿真环境通常包括3个关键部分:车辆模型(本车)、被测系统模型(system under t ...查看全部
1引言
自动驾驶功能的重要性日益凸显,但仍没有统一的方法评价其性能。因为道路测试需要投入过多的时间和费用,因此当前业界普遍认为需要一种仿真测试方法。用于测试的仿真环境通常包括3个关键部分:车辆模型(本车)、被测系统模型(system under test , SUT, 此处即指ADF)和系统预期运行环境条件模型。环境条件通常概述于“场景”中,包括但不限于道路属性(车道数、坡度、出口、路障、道路条件等)、交通属性(其他交通参与者的数量和速度、其他驾驶员的可能模型)和总体环境条件(能见度、天气条件等)。典型的基于场景的ADF评价首先通过对真实数据分析识别得到相关交通状况,然后对场景进行建模并用于ADF的仿真和评价。
tu1.png
图1 总体评价结构
随着ADF功能性提高和运行持续时间延长,很难找到一组先验定义的相关场景。例如为了评价自适应巡航控制器(Adaptive Cruise Controller, ACC)的燃油节省量,场景中必须包括实际交通中经常出现的“正常工况”(normal cases);而对于安全性评价,导致事故的“极限工况”(limit cases)至关重要。目前为止,对于同一功能的使用场景并没有唯一的定义,以ACC为例,根据关注点是燃油经济性还是安全性,可以使用完全不同的场景进行评价。考虑到这一情况,献中推荐使用连续交通微观仿真环境,而不是纯粹基于场景进行测试,这些仿真环境包括旨在反映真实驾驶情况的交通模型。
仿真测试存在一些局限性。首先,仿真结果不是先验正确的,因为没有模型是完美的并且可以无限精确地表示真实行为。其次,重要特征可能在建模阶段受到人为影响,或者在仿真运行中表现不足或过多,导致评价结果出现偏差。此外,尽管相比于道路测试,仿真测试速度更快且重复性好,但若考虑所有工况,仿真仍需要大量时间。在实践中经常使用先验停止标准(a priori stopping criteria)来执行测试,例如每种工况的最长仿真时间或固定重复次数,由此得到的最终结果通常是无需进一步分析的某些绩效指标的平均值。
已有研究显示,在不评价统计特性的条件下使用和比较仿真结果可能会产生误导,因此我们建议将结果的统计显著性评价与仿真运行相关联,这可以为所有仿真运行确定先验显著性水平,以使结果有可比性或可用于其他方案的评价。
 
2评价方法
2.1 ADF目标确定
每个ADF具有至少有一个必须满足的关键功能,例如ACC的速度跟踪功能和制动辅助的紧急情况减速功能等,通常用与控制器任务直接相关的可测变量来量化其性能。如果我们用变量x表示本车状态,则控制器目标可用目标集X*进行识别。以ACC为例,目标集是本车的期望速度。在评价已定义的ADF质量,即实际数据与目标集之间的差距时,对于ACC,这可以是由周围交通的扰动引起的与期望速度的偏差。
[b]2.2 与目标一致的KPI定义[/b]
评价过程的第二步是定义一个能够“观察”SUT与期望目标或行为间偏差的指数。若我们将SUT的状态视为随机过程X(t),则关键绩效指标(Key Performance Index,KPI)可定义为在系统状态下通过定义函数f(KPI)得到的另一个随机过程Y(t)。原则上,选定的函数f(KPI)既不能忽略SUT由于测试过程中的扰动而产生的与其期望行为的偏差,也不能突出这一偏差。对函数f(KPI)的最低要求是单边有界,并在X*处达到其最小值。为了清楚起见,我们指出,原则上,KPI可以同时评估多个目标但不能作为风险函数。只有在进行单一安全评价的情况下才可以用风险函数表示KPI。
2.3 KPI描述统计值选定
由于KPI是一个随机变量,我们感兴趣的是它在统计方面的表征(本文中指其统计特征参数)。因此,所研究参数的随机“时刻”(平均值、方差或等效标准偏差)、中位数以及形状参数(如偏度、峰度、所研究参数的置信区间)是出于这一目的考虑的自然统计参数。用通用统计数据值q(KPI)描述KPI,并假设由于实际原因,q(KPI)是有限的。
这些参数的估计只能通过在仿真期间收集KPI测量值来完成。应特别注意用于收集测量值和估计随机过程统计数据的方法,因为一般来说它会影响估计。                                       
2.4 仿真流程定义
对于随机过程,文献中提供了大量针对期望算子的估计方法。通常,不同的估计程序可导致对相同量估计的不同,这些结果既受基础随机过程的性质的影响,也受到用于评价的样本的代表性的影响。另外,抽样过程也取决于估计目标。
第一种期望估计方法称为遍历。这一方法假设在足够长的观察时间内,随机过程的每个轨迹都将在相同的评价时刻显示其样本几何的相同特征,即状态空间平均值可以用时间平均值代替。第二种期望估计方法称为蒙特卡洛方法,这一方法将随机过程Y中的N个互相独立的、时长足够的仿真中出现的极限值视为总体样本。
2.5 收敛准则定义
仿真运行期间,模拟器产生的场景(包括周围交通和本车的轨迹)会扰乱SUT,并通过估计KPI的值测量实际数据与控制器目标间的偏差。经过一定的仿真时间(或n个样本)后,将不再有新事件产生,即KPI的统计量不会随着仿真时间的增加而显著变化。收敛意味着随着仿真时间的增加,统计量的估计值会收敛到一个恒定值,并且值置信水平很高。一般而言,从统计角度来看,关键是有足够的样本量以确保KPI统计量具有一定的置信度。
 
3应用案例及结果
3.1 应用案例
ACC在跟踪期望速度的同时,还应确保不会对周围交通造成危险。在本文中,我们以ACC功能评价为例应用所提出的方法。控制器输入为纵向加速度a,并考虑到真实驾驶情况,将a的值限定在±2.5m/s^2之间。控制器则根据本车状态变量进行控制,周围交通环境中的所有相关信息在建模中视为本车状态扰动。ACC功能被认为是在两种行为模式之间转换:本车速度控制目标为期望速度的巡航模式;本车速度控制目标为前车速度的跟车模式。对于两种行为模式需要分别选取合适的KPI。
本文中用于评价SUT的仿真环境包括在贝叶斯网络图形模型基础上建立的随机交通环境模型,交通参与者的预期运动位置建模则使用的是叫作条件线性高斯模型的一类特殊贝叶斯网络,根据其前后驾驶行为对其状态进行分区,针对每个预定义的前后驾驶行为(巡航、跟车、向左换道、向右换道)提出合理假设,并在实际交通测量数据基础上进行训练。
tu222.png
图2 仿真环境示意图(红色为本车)
由于ACC有两种运行状态,故f(KPI)由两部分组成,计算定义如下:
tu2.png

当相对速度小于0时,即本车速度小于前车速度,计算式中两者均不为0,即ACC功能性能损失增加。因此,该参数的引入可以防止ACC功能产生过于保守的减速行为。
f(KPI)的值在本文研究中需要进行两次估计分析。第一次估计分析采用的是遍历方法,随后采用蒙特卡洛方法对第一次分析所得的f(KPI)估计值进行第二次估计。
3.2 仿真结果
tu22.png
图3 某次仿真过程所得结果
对于图3中的仿真过程,本车最初处于巡航模式下,并在ACC的控制下以期望速度行驶,在此阶段,不对f(KPI)进行评价。一旦安全距离内出现前车,ACC则切换到跟车模式,并开始对f(KPI)进行评价。本文共进行了200次仿真,f(KPI)值的分布如图4所示。
涂.png
图4 f(KPI)值分布直方图和拟合曲线
本文同时研究了样本大小n对f(KPI)值置信区间的影响。按图5所示,直方图分布服从Gamma分布,且随着n的增加,95%置信区间变窄。
tu5.png
图5 样本大小对f(KPI)值置信区间的影响
图5的结果表明,为了在随机仿真环境中评估ADF,应仔细选择仿真持续时间。较短的仿真(本文中小于1000或2000个样本)可能得到误导性的性能评价,其结果仅表征特定仿真下的ADF行为。而从一定的仿真长度开始(本文中为3000-4000个样本),测试中的ADF性能变得可靠,且几乎独立于随机模型生成的仿真条件。
 
4结论和展望
本文提出了一种在随机仿真环境中评价自动驾驶功能的整体方法。本文讨论的关键问题是如何确定必要的仿真时间以获得可靠的评价结果。基于ACC的应用案例表明,随机环境中较短的仿真可能导致对ADF性能评价做出错误的结论。另一方面,过长的仿真并不能提供有关ADF性能的额外信息,且计算成本大幅提高。
目前的研究是在对正常交通行为进行校准的交通随机模型上进行的。这项工作可扩展至探索在不同校准或甚至产生更危险的情景特定校准下,KPI估计值如何变化。我们还期望通过使用基于KPI的ADF性能统计分析,以实现不同交通场景之间的比较(例如对于测试中的ADF更具挑战性的场景)以及不同ADF之间的比较(执行相同的操作任务)。一旦成功,还可以进一步预选出对相应ADF的测试来说至关重要的场景,这将意味着显著减少评价ADF所需的时间和成本。

谷歌ChauffeurNet:训练能够鲁棒地驾驶实车的网络

知识讲堂betty19920416 发表了文章 • 0 个评论 • 1746 次浏览 • 2019-04-23 10:21 • 来自相关话题

编者按:Waymo于2018年底发表了本论文,介绍如何利用并改进模仿学习以获得能够较为鲁棒的驾驶模型ChaufferNet。它与典型的端到端学习不同,采用的是mid-mid的方式,在仿真环境和实车测试中都有不错的表现。模型一方面基于大量数据模仿学习合理的驾驶行 ...查看全部
编者按:Waymo于2018年底发表了本论文,介绍如何利用并改进模仿学习以获得能够较为鲁棒的驾驶模型ChaufferNet。它与典型的端到端学习不同,采用的是mid-mid的方式,在仿真环境和实车测试中都有不错的表现。模型一方面基于大量数据模仿学习合理的驾驶行为,另一方面通过在合理驾驶轨迹上附加扰动以制造各种特殊的驾驶情形,结合对应的附加损失函数,训练网络如何应对扰动和避免不良行为。ChaufferNet驾驶模型具有较好的鲁棒性,虽然目前还不能够和运动规划方法竞争,但的确是机器学习驾驶模型前进的一大步。
 
 
摘要:
我们的目标是通过模仿学习训练出能足够鲁棒地驾驶真实车辆的网络。我们发现单纯的行为模仿不能应对复杂的驾驶场景,即使我们利用感知系统预处理传感器输入,同时利用控制器在车辆上执行模型输出:3000万量级的学习样本仍然不够。我们尝试利用在合理驾驶的数据上附加扰动得到的合成数据来辅助学习,创造出一些特别的驾驶情形,如车辆发生碰撞或驶离道路。我们不是纯粹模仿所有合理驾驶的数据,而是在模仿损失上增加了一些损失,用于惩罚不良的行为并鼓励学习的进展。在合理驾驶的数据上增加的扰动为这些损失提供了重要信号,并导致学习得到的模型具有鲁棒性。我们证明了ChauffeurNet模型可以应付仿真环境中的复杂情形且能够合理地应对随机因素,同时进行了实验对本文提出的各项改进的重要性加以说明。最后我们展示了使用训练得到的模型在现实世界中驾驶汽车的效果。
 
关键词:深度学习 mid-mid驾驶 驾驶行为学习 轨迹预测
 
 
1.介绍
 
驾驶员在驾驶时需要观察和理解环境中的各种物体,预测它们未来可能的行为和交互情况,然后思考如何控制汽车,在遵从道路交通规则的条件下安全到达目标位置。这项任务对于机器来说是很有挑战性,人类却可以很好地完成,因此模仿学习是解决这个问题的一种很有前景的方法。我们工作的目标就是使得模仿学习得到的模型能够达到可用于驾驶真实车辆的水平。我们在利用大量训练数据(3000万现实世界中合理驾驶的样本,相当于持续驾驶约60天)的基础上尽可能高效地构建了我们的系统。的确,端到端的驾驶行为学习有很多令人兴奋的地方。它们通常致力于通过学习,在相机或激光雷达数据等原始传感器输入数据的基础上,直接预测诸如转向或制动等原始控制输出。但为了降低样本的复杂性,我们选择了建立在感知和控制组件之上的中级输入和中级输出表示。我们使用能够加工处理原始传感器信息的感知系统来产生这种中级输入:俯视的环境表达和目标路线,车辆等物体被绘制为有向的边界框,道路信息和交通信号灯状态也在其中。我们将这种中级输入注入到一个名为ChauffeurNet的循环神经网络中,由这个网络输出一条驾驶轨迹,再由控制器将此驾驶轨迹转换为转向和加速度控制指令。使用这些中级表示的另一个优点是:网络既可以使用实际数据,也可以使用模拟数据来训练,且可以在部署到实车之前在闭环仿真中轻松完成测试和验证工作。
 
我们的第一个发现是,即使在拥有3000万个驾驶样本并使用中级输入和中级输出表示减轻感知与控制负担的条件下,单纯的模仿学习依然不能达到目标。例如我们发现这种情形:本车会与一辆停在狭窄街道一侧的车发生碰撞或者卡在这辆车后不动,然而此时避让和超车都是完全可行的。关键的挑战是我们需要闭环地运行系统,而误差的累积将会导致驾驶情形偏离训练时的分布。这一结果是单纯的模仿学习在驱动车辆驾驶领域具有局限性的很有价值的证据。此外我们还发现在模仿损失的基础上,增加一些抑制不良行为并鼓励学习进展的损失,同时增加附加了扰动的合成驾驶轨迹可以克服这一挑战。这些改进使得模型能够接触到发生碰撞和驶出道路等非常规行为,同时损失函数的增大将引导模型避免这些行为。正是由于采用中级的输入输出表示,我们才能得到大量这样的合成驾驶轨迹。这些扰动很难从原始传感器输入或直接馈送到车辆的控制器输出中生成。
 
我们首先在仿真中评估整个系统以及进行损失函数扩增和数据扩增的重要性,之后展示最终模型如何在现实世界中驾驶汽车,并协调处理涉及其他交通参与者、转弯、停车标志和交通信号灯等对象的驾驶情形。变道等具有高度互动性的驾驶情形,仍然需要在强化学习的框架内进行大量的探索。这就要求实现对其他交通参与者例如行人的模拟,而这种模拟也是一个正在迅速发展的值得探索的研究领域。本文的贡献可以理解为:在没有使用强化学习的条件下,我们仍然可以用纯粹的离线数据来完成更多的驾驶学习任务。
 
2. 相关工作
 
ALVINN上数十年的工作(Pomerleau(1989))揭示了浅层神经网络如何直接利用相机数据和激光测距数据使车辆沿着道路行驶。以端到端的方式学习自主驾驶在近些年掀起新的热潮。Chen等人最近的工作(2015)展示了使用一个卷积网络来预测可行驶空间,例如和前方车辆的距离。预测的可行驶空间可用于控制器的编程,控制在高速公路上行驶的车辆。NVIDIA的研究者们(Bojarski等人(2016,2017))展示了如何训练一个端到端的深度卷积神经网络,利用相机输出的数据作为输入,控制车辆的转向。Xu等人同样利用相机输出的数据,训练了一个神经网络用于预测离散的或连续的动作。Codevilla等人(2018)也训练了一个网络,使用相机的输出作为输入,使用高级的控制指令来输出对转向和加速度的控制。Kuefler等人(2017)使用生成对抗模仿学习(GAIL),使用简单的affordance-style特征作为输入,以克服基于行为复制策略得到的模型中经常出现的过大误差,因而对于扰动有更好的鲁棒性。Hecker等人最近(2018)训练了一个使用360度环视相机输出作为输入,包含目标路线规划模块的驾驶模型,可以预测转向和车速。CARLA模拟器(Dosovitskiy等人(2017))在Sauer等人的工作(2018)中都有用到,它可以基于传感器数据估计若干个可行驶空间并在仿真的城市环境中驾驶车辆。Muller等人(2018)利用和本文思路相似的中级表示,在仿真环境中使用CARLA训练了一个系统。具体的方法是从一个场景分割网络中训练驾驶策略,并输出高级的控制指令,方便了后续基于迁移学习的方法利用现实世界驾驶数据训练得到的一个不同的场景分割网络。Pan等人(2017)同样描述了如何利用基于学习的intermediate场景标注方法,将仿真环境中训练得到的模型向真实世界中迁移。Shalev-Shwartz等人(2016)提到在模拟器中使用强化学习训练机器完成诸如变道等复杂的且具有高度交互性驾驶任务。目前已经有机器学习之外的大量的车辆运动规划方面的工作,Parden等人(2016)对此给出了一个很好的调研。
 
3.模型架构
 
3.1输入输出表示
首先描述网络如何处理俯视的输入表示,进而输出可行驶的轨迹。在任何时间t,本车状态可以俯视坐标系中的坐标pt,θt,st来表示,其中pt=(xt,yt)表示位置,θt表示航向角或行驶方向,st表示速度。俯视的坐标系按照以下规则选定:本车在当前时刻t=0的位置p0始终位于图像中的固定位置(u0,v0)。为了在训练阶段扩增数据,每一个训练样本都在θ0±Δ的角度范围内随机选择坐标系的方向,其中θ0表示本车在当前时刻t=0的航向角或行驶方向。俯视图由一组分辨率为W×H的图像表示,地面的采样分辨率为φ米/像素。随着本车的移动,这些环境视图也发生移动,因此本车总是观察一个固定前视范围内的环境,即[Rforward=(H-v0)φ]米。这样就模拟出了车载的传感器只观察车辆前方Rforward米范围内的环境的情形。
 

1.webp_.jpg

                                                                                    图1:驾驶模型的输入(a-g)和输出(h)
 
如图1所示,模型的输入由几个大小为W×H,并且调整到俯视坐标系的图像组成。(a)路线图:一幅3通道彩色图像,包含各种地图特征如车道、停车标志、人行横道和路缘等。(b)交通信号灯:灰度图像的时间序列,序列中的每一帧表示一个过去时间步的交通信号灯状态。我们在每一帧中为每个车道的中心线着色,最亮的灰度级对应红灯,中间灰度级对应黄灯,较暗的灰度级对应绿灯或未知信号灯。(c)限速:单通道图像,车道中心的着色灰度与本车道对应的限制车速成比例。(d)路线:驾驶的目标路线,它由一个路线规划模块产生。(e)本车边界框:显示了本车在当前时间t=0的完整边界框。(f)环境中的动态对象:图像的时间序列,序列中用有向边界框的形式显示所有的动态物体(车辆,骑自行车者,行人等)。(g)本车的历史位姿:本车的在各个历史时刻的位姿,用单个灰度图像中某个点的运动轨迹表示。

2.webp_.jpg

图2:驾驶模型的训练 (a)ChauffeurNet的模型核心是一个FeatureNet网络和一个AgentRNN网络 (b)共同训练的路标预测网络和PerceptionRNN (c)训练的损失函数以蓝色显示,绿色部分代表真值。虚线箭头表示从一次迭代到下一次迭代的预测值的循环反馈。
 
我们使用δt的固定时间间隔,来采样过去或者未来时间点上的信息,例如上述输入中的交通信号灯状态和动态对象状态。在过去的Tscene秒内对交通信号灯和动态对象进行采样,在过去的Tpose秒甚至更长的时间间隔内对本车的位姿进行采样。这种简单的输入表示,特别是用边界框表示其他动态对象,使得从仿真或实际感知系统记录的检测和跟踪对象日志中生成输入数据变得更加容易。这样在实车运行之前,就可以在闭环仿真中完成测试和验证的工作。仿真数据的利用,使得模型可以充分探索现实中较少发生的驾驶情形,从而改进模型。例如在现实世界中,我们很难获得与发生碰撞相关的数据。使用二维的俯视图还意味着可以实现有效的卷积输入,允许以灵活且易读的方式表示各种数据以及它们的空间关系。使用I表示上面列举的输入图像的集合,ChauffeurNet模型便以这些输入为基础反复预测本车的未来位姿,如图1(h)中绿色的点所示。

3.webp_.jpg

                                                            图3:(a)ChauffeurNet概览    (b)多次迭代中的存储单元更新
 
公式1中,当前位姿p0是已知的输入,然后ChauffeurNet执行N次迭代并输出预测的未来轨迹{ pδt,p2δt,…,pNδt }和如未来速度等一些其他的属性。该轨迹可以输入到优化控制器内,以计算出具体的驾驶控制指令(例如转向和制动命令)。当然,这些控制指令要满足车辆动力学约束。不同类型的车辆可能利用不同的控制输出来实现相同的驾驶轨迹,这也印证了训练网络直接输出低层次的转向和加速度控制指令在这里是不太合适的。
 
3.2 模型设计
概括地说,驾驶模型由如图2所示的若干部分组成。图中(a)部分是ChauffeurNet模型的主要部分,由特征提取卷积网络(FeatureNet)组成。FeatureNet使用中级输入数据来创建可由其他网络共享的特征表示。这些特征被本车的循环神经网络(AgentRNN)使用,以迭代地预测驾驶轨迹中的后继点。轨迹中时刻t对应的点用位置pt=(xt,yt),航向角θt和速度st来描述。AgentRNN还在未来的每个时间步上,以heatmap的形式预测车辆的边界框。图的(b)部分可以看到另外两个网络,它们使用相同的特征表示作为输入共同训练。Road Mask网络预测视野中的可驾驶区域(道路与非道路),感知循环网络(PerceptionRNN)迭代地预测描述空间分布的heatmap。利用和主要任务共享的特征表示来很好地完成这些附加任务,改进了模型在完成主要任务基础上的泛化能力。图2(c)显示了训练模型过程中使用的各种损失,这些损失将在下面详细讨论。

                                                           
4.webp_.jpg

                                                                图4:信息流图表示的端到端驾驶软件架构
 
图3更详细地说明了ChauffeurNet模型。图1中的输入传递给具有skip-connections结构的卷积神经网络FeatureNet。FeatureNet输出的特征表示F中包含了环境的上下文信息。这些特征被提供给AgentRNN,并由AgentRNN基于一系列条件预测驾驶轨迹的下一个点pk以及预测本车边界框的heapmap:Bk。这些条件包括FeatureNet得到的特征表示F,迭代次数k:{1,…,N},对AgentRNN的过去获得的预测结果的记忆Mk-1,以及在前一次迭代中预测的本车边界框heatmap:Bk-1
                                                             
                                                                         
5.webp_.jpg

 
存储单元Mk是由单通道图像组成的叠加式存储单元。AgentRNN的第k次迭代中,存储单元(单通道图像)在AgentRNN预测的图像位置pk处增加1个点,然后此存储单元传递给下一次迭代。AgentRNN在heatmap上输出对本车下一位姿的预测,使用arg-max操作可从heatmap中获取位姿的粗略估计pk。AgentRNN采用一个较浅的且具有一个全连接层的卷积网络,对姿势δpk进行亚像素级别的细化,并估计出航向θk和速度sk。在训练时AgentRNN会展开固定次数的迭代,下面要描述的损失将在这些展开的迭代步中进行累加。这样之所以可行,是因为我们使用的是非传统的RNN,采用的存储单元是显式设计的而不是通过学习产生的。
 
3.3系统架构
图4表示的是在自动驾驶系统中如何使用神经网络的系统层面的概述。通过感知系统处理真实世界传感器输出或者从仿真环境获取,更新本车和环境状态。目标路径从路径规划模块获得,且根据本车是否能够跟随过去的目标路径驾驶进行动态更新。环境信息被整合到图1所示的输入图像中并传递给RNN,由RNN输出未来的轨迹并送到优化控制器,进而输出驱动车辆的低级控制信号(在现实世界或仿真环境中)。
 
 
4. 模仿合理行为
 
4.1 模仿损失
4.1.1本车位置,航向角和边界框预测
AgentRNN在每次迭代k产生三个输出:(1)基于空间softmax得到的预测路点在空间坐标系中的概率分布P
k(x,y)。(2)当前时间步k对应的预测本车边界框heatmap: Bk(x,y),基于逐像素的sigmoid激活函数生成,表示本车占据特定像素的概率。(3)回归获得的边界框航向角输出θk。掌握上述预测量真值的条件下,我们可以为每次迭代定义相应的损失:
 

                                                                                         
6.webp_.jpg

 
其中上标gt表示对应的真值,而H(a,b)是交叉熵损失函数。注意[Pgtk]是二值图像,只有对应目标真值坐标的像素的值才被设置为1。
 
4.1.2本车预测
预测网络在每一次迭代中,基于特征并且使用回归的方式,对粗略的路点估计结果生成亚像素级别细化的δp
k以及每个点的速度估计sk。我们对这两种输出均采用L1损失函数:
 

7.webp_.jpg

 
4.2 对过去运动行为的dropout
训练过程中,过去的运动历史被作为输入之一提供给模型。训练过程中的运动历史来自合理驾驶的示范,因此网络可以基于过去作出僵化的推断而不是发现行为背后的具体原因,类似“欺骗”。在进行闭环推理时这种“欺骗“就会崩溃,因为运动历史来自于网络本身在过去的预测。这样训练出来的网络,也许会只有在过去运动历史中发现减速时,才在停车标志前停车,永远不会在闭环推理时在停车标志前停车。为了解决这个问题,我们引入了一个针对运动历史的dropout机制:对于50%的样本,在输入数据中的本车历史位姿这一通道中,仅仅保留本车当前位姿(u0,v0)。这一点迫使网络寻找环境中的其他线索,来解释训练样本中的提供的未来运动数据。
 

8.webp_.jpg
图5:轨迹的扰动。(a)原始记录的训练样例,其中智能体沿着车道的中心行驶。 (b)扰动样例,通过扰动原始记录中当前智能体的位置(红色点)使其远离车道中心,然后拟合新的平滑轨迹,该轨迹使智能体沿车道中心返回到原始目标位置。
 
 
5. 在纯模仿之外的工作
 
5.1合成扰动
将模型作为闭环系统的一部分运行,随着时间的推移,输入数据会偏离训练时的分布。为了防止这种情况出现,我们在训练模型时对一部分本车轨迹的样本,附加现实中可能出现的各种扰动。轨迹的起点和终点保持不变,扰动施加在轨迹中点的周围,且在周围的多个轨迹点上得到平滑。定量地来看,各个轴上产生在[-0.5,0.5]m范围内均匀分布的随机抖动,航向角产生在[-π/3,π/3]弧度范围内的随机抖动。我们用平滑的轨迹拟合扰动后的点和原始的起点与终点。这类附加扰动的训练样本,使汽车在受到扰动后能够回到原来的行驶轨迹上。我们通过设置轨迹曲率的阈值,滤除了一些实际中不太可能出现的扰动后的轨迹。我们允许扰动后的轨迹与其他车辆发生碰撞或驶离道路,因为只有这样,网络才能在原有样本中没有类似情况出现的条件下,也能经历并且学会如何避免这样的行为。训练过程中我们给附加了扰动的样本的权重是真实样本的权重的1/10,避免学到的模型有始终在扰动状态下驾驶的倾向。
 
5.2 模仿损失之外的损失
5.2.1 碰撞损失

由于我们的训练数据没有任何实际碰撞,因此避免碰撞的想法是隐式的,不能很好地泛化。为了缓和这个问题我们增加了一个专门的损失函数,直接度量在每一个时间步上预测的边界框Bk与场景中所有物体的边界框真值的重叠率。
 

9.webp_.jpg

 
其中Bk是输出本车边界框预测的似然图,Objgtk是时间k对应的二值化的掩模图像,所有被其他动态物体(其他车辆,行人等)占据的像素的值都为1。训练过程中的任何时候,如果模型预测到将会发生碰撞,大的重叠率会造成的损失增加,进一步影响到模型更新的梯度,从而纠正这种错误。但是这种损失仅在训练的初始阶段有效,也就是在模型还没有能够预测出接近真值的位置时。在轨迹上附加扰动之后,这个问题得到了缓和。这是因为在附加扰动的样本中,人为制造出来的碰撞情形使得上述损失函数在训练过程中能够发挥出作用,影响模型更新的梯度。此外这种方法还达到了类似在强化学习中设置在线探索的效果。
 
5.2.2 驶离路面损失
轨迹扰动同时会产生车辆驶离道路或驶上路缘的情形。为了训练网络避免车辆驶上道路边缘,我们增加了一个专门的损失函数,在每一个时间步k上度量预测的本车边界框和表示视野中的道路和非道路区域二值掩模图像Roadgt的重叠率。
                                                           
                                                               
                                                         
9.webp_.jpg
   
 
5.2.3 目标轨迹几何损失
我们希望显式地约束本车,使其沿着独立于速度曲线的目标轨迹行驶。通过用平滑曲线拟合目标路点,并将此曲线调整为俯视坐标系中的二值化图像,来对目标轨迹几何形状进行建模。该曲线的宽度被设定为和本车宽度相等。我们用类似定义碰撞损失的方式,通过预测的本车边界框和二值化的目标轨迹几何图像Geomgt的重叠率,度量这种与目标轨迹几何形状相关的损失。边界框的任何不与目标几何轨迹重叠的部分,都将被转化为惩罚值并加入损失函数中。
 
                                                               
10.webp_.jpg


                                                               
11.webp_.jpg
图6:在样例输入上将预测和损失函数可视化。上面一行是输入的分辨率,而下面一行是当前智能体位置周围的放大视图。
 
5.2.4 附加损失
与预测本车轨迹类似,循环网络也可以用来预测其他交通参与者。因此我们添加了一个感知循环网络PerceptionRNN,它使用FeatureNet创建的共享特征F和它自己在前一次迭代预测的heatmap:Objk-1作为输入,并预测每次迭代的heatmap:Objk。Objk(x,y)表示k时刻位置(x,y)被动态物体占据的概率。对于k=0的迭代步,使用动态对象的真值数据输入到PerceptionRNN中。
 

11、12.jpg

 
5.3 Imitation Dropout
总的来说我们的损失可能分为两组。模仿损失如下:
 

13.webp_.jpg

 
环境损失如下:
                                                          
                                                           
14.webp_.jpg

 
模仿损失导致模型模仿合理驾驶的示范行为,而环境损失抑制了诸如碰撞等不良行为。为了进一步增加环境损失的有效性,我们试验时使用了具有随机退出机制的模仿损失,称为"imitation dropout"。在实验中我们证明"imitation dropout"相比于简单地降低模仿损失的权重,可以得到更好的驾驶模型。在"imitation dropout"过程中,每个训练样本的模仿损失wimit被按照一定的概率随机置为0或1。整体损失由下式给出:

15.webp_.jpg

 
 
6. 总结
 
在本文中,我们介绍了让模仿学习在现实世界的完成驾驶任务也能拥有良好表现的研究经验。我们发现成功的关键在于,在合理驾驶行为的基础上附加扰动合成出各种驾驶情形,并增加适当的损失来抑制不良的行为。这些改进可以使模型学会如何避免发生碰撞和驶离道路,即使这些情形在合理驾驶的样本中很少出现。为了支持这一点,并更好地利用合理驾驶的数据,我们使用了中级的输入和输出表示,从而轻松混合真实和仿真数据并减轻学习感知和控制的负担。基于这些要素我们得到了一个足以驾驶真实车辆的模型。虽然该模型还没有完全实现与运动规划方法展开竞争,但我们认为这是机器学习驾驶模型迈出的一大步。通过在模拟中探索罕见和困难的情景,对合理的驾驶行为进行彻底的增强(也许是在强化学习框架中完成),将是提高这些模型的性能并将其用于具有高度交互性的交通场景的关键。

新能源和智能化“攻陷”上海车展 这8款车不得不看

博客betty19920416 发表了文章 • 0 个评论 • 1608 次浏览 • 2019-04-18 11:19 • 来自相关话题

近日,点燃汽车爱好者热情的2019上海车展正如火如荼。 今年如往年一样,我们发现了一些令人激动的新车从概念设计走向落地,尽管与最初概念车模样略有不同,但在这些量产车型中,我们依然可以发现一些酷炫美观,令人惊喜的新型号。 在本次上海车展中 ...查看全部
近日,点燃汽车爱好者热情的2019上海车展正如火如荼。
今年如往年一样,我们发现了一些令人激动的新车从概念设计走向落地,尽管与最初概念车模样略有不同,但在这些量产车型中,我们依然可以发现一些酷炫美观,令人惊喜的新型号。
在本次上海车展中,汽车制造商们蜂拥而至,各自拿出杀手锏,一时间展出了几十种电动车,从豪华SUV到定价低于1万美元的微型/紧凑型电动车,它们将与燃油车在性能、成本以及外观上一较高下,下面网易智能为大家速览最受关注的几款新能源与智能化汽车:

特斯拉 Model Y
Model Y与Model 3基于同一平台打造,公用75%零件,保留Model 3无进气格栅前脸、犀利的前大灯、隐藏式把手等讨喜设计,保险杠位于雾灯和前大灯之间,再加上由于车顶增高带来的使发动机盖更具幅度的视觉错觉,整个前脸更具层次感。
内饰上,新车与Model 3基本一致,保留车顶全景天窗、1.9m?的储物空间,车内最大的亮点在于,除了常规的5座布局外,还将提供2+3+2的7座布局选择,分体式折叠第二排座椅,使得车内体积也将更加紧凑。
动力方面,Model Y将搭载Model 3的同款21700电池组,配合第三代超级充电桩,峰值充电功率可以达到250kW,是目前V2超充的两倍,充电5分钟行驶120公里,15分钟即可充至50%。

小鹏P7
小鹏汽车的目标是想要造年轻人喜欢的互联网汽车。何小鹏曾说:要想造车,车的基础部分最多也就是那样了,还是要在别的方向上找到突破口。于是,小鹏汽车更注重做适应中国市场的自动驾驶以及更贴近中国用户的车载互联网功能。
这款P7诞生自SEPA平台架构,底层硬件具备扩展性、兼容性、共用性和进化性;同时,P7搭载智能双擎高通骁龙820A车规级芯片、系统级自动驾驶芯片NVIDIA DRIVE Xavier,在人机交互和高级智能辅助驾驶方面将较G3有进一步提升,可以支持L3级别自动驾驶。
动力部分,新车搭载双电机四驱系统,官方称百公里加速进入四秒俱乐部,NEDC续航超过600km,车长达到4.9米;轴距达到3米;底盘和悬挂规格及调教越级对标德系豪华运动车型。

理想ONE
前不久,“理想智造”品牌已经正式更名为“理想”,口号是“为用户打造没有里程焦虑的智能电动车”,因而采取了一条和绝大部分新造车不同的路线,它打造的是一台增程式电动车,一台需要加油的电动车,某种程度上,它与日系的混合动力还是有些相似。
理想ONE定位为中大型SUV,车长超过5米,宽度接近2米。内饰上,理想ONE提供6座和7座两个版本,分别采用222和232的座椅布局,内部布置保证了充裕的三排乘坐空间。
动力方面,理想ONE采用增程式电驱动系统,前后双电机实现了电动四驱,其综合总功率为326马力,最大输出功率达到530牛·米,0-100公里/小时加速时间为6.5秒。

威马EX5 Pro
对比其他几家新造车企业,业界人士认为,威马更像新能源车界的小米。
外观上,威马EX5 Pro在沿用标准EX5的基础上,细节进行了一定程度的运动升级,包括19英寸专属低风阻轮毂、空气动力学运动套件等。此外将整车风阻系数降至0.3以下,辅以Pro专属龙胆蓝外观配色、冰原蓝内饰拼色主题。
内饰上,采用了超纤绒和真皮的搭配,配有11个扬声器的WM-Sonic 立体环绕音响,动力部分,威马EX5 Pro搭载Living Motion三电动能系统,可实现0.2秒快速动力响应和百公里加速8.1秒的表现。

极星Polestar 2
前不久,作为从沃尔沃高性能部门独立出来的Polestar正式发布官方中文名称“极星”,为了更好地实现本地化,Polestar选择与高德地图、科大讯飞、阿里巴巴人工智能实验室等展开合作,
内饰上,Polestar 2采用11英寸大屏,支持OTA空中升级,海外版搭载了谷歌Android HMI、车机版Google智能助手等智能应用,未来国内方面也会跟进语音助手功能。
动力方面,前后双电机的配置可以提供300千瓦的最大输出功率和660牛·米的峰值扭矩,百公里加速的“目标”时间为4.7秒,72千瓦时电池组在NEDC工况下的“目标”续航里程为500公里。

奥迪e-tron
40年前的燃油车时代,奥迪凭借quattro竖起了拥有赛道动力的豪车招牌;如今,奥迪用e-tron展示电动化决心。
奥迪e-tron是奥迪首款纯电动SUV,外观上采用了奥迪家族新的设计理念,大尺寸的六边形进气格栅搭配两侧尖锐、狭长的大灯组,真皮多功能方向盘和换挡拨片的组合让整车运动感十足。
内饰上,新车配备了全液晶仪表盘,且搭载了双触控屏,分别控制着多媒体娱乐系统和空调系统,同时更有全景影像为泊车提供更加全面和安全的引导。
动力方面,奥迪e-tron采用双电机四驱的驱动形式,最大功率300马力,0-100km/h加速的时间小于6秒,初创性能可与跑车相媲美。

奔驰EQC
奔驰EQC外观上很大程度的还原了Generation EQ概念车的设计语言。前脸设计在保留了传统进气格栅设计的同时又进行了密封处理,并搭配上可发光的奔驰 LOGO以及LOGO上方的灯带,营造出了不俗的质感。
内饰上, EQC采用了双10.25英寸显示屏作为仪表盘和中控大屏,装配有EQ系列车型专属的“电路板风格”的空调出风口、蓝紫色的仪表背光、氛围灯和全新的三辐式方向盘并拥有双拇指控制(Dual Thumb Controls)系统。
动力部分,梅赛德斯-奔驰 EQC于底盘上搭载了前后双电机,其中后电机负责提供大的推力,前电机负责兼顾日常的轻度使用,并可实现四轮驱动。此外,该车还装配有动态扭矩分布,当超出一定的运转范围,电控系统会在车轴间智能分布扭矩,这将为达到高扭矩创造足够条件。双电机的最大输出功率达到300kW(408PS)、最大扭矩765N·m,可实现5.1s完成0-100km/h的加速和180km/h的最高速度。
“大象转身难”,作为汽车行业巨头,奔驰的电动化之路举步维艰。但也有人认为,在全球车企迎接新能源化的过程中,相比于BBA中的另外两大豪华品牌,奔驰的转身相对还算灵活。按照计划,奔驰EQC新车将于2019年底在华实现国产化生产。但这还远远不够,在豪华车品牌的下一个电动车战场,奔驰不止要大象转身,还要与更多新入局车企比拼速度,这需要让大象“跑”起来。

比亚迪E2
比亚迪E2外观的整体设计风格融入了“Dragon Face”的设计元素,,新车前脸采用了六边形大尺寸前格栅设计,内部则以点阵式进行装点,配合两侧棱角锋利的大灯组以及线条夸张的L型进气口,车尾部分比前脸更加激进,尾灯采用折线设计造型。
内饰上e2的内饰和 e1基本保持一致,诸如全液晶仪表盘、智能旋转大屏和三幅运动化平底方向盘都被保留,但在最终量产时,是否调整还未知。
动力方面,新车将搭载永磁同步电机,最大功率为70kW,电池方面使用的是镍钴锰酸锂电池,新车的NEDC续航里程有望达到360km或以上。
在转向新能源的路上,比亚迪走得非常迅捷,在去年,比亚迪品牌内部新能源车型销量首次超过传统燃油车,同时并未局限于入门级车型,而是完成了下至10万,上至30万的全方位产品布局,成为电动车行业里,竞争力不容小觑的参与者。
2019是汽车行业巨变的年份,四化(电动化、智能化、网联化、共享化)浪潮席卷整个产业,新能源汽车不断涌现,它们是汽车新秀,也是燃油派劲敌,而且这一次,不再是空泛的预测,一切将成为现实。
在2019年的路上,不少新伙伴就要与我们相见,记住这些全新的面孔,或许在你的车库,就有专为它留下的一隅。网易智能将持续关注汽车行业全新的变化和趋势,明年车展见。

自动驾驶发展现状及热点研究——感知模块

知识讲堂奇点汽车 发表了文章 • 0 个评论 • 2112 次浏览 • 2019-04-01 13:36 • 来自相关话题

对自动驾驶而言,传感器、感知、地图定位和规划控制是目前研究的热点,本文奇点汽车美研中心首席科学家兼总裁黄浴博士从多个方面综述了目前自动驾驶的技术水平以及不同板块的重要性。感知模块 下面谈感知模块。 感 ...查看全部
对自动驾驶而言,传感器、感知、地图定位和规划控制是目前研究的热点,本文奇点汽车美研中心首席科学家兼总裁黄浴博士从多个方面综述了目前自动驾驶的技术水平以及不同板块的重要性。感知模块

下面谈感知模块

感知是基于传感器数据的,以前反复提过了,传感器融合是标配,信息越多越好吗,关键在于怎么融合最优。比如某个传感器失效怎么办?某个传感器数据质量变差(某个时候,比如隧道,比如天气,比如夜晚,比如高温低温等等造成的)怎么办?如果你要用数据训练一个感知融合模型,那么训练数据是否能够包括这些情况呢?

这里当然谈到深度学习了,而且深度学习也不仅仅用在图像数据,激光雷达点云数据也用,效果也非常好,明显胜过传统方法。不过,深度学习有弱点,毕竟还是靠大量数据“喂”出来的模型,有时候很敏感,比如像素上改变一点儿对人眼没什么而机器识别就造成错误,还有当识别类别增多性能会下降,同时出现一些奇怪的误判,比如谷歌曾经把黑人识别成猩猩。机器学习一个问题是泛化问题(generalization),如何避免overfitting是一个模型训练的普遍问题,当然大家都提出了不少解决方法,比如data augmentation,drop out等。

深度学习发展还是很快的,好的模型不断涌现,如ResNet, DenseNet;好的训练方法也是,比如BN成了标配,采用NAS基础上的AutoML基本上可以不用调参了(GPU设备很贵呀);具体应用上也是进步很大,比如faster RCNN,YOLO3等等。

在激光雷达数据上,最近深度学习应用发展很快,毕竟新吗,而且这种传感器会逐渐普及,成本也会降下来,毕竟是3-D的,比2-D图像还是好。这里要提到sync和calibration问题,要做好激光雷达和摄像头数据的同步也不容易,二者的坐标系校准也是,去年有个CNN模型叫RegNet,就是深度学习做二者calibration的。

7.jpg


8.jpg



谈到融合,这里包括几个意思,一是数据层的直接融合,前面提到硬件层可以直接完成,软件也可以,而且还可以解决硬件做不了的问题:激光雷达毕竟稀疏,越远越稀疏,有时候还会有“黑洞”,就是不反射的物质,比如车窗玻璃;而图像可以致密,分辨率也可以很高,毕竟造价便宜,二者在深度图(depth map)空间结合是一个互补,深度学习可以帮上忙,有兴趣的可以看看MIT的论文。

9.jpg



除了数据层,还有中间模型层融合,以及最后任务层(一般指多个模型结果输出)的融合,目前深度学习用在激光雷达数据以及结合图像数据融合的目标检测识别分割跟踪等方面有不少论文,基本可以在这三个层次划分。

很有趣的现象是,激光雷达点云投射到平面上变成图像数据是一个很讨巧的方法,而且鸟瞰平面比前视平面(摄像机方向)效果好,当然也有直接在3-D数据上做的,比如VoxelNet,PointNet。很多工作都是将图像领域成功的模型用在激光雷达数据上,做些调整和推广,比如faster RCNN,其中RPN和RCNN部分可以通过不同传感器数据训练。

这里是一个激光雷达+摄像头融合做目标检测的论文截图:

10.jpg



谈到深度学习在图像/视频/深度图/3-D点云上的应用,不局限在检测识别分割上,这个以后再谈吧,又要写一篇才行。

感知的任务是理解自动驾驶车的周围环境,除了定位跟地图有关,像障碍物检测,运动目标跟踪,红绿灯识别,道路标志识别,车道线检测(根据需要而定,比如有些地图直接用路标或者特征匹配实现定位,车道线就是由地图给出)都是感知的任务。更高级的任务会涉及对周围其他物体的行为预测,比如行人,尤其是路口行人过马路的预测,比如行驶车辆,到底是打算cut-in还是仅仅偏离了车道,在高速入口的车辆,到底是想加速先过还是减速等你,这些都是“老司机”很擅长的,而提供线索的恰恰是感知模块。

这里是一个做红绿灯检测识别的NN模型例子:


11.jpg


而一个检测路牌的NN模型:

12.jpg



这是一个车道线检测的NN模型LaneNet示意图:车道线proposal network和车道线localization network。

13.jpg

14.jpg




这个NN模型就是对行人预测的:

15.jpg



应用场景可以看下面的示意图:激光雷达点云作为输入

16.jpg



顺便说一下,我对一些大讲“感知已经OK,现在最重要的是规划决策”的言论难以苟同,毕竟感知在这些行为细节上缺乏充分的数据提供给预测和规划部分,所以也很难有更细腻的规划决策模型来用。当然采用大数据训练的规划决策模型可以包括这些,但仅仅凭轨迹/速度/加速度这些输入信息够吗?大家也可以注意到一些startup公司已经在展示人体运动跟踪,头部姿态,路上人工驾驶车辆的驾驶员视线方向 (gaze detection) 和面部表情/手势识别的结果,说明大家已经意识到这些信息的重要性。

这里展示最近一些基于深度学习的人体姿态研究论文截图:

17.jpg

18.jpg

19.jpg





另外,感知模型基本上是概率决策,是软的推理(soft inference),最后是最小化误差的硬决定(hard decision),所以误差是难免的。现在一些安全标准,比如ASIL,ISO26262, NHTSA,要求做到功能安全,还有最近的SOTIF,要求考虑unknown safe/unsafe,这些对感知在自动驾驶的作用是提出了更严格的标准。说白了就是,以前给出判断就行,现在必须给出判断的可靠性以及不自信的警告(confidence score)。有时候融合就要考虑这个问题,最好给出多个模型输出,当一个模型可靠性不高的时候,就要采用其他可靠性高的模型输出,当所有模型都不可靠,自然就是准备进入安全模式了。对突发性事故的适应性有多强,就考验安全模型了。

以前提到过L2-L3-L4演进式开发自动驾驶模式和L4这种终极自动驾驶开发模式的不同,提醒大家可以注意一个地方:特斯拉的演进模式在用户自己人工驾驶的时候仍然运行自动驾驶程序,称之为“影子”模式,当用户的驾驶动作和自动驾驶系统的判断出现矛盾的时候,相关上传的数据会引起重视,以帮助提升自动驾驶系统性能,比如一个立交桥出现,自动驾驶系统误认为是障碍物,而驾驶员毫无犹豫的冲过去,显然这种传感器数据会重新被标注用来训练更新模型,甚至引导工程师采集更多相关数据进行训练;另外,当驾驶员突然刹车或者避让,而自动驾驶系统认为道路无障的情况,收集数据的服务器一端也会将这种数据重新标注。

这种影子模式就是演进式开发模式系统升级的法宝,同时大量驾驶数据的收集也可以帮助规划决策的提升,这个下面再讲。相比之下,谷歌模式在安全员操控车辆时候,自然也在收集数据,当运行自动驾驶出现报警或者安全员觉得危险需要接管的时候,这种数据也会像影子模式一样需要注意。两种开发模式都会及时获取特别数据方法,唯一不同的是前者是付钱的(买车),而后者是要钱的(工资)。

无人驾驶环境感知设备中 激光雷达和摄像头各自的优缺点

博客tututu 发表了文章 • 0 个评论 • 2189 次浏览 • 2019-02-25 17:23 • 来自相关话题

目前,国外和国内做激光雷达的厂商并不多。比如 Velodyne 推出 16 线、32 线、 64 线和128线激光雷达产品。Quanergy 早期推出的 8 线激光雷达产品 M-8(固态激光雷达在研)。Ibeo 主要推出的是 4 线激光雷达产品,主要用于辅助驾 ...查看全部
目前,国外和国内做激光雷达的厂商并不多。比如 Velodyne 推出 16 线、32 线、 64 线和128线激光雷达产品。Quanergy 早期推出的 8 线激光雷达产品 M-8(固态激光雷达在研)。Ibeo 主要推出的是 4 线激光雷达产品,主要用于辅助驾驶。速腾聚创(RoboSense)推出的是 16 线激光雷达产品。
到底多少线的激光雷达产品才能符合无人驾驶厂商,包括传统汽车厂商、互联网造车公司的需求?
多线激光雷达,顾名思义,就是通过多个激光发射器在垂直方向上的分布,通过电机的旋转形成多条线束的扫描。多少线的激光雷达合适,主要是说多少线的激光雷达扫出来的物体能够适合算法的需求。理论上讲,当然是线束越多、越密,对环境描述就更加充分,这样还可以降低算法的要求。
业界普遍认为,像谷歌或百度使用的 64 线激光雷达产品,并不是激光雷达最终的产品形态。激光雷达的产品的方向肯定是小型化,而且还要不断减少两个相邻间发射器的垂直分辨率以达到更高线束。
激光雷达产品参数包括四方面:测量距离、测量精度、角度分辨率以及激光单点发射的速度。我主要讲分辨率的问题:一个是垂直分辨率,另一个是水平分辨率。
现在多线激光雷达水平可视角度是 360 度可视,垂直可视角度就是垂直方向上可视范围。分辨率与摄像头的像素是非常相似的,激光雷达最终形成的三维激光点云,类似于一幅图像有许多像素点。激光点云越密,感知的信息越全面。
水平方向上做到高分辨率其实不难,因为水平方向上是由电机带动的,所以水平分辨率可以做得很高。目前国内外激光雷达厂商的产品,水平分辨率为 0.1 度。
垂直分辨率是与发射器几何大小相关,也与其排布有关系,就是相邻两个发射器间隔做得越小,垂直分辨率也就会越小。可以看出来,线束的增加主要还是为了对同一物体描述得更加充分。如果是不通过减少垂直分辨率的方式来增加线束,其实意义不大。
如何去提高垂直分辨率?目前业界就是通过改变激光发射器和接收器的排布方式来实现:排得越密,垂直分辨率就可以做得很小。另一方面就是通过多个 16 线激光雷达耦合的方式,在不增加单个激光雷达垂直分辨率的情况下同样达到整体减小垂直分辨率的效果。
但是,这两种方法都有一定的缺陷。
第一种方法,如果在不增加垂直可视范围情况下增加线束,是有一定天花板的。因为激光发射器的几何大小很难进一步再缩小,比如说做到垂直 1 度的分辨率,如果想做到 0.1 度,几乎不可能。
第二种方法,多传感器耦合,即多个激光雷达耦合,因为它不是单一产品,那么对往后的校准将会有很高的要求。
激光雷达和摄像头分别完成什么工作?
无人驾驶过程中,环境感知信息主要有这几部分:一是行驶路径上的感知,对于结构化道路可能要感知的是行车线,就是我们所说的车道线以及道路的边缘、道路隔离物以及恶劣路况的识别;对非结构道路而言,其实会更加复杂。
周边物体感知,就是可能影响车辆通行性、安全性的静态物体和动态物体的识别,包括车辆,行人以及交通标志的识别,包括红绿灯识别和限速牌识别。
对于环境感知所需要的传感器,我们把它分成三类:
感知周围物体的传感器,包括激光雷达、摄像头和毫米波雷达这三类;
实现无人驾驶汽车定位的传感器,就是 GPS 、IMU 和 EnCODer;
其他传感器,指的是感知天气情况及温、湿度的传感器。
对于环境感知所需要的传感器,我们把它分成三类:
感知周围物体的传感器,包括激光雷达、摄像头和毫米波雷达这三类;
实现无人驾驶汽车定位的传感器,就是 GPS 、IMU 和 EnCODer;
其他传感器,指的是感知天气情况及温、湿度的传感器。
对车道线的检测主要分成三个步骤:
第一步,对获取到的图片预处理,拿到原始图像后,先通过处理变成一张灰度图,然后做图像增强;
第二步,对车道线进行特征提取,首先把经过图像增强后的图片进行二值化( 将图像上的像素点的灰度值设置为 0 或 255,也就是将整个图像呈现出明显的黑白效果),然后做边缘提取;
第三步,直线拟合。
车道线检测难点在于,对于某些车道线模糊或车道线被泥土覆盖的情况、对于黑暗环境或雨雪天气或者在光线不是特别好的情况下,它对摄像头识别和提取都会造成一定的难度。
--------------------- 
作者:jingChenGauss 
来源:CSDN 
原文:https://blog.csdn.net/lc574260570/article/details/84136936 

帮你理解无人驾驶的环境感知和路径规划

博客tututu 发表了文章 • 0 个评论 • 1517 次浏览 • 2019-02-25 17:12 • 来自相关话题

据业内专家估计,无人驾驶汽车,2020年将可能达到技术成熟,大规模上路运营。今年的9月6日,美国众议院为全球第一部自动驾驶法案投票,让人们进一步看到了,无人驾驶临近的曙光。 作为一个技术控,忍不住想知道,在车来人往的繁华都市里,在崎岖不平的乡村小 ...查看全部
据业内专家估计,无人驾驶汽车,2020年将可能达到技术成熟,大规模上路运营。今年的9月6日,美国众议院为全球第一部自动驾驶法案投票,让人们进一步看到了,无人驾驶临近的曙光。
作为一个技术控,忍不住想知道,在车来人往的繁华都市里,在崎岖不平的乡村小路上,如果都能无人驾驶,它是怎样做到的?
闭上眼睛,按照我们熟悉的驾车过程设想一下, 开车上路这件事,涉及到四个方面:驾驶员,汽车,道路,行人和车辆等“共路人”。处理好无人车与这些主体之间的关系,无人车应该可以畅行无阻,指哪打哪了吧。
无人驾驶汽车,让汽车除了做好自己本职工作,还要做好“人”的工作。
我们通常对驾驶员的要求:会开车,会认路。
分解会开车技能,包括知道什么时候加油;什么时候刹车;有车同向或者相对开过来,怎样处理;有行人出现在路上,怎样处理;路上突然出现了大石头或者大水坑,怎样处理;下雨下雪,要不要处理。
分解会认路技能,从张庄到李庄,一共有几条路,怎么走;走在路上,知道自己现在在哪里,大约还要多久能够到达李庄。
无人驾驶系统就是代替人,做好开车和认路这两件事。
1环境感知
环境感知,认路能力的一部分,通过传感器,采集周边和自身信息,实时发送给处理器,形成对周边环境的认知模型。从尺度上划分,环境感知包括定位和环境扫描两个层次。环境感知是无人驾驶系统其它技术的数据基础,为路径规划、实时决策和行车控制提供依据。
按照前文所述的两个层次,选择适用的传感器。
定位,需要在大尺度上确定自己所处的位置,这个数据一般从GPS或者斗导航系统获得。环境扫描,选择的传感器,按照远近不同,环境不同,同时使用激光雷达,视觉识别系统和毫米波雷达,形成组合,共同完成。
1.1定位
定位主要依靠全球卫星定位系统,获得经纬坐标。GPS,每个智能手机都自带的功能,我们自然不陌生。北斗导航系统,是我天朝的骄傲。另外还有两个常见导航系统: Glonass,俄罗斯;伽利略,欧盟 。
定位系统的工作原理,不再赘述,自行百度。
在无人车上使用导航系统,获得车辆实时位置坐标,结合车辆管理系统内置的离线地图,可以直接调用以往积累的环境信息。比如Google拥有自己的3D地图,可以调用详细的街景信息。
我们常用的高德地图、百度地图,能够用于导航,都是这个道理。
1.2 环境扫描
按照适用距离,适用环境,精度,抗干扰能力要求不同去选择环境扫描传感器。目前常用的类型包括激光雷达,照相机,毫米波雷达,此外还有超声波传感器,红外线传感器等。
激光雷达
激光的发散度极小,可以远距离传播,在无人车上,激光雷达一般被用于远程扫描,发现需要分析的区域。
激光雷达按照光源数量不同,分成单线激光雷达和多线激光雷达。其中,多线激光雷达水平360°扫描,垂直方向,具备一个俯仰角,因此不但可以测量物体距离,还可以扫描障碍物三维尺寸。
激光雷达安装到无人车上以后,需要校准坐标系,才能获得正确的测量结果。
相机
把相机安置在无人车上,对周围环境拍照,以获得环境的图像信息,这就是应用在无人车上的机器视觉技术。为了适应无人车上天气变化,车体震动等造成的干扰,相机需要经过特别设计。
相机的种类主要有,单目相机,双目相机,全景相机三大类。
其中,单目相机造价低廉,应用较广,是机器视觉行业翘楚以色列Mobileye 公司的主打产品。
双目相机,由于在运动的无人车上,成像精度不高,并没有被特别广泛的应用。
全景相机,是利用多台相机同时拍照,再经过计算机图像处理,合成再现环境图景,是应用在无人车上进行目标识别的先进武器。但也有一个小问题,计算量比较大。
毫米波雷达
其功能与激光雷达近似,只是传播距离比较短。之所以还有用武之地,在于它的抗天气影响能力非常好。在大雾,大雨天气也能正常工作。
2 路径规划
路径规划,是解决无人车从起点到终点,走怎样路径的问题。规划的总体要求是不要撞到障碍物,保证自身的安全和可能相遇的车辆和行人的安全。在此基础上,再去依次追求下列目标:车体平稳,乘坐舒适,寻求路径最短等等。
路径规划问题可以分成两类,总体路径规划和局部路径规划。前者是指,给无人车设定目的地,从出发地到目的地,走哪条路最好。后者指,在行进过程中,遇到障碍、行人、车辆、甚至小动物等,怎样获得理想的行进路径。
2.1局部路径规划
目前使用比较多的路径规划算法有四种。
Dijkstra‘s算法,在起点周围不会遇到障碍的所有可能点中,寻找最短路径,规划结果比较优越,但在没有足够约束条件情况下,计算量巨大;
随机采样算法,是在Dijkstra‘s算法基础上改良的。为了减少计算量,加入了启发式算法,配合随机采样,只计算样本中的最短路径。解决了计算量的问题,但路径可能不连续。
基于差值曲线的路径规划,降低了计算量,同时解决了路径不连续的问题,是比较有优势的一种算法。
基于数值最优,把无人车姿态和环境约束条件都加入模型的一种算法,可以得到较好的规划结果,但对计算能力依赖性强。
2.2整体路径规划
整体路径规划,在结构化道路上,一般由卫星定位和导航系统来完成。利用卫星定位和自身保存的离线地图,规划出理想路径,过程与我们用手机导航去一个地方非常类似。这里的结构化道路,指的是边缘比较清晰规则,路面平坦,有明显的车道线及其它人工标记的行车道路。
环境感知就如同人的眼睛,这个类比,我们不难认同。
路径规划呢,其实也是对人类的模仿。只要移动身体,我们都在路径规划,但为什么我们没感觉呢?
从我们的老祖先到我们自己,路径规划这个动作延续了太长时间,为了节约大脑的运算资源,规划过程早已内化到本能当中,不需要经过左脑,就能做出正确规划。没有刻意的思考,就没有进入我们的意识。
试想,你在黑暗中行进,伸手不见五指山,你的精神状态是怎样的,你的内心戏是怎样的?
你一定是全身紧绷,一边在脑袋里单曲循环:前面有没有坑,有没有坑,一边用脚慢慢试探着前进。
在不能采用熟悉的方式(用眼睛观察周边)感知环境时,我们刻意规划路线的意识才显现出来。
环境感知,路径规划的方式就是人类的翻版。
最后,你认为,无人驾驶汽车,会在什么时间点真正进入我们的生活呢?

环境感知,认路能力的一部分,通过传感器,采集周边和自身信息,实时发送给处理器,形成对周边环境的认知模型。从尺度上划分,环境感知包括定位和环境扫描两个层次。环境感知是无人驾驶系统其它技术的数据基础,为路径规划、实时决策和行车控制提供依据。