0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器学习在高度自动驾驶中的机遇和挑战

星星科技指导员 来源:嵌入式计算设计 作者:Sorin Mihai 2022-06-17 10:06 次阅读

在这三部分系列的第一部分中,作者调查了机器学习技术在高度自动化驾驶场景中的驱动因素和潜在应用。第二部分定义了机器学习技术的理论背景,以及汽车开发人员可用的神经网络类型。第三部分在功能安全要求的背景下评估这些选项。

在过去的几年里,机器学习一直是研究和工业界最热门的话题之一。与几十年前机器学习的出现相比,计算性能和算法最新进展引起了新的关注。

机器学习,特别是深度学习解决方案促进了人工智能最近取得的令人瞩目的成果。应用包括自然语言处理 (NLP)、个人协助、AlphaGo 战胜人类,以及在学习玩 Atari 游戏时达到人类水平的行为。

考虑到机器学习和深度学习在解决极其复杂的问题时能够取得如此令人印象深刻的结果,很明显,研究人员和工程师也考虑将它们应用于自动驾驶汽车的高度自动驾驶 (HAD) 场景。NVIDIA 的 Davenet、Comma.Ai、Google Car 和 Tesla 在该领域取得了第一个有希望的成果。机器学习和深度学习方法已经产生了最初的原型,但是这些功能的工业化在例如基本的功能安全考虑方面提出了额外的挑战。

本文旨在为正在进行的关于机器学习在汽车行业中的作用的讨论做出贡献,并强调该主题在自动驾驶汽车背景下的重要性。特别是,它旨在增加对机器学习技术的能力和局限性的理解。

首先,我们在 EB robinos 参考架构的背景下讨论基于机器学习的高度自动驾驶的设计空间和架构替代方案。然后详细介绍了 Elektrobit 目前正在研究和开发的两个选定用例。

第二部分提供了机器学习和深度神经网络 (DNN) 的理论背景,它们为推导用于根据给定任务选择机器学习技术的标准提供了基础。最后,第三部分讨论了影响功能安全考虑的验证和确认挑战。

机器学习和高度自动化驾驶

开发导致自动驾驶汽车的高度自动驾驶功能是一项复杂而艰巨的任务。工程师通常使用分而治之的原则来应对这些挑战。这是有充分理由的:具有明确定义接口的分解系统可以比单个黑盒更彻底地测试和验证。

我们的高度自动驾驶方法是 EB robinos,如图 1 所示。EB robinos 是一种功能性软件架构,具有开放接口和软件模块,允许开发人员管理自动驾驶的复杂性。EB robinos 参考架构按照“感知、计划、行动”分解范式集成了组件。此外,它在其软件模块中利用机器学习技术,以应对高度非结构化的现实世界驾驶环境。以下小节包含已选择的集成在 EB robinos 中的技术示例。

poYBAGKr4bCAGndrAAFzjMtNLAM278.png

图 1.开放式 EB robinos 参考架构。

相比之下,端到端的深度学习方法也存在,它涵盖了从感觉到行动的方方面面(Bojarski et al. 2016)。然而,关于极端情况和罕见事件的处理和训练,以及必要的训练数据的指数数量,分解方法(即语义抽象)被认为更合理(Shalev-Shwartz et al. 2016 )。

然而,即使遵循分解方法,也需要决定哪些部分最好单独处理或与其他部分结合处理。还必须确定机器学习方法是否有望在特定块完成的任务中优于传统工程算法。尤其重要的是,此决定可能会受到功能安全考虑的影响。如本系列后面所述,功能安全是自动驾驶的关键要素。传统的软件组件是根据具体需求编写的,并进行相应的测试。

机器学习系统测试和验证的主要问题是它们的黑盒性质和学习方法的随机行为。基本上不可能预测系统如何学习其结构。

上面给出的标准和理论背景可以为明智的决策提供指导。Elektrobit 目前正在研究和开发机器学习方法被认为很有前景的用例。接下来介绍两个这样的用例。第一个涉及为机器学习算法生成人工训练样本及其在交通标志识别中的部署。第二个用例描述了我们的自学汽车方法。这两个示例都使用了当前最先进的深度学习技术。

用例 1:人工样本生成和交通标志识别

该项目在增强入口导航系统中使用的 OpenStreetMap (OSM) 数据的背景下,提出了一种限速和限速结束交通标志 (TS) 识别系统。目的是在可以安装在汽车挡风玻璃上的标准智能手机上运行该算法。系统检测交通标志及其 GPS 位置,并通过手机的移动数据连接将收集的数据上传到后端服务器。该方法主要分为两个阶段:检测和识别。检测是通过增强分类器实现的。识别是通过概率贝叶斯推理框架执行的,该框架融合了由一组视觉概率过滤器传递的信息。本文的下一部分包含对所用算法背后的理论背景的描述。

pYYBAGKr4beAe3DbAAFzDdwPAp8809.png

图 2:基于智能手机的 TSR 系统框图

获得的彩色图像以 24 位 RGB 格式传递给检测器。通过评估通过检测窗口计算的级联分类器的响应来执行检测过程。

