基于改进LRCN模型的驾驶行为图像序列识别方法

2018-05-09 12:39孙立博秦文虎
关键词:高斯预处理卷积

吴 昊, 平 鹏, 孙立博, 秦文虎

(东南大学 仪器科学与工程学院, 江苏 南京 210096)

随着我国的机动车保有量逐年攀升,交通事故也频繁发生.其中,由于驾驶员人为过失导致的交通事占90%以上[1].危险驾驶、疲劳驾驶等一系列不规范驾驶行为对驾驶行为实时识别、分析和监控提出了新的要求.计算机视觉作为最接近驾驶员感知方式的技术之一,以其非接触和高性价比的特质成为驾驶行为识别的首选[2].

对驾驶行为识别和分析的传统视觉算法大致可分为5个步骤:特征感知、图像预处理、特征提取、特征筛选和推理算法[3-5].由于传统视觉算法将特征提取和分类器算法分开设计,在应用的时候再结合在一起,这就要求研究者根据数据特点和先验知识自行设计前4个步骤,但手工设计需要大量的尝试和经验积累,甚至需要一点点运气[6-8].黄思博[9]利用计算机视觉的方法,提取了驾驶员身体姿态的特征,建立了驾驶员“头部-前臂”模型,并对该模型进行运动跟踪以预测驾驶员的运动状态,最后将运动状态转化为转角参数特征向量放入朴素贝叶斯分类器中完成驾驶行为的识别.徐翠[10]综合了多种基于计算机视觉的驾驶员疲劳检测的方法,首先对驾驶员眼睛和嘴巴的状态检测问题进行了探讨,提出了一种基于统计学习理论和直方图距离的检测方法,然后将提取得到的眼/嘴区域特征向量放入Ada-Boost分类器进行训练.

深度学习的兴起为计算机视觉提供了新的发展方向.深度学习方法能够自动地学习到隐含在图像样本中更加本质的特征,不需要储备先验知识,通过不断的迭代学习训练构建学习模型,再通过学习模型对新数据做出特征判断或者属性归类,这种方法有更强的自适应性和泛化能力[11-13].

在深度学习的模型中,循环神经网络(recurrent neural networks,RNN)常用于处理序列数据.RNN的隐藏层节点之间是相互连接的,会对之前序列的信息进行记忆并应用于当前输出的计算.但随着时间序列的增加,RNN的前后信息关联度会逐渐减小,存在梯度消失现象.为此,S. HOCHREITER等[14]提出了长短期记忆网络(long short-term memory network,LSTM)来解决长期依赖问题.在此基础上,J. DONAHUE等[15]将卷积神经网络(convolutional neural networks, CNN)与LSTM结合,提出了长效循环卷积网络(long-term recurrent convolution network,LRCN),CNN用于提取图像特征,LSTM用于分析特征序列在时间维度上的关联性.

文中提出一种基于改进LRCN的驾驶行为识别模型.将CNN与门控递归单元(gated recurrent unit,GRU)递归网络相结合,CNN主要用于提取驾驶行为图像的高层特征;GRU是LSTM的一种变体,主要用于分析图像序列之间的关联性.此外,该模型中还加入了一些图像预处理和优化策略以提高识别精度.

1 试验方法设计与模型结构

1.1 试验方法设计

试验的整体流程如图1所示.

图1 试验整体流程图

摄像头采集的原始视频数据经过一系列的预处理算法后分为训练集、验证集和测试集,训练集用于训练和更新模型参数,测试集则用来预测训练好的模型的识别精度.

1.2 预处理算法

由于视频样本之间的差异和计算能力的限制,从摄像头采集的原始视频数据不能够直接输入神经网络模型中进行训练,需要统一化的预处理,具体的处理流程如图2所示.

图2 预处理算法流程图

1.2.1 高斯图像金字塔降采样

出于对计算效率的考虑,需要将样本的全部图像做基于高斯图像金字塔的降采样处理,计算式为

(1)

式中:w(m,n)为高斯卷积核的权重;gl-1和gl分别为前一层和当前层的像素值.

尺度量纲一化步骤如下: ① 输入图像尺寸为960×576,2次高斯图像金字塔下采样操作,输出图像尺寸为240×144; ② 在宽度方向上提取感兴趣区域(region of interest,ROI),输出图像尺寸为144×144; ③ 再一次高斯图像金字塔下采样操作,输出图像尺寸为72×72; ④ 在时间维度上做图像帧的平均采样,每个样本固定帧数为30帧,帧率为10帧·s-1.

