车载驾驶辅助系统及其深度学习与视觉技术

2019-01-04 07:57陈天殷
汽车电器 2018年12期
关键词:卷积摄像头神经网络

陈天殷

(美国亚派克机电 (杭州)有限公司,浙江 杭州 310013)

1 ADAS的源流

1.1 人易犯错

中国2016年机动车的保有量为1.2亿辆,美国是2.2亿辆,预计2019年能赶上或超过美国。这里没有中国的统计数据,但有美国的数据,美国每年发生的汽车事故有500万件,死亡3万人,其中94%是人为失误酿成的,另2%是环境因素,2%是机械故障,2%是边际误差。人易犯错,绝大多数汽车交通事故的肇因源于人的误判断和误操作。创建自动驾驶技术和自动驾驶车辆,并非为了让无驾照者无需驾驶员亦可使车辆顺利到达目的地,而是人类为了规避自身的缺陷,在交通运输中保障生命与财产安全的需求。

常规把实现自动驾驶技术划分为3个阶段,如图1所示,也反映了客观评价的驾驶安全等级也由低至高可分为3个层次。由传统的人工驾驶藉ADAS提升为车载驾驶辅助系统,人工智能技术和车联网让车辆进入自动驾驶时代。

国际汽车工程师协会 (SAE international)将L0定义为人工驾驶,把自动驾驶分为L1~L5五个安全等级。其中,L1:辅助驾驶;L2:部分自动化;L3:有条件自动驾驶;L4:高度自动化;L5:全自动化。本文仅涉及对应ADAS的L3。ADAS(Advanced Driver Assistance System)是当年开发商为推广而起的商业名称,直译应为先进驾驶辅助系统或高级驾驶辅助系统为妥,但技术发展势头迅猛,在自动驾驶技术突飞猛进发展的面前,似难以担当“高级”和“先进”之虚名,这是本文标题称为“车载驾驶辅助系统”之由。ADAS辅助驾驶者进入安全可靠的汽车驾驶系统,有人机交互接口时,车辆安全性和道路安全性显著增加,如图2所示。常见的辅助驾驶系统必含车载导航系统,通常由GPS和TMC(Traffic Movement Control,交通控制频道)提供交通实时信息。

图2 由各类信号装置构筑的ADAS安全体系

1.2 ADAS的内涵

ADAS核心功能是通过预警降低碰撞风险,把安全放在第一位。机器学习和数字化的时代,人机交互带来新的伦理问题。自动与互联驾驶是全面应用人机交互的创新领域,保护人类的生命始终拥有最高的优先权。辅助驾驶系统ADAS还包括:自适应巡航控制系统、车道偏离警示系统、换车道辅助系统、夜视、自动转向和制动干预、防撞警示系统和后方追尾碰撞预警等,是智能控制的初步,被视为实现自动驾驶的前提。其他功能的硬件还有车距检测预警、前车启动提醒、溜车提醒、北斗高精度定位、车载热点、云电子狗和语言导航等,如图3所示。

图3 驾驶辅助系统架构体系

图4 具有ADAS的行车记录仪能主动预警

可将ADAS技术应用分为3个类别:①提高能见度,包括倒车辅助系统、全景可视系统、盲点和对向车辆识别、交通标志识别;②增强控制,包括自适应巡航控制、自动泊车、车道识别和保持、头灯方向;③客舱安全性,包括安全带检测、驾驶员注意力监测、安全气囊展开、驾驶员疲劳检测。

基础硬件有众多的摄像头和记录仪。行车记录仪的作用是记录,把所有驾驶和环境情况记录并存储下来,确保事故以后的可追溯性。当然,也包括恶意碰撞 (如碰撞)的监测,明确驾驶责任是人或是电脑。记录仪会使用超大广角镜头,分辨率较高,检测距离达30m。而为了让芯片有足够的时间做出判断和反应,用于危险预警的ADAS摄像头焦距要长,检测距离须达70m以上,如图4所示。

各开发商的专用器件面向ADAS专业平台,须具有感知、识别、理解和控制的功能。采用深度神经网络处理器的架构,能与合作方 (汽车制造商)集成。根据开发商的深度学习算法专用设计,运算时效相对通用平台有数量级的提升,实现L3级别的自动控制。“先进”驾驶辅助系统的几个工作部分如图5所示。

