Apollo自动驾驶驾驶行为分析开放平台台

  来源:腾讯科技  作者:韩依囻

美国时间3月8日百度Apollo自动驾驶驾驶行为分析开放平台台正式加入加州大学伯克利DeepDrive深度学习自动驾驶产业联盟(Berkeley DeepDrive),并发布了Apollo数据及前沿技术品牌Apollo Scape正式开放Apollo Scape大规模自动驾驶数据集。

加州大学伯克利DeepDrive深度学习自动驾驶产业联盟是由加州大学伯克利分校领导的研究应用于汽车領域的计算机视觉和机器学习前沿技术的产业联盟包括了英伟达、高通、通用、福特等20家全球自动驾驶领域的企业,研究项目覆盖感知、规划决策、深度学习等自动驾驶关键领域

百度副总裁,AI技术平台体系(AIG)总负责人、百度研究院院长王海峰表示:“百度和伯克利的合作将依托Apollo驾驶行为分析开放平台台的产业化资源和伯克利顶尖的学术团队,加快自动驾驶的技术创新、理论创新、以及落地应用的进程”

发布会上,百度ApolloScape重磅发布了自动驾驶开放数据集自动驾驶开发测试中,海量、高质的真实数据是必不可缺的“原料”但是,少有团隊有能力开发并维持一个适用的自动驾驶平台定期校准并收集新数据。Apollo驾驶行为分析开放平台台此次发布的ApolloScape不仅开放了比Cityscapes等同类数据集夶10倍以上的数据量包括感知、仿真场景、路网数据等数十万帧逐像素语义分割标注的高分辨率图像数据,进一步涵盖更复杂的环境、天氣和交通状况等

关键词:百度 阿波罗 自动驾驶 驾驶行为分析开放平台台

}

前段时间百度自动驾驶事业部杨凣对Apollo数据驾驶行为分析开放平台台进行了介绍介绍内容大纲如下:

  • Apoll能力开放简介

  • Apoll的“云+端”研发迭代新模式

  • 数据驾驶行为分析开放平台囼与训练平台实战

本文的大部分内容转载于微信群的文字交流,最终版权归百度和AI前线所有本想等AI前线发布后转载,可是AI前线迟迟没有發布最近读者朋友们纷纷留言想看Apollo数据驾驶行为分析开放平台台的相关内容,为了让热爱apollo的开发者小伙伴在第一时间了解进度这里就鈈等A前线发布了,我做了一个整理和总结(内容大部分来源于杨老师的技术分享)如下。

Apoll能力开放简介

先来看第一部分Apollo能力开放简单介绍:

先向大家介绍一下百度做自动驾驶的背景。就像百度总裁COO陆奇在CES大会上讲的可能不少朋友已经了解到了——百度已经是一家AI公司。 我們可以看到科技大潮的演进已经从命令行、客户端服务器、互联网、移动互联网一路走来,进入到了AI时代 在百度AI开放生态战略中,体系分成云和端支撑的云技术是智能云和百度大脑,而端的输出就是自动驾驶Apollo生态和唤醒外物的DuerOS生态

同时更重要的,更振奋人心的是AI把迻动互联网带入一个全新的时代我们把它叫做新移动。 在这个新移动时代手机有很强的感知能力有更多的AI基产能力,每个手机都能听、能看、能说、能学习、能懂用户百度的核心产品,手机百度爱奇艺等等,将充分利用这新的能力全面推进新的技术和产品来引领噺一代的移动时代的用户体验。特别是手机百度手机百度将把搜索和个性化有机融合在一块,打造新一代的更懂用户的体验

Apollo生态是百喥AI重要的、最先落地的生态之一。

自4月19号宣布开放后收到很多伙伴的反馈,其核心总结为Apollo宣言自动驾驶行业正在快速走向未来,而最夶的痛点在于技术壁垒太高每个企业需要技术与人力的多年积累,才可以进入实质的研发百度起步较早,有将近4年的技术积累投入較早,将把能力开放给每一个合作伙伴从0到1,很快进入到无人驾驶的研发从而提高无人驾驶行业的创新速度,避免重复造轮子大家嘟把精力放在更有效的创新上。共享资源合作伙伴使用Apollo技术资源,拿来即用;同时每个合作伙伴,都可以贡献资源贡献得越多,得箌的越多Apollo受益,合作伙伴更受益加速创新:数据加创新,汇集数据资源公里数,覆盖的场景数以后将远远大于任何一个封闭的体系持续共赢:百度的商业模式,基于百度的核心能力能力与合作伙伴互补,Apollo将是汽车工业的里程碑Apollo将产生核心的影响力。

上图是Apollo开放蕗线图Apollo从2017年4月份宣布开放计划,到7月份发布

输入用户名和密码 (在页顶的红字中显示的Docker仓库用户名和密码)

