0 引言
车辆目标检测是构建交通状况视频监控的一项关键技术.智能交通技术的发展对实时场景下的车辆目标检测监控算法提出了更高的要求,尤其要满足各种复杂环境以及复杂的天气状况.传统的目标检测方法主要是根据一定的先验知识,通过建立某种数学模型来完成,较经典的方法有:SIFT[1](scale invariant feature transform)、光流法[2]等.此类算法主要利用数据某种特性的特征来建立数学模型,从而得到目标检测的结果.近年来,深度学习的出现使目标检测算法得到了革新,提升了目标检测的精度和鲁棒性.基于深度学习的目标检测模型,与传统依赖先验知识的特征提取算法不同,深度卷积神经网络对几何变换、形变、光照具有一定程度的不变性,可在训练数据驱动下自适应地构建特征描述,具有更高的灵活性和泛化能力.对于深度学习在目标检测领域的应用近几年有着丰富的成果,其中,Dan等[3]提出了基于多核的CNN算法,采用GPU并行运算后在三维NORB数据集上取得了很好的识别效果.Li等[4]提出了一种采用ConvNet框架的分类器训练方法,该方法通过保留共享滤波器及剔除非共享滤波器的方法实现了分类器迁移.Zhang等[5]提出了利用自编码网络进行检测的方法,通过阈值处理对特征表示进行二值化,在基于自动编码器的深度学习方法中通过计算密度分析的代价函数来测量分布信息,引入了新的稀疏惩罚项,该方法在实际场景中取得了较好的检测效果.Xu等[6]提出的基于深度自编网络的运动目标检测,用自编码网络对背景进行建模,分别构造了代价函数和分离函数,通过寻找对代价函数敏感度较低的权重进行合并,从而达到视频目标检测的目的,并在3个数据集上表现了良好的检测效果.早期Gunner等人证明了数据之间存在的拓扑特性以及数据与其单纯复形结构中存在的持久同源性特征,并利用距离函数将包括人脸、马、骆驼、大象等物体的点云数据所生成的单纯复形结构进行表示,并证明了利用距离函数表示的同类物体形状数据之间存在着匹配关系,通过设计实验得到匹配结果的分类误差概率仅为3.03%.近些年对于拓扑数据分析[7-10](topological data analysis)的研究主要是针对数据处理中产生的问题,利用拓扑特征对数据进行简化分析和比较识别.Adcock等[11]提出了使用拓扑数据分析方法中的一种多维持久同源性方法用来解决病变肝脏图片的分类问题;Carriere等[12]利用拓扑特征对形状的3D点云进行形状分类并通过实验验证了其方法的优越性;Cassidy等[13]利用拓扑数据分析方法对相关性距离测量方法进行改进并通过该方法比较了大脑活动网络的正常与异常功能差异;Kova等[14]利用拓扑数据分析方法检测了麦芽糖结合蛋白质的形式,捕捉蛋白质的动态特性,从而给糖尿病发病与检测预防提供更多的数据.
文中提出了一种基于融合TDA的深度自编码网络的车辆目标检测方法,解决复杂天气下的车辆目标检测问题.该方法融合深度自编码网络和拓扑数据分析的优点,旨在利用拓扑数据分析方法对深度学习中的自编码方法进行改进,以提升目标检测算法在噪声干扰下的鲁棒性和快速性.实验中与其他国内外关于深度学习的检测方法进行比较,结果表明该设计通过结合拓扑数据分析的优点,大大改善了对雪天车辆的检测能力,对深度学习技术在车辆目标检测领域的发展提供了新视野.
1 目标场景点云数据分割对视频帧图像进行预处理,利用灰度图提取图像的灰度信息,并将图像转化为3维点云数据,其中包含了图像中的目标形状和灰度信息.
点云分割技术根据空间位置、几何和纹理特征将点云数据划分为若干个互不相交的子集,使每个子集内的数据具有相同或相似的属性,即同属于一个具有单一特征的曲面或目标.点云分割是后续特征提取、目标分类与识别的前提.目前,针对三维点云的分割方法主要有基于特征聚类、基于模型拟合和基于区域生长的3大类方法,其中欧氏距离聚类和随机采样一致性(RANdom SAmpling Consensus,RANSAC)方法是前两类的典型算法.区域生长分割[15]是基于法线的分割,该算法主要是比较种子点与邻域点之间的法线角度,小于平滑阈值(法线间的角度值)的视为同一个平滑曲面的一部分.基于区域生长的分割方法依据同一物体所属区域内的像素相似性实现聚类,从初始位置开始,将具有相同或相似属性的相邻像素或小区域合并到当前区域实现逐步生长,直至所有相邻的像素点或小区域被遍历完止.
根据车辆目标特点提出基于法线方向一致性的区域生长分割算法,计算种子点与邻域点法线方向的夹角,若两者夹角比设定的阈值小则认为是归属于同一光滑曲面,否则视为不同平面加以分割.算法步骤如下.
1) 利用点云某点y与其k近邻点y1,y2,…,yn通过式(1)计算协方差矩阵C3×3,其特征值为k0、k1、k2.其中,y表示最近邻元素的三维质心
(1) |
则y点曲率kp可以用式(2)估计
(2) |
2) 计算并比较各点曲率kp,依据点云的曲率值大小对输入点云进行排序,选择曲率最小的点为初始种子点,初始种子点所在的区域即为最平的区域,从最平的区域开始生长可减少分割片段的总数,可以提高效率.
3) 设置一空的种子点序列和空的聚类区域,选好初始种子点后,将其加入到种子点序列中,并搜索邻域点,对每一个邻域点,比较邻域点的法线与当前种子点的法线之间的夹角,小于平滑阈值的将当前点加入到当前区域,
4) 对于每个种子点,重复步骤3),最终输出一组类,每个类的点都认为是同一平滑表面的一部分.
利用上述方法时设置k=150,法线夹角阈值取5°,曲率阈值取0.2.图 1(a)为原始图像,将原始图像转化为灰度图后生成原始灰度图像的点云数据,对点云数据进行区域生长分割后,其分割结果如图 1(b)所示,由结果可以看出,属于车辆目标区域中的点云之间的法线角度特征与背景区域中的点云法线角度特征差别较大,选择区域生长分割更有利于将属于目标车辆区域的点云数据从背景点云数据中分割出来.
2 融合TDA的深度自编码网络 2.1 目标样本拓扑数据分析拓扑数据分析是一种基于拓扑学思想的方法.距离函数在分类方法中通常编码了概念的相似性,而大尺度距离在数据集中是没有什么意义的.拓扑数据分析方法不仅保留了这种相似性的概念,还可以将大范围的距离扭曲,忽略了大尺度距离,拓扑数据分析中的Mapper思想能够实现对原始数据集的结构的实质性简化,生成单纯复不变拓扑,在形状领域提供了比较与匹配的方法.它的核心思想是产生一种对度量不太敏感的单纯复形.该结构与原始数据之间存在着持久同源性,利用这种结构特性使得相同数据之间在利用单纯复形结构进行表达时保留了大量相似的同源特征.
对前景目标样本进行拓扑数据分析,进而可以用更少的数据信息表达更多的车辆目标信息特征.为了找到车辆目标点云的简洁拓扑结构表达,即生成单纯复形G,设输入的点云集合为Y,将Y中的点云数据用滤波函数转换到参数空间,得到参数空间Z即:f:Y→Z,这里选取f为偏心滤波函数,则具有N个数据点的第i个数据点的偏心率为(其中指数设置为1)
(3) |
滤波后的结果如图 2所示.
定义过滤器组件的间隔长度L和间隔覆盖百分比P,对每个间隔区间U采用层次聚类[16](agglomerative clutsering)中的单联聚类[17](single-linkage clustering)方法做聚类:
(4) |
由式(4)得到单纯复形G的顶点簇集合C,其中每个簇都包含了若干个原始分割数据集Y中的点.为了表示顶点集之间的关联,定义了邻接矩阵DH:
(5) |
DH采用两个顶点集的Hausdorff距离的平滑形式定义,其中N为顶点个数.将经过拓扑数据分析算法处理过的分割数据集经过可视化后,可以看到不同车辆目标样本的单纯复形G,它们有着相似的数据结构,图 3所示为图 2车辆分割数据集经过拓扑数据分析后产生的单纯复形结构,为了量化单纯复形的输出参数,定义每个顶点的权重为
(6) |
则可以将单纯复形的输出表示为{(C,DH,μC)}.
2.2 深度自编码分类网络训练栈式编码器[18](SAE)通过复现输出而捕捉可以代表输入的重要因素,是深度学习中常用的算法之一.由输入层、隐藏层和输出层构成.输入层和隐藏层进行编码,隐层和输出层之间构成解码器,将编码变换为输出信号.对于一组无标签的训练样本,自编码器通过学习输入数据,使其重构输出尽可能接近于输入数据,从而得到高效鲁棒的特征表达.
将TDA得到的输入点云Y的量化输出{(C,DH,μC)}组合作为深度自编码网络的输入,对网络进行训练,则输入为
(7) |
其中,
(8) |
其中,W和WΤ互为转置,p和q分别为编码函数和译码函数的偏置向量,f(·)和g(·)均为Sigmoid函数,其表达式为
(9) |
为了使输出层最大程度还原输入层的状态,需满足目标函数为
(10) |
其中,
将训练好的栈式自编码网络的最后两层隐含层通过全连接层与Softmax分类层进行连接,并将栈式自编码网络最后两层隐含层的输出特征作为Softmax分类器的输入训练样本,对Softmax分类器进行训练,通过引入标签变量对网络进行有监督微调,最终得到完整的深度自编码分类网络结构,网络结构如图 4所示.最后将训练好的网络对车辆数据输入样本进行分类,从而达到检测的目的.Softmax层同样也采用Sigmoid函数作为激活函数,其中带标签的样本数据可以表示为
(11) |
其中,y(i)∈{0,1}表示该样本为二分类问题.则分类器其代价函数为
(12) |
其中log函数以e为底,分类器的输出函数为每个类别所对应的概率值,即:
(13) |
本文将TDA算法与自编码网络算法相结合来进行视频车辆检测.不同于传统的自动编码器直接以图像作为输入数据,本文将TDA算法分析简化得到的数据作为自编码器的输入.雪天环境下的交通场景中,车辆检测经常受到随机飘落的雪花影响,使得分类算法在受到雪花噪声干扰的情况下无法正常检测,特征提取方法也不能发挥其最大效益,在这种复杂环境中车辆自身也可能存在旋转的影响,使得算法整体检测精度下降.拓扑数据分析是数据简化降维的算法,拓扑数据分析算法本身对噪声有很好的鲁棒性,在不损失原始数据有用信息的情况下,最大限度地保留了原始数据的简化特征,利用统计思想寻找数据中的隐藏结构,为重新开发的方法提供了更多的上下文.结合自编码网络能够自动学习特征的优势,可以得到更加满足于雪天交通监控场景下的车辆目标的抽象特征.同时,将TDA处理后的数据作为自编码网络的输入,提高了深度学习算法的检测效率.实验步骤如下:
步骤1 对t时刻视频中的图像进行灰度变换后转化成3D点云数据,其中包含了图像中每一点的位置和灰度信息.
步骤2 对转化的点云数据进行区域生张分割,得到点云数据集Y1,Y2,…,Yn,其中n为分割后形成不同区域点云的区域个数.
步骤3 对点云数据集Y1,Y2,…,Yn进行拓扑数据分析并得Y1,Y2,…,Yn的单纯复形表示,并将数据量化为{(C,DH,μC)}n.
步骤4 将步骤3中的量化数据输入经过样本车辆拓扑分析量化数据训练后的深度自编码网络中进行二分类,完成t时刻车辆的视频目标检测.
步骤5 对t+1时刻的视频图像循环步骤1.
3 实验与分析实验中选取了实际采集的8万像素级别的雪天视频图像进行车辆目标检测,视频中每帧图片大小为240×320,本文中的实验数据采集于雪天实时环境下的城市交通监控视频,包含多种道路情况下拍摄的视频图像,样本为来自监控视频的大小为包含70×100个像素点数的车辆图片,包括10 000个样本,其中80%当作训练样本,20%则用做测试样本.当检测框与车辆目标存在90%以上重叠率时,则视为目标检测成功.ROC曲线被用来作为目标检测方法的性能评价指标.通过实验对算法进行评估,将本文算法和近几年的深度学习目标检测算法进行了比较,其中有两种基于自编码器的方法:文[5]中采用的基于改变代价函数的6层自编码网络结构以及文[6]中的3层自编码网络背景提取层、3层自编码网络背景学习层与分离函数组合的结构;两种基于卷积网络的方法:文[20]中10层结构的深度卷积神经网络(3D-CNNs)以及文[4]中所提到的基于包括3个卷积层和3个子采样层的ConvNet网络结构.
图 5为不同算法的ROC曲线图,其中,横坐标为单幅图像的误检率(False PositivePer Image,FPPI),从图 5可以看出,当FPPI为0.2时,在雪天环境下,本文方法在检测率上较其他算法明显有所提升.图 6所示为雪天实时监控场景下的对比检测结果图,从图中可以看出,雪天情况下的视频中存在着大量的因为随机飘落的雪花而造成的干扰目标识别的噪声.红色标识框为本文算法,当在噪声干扰或部分遮挡的情况下,本文算法依旧能较好的识别受到干扰的目标车辆,而其他算法则出现不同程度的检测框偏移的现象,文[4]中的方法甚至出现了误检现象;当目标较远时,文[4-6]对于受到噪声干扰的目标则发生了更严重的检测框偏移现象.由于冬天路面颜色呈黑色,图中还存在车辆目标与背景道路颜色相近的情况,由图中可以看出,本文算法对于与背景颜色相近车辆分辨能力较高,除文[6]与本文算法外,其余对比算法均未能检测到目标车辆.由图 6中的结果可以看出本文算法在雪天环境中检测效率表现较好,与图 5中的结果相符.
实验在Matlab 2016(b)平台上完成,硬件配置为Intel Corei5 7200U CPU(@2.5 GHz)RAM 4 GB.本文算法的检测速度为17.6 fps(frames per second)均高于对比算法的3D-CNNs算法和ConvNet算法检测速度分别为9.2 fps和10.5 fps,以及基于改变代价函数的自编码网络和目标背景分离的自编码网络的检测速度分别为15.2 fps和12.9 fps.由此可以看出,与已有的深度学习算法相比,在雪天视频检测环境中本文所提算法具有抗噪性好、检测率高等优势,并且在一定程度上提高了深度学习算法对于视频序列检测的效率.
4 结束语融合TDA的深度自编码网络结合了拓扑数据分析和深度自编码网络的优点.其中,TDA方法扭曲了车辆点云数据中大尺度无用信息,同时,TDA方法对不属于目标的点云数据如噪声等通常视为大尺度信息,所以其还具有对噪声不敏感的优势.通过“拓扑压缩”思想用更简单的数据结构表达更丰富的数据信息,在实验模型中经过分割的车辆目标的单纯复形表示基本上包含车辆所有像素位置及灰度三维数据信息,并利用深度学习的方法对简化后的目标数据进行自适应特征提取,在不损失数据原始信息的情况下提高了深度网络的检测效率,同时能满足深度网络精度的要求,为交通视频监控领域的后续目标跟踪提供了十分有效的检测新方法.与已有的深度学习算法相比,该算法具有雪天复杂场景的车辆识别效率高、识别精度高等优势.由于本文只给出了复杂环境中雪天的检测视频,在今后的工作中还可以对雨天、雾天和雾霾天的监控视频进行检测实验并对结构和参数进行改进,以提高该方法的普适性,同时也可以对在预处理阶段的分割方法进行改进,使算法能更好地适应像素级别更高的视频数据.
[1] | Manzoor M A, Morgan Y. Vehicle make and model classification system using bag of SIFT features[C]//7th Annual Computing and Communication Workshop and Conference. Piscataway, NJ, USA: IEEE, 2017: 1-5. https://www.researchgate.net/publication/314196446_Vehicle_Make_and_Model_classification_system_using_bag_of_SIFT_features |
[2] |
肖军, 朱世鹏, 黄杭, 等.
基于光流法的运动目标检测与跟踪算法[J]. 东北大学学报(自然科学版), 2016, 37(6): 770–774.
Xiao J, Zhu S P, Huang H, et al. Object detecting and tracking algorithm based on optical flow[J]. Journal of Northeastern University (Natural Science), 2016, 37(6): 770–774. DOI:10.3969/j.issn.1005-3026.2016.06.003 |
[3] | Dan C, Ueli M, Jurgen S. Multi-column deep neural networks for image classification[C]//Computer Vision and Pattern Recognition. Piscataway, NJ, USA: IEEE, 2012: 3642-3649. https://www.researchgate.net/publication/221663833_Multi-column_Deep_Neural_Networks_for_Image_Classification |
[4] | Li X, Ye M, Fu M, et al. Domain adaption of vehicle detector based on convolutional neural networks[J]. International Journal of Control, Automation and Systems, 2015, 13(4): 1020–1031. DOI:10.1007/s12555-014-0119-z |
[5] | Zhang Y, Li X, Zhang Z, et al. Deep learning driven blockwise moving object detection with binary scene modeling[J]. Neurocomputing, 2015, 168: 454–463. DOI:10.1016/j.neucom.2015.05.082 |
[6] |
徐培, 蔡小路, 何文伟, 等.
基于深度自编码网络的运动目标检测[J]. 计算机应用, 2014, 34(10): 2934–2937.
Xu P, Cai X L, He W W, et al. Motion detection based on deep auto-encoder networks[J]. Journal of Computer Applications, 2014, 34(10): 2934–2937. DOI:10.11772/j.issn.1001-9081.2014.10.2934 |
[7] | Huber S, Huber S, Niethammer M, et al. Statistical topological data analysis-a kernel perspective[C]//the 28th International Conference on Neural Information Processing Systems. Cambridge, MA, USA: MIT, 2015: 3070-3078. http://papers.nips.cc/paper/5887-statistical-topological-data-analysis-a-kernel-perspective |
[8] | Li H, Li P, Gao L, et al. A level set method for topological shape optimization of 3D structures with extrusion constraints[J]. Computer Methods in Applied Mechanics&Engineering, 2015, 283: 615–635. |
[9] | Munch E. A user's guide to topological data analysis[J]. Journal of Learning Analytics, 2017, 4: 46–61. |
[10] | Cámara P G, Levine A J, Rabada'n R. Inference of ancestral recombination graphs through topological data analysis[J]. Plos Computational Biology, 2016, 12(8): 217–229. |
[11] | Adcock A, Rubin D, Carlsson G. Classification of hepatic lesions using the matching metric[J]. Computer Vision and Image Understanding, 2014, 121: 36–42. DOI:10.1016/j.cviu.2013.10.014 |
[12] | CarrièreM, Oudot S Y, Ovsjanikov M. Stable topological signatures for points on 3D shapes[J]. Computer Graphics Forum, 2015, 34(5): 1–12. DOI:10.1111/cgf.12692 |
[13] | Cassidy B, RaeC, Solo V. Brain activity: Conditional dissimilarity and persistent homology[C]//International Symposium on Biomedical Imaging. Piscataway, NJ, USA: IEEE, 2015: 1356-1359. https://www.researchgate.net/publication/278035275_Brain_Activity_Conditional_Dissimilarity_and_Persistent_Homology?ev=auth_pub |
[14] | Kovacevnikolic V, Bubenik P, Dragan N, et al. Using persistent homology and dynamical distances to analyze protein binding[J]. Statistical Applications in Genetics&Molecular Biology, 2016, 15(1): 19–38. |
[15] |
赵瑞斌, 庞明勇, 张燕玲, 等.
机载LiDAR点云中精细建筑物顶面的渐进提取[J]. 计算机辅助设计与图形学学报, 2017, 29(4): 624–631.
Zhao R B, Pang M Y, Zhang Y L, et al. Progressively extracting accurate building roofs from airborne LiDAR data[J]. Journal of Computer-Aided Design&Computer Graphics, 2017, 29(4): 624–631. DOI:10.3969/j.issn.1003-9775.2017.04.007 |
[16] |
刘世华, 黄德才.
维度概率摘要模型及其层次聚类算法[J]. 控制与决策, 2017, 32(8): 1421–1426.
Liu S H, Huang D C. Hierarchical clustering algorithm with dimensions probability summary Model[J]. Control and Decision, 2017, 32(8): 1421–1426. |
[17] |
曾台英, 杜菲.
基于层次聚类的图像超分辨率重建[J]. 光学学报, 2018, 38(4): 130–137.
Zeng T Y, Du F. Image super-resolution reconstruction based on hierarchical clustering[J]. Acta Optica Sinica, 2018, 38(4): 130–137. |
[18] |
杨倩文, 孙富春.
基于泛化空间正则自动编码器的遥感图像识别[J]. 清华大学学报(自然科学版), 2018, 58(2): 113–121.
Yang Q W, Sun F C. Remote sensing image recognition based on generalized regularized auto-encoders[J]. Journal of Tsinghua University (Science and Technology), 2018, 58(2): 113–121. |
[19] |
邓俊锋, 张晓龙.
基于自动编码器组合的深度学习优化方法[J]. 计算机应用, 2016, 36(3): 697–702.
Deng J F, Zhang X L. Deep learning algorithm optimization based on combination of auto-encoder[J]. Journal of Computer Applications, 2016, 36(3): 697–702. |
[20] | He T, Mao H, Yi Z. Moving object recognition using multi-view three-dimensional convolutional neural networks[J]. Neural Computing&Applications, 2016, 28(12): 1–9. |
[21] |
赵文涛, 曹昕鸷, 田志勇.
基于自适应阈值区域生长的红外舰船目标分割方法[J]. 红外技术, 2018, 40(2): 158–163.
Zhao W T, Cao X Z, Tian Z Y. An infrared ship target segmentation method based on adaptive threshold region growth[J]. Infrared Technology, 2018, 40(2): 158–163. |
[22] |
黄海洋.基于立体视觉的车辆检测与运动估计方法研究[D].大连: 大连理工大学, 2016. Huang H Y. Research of vehicle deletion method based on stero vision[D]. Dalian: Dalian University of Technology, 2016. http://cdmd.cnki.com.cn/Article/CDMD-10141-1016214081.htm |
[23] |
王肖, 王建强, 李克强.
智能车辆3-D点云快速分割方法[J]. 清华大学学报(自然科学版), 2014, 54(11): 1440–1446.
Wang X, Wang J Q, Li K Q. Fast segmentation of 3-D point clouds for intelligent vehicles[J]. Journal of Tsinghua University (Science and Technology), 2014, 54(11): 1440–1446. |
[24] | Seversky L M, Davis S, Berger M. On time-series topological data analysis: New data and opportunities[C]//Computer Vision and Pattern Recognition Workshops. Piscataway, NJ, USA: IEEE, 2016: 59-67. https://www.researchgate.net/publication/311755052_On_Time-Series_Topological_Data_Analysis_New_Data_and_Opportunities |
[25] | Bonis T, Ovsjanikov M, Oudot S, et al. Persistence-based pooling for shape pose recognition[M]//Computational Topology in Image Context. Springer International Publishing. Berlin, Germany: Springer, 2016. |
[26] | Curto C, Itskov V, Veliz-Cuba A, et al. The neural ring:An algebraic tool for analyzing the intrinsic structure of neural codes[J]. Bulletin of Mathematical Biology, 2013, 75(9): 1571–1611. DOI:10.1007/s11538-013-9860-3 |