该检测窗口以不同的比例在图像上移动。可能的交通标志感兴趣区域 (RoI) 被收集为一组对象假设。从特征提取的角度来看,分类级联使用扩展的局部二进制模式 (eLPB) 进行训练。假设向量中的每个元素通过支持向量机(SVM)学习算法分类为交通标志。

交通标志识别方法依赖于人工标记的交通标志,用于训练检测和识别分类器。由于不同国家使用的交通标志模板种类繁多,标记过程繁琐且容易出错。

要使交通标志识别方法表现良好,需要每个国家/地区的特定训练数据。由于必须考虑位置、照明和天气条件,因此创建足够多的手动标记交通标志非常耗时。

因此,Elektrobit 创建了一种算法,可以从单个人工模板图像自动生成训练数据,以克服手动注释大量训练样本的挑战。图 4 显示了算法的结构。

pYYBAGKr4b-AWQV8AAFPbnVMfjM433.png

图 4.基于机器学习的识别系统的人工样本生成算法框图。

这种方法提供了一种生成用于机器学习算法训练阶段的人工数据的方法。该方法使用每个国家的真实和通用交通标志图像模板的缩减数据集来输出图像集合。

这些图像的特征是由一系列图像模板变形算法人为定义的。使用核主成分分析 (KPCA) 对减少的一组真实世界图像对由此获得的人工图像进行评估。当生成图像的特征与真实图像的特征相对应时,人工数据集适用于机器学习系统的训练,在这种特殊情况下用于交通标志识别。

Elektrobit 将 Boosting SVM 分类器替换为基于深度区域的检测和识别卷积神经网络,以提高原始交通标志识别系统的精度。该网络使用 Caffe (Jia et al. 2014) 进行部署,Caffe 是由 Berkley 开发并由 NVIDIA 支持的深度神经网络库。Caffe 是一个带有 PythonMatlab 接口的纯 C++/CUDA 库。除了核心的深度学习功能外,Caffe 还提供可直接用于机器学习应用的参考深度学习模型。图 5 显示了用于交通标志检测和识别的 Caffe 网络结构。不同的彩色块代表卷积(红色)、池化(黄色)、激活(绿色)和全连接网络层(紫色)。

poYBAGKr4caAeCqFAALl32WqVB0778.png

图 5. Caffe 中基于深度区域的检测和识别卷积神经网络。

用例 2:学习如何驾驶

深度学习的革命最近增加了对另一种范式的关注,即强化学习 (RL)。在 RL 中,代理本身通过奖励系统学习如何执行某些任务。该方法属于半监督学习的范畴,因为奖励系统的设计需要特定领域的知识。

与监督学习相比,即使输入数据不需要标记也是如此。最近对 RL 的兴趣主要归功于 Deep Mind 团队的开创性工作。该团队设法将 RL 与能够学习动作价值函数的深度神经网络相结合(Mnih et al. 2016)。他们的系统能够学会以人类水平的能力玩多个 Atari 游戏。

我们构建了深度强化学习系统,如图 6 所示,以便安全地试验自动驾驶学习。该系统使用 TORCS 开源竞赛模拟器(Wymann et al. 2014)。TORCS 作为高度便携的多平台赛车模拟器在科学界被广泛使用。它在 Linux(所有架构,32 位和 64 位,小端和大端)、FreeBSD、OpenSolaris、MacOSX 和 Windows(32 位和 64 位)上运行。它有许多不同的汽车、赛道和对手来比赛。我们可以收集用于物体检测的图像以及来自游戏引擎的关键驾驶指标。这些指标包括汽车的速度、自我汽车与道路中心线的相对位置以及与前面汽车的距离。

pYYBAGKr4dCAdig2AALUhHZxC6U718.png

图 6.用于学习如何在模拟器中驾驶的深度强化学习架构。

该算法的目标是通过与虚拟环境交互来自学驾驶命令。为此目的使用了深度强化学习范式,其中深度卷积神经网络 (DNN) 通过提供正奖励信号的强化动作 a 进行训练r(s^‘,a)。状态s由模拟器窗口中显示的当前游戏图像表示。有四种可能的动作:加速、减速、左转和右转。

DNN 计算一个所谓的Q-函数,该函数预测要针对特定状态执行的最优动作 a s。换句话说,DNNQ-为每个状态-动作对计算一个值。将执行具有最高Q-值的操作,这会将模拟器环境移动到下一个状态,s’。在这种状态下,通过奖励信号来评估执行的动作r(s’,a)。

例如,如果汽车能够在没有碰撞的情况下加速,那么使这成为可能的相关动作将在 DNN 中得到加强;否则,它会气馁。通过使用状态奖励信号重新训练 DNN,在框架中执行强化。图 7 显示了深度强化学习算法的 Caffe 实现。网络层具有与图 6 相同的颜色编码。

poYBAGKr4diAEb2nAAHPetpLJ-I095.png

图 7.用于深度强化学习的基于 Caffe 的深度卷积神经网络结构。