ADAS主流使用对周围环境感测与传感的3件利器是激光雷达 (Laser Radar)、毫米波雷达 (MillimeterWave Radar)、视觉传感器 (Visual Sensor),以观察周围环境、获取机器视觉系统所需的信息,故成功的关键是图像的处理。

图5 “先进”驾驶辅助系统的几个工作部分

汽车正在向着一台安全联网的自动驾驶机器人快速演进,能够感测环境、进行思考,且会自主采取措施,安全行驶到达目的地 (需要摄像头、雷达、视觉传感器来工作)。配备5~8个视频摄像头是ADAS系统所必需的。车辆前方及后置摄像头需要高灵敏度和快速响应,以帮助监测交叉路口,避免碰撞。当前正迅速普及成为各型乘用车和SUV的标准配置。所有全景摄像头的组合为紧急制动辅助系统、自适应巡航控制系统、盲点检测、倒车盲点警示系统、车道偏离警告/自动车道保持即时提供可靠信息。ADAS还将支持交通标识识别系统,协助永不超越速度限制的要求。ADAS在车内的装置和线路板如图6所示。

图6 ADAS在车内的装置和线路板

1.3 ADAS的架构

随着汽车领域ADAS技术的不断进步,道路安全性也大幅提高。有些技术自动生效,其它技术则为车上人员提供信息,在特定条件下自动控制车辆。图7为ADAS配置的3项需求。

ADAS环境感知的图例在图8展开。

举例来说,特斯拉 (Tesla)汽车上最新的硬件套件采用NVDIA Drive PX2处理平台,分别从8个摄像头、超声传感器组合和1个雷达系统获得数据,该平台支持自动巡航(Auto Cruise)的掌上高效能模块,扩展成为支持群众的驾驶功能强大的AI人工智能超级计算机。系统能够了解车辆周围的情况,在高清晰度的地图上精准定位自身,并规范地规划安全行进路径。系统结合深度学习、传感器融合和全景视觉来实现全新的驾驶体验。

图7 ADAS配置需求

图8 ADAS的环境感知

ADAS摄像头分4类:①前置摄像机 (行人监测、启动紧急制动AEB);②后视镜摄像机 (直观泊车辅助);③环绕视野摄像机;④车内摄像机 (困倦、发呆监测)。摄像系统的性能对安全辅助或者自动驾驶车辆都至关重要。分布在车辆周围的摄像头尽管与CPU相距甚远,其性能决定了ADAS能够看到多远的物体、能够检测到多小的物体,以及信息的传输速度 (取决于分辨率、动态范围和帧速率),正是由于设备提供信息的关键性和数据速率极高,若出现有高误码率是不能容忍的。在全景视图系统中,每个摄像头的视频流通常为1280×800像素分辨率,而帧的刷新率为30 f/s。从图7a的ADAS的需求配置可见,汽车中使用了大量的总线和网络,CAN、LIN、flexRAY、HOST、LVD及以太网,但视频链路要求的数据速率排除了LVDS和以太网以外的所有总线类型。使用ADAS会在与摄像头进行可靠的通信过程中和实际车辆配置和最差的噪声条件下,仔细检查所有摄像头的误码率,以满足行业标准的同时提供高的可靠性。

1.4 ADAS的框图

汽车专用微机控制器ECU(Electronic Control Unit电子控制单元,亦称车载电脑),是发动机怠速控制的核心。图9展示了ADAS的架构框图。

图9 ADAS系统的整体框图

图9中有3项输出,分别是:BRAKES(制动)、STEERING(驾驶操作)和ALERTS(警示、警报)。智能终端ADAS的视频专用目标的系统级集成电路芯片SoC组件架构如图10所示,包含Host处理器,SD/MMC/eMMC卡片存储代码、数据。其中左数第3项“安全模块”是用以防止恶意非法入侵ADAS的获取权限,避免酿成灾祸。

图10 ADAS的视频SoC架构

嵌入式视觉处理 (Embedded vision processor)由32 bit标量单元 (Scalar unit) 和Voctor unit组成。

2 用于行人检测的传统视觉处理

2.1 传统视觉处理的突破

