电子产品世界 » 论坛首页 » 综合技术 » 测试测量 » 神经网络解决方案让自动驾驶成为现实


共2条 1/1 1 跳转至

神经网络解决方案让自动驾驶成为现实

菜鸟
2017-12-22 14:33:11    评分

高级辅助驾驶系统 (ADAS) 可提供解决方案,用以满足驾乘人员对道路安全及出行体验的更高要求。诸如车道偏离警告、自动刹车及泊车辅助等系统广泛应用于当前的车型,甚至是功能更为强大的车道保持、塞车辅助及自适应巡航控制等系统的配套使用也让未来的全自动驾驶车辆成为现实。

如今,车辆的很多系统使用的都是机器视觉。机器视觉采用传统信号处理技术来检测识别物体。

对于正热衷于进一步提高拓展 ADAS 功能的汽车制造业而言,深度学习神经网络开辟了令人兴奋的研究途径。为了实现从诸如高速公路全程自动驾驶仪的短时辅助模式到专职无人驾驶旅行的自动驾驶,汽车制造业一直在寻求让响应速度更快、识别准确度更高的方法,而深度学习技术无疑为其指明了道路。

以知名品牌为首的汽车制造业正在深度学习神经网络技术上进行投资,并向先进的计算企业、硅谷等技术引擎及学术界看齐。在中国,百度一直在此技术上保持领先。百度计划在 2019 年将全自动汽车投入商用,并加大全自动汽车的批量生产力度,使其在 2021 年可广泛投入使用。汽车制造业及技术领军者之间的密切合作是嵌入式系统神经网络发展的催化剂。这类神经网络需要满足汽车应用环境对系统大小、成本及功耗的要求。

轻型嵌入式神经网络

卷积式神经网络 (CNN) 的应用可分为三个阶段:训练、转化及 CNN 在生产就绪解决方案中的执行。要想获得一个高性价比、针对大规模车辆应用的高效结果,必须在每阶段使用最为有利的系统。

训练往往在线下通过基于 CPU 的系统、图形处理器 (GPU) 或现场可编程门阵列 (FPGA) 来完成。由于计算功能强大且设计人员对其很熟悉,这些是用于神经网络训练的最为理想的系统。

在训练阶段,开发商利用诸如 Caffe 等的框架对 CNN 进行训练及优化。参考图像数据库用于确定网络中神经元的最佳权重参数。训练结束即可采用传统方法在 CPU、GPU 或 FPGA 上生成网络及原型,尤其是执行浮点运算以确保最高的精确度。

作为一种车载使用解决方案,这种方法有一些明显的缺点。运算效率低及成本高使其无法在大批量量产系统中使用。

CEVA 已经推出了另一种解决方案。这种解决方案可降低浮点运算的工作负荷,并在汽车应用可接受的功耗水平上获得实时的处理性能表现。随着全自动驾驶所需的计算技术的进一步发展,对关键功能进行加速的策略才能保证这些系统得到广泛应用。

利用被称为 CDNN 的框架对网络生成策略进行改进。经过改进的策略采用在高功耗浮点计算平台上(利用诸如 Caffe 的传统网络生成器)开发的受训网络结构和权重,并将其转化为基于定点运算,结构紧凑的轻型的定制网络模型。接下来,此模型会在一个基于专门优化的成像和视觉 DSP 芯片的低功耗嵌入式平台上运行。图 1 显示了轻型嵌入式神经网络的生成过程。与原始网络相比,这种技术可在当今量产型车辆的有限功率预算下带来高性能的神经处理表现,而图像识别精确度降低不到 1%。

图1. CDNN 将通过传统方法生成的网络权重转化为一个定点网络

一个由低功耗嵌入式平台托管的输入大小为 224x224、卷积过滤器分别为 11x11、5x5 及 3x3 的 24 层卷积神经网络, 其性能表现几乎是一个在典型的 GPU/CPU 综合处理引擎上运行的类似 CNN 的三倍,尽管其所需的内存带宽只是后者的五分之一且功耗大幅降低。

