扩展功能
文章信息
- 彭博, 张媛媛, 唐聚, 谢济铭, 王玉婷
- PENG Bo, ZHANG Yuan-yuan, TANG Ju, XIE Ji-ming, WANG Yu-ting
- 基于自编码器与k-means聚类的视频交通状态自动识别
- Automatic Traffic State Recognition from Videos Based on Autoencoder and k-means Clustering
- 公路交通科技, 2020, 37(12): 117-123
- Journal of Highway and Transportation Research and Denelopment, 2020, 37(12): 117-123
- 10.3969/j.issn.1002-0268.2020.12.015
-
文章历史
- 收稿日期: 2019-12-24
2. 重庆交通大学 交通运输学院, 重庆 400074
2. School of Traffic and Transportation, Chongqing Jiaotong University, Chongqing 400074, China
随着城市的快速发展,城市机动车保有量持续增长,交通拥堵愈发严重。为了缓解交通拥挤、避免交通瘫痪,需要及时有效地识别道路交通状态。目前,国内外基于微波检测器[1]、地磁感应线圈[2]、视频检测器[3]、RFID[4]和浮动车[5]等技术手段提取的数据,对交通状态识别展开了大量研究。其中,随着城市交通视频资源越来越丰富,以及视频处理技术的快速发展,基于视频图像的交通状态识别研究获得了广泛关注。
国内外学者基于视频图像进行了一系列交通状态识别研究,Morton(2005)基于航拍图像实现了交通状态识别[6]; Reinartz(2006)从航拍图像中获得高质量的交通数据[7]; Lozano(2009)基于k-均值聚类方法提高了交通拥堵状态识别系统的鲁棒性[8]; Liao(2014)利用支持向量机和遗传学算法建立了交通视频图像拥挤识别模型[9]; Quiros(2016)基于模糊逻辑提出视频图像交通状态识别方法[10]; 崔华(2017)利用模糊C均值聚类算法对静态图像进行交通状态识别[11]。总体而言,这些研究可从图像中提取车辆位置、流量、速度等交通参数,进而识别交通状态。由于视频图像内容复杂多样,快速准确提取交通特征可能较为困难,不易实时处理快速增长的海量交通视频。
视频图像具有维度高、信息冗余复杂等特征,考虑到及时高效识别交通状态的重要性,一些学者尝试对视频图像进行有效降维。其中,自编码器是一种非线性无监督神经网络模型,能够对视频图像数据有效降维,进而实现图像分类,因此,基于自编码器的图像降维与模式识别研究受关注较多:Wang(2012)提出了一种基于传统自动编码器对称结构的折叠自动编码器,减小尺寸并降低了降维的计算成本[12];Gao(2015)提出一种基于有监督堆叠自动编码器的面部识别方法[13];Zhao(2017)将随机森林分类器引入堆叠式稀疏自动编码器以实现高光谱图像分类[14];Ge(2019)提出一种双重对抗性自动编码器用于图像聚类,并能达到有监督CNN算法的聚类精度[15]。由此可见,自编码器可有效获取图像降维特征、避免“维数灾难”,将其与聚类方法结合,可快速高效实现视频图像交通状态的无监督识别。
综上所述,为了有效降低图像维度、自动快速识别交通状态,本研究基于自编码器与k-means聚类提出了一种视频交通状态自动识别方法,并构建数据集进行测试分析。
1 方法简介主要利用自编码器对高维度图像进行特征压缩,基于压缩后的低维数据,利用k-means聚类算法识别交通状态,流程如图 1所示,主要包含3个步骤。
|
(1) 自编码器图像数据集构建:将交通视频转化成帧图像,根据车辆密度及车间距等参数与人工经验对每一帧图像进行交通状态判定,形成包含畅通、缓行、拥堵3种交通状态的数据集。
(2) 自编码器模型构建与测试:根据模型的主要结构参量,包括输入数据维度、隐藏层数量、降维数据维度等,构建自编码器备选模型,并进行测试与选优。
(3) k-means聚类:将最优自编码器输出的降维数据进行k-means聚类,获得图像交通状态。
2 交通状态识别模型构建交通状态识别模型主要包含自编码器和k-means聚类两部分,训练自编码器获得编码数据,以作为k-means聚类的输入数据,进而判定图像交通状态。
2.1 自编码器构建构建自编码器以交通视频图像为输入,编码与解码过程均有N个隐藏层,各层之间采用全连接结构,如图 2所示。对于样本量为Q的图像集中第g张图像为例,自编码器运算过程如下。
|
(1) 将第g张图像转化为1×M的一维向量Xg,g∈[1,Q],M=τ1×τ2,τ1和τ2为图像的宽度(像素)和高度(像素);
(2) 图像编码:利用N个编码隐藏层将Xg进行非线性变换,依次转化成维度为1×π1, 1×π2, …, 1×πn, …, 1×πN的编码向量Y1g, Y2g, …, Yng, …, YNg,计算公式如下:
(1) |
式中,Ψ为编码非线性变换函数,本研究采用tan h;wng为第g张图像在第n个编码隐藏层的编码权重矩阵;Yng为第g张图像的编码向量,且πn<M,Y0g=Xg;zng表示第g张图像在第n个编码隐藏层的编码偏置矩阵;n为编码隐藏层编号,n∈[1,N]。
(3) 图像解码:利用N个解码隐藏层将YNg进行非线性变换,依次转化成维度为1×πN, …, 1×πζ, …, 1×π2, 1×π1的解码向量
(2) |
式中,
(4) 编码-解码训练反馈优化:自编码器通过不断的反馈传播训练,以最小均方差为目标使输入Xg与输出
(3) |
根据输入数据维度、隐藏层数量、降维数据维度设计48个自编码器模型结构,如表 1所示。基于数据集A1对这些模型结构进行测试,结果显示当输入数据维度为64×64、降维数据维度为3维或者5维时测试效果较好,因此确定了6个备选模型,结构如表 2所示。
输入数据维度 | 隐藏层数量 | 降维数据维度 | 模型结构数量 |
28×28 | 6~10,步长为2 | 3~6,步长为1 | 12 |
32×32 | 6~10,步长为2 | 3~6,步长为1 | 12 |
64×64 | 6~10,步长为2 | 3~6,步长为1 | 12 |
128×128 | 6~10,步长为2 | 3~6,步长为1 | 12 |
模型编号 | 隐藏层数量/层 | 编码结构(解码与编码结构对称) | 降维数据维度 |
Ⅰ | 8 | (64×64, 64)、(64, 64)、(64, 12)、(12, 3) | 3 |
Ⅱ | 8 | (64×64, 64)、(64, 64)、(64, 12)、(12, 5) | 5 |
Ⅲ | 8 | (64×64, 128)、(128, 64)、(64, 12)、(12, 3) | 3 |
Ⅳ | 8 | (64×64, 128)、(128, 64)、(64, 12)、(12, 5) | 5 |
Ⅴ | 10 | (64×64, 256)、(256, 128)、(128, 64)、(64, 12)、(12, 3) | 3 |
Ⅵ | 10 | (64×64, 256)、(256, 128)、(128, 64)、(64, 12)、(12, 5) | 5 |
2.2 k-means聚类
利用上文构建的自编码器对数据集中的Q张图像进行处理,获得解码数据集
(1) 从最优自编码器输出的降维数
据集Y=
(2) 利用欧式距离公式(4),计算数据集中剩余的Q-k个对象YNl(l=1,2,…,Q-k)到k个簇中心的距离d(YNl,YNΩ)。
(4) |
式中,p=(bp1,bp2,…,bpv)和q=(bq1,bq2,…,bqv)为两个具有v维特征的向量。
(3) 分别寻找每个对象YNl的最小距离d(YNl,YNΩ),将其划分到与YNΩ相同的簇中。
(4) 遍历完数据集中所有对象后,利用式(5)更新簇中心。
(5) |
式中,YNk为更新后的第k个簇的簇中心;Ck为第k个簇中心包含的对象个数。
(5) 根据最近邻原则,重新将数据集中的对象进行划分,并计算新的簇中心,直到平方误差准则函数满足要求。平方误差准则函数定义如下:
(6) |
式中,E为所有对象的平方误差总和; YNa为第k个簇中心包含的对象。
(6) 将所有样本聚类为k簇,即k类交通状态S1, S2, …, Sk。
3 试验数据与环境 3.1 试验数据道路交通视频原始数据来源于某城市主要干道的交通视频,图像分辨率为704×576像素。为提高运行效率,裁剪提取目标区域图像并划分为畅通、缓行、拥堵3种交通状态,记为状态0,1,2。据此构建了3个数据集A1,A2,A3,样本量Qj(j=1, 2, 3)分别为1 500,3 000,4 500。数据集制作过程与结果如图 3所示。
|
3.2 试验环境
试验平台为64位windows7操作系统的工作站,内存4 GB+CPU Nvidia GeForce 820M,配置Pytorch+Spyder3.6等环境,搭建Pytorch深度学习框架,采用Python 3.5作为编程语言。
4 自编码器模型训练与选优 4.1 模型训练针对数据集A1,A2,A3与模型Ⅰ~模型Ⅵ,进行了18组训练试验。为了对比备选模型效果,针对每个样本集的模型Ⅰ~模型Ⅵ均采用相同的训练参数,如表 3所示。
样本集 | 基础学习率 | 批大小 | 遍历轮数 | 迭代次数 |
A1 | 0.000 5 | 10 | 300 | 45 000 |
A2 | 0.000 5 | 10 | 500 | 150 000 |
A3 | 0.000 5 | 15 | 800 | 240 000 |
训练过程中采用Adam迭代优化算法[16],利用梯度的一阶矩估计和二阶矩估计动态调整每个参数的学习率,其公式如下:
(7) |
(8) |
(9) |
(10) |
(11) |
式中,gt为t时间步的梯度;mt为gt的一阶矩估计,即gt的指数移动平均值;nt为gt的二阶矩估计,即gt2的指数移动平均值;λ、γ为指数衰减率;
针对模型Ⅰ~模型Ⅵ在数据集A1,A2,A3下的测试情况,采用兼顾准确率和召回率的平均F1值作为效果评价指标,计算过程如下。
(1) 计算模型对数据集每类交通状态的样本聚类准确率、召回率与F1值。
(12) |
(13) |
(14) |
式中,i为模型编号,本研究取i∈[1,6],分别对应于模型Ⅰ~模型Ⅵ;j为数据集编号,j∈[1, m],m=3,分别对应于数据集A1,A2,A3;r为交通状态类别数量,r∈[1, η],η=3,分别对应于畅通、缓行、拥堵;Pijr为模型i对数据集j的第r类样本分类准确率;Rijr为模型i对数据集j的第r类样本分类召回率;F1ijr为模型i对数据集j的第r类样本分类F1值;Tijr为模型i针对数据集j正确识别到的第r类样本数量;Sijr为模型i针对数据集j识别到的第r类样本总量;Qjr为数据集j实际含有的第r类样本数量。
(2) 计算模型对各个数据集的交通状态平均分类准确率、召回率及F1值。
(15) |
(16) |
(17) |
式中,
基于数据集A1,对前文2.1节的48个自编码器模型结构进行测试,计算F1值,结果显示,F1值高于0.9的试验自编码器结构为(64×64, 64),(64, 64),(64, 12),(12, 5),即输入数据维度64×64、8个编码及解码隐藏层、5维编码数据;其次,F1值介于0.8~0.9时,模型降维数据均为3维或5维。据此,设计了6个自编码器备选模型,即模型Ⅰ~模型Ⅵ。
针对数据集A1,A2,A3,分别利用模型Ⅰ~模型Ⅵ进行训练测试,计算各数据集的平均聚类准确率、召回率以及F1值,结果如表 4所示。可以看出,对于3个数据集,模型Ⅰ~模型Ⅵ准确率与召回率互有高低,总体来看,
模型Ⅱ针对各个数据集的平均准确率
指标 | Ⅰ | Ⅱ | Ⅲ | Ⅳ | Ⅴ | Ⅵ |
0.87 | 0.93 | 0.90 | 0.88 | 0.89 | 0.87 | |
0.87 | 0.92 | 0.90 | 0.88 | 0.89 | 0.86 | |
0.87 | 0.93 | 0.90 | 0.88 | 0.89 | 0.87 |
为进一步验证AE*对每一类交通状态的识别效果,基于数据集A3计算分析各类状态的识别准确率、召回率与F1值,结果如表 5所示。可以看出,AE*对畅通、缓行、拥堵的识别准确率为0.87~1.00,对缓行状态识别准确率最高;AE*对畅通、缓行、拥堵的识别召回率为0.86~1.00,对畅通状态识别召回率最高。综合来看,AE*对畅通、缓行、拥堵的F1值为0.89~0.96,对每类交通状态识别效果均较好。
5 模型对比
将本文AE*与k-means相结合的交通状态识别模型命名为AE*-k-means,同理,将AE*与SVM[17],DNN_Linear[18],Linear[18]相结合的模型分别命名为AE*-SVM,AE*-DNN_Linear,AE*-Linear。利用数据集A1,A2,A3对上述模型进行训练测试,计算每个数据集的交通状态识别准确率、召回率以及F1值,结果如图 4~图 6所示。
|
|
|
可以看出,平均F1值优劣排序为AE*-SVM(0.927),AE*-k-means(0.924),AE*-DNN_Linear (0.921),AE*-Linear(0.918),4个模型性能相近,AE*-k-means准确率、召回率处于最优或次优水平,表明AE*对图像降维效果较好,可为k-means,SVM,Linear,DNN_Linear等提供有效的特征数据。此外,k-means是一种典型的无监督聚类方法,而SVM,Linear,DNN_Linear则为有监督分类方法,与AE*-SVM,AE*-DNN_Linear,AE*-Linear相比,AE*-k-means在保证交通状态识别准确率和召回率的基础上,可有效减少人工数据标定、有监督训练等工作量及运算成本。
为进一步验证模型对畅通、缓行、拥堵3种交通状态识别效果,基于数据集A3进行了测试,结果显示,对于畅通状态,4个模型F1值为0.93~0.99,效果均较好;对于缓行状态,AE*-k-means的F1值为0.96,高出其余模型6%~9%;对于拥堵状态,AE*-k-means和AE*-SVM的F1值为0.89,比其余模型高4%。因此,对于数据集A3,AE*-k-means对3种交通状态识别效果总体最优。
6 结论针对道路交通视频,提出了一种基于自编码器与k-means聚类的视频交通状态识别方法,可实现无监督条件下的视频交通状态快速自动识别。测试显示,本研究模型交通状态识别准确率、召回率及F1值均较高,既可有效减少人工数据标定,有效监督训练等工作量及运算成本,也可以获得较优的交通状态识别准确率、召回率和F1值。
本研究方法可有效降低算法复杂度、避免“维数灾难”,保证运行效率与识别效果,对于视频交通状态识别具有较大的理论和现实意义。由于交通场景复杂多样,对于自编码器结构、优化结合自编码器与分类器、构建海量数据集等方面还需进一步研究。
[1] |
万芳, 牛树云, 朱丽丽, 等. 基于DSRC与点检测器数据融合的实时交通状态表达方法[J]. 公路交通科技, 2017, 34(8): 123-129. WAN Fang, NIU Shu-yun, ZHU Li-li, et al. Real-time Traffic State Expression Based on DSRC and Point Detector Data Fusion[J]. Journal of Highway and Transportation Research and Development, 2017, 34(8): 123-129. |
[2] |
皮晓亮, 王正, 韩皓, 等. 基于环形线圈检测器采集信息的交通状态分类方法应用研究[J]. 公路交通科技, 2006, 23(4): 33-38. PI Xiao-liang, WANG Zheng, HAN Hao, et al. Application Research of Traffic State Classification Method Based on Collected Information from Loop Detector[J]. Journal of Highway and Transportation Research and Development, 2006, 23(4): 33-38. |
[3] |
LI X Y, SHE Y Y, LUO D H, et al. A Traffic State Detection Tool for Freeway Video Surveillance System[J]. Procedia-Social and Behavioral Sciences, 2013, 96: 2453-2461. |
[4] |
BYSHOV N, SIMDIANKIN A, USPENSKY I, et al. Method of Traffic Safety Enhancement with Use of RFID Technologies and Its Implementation[J]. Transportation Research Procedia, 2017, 20(20): 107-111. |
[5] |
KONG X J, XU Z Z, SHEN G J, et al. Urban Traffic Congestion Estimation and Prediction Based on Floating Car Trajectory Data[J]. Future Generation Computer Systems, 2015, 61: 97-107. |
[6] |
O'KELLY M, MATISZIW T, LI R, et al. Identifying Truck Correspondence in Multi-frame Imagery[J]. Transportation Research Part C Emerging Technologies, 2005, 13(1): 1-17. |
[7] |
REINARTZ P, LACHAISE M, SCHMEER E, et al. Traffic Monitoring with Serial Images from Airborne Cameras[J]. ISPRS Journal of Photogrammetry & Remote Sensing, 2006, 61(3/4): 149-158. |
[8] |
LOZANO A, MANFREDI G, NIEDDU L. An Algorithm for the Recognition of Levels of Congestion in Road Traffic Problems[J]. Mathematics and Computers in Simulation, 2009, 79(6): 1926-1934. |
[9] |
LIAO L C, JIANG X H, ZOU F M, et al. An Automatic Recognition Approach for Traffic Congestion States Based on Traffic Video[J]. Journal of Highway and Transportation Research and Development:English Edition, 2014, 8(2): 72-80. |
[10] |
QUIROS A R F, BEDRUZ R A, UY A C, et al. Machine Vision of Traffic State Estimation Using Fuzzy Logic[C]//IEEE Region 10 Conference, Singapore: IEEE, 2016: 2104-2109.
|
[11] |
崔华, 袁超, 魏泽发, 等. 利用FCM对静态图像进行交通状态识别[J]. 西安电子科技大学学报, 2017(6): 85-90. CUI Hua, YUAN Chao, WEI Ze-fa, et al. Traffic State Recognition Using Static Images and FCM[J]. Journal of Xidian University, 2017(6): 85-90. |
[12] |
WANG J, HE H B, PROKHOROV D V. A Folded Neural Network Autoencoder for Dimensionality Reduction[J]. Procedia Computer Science, 2012, 13: 120-127. |
[13] |
GAO S H, ZHANG Y T, JIA K, et al. Single Sample Face Recognition via Learning Deep Supervised Autoencoders[J]. IEEE Transactions on Information Forensics and Security, 2015, 10(10): 2108-2118. |
[14] |
ZHAO C H, WAN X Q, ZHAO G P, et al. Spectral-spatial Classification of Hyperspectral Imagery Based on Stacked Sparse Autoencoder and Random Forest[J]. European Journal of Remote Sensing, 2017, 50(1): 47-63. |
[15] |
GE P F, REN C X, DAI D Q, et al. Dual Adversarial Autoencoders for Clustering[J]. IEEE Transactions on Neural Networks and Learning Systems, 2019, 31(4): 1417-1424. |
[16] |
KINGMA D P, BA J. Adam: A Method for Stochastic Optimization[C]//Proceedings of the 3rd International Conference for Learning Representations. San Diego: ICLR, 2015.
|
[17] |
SUN Z, LI Z, ZHAO Y. Traffic Congestion Forecasting Based on Possibility Theory[J]. International Journal of Intelligent Transportation Systems Research, 2016, 14(2): 85-91. |
[18] |
CHENG H, KOC L, HARMSEN J, et al. Wide & Deep Learning for Recommender Systems[C]//Proceedings of the 1st Workshop on Deep Learning for Recommender Systems. New York: [s. n.], 2016: 7-10.
|