2011年以前,大多数模式识别任务是在带程序的矢量处理单元上完成的,如利用HoG(方向梯度直方图),需要人工调整实际特征来提取。一幅照片中的物体外观和形状是用密度梯度或边际方向的分布来描述,以判断障碍物。随着时代前进,从2010~2016年人工智能技术的识别分辨率飞跃的提高过程,源于2012年引入深度神经网络技术,如图11所示。

图11 深度神经网络战胜传统计算机视觉

自引入深度学习后,以ILSVRC为名的胜出者其差错率由2011年AlexNet 8层的28%显著下降至2012年的16%。如此飞速发展,使ADAS可靠地进入实用阶段。人工的差错率在4%~5%左右,故2015年起,深度神经网络已超越人工的反应与识别能力,或说从那时起人的识别和反应能力已落后于机器了。

到2016年分类差错率已由3.6%下降到3.0%;通过整合以往胜出的全部预训练模型取得了全新成果:物体检测的平均精度 (mAP)由62.1%提高到66.3%;定位误差由9.0%下降至7.7%,场景分类前五项差错率是9.0%。

算法实质是将信息的数据由输入转化为输出的一系列计算步骤。ADAS是在特定场景中,克服驾驶员的视野视觉和反应能力的缺陷和局限,摆脱众多疏忽与困扰,利用智能电子技术帮助,运用并增强视觉识别和处理,防止倏忽间发生交通事故。

随着对驾驶员和乘客的安全性更加关注,ADAS技术越来越依赖于分布在全车中的摄像头,随着ADAS应用与摄像头 (图4)紧密相关,关键设计挑战是快速、高效地将图像数据从摄像头传输到处理单元,并从处理单元传输至每个显示屏。设计ADAS摄像系统时,需要对图像品质、带宽、延迟、可靠性、成本和功耗等关键因素进行权衡、折衷来考虑。

可综述为如下6项原则:①带宽——用途不同,对每台摄像机的性能要求也不同。例如,采用广角镜头的倒车辅助摄像头可能具有130万像素、每像素18位颜色,速率为30 f/s。包括控制位和平衡编码,单台摄像机将产生1GB/s以上的数据流!②响应时间——不大于62.5 ms,足以应对车速大于100 km/h的车辆,即汽车每秒行进 27.8 m(91.18 ft)。③可靠性——为保证一切平稳运行,针对车辆有效使用期内的磨损做出自适应调整,在维护时进行检测是必不可少的。④功耗——随车辆中电子系统的增多,将功耗控制在电池容量及配电限制范围内尤显重要。⑤成本——为保证系统成本足够低的条件下仍可获取技术竞争优势,在减少元件数、电缆长度的同时,增强系统功能至关重要。⑥影像品质——基于视觉的ADAS,其目标检测与图像处理能力密切相关,因此高品质影像是基本保障。

计算像素时钟速率:图像传感器一般在每个像素时钟输出一个像素传递信息。根据图像尺寸和每秒显示的图像数量,计算给定摄像头的像素时钟。公式:像素行×像素列×帧速率=像素时钟 (Hz)。

2.2 CNN的功能、组成

人工神经网络是模拟人类神经系统的活动用以提高模式识别能力。就架构层面的定义而言,神经元获得输入,施加权重于输入,在加权输入总和之上执行传递函数。其结果随之传递给隐藏层之间的另一层或输出层。前馈神经网络是指将一级输出传递给另一级并不构成循环的神经网络;而将有反馈、内含定向反馈的称为递归神经网络。前馈神经网络中有一种名为卷积神经网络 (Convolutional Neural Network,CNN),公认在高能效的深度神经网络(DNN)中架构较简最为常用。它拥有多个隐藏层,可实现更为复杂的机器学习任务,如图12所示。当然,要确定每层使用的权重与偏差值,需对神经网络进行训练。训练DNN会需要庞大的数据集来训练所需要的性能,以应对训练过程对该神经网络施加足够数量的正确输入和错误输入,并使用误差函数教授网络所需的特征与性能。

图12 使用卷积神经网络 (CNN)的深度学习

CNN的部件一般分为卷积层、池化层和全连接输出层。卷积池化交替出现,保证提取特征的同时也强制模糊增加特征的旋转不变性。CNN称其为深度学习,即其层层的特征表示,简单的几何形状皆由底层层层训练出来,具有迁移学习的能力。