下一代深度学习神经网络

汽车制造业进入神经网络领域所习得的经验不断推动技术的发展,并因此开发出了更先进的网络架构及更复杂的拓扑,如每级多层拓扑、多入/多出及全卷积网络。新推出的重要网络类型不仅可用来识别物体,也可用来识别场景,从而提供用以解决汽车领域应用程序(如自动驾驶功能)所需的图像分割。

当然,中国 40 家左右的汽车制造商并不会在此道路上踽踽独行。他们会与百度等技术公司进行密切合作。技术公司是这些网络和架构发展的核心。CNN网络生成器功能的完善也为新的网络架构和拓扑提供了支持,如 SegNet 及 GoogLeNet 与 ResNet 等其它网络结构以及高级网络层(图 2)。此外,一键启用也让预训网络转换成优化的实时网络执行更为便捷。为确保给常用的网络生成器提供支持,CDNN 框架与 Caffe 和 TensorFlow (谷歌的机器学习软件库)都有合作。

图2. 网络生成器的发展为新网络层及更深的架构提供了支持

由于最新推出的嵌入式处理平台在可扩展性及灵活性上都有了很大改进,因此嵌入式部署也可以利用这些改进来完善自身。由于深度学习领域的发展越来越多样化,因此拥有一个不仅能满足当今处理需求,也具有适应未来的技术创新的灵活架构非常重要。

神经网络在自动驾驶的应用

第一批神经网络应用程序将专注于视觉处理,以支持诸如自动行人、交通信号或道路特征识别等功能。由于这些系统的性能不断改进,例如处理越来越大的来自高分辨率相机的数据集,因此神经网络也有望在未来的汽车中发挥更大的作用。这些作用将包括承担系统中其它复杂的信号处理任务,例如雷达模块及语音识别系统。

随着神经网络首次应用于车载自动驾驶系统,(据报道,某些国家将在 2019-2020 年型的新车辆中使用神经网络)对同时兼具安全性及可靠性的系统的需求会越来越大。中国政府计划在 2021 至 2025 年推出自动驾驶车辆。要让此类系统具备可让客户使用的条件,汽车制造商必须同时确保其符合相关的安全标准,如 ISO 26262 功能安全性。这需要硬件、软件及系统的综合发展。

由于这些系统变得越来越复杂,因此确保系统可靠安全且能满足处理需求也成为汽车制造商所面临的越来越大的挑战。

结论

机器学习神经网络将沿着一条挑战高效处理性能的发展道路继续阔步前进。先进的神经网络架构已经显现出优于人类的识别精确性。用于生成网络的最新框架,如 CDNN2,正在推动轻型、低功耗嵌入式神经网络的发展。这种神经网络将使目前的高级辅助驾驶系统具有较高的精确性及实时处理能力。

若想获得更多资讯,欢迎大家前往仪商城进行了解





关键词: 自动驾驶     测试测量     辅助驾驶系统    

