刘奇 李杨
摘 要:文章提出基于残差神经网络对驾驶员车辆操控情况和路基数据进行实时分析,达到在线评估驾驶行为的目的。基于AutoSar框架对整个数据采样和分析计算进行车规级编程。在实车上的实验结果表明,该系统对各种主流驾驶行为的分析准确率达到91.2%,证明了该系统具有较好的有效性。
关键词:残差神经网络;汽车开放系统架构;驾驶行为分析
随着汽车电子与软件技术的快速发展,汽车驾驶行为对交通安全、节能减排、智能网联汽车技术发展都起到了越发重要的作用。在高性能汽车芯片的支持下,使用人工智能算法对驾驶行为进行分析挖掘已经成为目前的研究热点。目前,常见的人工智能算法主要包括贝叶斯分类、支持向量机、马尔科夫链、决策树、浅层神经网络和深度神经网络等。其中,深度神经网络能够自主进行特征学习,有效避免了人工特征对分析精度的影响,因此,展现出旺盛的应用前景。但是深度神经网络的训练代价较大,且随着网络深度的增加,训练存在无法收敛的风险。残差深度网络(ResNet)的出现成功提高了训练的收敛性和效率,在高维原始特征空间上取得了很好的效果[1]。车辆驾驶行为受到复杂交通环境、驾驶员驾驶风格、各种突发需求等因素的影响,因此,需要在高维环境中进行刻画。此外,在线驾驶行为分析系统对有效性、鲁棒性都有很高的要求。因此,本文尝试使用ResNet对驾驶行为进行在线分析,并在汽车开放系统架构(AUTOmotive Open System Architecture,AUTOSAR)框架下进行实现,使其能够运行在车载终端平台上。
1 ResNet
传统深度神经网络会因为高密度中间层而导致训练时发生梯度消失或爆炸,使得高深度神经网络无法实现高质量的训练。He等受到Highway网络启发,在其机制基础上提出了ResNet。该型网络不但提高了训练的质量和速度,也有效提高了整个网络模型的准确率。ResNet的根本特性是引入了逻辑单元残差块[2]。
1.1 残差块
殘差块由3个子层组成,分别是卷积层(Conv)、批处理归一化层(BN)和非线性激活函数层(ReLU),其结构如图1所示。
对于任何一个残差块l,设其输入为,则其输出为:
xl+1=f(xl+F(xl,Wl))
其中,F(xl,Wl)是残差函数,是该残差函数对应的权重参数,是非线性激活函数ReLU。残差函数F中的卷积层数是可以根据需要进行人为设定的,以获取更好的性能。整个残差块引入直接连接方式实现输入与输出的线性映射,即:
xl+1=f(Wsxl+F(xl,Wl))
图1 残差块结构
1.2 网络结构
将多个残差块顺序堆叠在一起后,就形成了整个ResNet,其结构如图2所示。
在ResNet中,卷积核的大小与数量、卷积计算时的步幅等都可以根据实际需要进行调整。此外,残差块之间也可以通过增加池化层来实现降维。
1.3 输入特征
驾驶行为本质上属于一种高复杂性的时序过程,其过程演变受到交通环境、驾驶需求和习惯等因素的影响[3-4]。本文在现有技术的基础上,生成以下驾驶行为原始特征作为ResNet的输入特征。
表1 ResNet输入特征
特征名称 特征值范围 特征作用
limspeed 0~150 km/h 描述道路限速情况
lampsta 0(红)/1(黄)/2(绿) 前进方向红绿灯状态
vehsum 0~300 车辆周边车辆数量
fvehdis 0~300 m 前方车距
vehspeed 0~200 km/h 当前车速
velacc ﹣10~10 m/s2 加减速
accfreq 0~10 000 急加减速频率
clfreq 0~10 000 变道频率
clls 0~10 000 变道打方向灯频率
上述原始特征采集完成后,将特征向量输入ResNet模型进行分析。
图2 ResNet整体结构
2 车规级编程
汽车软件相比桌面消费应用软件具有极高的可靠性要求,再加上汽车软件功能的复杂化趋势,带来了编程代价的快速增长。为了加快汽车软件的研发和部署周期,广泛采用在AutoSar框架下进行车规级编程的方式。AutoSar是一种汽车开放系统架构,其目的是为复杂的汽车电控单元软件建立标准化平台,以减少汽车软件的设计复杂度,增加其灵活性,使上层应用开发可以不用关心底层硬件和操作系统细节,大幅提高了开发效率[5-6]。
在本文设计的系统中,驾驶行为识别原始数据主要来自驾驶员对车辆操纵状态以及道路信息终端的数据。其中,车辆操纵状态数据的获取主要通过车载网络来获取,道路交通信息终端数据主要通过4G平台来获取。
2.1 车载网络通信编程
AutoSar设控制器局域网络(Controller Area Network,CAN)总线数据采集规范是由诊断协议(Unified Diagnostic Services,UDS)进行定义。其基本原理是通过终端向汽车电子控制单元(Electronic Control Unit,ECU)发起询问,然后等待接受并解析ECU的回应。其编程规范为:
其中,SID是UDS设定的服务号,Parameter是指定服务的参数。
收到ECU发出的回应CAN帧后,需要对其数据区原始数据进行解析,以提取出车况数据。
2.2 4G通信编程
在车载终端,4G通信编程的本质是Scoket编程,其基本方法如下:
(1)构建Socket实例,根据指定的服务器地址和端口建立传输控制协议(Transmission Control Protocol,TCP)连接。
(2)使用套接字提供的InputStream和OutputStream方法进行数据读写。
AutoSar定义了服务信息软件架构中的通信协议方案,按照其规定进行编程。
本文设计系统采用C++语言进行程序编写。编写模块按照ISO26262协议进行,使软件系统可靠性得到保证。
3 系统架构
整个系统的运行平台为英伟达的Jetson TX2,该设备提供了CPU+GPU的计算平台,支持TFPS的计算能力,能够实时进行深度神经网络在线运算。外围接口方面,TX2提供2路CAN模块,通过外扩接口实现4/5G通信能力。在其基础上设计整个系统的架构,如图3所示。
图3 系统架构示意
系统中的CAN总线数据通过车载自动诊断系统(On-Board Diagnostics,OBD)接口进行获取,4/5G信号通过通信模块进行传输,然后再通过串行外设接口(Serial Peripheral Interface,SPI)总线和TX2进行交互。
系统的操作系统采用Linux,在其上构建AutoSar框架,安装各型应用库,实现对上层软件的支持。
4 实验
基于上述工作,将整个系统安装在长安福特福克斯车辆上进行实车测试。招募了50名驾驶员进行样本制作实验。具体方案为在每个驾驶员10~20 min的驾驶过程中进行采样,每个驾驶员相继完成匀速驾驶、缓加减速、急加减速、变道等动作,由南京交通职业技术学院智慧交通实验室提供的路基设备实现交通信号模拟生成。共完成3 200个样本采集,分析结果分为正常驾驶、警告危险驾驶和严重危险驾驶3种模式[6]。
实验采用五折交叉验证法,将其结果与貝叶斯模型、支持向量机模型和径向基函数(Radial Basis Function,RBF)神经网络(RBFNet)进行比较,结果如表2所示。
表2 实验结果
驾驶行为分析模型 平均准确率/%
BF 89.1
SVM 88.6
RBFNet 88.6
ResNet 91.2
可以看到,本文所用的方法获得了最好的平均准确率。
5 结语
本文提出基于残差神经网络对驾驶员操控车辆情况和路基数据进行实时分析,达到在线评估驾驶行为的目的。基于AutoSar框架对整个系统进行车规级编程,主要实现了基于车载网络CAN总线上的数据采样程序、基于4G的路基终端设备数据采样分析程序、基于残差深度网络的驾驶行为分析程序的编写。在实车上的实验结果表明,该系统对各种主流驾驶行为的分析准确率总体达到了91.2%,证明了该系统具有较高的有效性。随着5G软、硬件技术的逐渐成熟,后期会尝试将4G通信方式升级为5G,大幅提高系统的可靠性。
[参考文献]
[1]郭玥秀,杨伟,刘琦,等.残差网络研究综述[J].计算机应用研究,2019(6):6-10.
[2]SERMANET P,EIGEN D,ZHANG X,et al.OverFeat:integrated recognition,localization and detection using convolutional networks[C].Moscow:Proc of International Conference on Learning Representations,2014.
[3]宋海娜.基于加速度计的智能网联汽车驾驶行为建模方法[J].移动通信,2019(4):14-15.
[4]周爱国,徐鹏宇,刘备.车载信息融合交通因素的驾驶行为分析[J].汽车零部件,2018(8):27-28.
[5]ROMAN P,BRGE S.适用于高性能车载计算平台的自适应AUTOSAR[J].汽车与配件,2019(2):13-15.
[6]付宝军,钱贾敏,郝明德,等.软件合作开发模式在汽车电子领域的应用[C].上海:中国汽车工程学会年会,2018.
On-line analysis system of gauge-level driving behavior based on residual neural network
Liu Qi, Li Yang
(School of Electronic Information Engineering, Nanjing Communications Institute of Technology, Nanjing 211188, China)
Abstract:This paper presents a real-time analysis of drivers vehicle handling and roadbed data based on residual neural network to achieve the purpose of online evaluation of driving behavior. Based on AutoSar framework, the whole data sampling and analysis calculation are programmed at the gauge level. The experimental results on a real vehicle show that the accuracy of the system for analyzing various mainstream driving behaviors reaches 91.2%, which proves that the system is effective.
Key words:residual neural network; AUTOmotive open system architecture; driving behavior analysis