卷积神经网络充分利用图像的空间结构,共享权重或偏差,减少了参数的数量;仅包括卷积、池化和全连接3类层面,相比全连接网络更易训练。其流程符合嵌入式视觉物体检测对当前标准。CNN视觉应用的流程依次为:图像分类→物体检测分类定位→面部表情识别→手势识别和跟踪→场景识别和贴标签、语义分割。

CNN在大型图像处理中显示出其高效的识别性能,它是非全交织,能绕开对图像复杂的前期预处理,直接输入原始图像,避免了耗时的误差反向传播;进行精确的差值补充与还原,补充完成分辨率高的画面,充实内容丰富细节;用来识别位移、缩放及其他形式扭曲不变性的二维图形,网络能并行学习,权值共享,降低了网络复杂性;对多维输入向量的图形可直接输入网络,降低了特征提取和分类过程中数据重建的复杂度。基本结构由特征提取层和特征映射层组成,由于一个映射面上的神经元共享权值,这样两次特征提取结构降低了特征分辨率。

神经网络语义宽泛,包括多种截然不同的子门类。子类别的名称用于识别被实现网络的具体类型。这些网络均在大脑皮层上建模,在大脑皮层中每个神经元会接收输入、处理输入,并将其传递给下一个神经元。故神经元的组成包含输入层、多个隐藏的内部层和一个输出层。

人看到一个场景一幅图像瞬间,即感知场景或图中主体的行为在干什么,而计算机感受到的场景图像皆是数字矩阵。从一个个数字矩阵中获取信息,确认其边界、角点、步长,需对图像进行卷积分类处理,逐步接近目标,让计算机理解图像。卷积核实际是一个基于滤波器的图像处理器,先模糊图像,识别边缘。小的卷积核在整张图上权值共享是因输入数据的局部特征具有平移不变性 (在不同位置具有相同局部特征的共性)。卷积探索输入数据的局部相关性 (不同样本数据皆有相同的局部特征)。通过卷积层不同的卷积核提取不同的频段的特征,通过池化层提取不同的粒度的特征。

2.3 CNN架构的的训练与部署

一幅图像处理,须先选择某一深度学习架构,如CaffeTensorFlow,皆是行业标准框架,可供使用。

图13 深度学习架构的训练

机器学习是通过社交网络创建和训练来实现的。训练的输出是网络结构及与之相关的系数。如图13所示,训练是一项专业性极强的繁杂工作,建议由受过专训的素质人士按程序完成,训练获取网络结构为32位浮点数的系数。通过深度学习及其自我修正,将可训练的系数,利用工具由浮点转换为定点,相对独立地部署到诸如摄像头的嵌入式设备中去,注意降低功耗,尽可能缩小面积,训练了网络,也实现网络。深度学习架构的配置部署如图14所示。

图14 深度学习架构的配置部署

3 ADAS中检测物体的深度学习

算法的实质是将数据输入转换为输出的一系列计算步骤,不仅决定了预警的准确率,还能凭籍机器学习的功能,随数据不断积累而提高。专业级的ADAS产品预警准确率能达99%以上。

3.1 用于行人检测的卷积神经网络

图15演示了CNN处理一幅行人画面的流程。物体检测和行人检测在系统的操作流程中享有极相似的流水线,必须通过使用矢量DSP的滑动窗口方法识别候选区域——这被称为基于块拼贴 (Patch-based)的物体识别,仍需要采用矢量DSP进行预处理和图像比例调整。

图15 用于行人检测的卷积神经网络

3.2 CNN的位宽对检测精度的影响

位宽是指一个时钟周期内传递数据的位数或说宽度,表达了一次能传递的数据量的参数。CNN的位宽于检测精度影响甚大,见图16,是位宽与分辨率的关系曲线。

图16 CNN位宽于检测精度影响曲线

反复实践、研究、比较表明,12位是CNN识别性能和硬件成本间较好的折衷点。8位将导致现有图形识别率严重下降、丢失,而12位乘法器其面积只有16位乘法器的一半,即使32位与识别性能的提高没有显著提高。

3.3 基于块拼贴 (Patch-Based)的检测举例