1.2.2 高斯混合模型

前期处理得到了统一化尺寸和帧数图像序列样本.为了进一步提高CNN提取图像特征的收敛速度,在预处理阶段还加入了高斯混合模型(Gaussian mixture model,GMM)用于预提取特征.单高斯概率密度分布函数为

(2)

式中θ=(μ,σ2).而高斯混合模型是K个单高斯模型(GSM)混合而成,即分为K个类,形式为

(3)

式中αk为样本集合中k类被选中的概率.对于每个GSM生成的N个数据,αk计算式为

(4)

式中γjk为数据j由第k个GSM生成的概率,由贝叶斯估计和全概率公式推导得出,计算式为

(5)

通过迭代直至收敛,完成聚类.

高斯混合模型特征预提取的实例如图3所示.

图3 高斯混合模型特征预提取实例图

图3a为原始图像,图3b为高斯混合模型聚类的掩模图像加上中值滤波的结果.可以看出该模型可以较好地预提取驾驶行为特征,排除车内外环境因素所带来的干扰.

1.3 网络模型结构

文中所采用的完整神经网络模型结构见图4.

图4 网络模型结构

1.3.1 卷积神经网络(CNN)

卷积神经网络是一系列不同功能的网络层交替出现的层级结构,主要包括卷积层、池化(pooling)层和全连接层.文中经反复调参后确定的CNN部分结构如图5所示.

图5 卷积神经网络结构

图5中包括2个交替出现的卷积层和最大池化层,即对应图4中的N=2.对于CNN中的所有层,卷积核和池化核的大小均为(3×3)和(2×2),池化层的滑动步长设置为2,避免了过度池化带来的信息损失.由于高层的特征会随着抽象程度的增加而增加,故卷积核的数目应当随着层数的增加而设置更多.

卷积神经网络的输入为30帧的灰度图像序列,尺寸为(72×72),故输入数据的尺寸为(30×1×72×72).

C1层有16个卷积核,每个卷积核与输入图像在空间维度上是局部连接的,当卷积核在输入图像上滑动并计算內积,便完成了卷积,生成一个2维的激活图(activation map),激活图反映了该卷积核在不同空间位置处的特征反应.此处使用零填充(zero-padding)来保持数据体的空间尺度,故C1层输出数据尺寸为(30×16×72×72).

在连续的卷积层之间周期性地插入池化层(汇聚层)可以逐渐降低数据的空间尺寸,减少网络参数.这样一方面可以控制计算所耗费的资源,另一方面还可以有效地抑制过拟合.P1层就是对C1层的输出做最大池化,在(2×2)的滑动区域内取最大值作为输出,以减少维度抑制过拟合.故P1层的输出数据尺寸为(30×16×36×36).

同理,C2层有32个卷积核,P2层为最大池化层,CNN最终输出的数据尺寸为(30×32×18×18).

此外,所有的卷积层后都跟有一层ReLU激活函数,所有的池化层后都有一层概率为50%的随机失活层.

1.3.2 门控递归单元(GRU)

门控递归单元(GRU)是由K. CHO等[16]提出的一种LSTM变体模型,标准LSTM模块与GRU模块分别如图6,7所示.该模型将遗忘门和输入门合并成一个更新门,并且将胞元状态和隐藏层状态合二为一,得到一个更为简化的LSTM模型.

图6 标准LSTM模块

图7 GRU模块

GRU各个门结构和状态的计算公式如下:

rt=σ(Wr·[ht-1,xt]),

(6)

zt=σ(Wz·[ht-1,xt]),

(7)

(8)

(9)

和标准LSTM模型相比,GRU从结构上来看少了一个门结构,从而减少了参数和矩阵运算的数量,在计算效率和收敛速度上更胜一筹.

CNN的输出数据经过尺寸变换后输入GRU递归网络,图像序列中每一帧填充一个GRU模块单元,通过递归运算将各帧之间的信息融合,提取时间维度上的关联度特征.

整个网络的结构和参数情况见表1.

表1 网络模型结构与参数

2 试 验

2.1 试验环境

采用深度学习架构Keras搭建试验运行环境,并配置NVIDIA的CUDA环境进行GPU并行加速计算.具体的试验环境参数如下:CPU,Intel i5-6500 3.2 GHz;GPU,Nvidia GTX 960,4 GB显存;操作系统,Win10 64位;编程语言,Python 2.7.13;加速环境,CUDA8.0,cuDNN5.1.10;深度学习架构,Keras2.0.4(Theano后端).