菜鸟
2018-01-26 15:59:48    评分
2楼

  自动驾驶技术一直是近年的研究热点,特斯拉已研制出能在较少车辆的道路上实现自动驾驶的系统,据称两年左右就能上市。而在过去的9个月里,Nvidia工程团队用一个摄像头、一台Drive-PX嵌入式电脑、72小时的训练数据开发了一台自动驾驶汽车。在Cornell Research Library拥有的arXiv.org(全球最大的预印本系统)上,Nvidia以学术预印本的形式发表了DAVE2的研究结果,标题名为《自动驾驶汽车的端到端学习》。

  Nvidia的项目名叫DAVE2,为什么这样命名?因为美国国防部先进研究项目局(Defense Advanced Research Projects Agency)有一个项目名叫DARPA Autonomous Vehicle(DAVE,既DARPA无人驾驶汽车)。虽然神经网络、自动驾驶汽车看起来是一门新发明的技术,实际上谷歌的Geoffrey Hinton、Facebook的Yann Lecune、蒙特利尔大学的Yoshua Bengio在过去20年里一直在携手研究它,这些技术是AI的一个分支。DARPA DAVE项目申请研究神经网络自动驾驶汽车,它的前身是ALVINN项目,这个项目是Carnegie Mellon 1989年提出的。有一点已经改变:由于GPU的发展,研究变得经济可行了。

  神经网络、图像识别应用(比如无人驾驶汽车)最近出现了大爆发,主要原因有两个。第一个,手机上渲染图像的GPU已经很强大,很便宜,将GPU大规模装载到板件等级的超级电脑上可以很好地解决庞大的并行神经网络问题,而且它的价格也足够便宜,每一名AI研究人员和软件开发者都买得起。第二,大型、标签式图片数据集已经存在,我们可以用它来训练大型并行神经网络,这些神经网络用GPU来执行,可以看见、感知摄像头捕捉的物体。

  绘制人类驾驶模式

  Nvidia团队训练了一个卷积神经网络,它可以绘制单个前置摄像头捕捉的原始像素,摄像头跟驾驶命令直接联系。Nvidia技术的突破之处在于:无人驾驶汽车可以自动自学,通过观看人类的驾驶方式自学。

  虽然操作系统使用的是一个摄像头和一台Drive-PX嵌入式电脑,但是训练系统使用的却是三个摄像头、两台电脑,它们可以抓取3D视频图像、转向角度(来自人类驾驶的汽车),这些信息可以训练系统学会“看见”和“驾驶”能力。

  Nvidia会监视转向角度的变化,将它作为训练信号,然后将人类驾驶模式映射到摄像头记录的位图图像中去。系统会利用卷积神经网络为驾驶处理步骤介定内部表征,比如侦测有用的道路特征——线路、汽车和道路轮廓。

  自动驾驶汽车会感知路况、其它汽车及障碍物,开源机器学习系统Torch 7会对处理过程进行深入学习,然后用来操纵测试汽车。实际训练以每秒10帧的速度进行,因为即使速度达到30帧区别也不会太大,学习的价值并不会提高。测试车包括一辆2016款林肯MKZ和一辆2013款福特福克斯。

  机器学习处理的核心就是用Torch 7构建的卷积神经网络模拟操纵情况。人类驾驶的汽车会拍摄一些10fps图像,卷积神经网络会下达操纵命令,对10fps图像进行模拟响应,研究人员需要将模拟响应和人类转向角度进行对比。一个是人类转向角度,一个是卷积神经网络模拟的操纵命令,它可以教会系统“看”和“操纵”的能力,研究者需要对两者进行对比,分析其中的差异。汽车会在测试路线上行驶3小时,总里程相当于100英里,行程会被记录为视频,模拟时使用的测试数据来自于视频。

  公路测试

  当卷积神经网络模拟驾驶表现良好时,就可以在公路上对测试车辆进行更进一步的机器学习和测试了。公路测试可以改进系统,在整个过程中需要由人类司机监督无人驾驶汽车,当系统出错时及时介入。每修正一次,结果就会输入到机器学习系统,从而改进操纵过程的精准度。在新泽西Turnpike的行驶过程中,前10英里汽车完全自动行驶。在早期测试中,98%的操作是无人驾驶的。

  Nvidia证明卷积神经网络可以学会以下任务:道路侦测,非手动道路追随,对道路及道路标识、语义抽象、路线规划、控制进行明确的分解和分类。让汽车在不同天气、灯光条件、高速公路或者旁路上行驶,获得内部处理过程,形成不到100小时的训练数据,然后用Torch 7渲染这些数据,系统就可以学会上述操作。

  从报告看,Nvidia暗示系统还没有准备好投入生产,它在报告中写道:“如果要提高网络的稳定性、找到好办法核实这种稳定性,提高网络内部处理过程的可视化水平,我们还有更多的工作要做。”

  本文由拍明芯城(iczoom.com)撰写编辑,如需了解更多欢迎咨询拍明芯城官网。



共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]