块拼贴及纹理合成算法是图像处理IP(Image Process)的重要手段。图17是某块拼贴实例中各性能参数的情况。图17显示了块拼贴行人监测的网络结构。下方列出了最低处理要求,每秒处理的块数为495块;每块的周期数为1.6M周期;系统内部特征图和权重所消耗占用的存储量分别为171 K/274 K字节。

图17 块拼贴实例中各性能参数的情况

4 场景分割

图像的场景分割是重要的图像处理分析技术。根据镜头的相关性和时间上的临近性,把相似的镜头划分到同一场景里,这样便可将一段完整的图像分割成若干有意义又可有效存储和管理的逻辑故事单元。对前方和周围场景图像分析,区别天空、树木、行人、障碍物和道路,作语义识别,并贴标签,用于确定行驶的对策 (找路或说“路径发现”)。

通常,根据镜头特征边缘提取方法,利用关键帧来表达镜头,通过主色跟踪和质心运动来提取镜头特征。由主色跟踪来表达镜头的时域信息,由质心运动反应镜头的空间信息,并结合两者测量镜头的相似度。为减小分割时间,克服过分割的困扰,常改进为双向滑动窗口,将相似的镜头相链接,利用时间上的连续性将场景初步分割,对过分割的场景进行后处理,得到最佳的终端场景。这样既有效简化了算法,也克服了忽略镜头的时域信息的缺陷。见图18。

图18 基于CNN的场景分割

完整的场景分割与与完整的语义标签一般用于ADAS中路径的发现与应用,需先定义天空、森林或建筑物,定义没有车道标记的道路边界,再以需求分析整幅图像,这需要高的计算功能,要求高性能的CNN——超过500GMAC/s。目前水平已达800GMAC/s。

图18所示基于CNN场景分割技术因视频领域图像处理软件有成熟进展,ADAS的CNN可嫁接应用。

5 展望CNN未来的趋势

1)ADAS中CNN未来运用的趋势之一:分辨率和帧速率增高提升。以利于更高精度高效检测,见图19。

图19 未来趋势之一:分辨率和帧速率提升

摄像机分辨率 (兆像素或MP):目前为1~2MP,预计2018年可达到3~4MP。以后将达到7~8MP。更高的分辨率(Mpixel),可检测更远距离的物体。摄像机帧速率 (FPS):目前为10~15、30帧,未来将达到60 f/s。更高的帧速率相当于更短的延时,或更远的停止距离;还能提高物体 (例如行人)跟踪的性能。

2)ADAS中CNN未来运用的趋势之二:提高性能、降低功耗、减小尺寸。CNN在可预见的未来仍将继续主导嵌入式视觉处理任务。但对CNN性能增强、缩短响应时间和功耗降低提出更高更严格的要求。提高CNN精度将推动减小CNN尺寸,如Maxim公司的GoogLeNet和ResNet两产品已证明带更多数据更深层网络可提供更高的精度。而压缩和剪枝可减少运算量,从而也节省能耗。

循环神经网络 (RNN)将作为CNN的补充,可用来在时间序列上作模式识别,并为图像添加字幕、文本生成和语言转换等。

6 结语

1)视觉处理技术是自动驾驶车辆的关键技术。

2)深度学习技术,比如CNN引擎可为物体的检测提供最高的精度。现在已用于汽车视觉处理的统一多内核处理器,内含标量+矢量DSP+CNN引擎 (先进的卷积神经网络),新开发的嵌入式硬件支持更高的CNN性能,如基于块拼贴的CNN和基于帧 (Frame Based) 的CNN。

3)当前,我们的旅程还只是站在人工智能时代的大门之前,处于发展的初级阶段,我们现在的人工智能技术还只是神经网络的一个别称,神经网络技术的水平还不能完全实现人类的推理和理解,只是构建人工智能的道路中最先运用的一种工具。

猜你喜欢
卷积摄像头神经网络
浙江首试公路非现场执法新型摄像头
基于全卷积神经网络的猪背膘厚快速准确测定
基于神经网络的船舶电力系统故障诊断方法
MIV-PSO-BP神经网络用户热负荷预测
摄像头连接器可提供360°视角图像
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
基于神经网络的中小学生情感分析