2.2 数据集

文中使用自行搭建的车载试验平台采集的视频数据制作驾驶行为数据集,由不同驾龄和性别的15个测试对象参与试验,每人重复完成6类驾驶行为,共产生450个图像序列样本,其中包括150个夜间红外成像图像序列样本,图8给出了若干数据集中的样本实例.

图8 驾驶行为数据集

数据集中每个图像序列样本包含30帧图像,帧率为10帧·s-1,图像尺寸为(72×72),6类驾驶行为分别为左转弯、右转弯、直行、换挡、倒车和异常(突发身体不适或疲劳等,主要表现为双手离开方向盘,头部低垂,长时间无进一步动作等).

所有的样本在输入神经网络模型前都会先经过预处理过程,通过高斯混合模型预提取特征,滤波后转化为单通道的灰度图像.每个样本可以用一个尺寸为(30×1×72×72)的矩阵表示.数据集的各项参数如下:测试对象,15人;驾驶行为类别,6类;样本量,450个(白天300个,夜间150个);样本尺寸,30×1×72×72.

2.3 试验结果

2.3.1 试验1(环境适应性试验)

本试验使用仅白天样本和全样本分别训练神经网络模型,并用训练好的模型来预测测试集,以测试该模型的环境适应性.

环境适应性试验的训练集、验证集和测试集按照固定比例随机抽取,5次交叉验证的结果见表2.

表2 环境适应性试验识别结果

从表2可见,该模型对仅白天样本和全样本训练都有很高的识别精度,由于夜间样本为主动红外成像样本,轻微光强扰动对成像质量的干扰较大,导致全样本的识别精度略低.其中错误识别主要出现在几个动作幅度较小,行为逻辑相似的分类之间.总体而言,该模型对于场景变换的干扰有很好的抑制能力,具有较高的鲁棒性.图9,10给出了训练过程中的精度变化情况.

图9 仅白天样本模型精度变化

图10 全样本模型精度变化

由图9,10可见,在整个训练过程中,训练集精度一直处于上升的趋势,仅白天样本训练模型的验证集由于本身样本量较少,在迭代中期波动较大,且与训练集精度相差较大,这说明存在一定的过拟合,但在迭代的后期有一定的修正,当迭代60次后基本趋于稳定;全样本训练中期的过拟合现象有了一定程度的改善,波动的区间也相应有所缩短,整个模型的收敛速度也有所加快,当迭代次数大于50时基本已经完成收敛.

2.3.2 试验2(预处理算法试验)

本次试验中对数据集仅做尺度量纲一化处理,不做GMM特征预提取,其他试验条件均与试验1中全样本试验相同,以测试高斯混合模型对训练收敛的影响.5次交叉验证的识别精度为15.0%,图11,12分别给出了损失值和精度变化曲线.

图11 试验2损失值变化

图12 试验2精度变化

由图11,12可见,损失值在迭代10次之后不再下降,保持在1.8左右.精度在16.7%左右波动.整个模型完全没有收敛,识别精度近似于随机预测(约1/6).这说明预处理算法中的高斯混合模型可以有效地过滤掉大部分的无关信息,驾驶行为相关的关键图像信息不会被无关信息淹没,使得模型能够得以收敛.

2.3.3 试验3(模型对比试验)

在本次试验中,将模型中循环递归网络部分由GRU替换为LSTM,其他试验条件均与试验1中全样本试验相同,以分析改进LRCN模型与传统LRCN模型之间的差异.5次交叉验证的识别精度为89.6%,图13给出了试验3的精度变化曲线.

图13 传统LRCN模型精度变化

由图13可见,与试验1的结果相比,该模型的识别精度较低,前中期的波动更为严重,收敛速度也较慢,需要迭代100次后才能较好地完成收敛.

综合以上试验可以看出,相比于传统的LRCN模型,改进的LRCN模型加上合理的图像与处理算法在当前的驾驶行为识别应用场景下,有更高的精度和更快的收敛速度,且应对场景变化的鲁棒性高.

3 结 论

1) 图像预处理算法和优化策略保证了模型的收敛,提高了模型对不同场景、不同测试对象识别的鲁棒性.

2) 与传统的基于计算机视觉的驾驶行为分析方法相比,基于改进LRCN模型的驾驶行为识别方法不需要基于先验知识建立人体姿态模型,可以自适应地学习姿态特征,完成收敛.