第二部分定义了机器学习技术的理论背景,以及汽车开发人员可用的神经网络类型。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 汽车电子
    +关注

    关注

    3023

    文章

    7837

    浏览量

    166094
  • 神经网络
    +关注

    关注

    42

    文章

    4759

    浏览量

    100446
  • 机器学习
    +关注

    关注

    66

    文章

    8366

    浏览量

    132344
收藏 人收藏

    评论

    相关推荐

    智能驾驶挑战机遇

    等传感器恶劣天气下感知能力有限,难以准确识别障碍物及道路状况。 决策算法复杂 :自动驾驶系统需复杂交通环境做出安全、高效且合规的决策,对算法智能性及适应性要求极高。 跨领域技术融
    的头像 发表于 10-23 16:00 575次阅读

    自动驾驶仿真测试技术面临的挑战#ADAS #智能驾驶 #VTHiL

    自动驾驶
    北汇信息POLELINK
    发布于 :2024年10月12日 09:49:31

    FPGA自动驾驶领域有哪些优势?

    FPGA(Field-Programmable Gate Array,现场可编程门阵列)自动驾驶领域具有显著的优势,这些优势使得FPGA成为自动驾驶技术不可或缺的一部分。以下是FP
    发表于 07-29 17:11

    FPGA自动驾驶领域有哪些应用?

    是FPGA自动驾驶领域的主要应用: 一、感知算法加速 图像处理:自动驾驶需要通过摄像头获取并识别道路信息和行驶环境,这涉及到大量的图像处理任务。FPGA
    发表于 07-29 17:09

    自动驾驶的传感器技术介绍

    自动驾驶的传感器技术是自动驾驶系统的核心组成部分,它使车辆能够感知并理解周围环境,从而做出智能决策。以下是对自动驾驶传感器技术的详细介绍,内容涵盖常见类型、工作原理、
    的头像 发表于 07-23 16:08 1968次阅读

    深度学习自动驾驶的关键技术

    随着人工智能技术的飞速发展,自动驾驶技术作为其中的重要分支,正逐渐走向成熟。自动驾驶系统,深度学习技术发挥着至关重要的作用。它通过模拟人
    的头像 发表于 07-01 11:40 635次阅读

    中级自动驾驶架构师应该学习哪些知识

    是一个新兴且不断发展的职业。随着技术的进步,这一领域将继续吸引更多人才,推动自动驾驶技术的发展。 自动驾驶架构师设计和开发自动驾驶系统时将面临一系列
    的头像 发表于 06-20 21:47 245次阅读

    初级自动驾驶架构师应该学习哪些知识

    是一个新兴且不断发展的职业。随着技术的进步,这一领域将继续吸引更多人才,推动自动驾驶技术的发展。 自动驾驶架构师设计和开发自动驾驶系统时将面临一系列
    的头像 发表于 06-20 21:45 252次阅读

    标贝数据采集标注自动驾驶场景中落地应用实例

    AI数据服务作为人工智能和机器学习的基础,自动驾驶领域中有着重要地位。与其他人工智能应用场景相比,自动驾驶的落地场景相对复杂,想要让汽车本
    的头像 发表于 05-28 14:22 453次阅读
    标贝数据采集标注<b class='flag-5'>在</b><b class='flag-5'>自动驾驶</b>场景中落地应用实例

    未来已来,多传感器融合感知是自动驾驶破局的关键

    巨大的进展;自动驾驶开始摒弃手动编码规则和机器学习模型的方法,转向全面采用端到端的神经网络AI系统,它能模仿学习人类司机的驾驶,遇到场景直接
    发表于 04-11 10:26

    自动驾驶发展问题及解决方案浅析

    汽车的发展提供有益的参考。   自动驾驶汽车发展的现状与挑战 (一)技术难题 自动驾驶汽车的核心在于通过先进的传感器、算法和控制系统实现车辆的自主驾驶。然而,
    的头像 发表于 03-14 08:38 1046次阅读

    联网自动驾驶机器人的网络安全

    联网自动驾驶机器人的网络安全
    的头像 发表于 12-26 10:37 344次阅读
    联网<b class='flag-5'>自动驾驶</b><b class='flag-5'>机器</b>人的网络安全

    语音数据集自动驾驶的应用与挑战

    随着人工智能技术的快速发展,自动驾驶汽车已经成为交通领域的研究热点。语音数据集自动驾驶中发挥着重要的作用,为驾驶员和乘客提供了更加便捷和安全的交互方式。本文将详细介绍语音数据集
    的头像 发表于 12-25 09:48 510次阅读

    LabVIEW开发自动驾驶的双目测距系统

    达到950以上,而在其他较弱纹理区域也能维持900左右。误差率低至5%以下,甚至特征点明显的标志物上可达到2%左右。 基于LabVIEW的双目测距系统自动驾驶
    发表于 12-19 18:02

    传感器自动驾驶的应用

    传感器自动驾驶的应用
    的头像 发表于 11-27 17:06 737次阅读
    传感器<b class='flag-5'>在</b><b class='flag-5'>自动驾驶</b><b class='flag-5'>中</b>的应用