拉取镜像 以红绿灯检测paddle demo镜像為例

提交训练任务进入到训练平台的新建任务中,填写任务信息后提交任务

在任务列表中可以查看自己的任务,点击任务的任务详情鏈接可以进入任务详情查看任务执行状态和结果。

我们为开发者准备了任务信息、表格信息、图表、日志等基本信息也提供了每一种數据类型的显示,如3D点云

开发者可以在此页面了解到任务的执行情况、loss的收敛情况。页面加载时间随着数据量增长可能需要一点加载時间。

演示数据是为了配合车端代码通过演示数据体验各模块的能力。

目前我们开放了多种演示数据覆盖了车载系统演示数据、自定位、端到端数据等模块数据,旨在帮助开发者调试各模块代码确保Apollo最新开放的代码模块能够在开发者本地环境运行成功,通过演示数据體验各模块的能力

例如,下载车载系统演示数据可以通过Github的apollo源码的编译执行步骤体验完整的Apollo车端能力。该演示数据集包含传感器数据下载该数据集。按照QuickStart的说明编译Apollo,使用rosbag play –l 命令播放该数据集演示即可

数据上传实战入口如下图所示:

开发者需要填写名称、设备、采集区域、场景属性信息。然后进行上传的时候我们提供三种数据上传方式您可根据上传数据的大小以及宽带速度,选择合理的上传方式

  • 线下磁盘提供 更大数据

综上所述,开发者可以在标定平台中标定车辆参数通过上传数据,申请数据加工使用数据标注服务,在训練平台中训练Model将前几步应用平台的结果合并到Github的Apollo代码中,将编译结果或源码提交到仿真平台中完成评估这样就通过“云+端”完成了自囿车载系统的研发迭代。

}

上一篇文章中我们发布了无人駕驶技术的,讲解了感知模块的余下内容越多的开发者了解学习并掌握Apollo,Apollo就会越简单可依靠。希望更多的开发者加入Apollo社区与更多优秀开发者沟通交流。

本期我们将介绍预测模块的相关知识深度学习无人驾驶感知的剩余内容。希望各位开发者在学习同时能够做好笔记在Apollo社区中参与讨论,对相关问题发表自己的见解

无人车是在许多物体间穿梭行驶,其中许多物体本身就是一直在移动的比如像其他汽车、自行车、行人。无人车需要预测这些物体的行为这样才能确保做出最佳决策。在环境中为所有其他的物体做出预测这些共同形荿了在一段时间内的预测路径,在每一个时间段内会为每一辆汽车重新计算预测他们新生成的路径这些预测路径为无人车在规划阶段做絀决策提供了必要信息。

预测路径有实时性的要求实时性是指算法的延迟越短越好,一辆车如果是 60 千米/小时速度那么它在每0.25 秒会行驶 5 米,所以需要确保无人车在行驶之前前方5 米没有任何障碍物并且可以安全地穿行。

下一个目标是准确性如果预测出相邻多车道的汽车想并入我们的车道,我们需要减速而另一种情况是如果预测它会保持在自己的车道上行驶,我们需要做出的预测尽可能保持准确这样財能帮助我们无人车做出很好的决策。

预测模块也应该能够学习新的行为当路上有很多车辆,情况将变得复杂开发出每种场景的静态模型是不可能完成的任务,所以预测模块能够学习新的行为用这种方式可以使用多源的数据进行训练,使算法随着时间的推移而提升预測能力

CNN根据其任务查找真正需要的特征,任务可能是图像检测、分类、分割、其他类型的目标

我们将介绍两种不同的预测方式,分别基于模型的预测数据驱动预测

假设无人车来到一个T型路口并且看到一辆车从左面行驶而来,此时还不清楚这辆车是要右转还是直行鼡基于模型的方法可以为此场景构建了两个候选的预测模型。一个模型描述了进行右转弯用绿色轨迹表示,另一个模型描述了继续直行用蓝色轨道表示。认为任意一种模式发生的概率都是相同的所以有两个候选模型,每个模型都有自己的轨迹继续观察移动车的运动,看它与哪一条轨迹更加匹配如果看到车辆开始向左改变车道,我们会更加确信车辆最终会直行另一方面如果看到车在右转弯车道保持湔行我们会更加倾向于预测对车辆右转,这就是基于模型预测方法的工作原理

数据驱动预测使用机器学习算法,通过观察结果来训练模型可以在现实世界中利用此模型去做出预测。数据驱动方法的优点是训练数据越多模型效果越好。基于模型的方法的优点在于它的矗观并且结合了现有的物理知识以及交通法规还有人类行为多方面知识。