3) 在自建数据集上新算法平均识别精度达94.3%,比传统LRCN模型高4.7%,且模型收敛的速度更快,泛化能力更强.

4) 文中仅在小样本量的数据集上测试模型的性能,如果增加数据集的体量和行为的类别,模型将会有更好的泛化能力.未来,将会研究如何将该模型进一步优化以期能够实现实时驾驶行为识别.

参考文献(References)

[ 1 ] ZHAO H, YIN Z Y, XIANG H Y, et al. Preliminary study on alterations of altitude road traffic in China from 2006 to 2013[J]. Plos One, 2017, 12(2):e0171090.

[ 2 ] SAITO Y, ITOH M, INAGAKI T. Driver assistance system with a dual control scheme: effectiveness of identifying driver drowsiness and preventing lane departure accidents[J]. IEEE Transactions on Human-Machine Systems, 2016, 46(5):660-671.

[ 3 ] BIÇAKSIZ P, ÖZKAN T. Developing the impulsive driver behavior scale [J]. Transportation Research Part F Traffic Psychology & Behaviour, 2016, 43:339-356.

[ 4 ] PRECHT L, KEINATH A, KREMS J F. Effects of dri-ving anger on driver behavior-results from naturalistic driving data[J]. Transportation Research Part F Traffic Psychology & Behaviour, 2017, 45:75-92.

[ 5 ] CORDAZZO S T D, SCIALFA C T, ROSS R J. Mo-dernization of the driver behaviour questionnaire[J]. Accident Analysis & Prevention, 2016, 87:83-91.

[ 6 ] LIAO H M, DING S F, WANG M M, et al. An overview on rough neural networks[J]. Neural Computing & Applications, 2016, 27(7):1805-1816.

[ 7 ] PÉREZ D, BEVILACQUA R. Neural network based calibration of atmospheric density models[J]. Acta Astronautica, 2015, 110:58-76.

[ 8 ] 张瑞锋. 基于自然驾驶数据及主被动试验方法的人车安全行为研究[D]. 长沙:湖南大学, 2016.

[ 9 ] 黄思博. 基于计算机视觉的异常驾驶行为检测方法研究[D]. 广州:华南理工大学, 2011.

[10] 徐翠. 基于计算机视觉的汽车安全辅助驾驶若干关键问题研究[D]. 合肥:中国科学技术大学, 2009.

[11] DEDINEC A, FILIPOSKA S, DEDINEC A, et al. Deep belief network based electricity load forecasting: an

analysis of Macedonian case[J]. Energy, 2016, 115:1688-1700.

[12] 郑胤, 陈权崎, 章毓晋. 深度学习及其在目标和行为识别中的新进展[J]. 中国图象图形学报, 2014, 19(2):175-184.

ZHENG Y,CHEN Q Q,ZHANG Y J. Deep learning and its new progress in object and behavior recognition[J]. Journal of Image and Graphics, 2014, 19(2):175-184.(in Chinese)

[13] 蔡英凤, 王海, 陈龙,等. 采用视觉显著性和深ROHD度卷积网络的鲁棒视觉车辆识别算法[J]. 江苏大学学报(自然科学版), 2015, 36(3):331-336.

CAI Y F, WANG H, CHEN L, et al. Robust vehicle recognition algorithm using visual saliency and deep convolutional neural networks[J]. Journal of Jiangsu University (Natural Science Edition), 2015, 36(3):331-336.(in Chinese)

[14] HOCHREITER S, SCHMIDHUBER J. Long short term memory[J]. Neural Computation, 2013, 9(8):1735-1780.

[15] DONAHUE J, HENDRICKS L A, GUADARRAMA S, et al. Long-term recurrent convolutional networks for vi-sual recognition and description[C]∥Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway:IEEE Computer Society, 2015: 2625-2634.

[16] CHO K, VAN MERRIЁNBOER B, GULCEHRE C, et al. Learning phrase representations using RNN encoder-decoder for statistical machine translation[C]∥Procee-dings of the 2014 Conference on Empirical Methods in Natural Language Processing. [S.l.]:Association for Computational Linguistics, 2014: 1724-1734.

猜你喜欢
高斯预处理卷积
求解奇异线性系统的右预处理MINRES 方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
高COD二噻烷生产废水预处理研究
卷积神经网络的分析与设计
数学王子高斯
天才数学家——高斯
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
基于预处理MUSIC算法的分布式阵列DOA估计
从自卑到自信 瑞恩·高斯林