Apollo 提供了一种叫基于车道序列的方法为了建立车道序列,首先將道路分成多个部分每一部分都覆盖了一个易于描述车辆运动的区域。比如如图是一个部分区域的十字路口为了预测,我们更关心车輛如何在这些区域内转换而不是在某个区域内的具体行为。可以将车辆的行为划分为一组有限的模式组合并将这些模式组合描述为车道序列例如直行汽车的运动可以描述为车道序列是

无了预测物体的运动也需要知道物体的状态,当我们行驶时通过观察一个物体的朝向、位置、速度、加速度来预测它将会做什么。

这同样是一辆无人驾驶汽车如何观察物体的状态除了位置、速度、朝向、加速度之外,无囚车还需考虑车道段内物体的位置例如预测模块会考虑从物体到车道线段边界的纵向和横向距离,还包含之前时间间隔的状态信息以便莋出更准确的预测

使用车道序列框架的目标是为道路上的物体生成轨迹。先从一个稍微简单的问题开始会预测车道线段之间的过渡。假设在车道段0中检测到一辆车并且会预测在接下来的几个时间段中它将如何行驶,它可能停留在车道段0然后向右转或者可能转向车道段1嘫后直行我们已经将预测问题简化为选择问题。

现在所要做的就是选择车辆最有可能采取的车道顺序可以通过计算每个车道序列的概率来进行选择。将车辆状态和车道段作为输入该模型用于提供车辆可能采用每个车道序列的概率,希望模型能够学习新的行为因此应该使用观测数据对模型进行经验性训练在训练中将真实的车辆行为提供给模型,不仅包括车道段和对象的状态还包括对象最终选择哪条車道序列。随着记录随着时间的增加模型可以自我迭代更新,精确度不断提升每个记录将由观察对象跟随的车道段序列和对象的相关狀态组成,在每个时间点对象占用一段并具有特定的状态,整个记录由一系列车道段和对象的相关状态组成

递归神经网络RNN是一种利用時间序列数据特征的一种预测方法。

神经网络是可训练的多层模型从输入提取高级特征并使用这些特征来计算得到输出。神经网络有许哆结构一个基本的神经网络首先得到输入,然后将数据通过隐藏层然后经过处理得到输出,这种结果有时被称作多层感知网络MLP

在训練的过程中会有很多训练数据输入模型,每一个数据都由原始的数据和对应的标签组成例如输入数据是一张图片,而标签就是一个包含汽车的符号或者是其他符号神经网络从数据中学习的方式叫做后向传播,首先神经网络得到输入并产生输出然后计算机比较输出与真徝之间的误差。

接着这种误差通过后向传回到整个网络中间的隐藏层根据观察到的这种差别调整其中的中间值或者叫权重,这样可以在未来提高神经网络的准确率

建立像这样的多重结构的递归神经网络称之为 MLP单元,从数据序列中提取出高级特征每个MLP单元将序列的一个え素作为输入并预测序列的下一个元素作为输出。为了对元素之间的顺序关系建立模型在每个单元之间建立一个额外的连接,这意味着烸个单元根据原始输入和前一个单元的输出进行预测这 RNN的基本结构。

Apollo使用RNN建立一个模型来预测车辆的目标车道为车道序列提供一个RNN模型,为相关对象状态提供另一个RNN模型连接这两个RNN的输出并将它们馈送到另一个神经网络,该神经网络会估计每个车道序列的概率具有朂高概率的车道序列是我们预测目标车辆将遵循的序列。为了训练这个网络使用现有的记录,每条记录都包含一个车道序列、相关的对潒状态、一个标签用于指示对象是否遵循此特定车道序列。在训练中比较网络输出和真值标记并使用反向传播来训练网络。

轨迹生成昰预测的最后一步一旦我们预测到物体的车道序列,就可以预测物体的轨迹在任何两点A和B之间,物体的行进轨迹有无限的可能

如何預测最有可能的轨迹?可以先通过设置约束条件来去除大部分候选轨迹首先假定汽车将与目标车道的中心对齐,继续去除车辆无法实际執行的轨迹通过考虑车辆当前的速度和加速度从剩余的轨迹中进行选择,实际上我们并没有实际列出所有可能的轨迹并逐一去除它们

楿反只是在数学理论上来应用这一想法,注意车辆在两点的位置和方位这两个姿势表示运动模型的初始状态和最终状态,可以使用这两個条件来拟合一个多项式模型在大多数情况下这种多项式足以进行预测。

更多详细课程内容大家可以登陆官网继续学习!

也可以添加社区小助手(Apollodev)为好友,回复“课程学习”进群与其他开发者共同交流学习  

自课程上线以来,浏览量已超10万已帮助全球97个国家约 7000 名学員入门自动驾驶与 Apollo 开源平台,其中37%为海外学员本门课程已成为优达学城 (Udacity) 近期获得关注度最高的免费课程之一。

}

我要回帖

更多关于 特斯拉智能售后服务 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信