APP下载

基于智能手机的城市道路车辆即时识别

2023-03-15胡剑琇朱前坤杜永峰

公路交通科技 2023年1期
关键词:小轿车高峰期直方图

胡剑琇,朱前坤,2,张 琼,杜永峰,2

(1.兰州理工大学 防震减灾研究所,甘肃 兰州 730050;2.兰州理工大学 甘肃省减震隔震国际合作研究基地,甘肃 兰州 730050)

0 引言

随着我国经济及交通运输的快速发展,公路与桥梁的交通流量显著增长,伴随着这一增长趋势,交通荷载逐渐引起了人们的关注。如现在较为常见的超载现象,加快了公路和桥梁的疲劳及破坏。公路与桥梁的汽车设计荷载应与社会发展相适应。因此,对车辆荷载的监测与统计变得尤为重要[1-3]。近年来,随着计算机视觉和深度学习的快速发展[4]及其在土木工程领域的兴起[5],越来越多的研究学者开始关注基于计算机视觉的车辆检测,将计算机视觉技术与智能手机相结合,相比于传统的检测方法,以其非接触、速度快、精度合适、现场抗干扰能力强等突出的优点,得到了广泛应用[6]。

常见的汽车荷载统计方法为车辆动态称重,即车辆动态称重(Weigh in Motion,简称WIM)系统,是指在车辆正常行驶过程中测量出车辆重量的过程。李占峰等[7]以京港澳高速公路某路段的车辆为例,运用WIM系统对该路段的车辆荷载特征进行了数据采集。Kim等[8]开发了一个基于WIM系统的描述车辆特性和交通流量的综合概率模型,用蒙特卡洛模拟方法评估了目标桥梁的交通荷载影响。宗周红等[9]基于WIM系统的汽车荷载数据,统计了江苏省高速公路和桥梁上汽车荷载特性,建立了江苏省高速公路桥梁汽车荷载模型。但是这些研究都是基于WIM系统的,由于WIM系统成本较高,并未全面应用于我国各公路或桥梁上,所以完全靠WIM系统来统计车辆荷载是不经济的。目前,计算机视觉被广泛应用于各个科研领域,其中包括目标检测与跟踪的方法。Feng等[10]提出了一种基于计算机视觉的非接触式车辆运动称量方法,通过计算机视觉系统测量轮胎与道路的接触长度和轮胎变形,为空载和满载卡车估计重量,这种方法将计算机视觉与物理原理结合运用。Dan等[11]提出了一种用于监视整个桥面交通流量负荷的方法,将动态称重系统与计算机视觉技术相结合,布置在桥头的基于路面的动态称重系统用于获取由摄像机捕获的车辆重量,计算机视觉技术用于识别车辆的实时位置,但这种方法要求桥梁上预先具备WIM系统,才可实时测量负载值。He等[12]运用计算机视觉技术自动检测并分类在佛罗里达州高速公路上行驶的卡车,但不足之处在于未将分类检测结果用于荷载统计分析中。在计算机视觉领域,目标检测算法中较为常用的就是近几年新兴的YOLO[13]算法,大多数研究学者开始将其运用于车辆检测工作中。李珣等[14]提出了一种基于Darknet框架下YOLOv2算法的车辆多目标检测方法。Shen等[15]将YOLO等卷积神经网络框架用于联合检测车辆并有效估计车辆距离。谢金龙等[16]运用YOLOv3及Deep Sort算法对道路进行了车流量检测,但也未将检测结果应用于荷载分析中。赵雪峰等[17]将计算机视觉与智能手机相结合,利用智能手机进行图片收集,利用计算机视觉中的卷积神经网络进行了裂缝检测,其充分利用了智能手机和计算机视觉的优势,但对裂缝的检测仅限于图片检测。随着目标检测的广泛应用以及YOLOv3的提出,视频检测变得越来越快速且准确。

本研究提出了一种基于智能手机的城市道路车辆即时识别方法。本方法使用普通智能手机采集视频材料,运用计算机视觉技术对视频材料进行车辆的聚类检测并跟踪,并根据已有的汽车荷载数据,对某一时间段某一公路或桥梁的负载情况进行分析。最后,选取一条城市道路为研究对象,证明本方法的可行性和实用性,并对该道路是否限制交通流量给出建议。

1 YOLO算法

近年来,目标检测算法取得了很大的突破,比较流行的算法可以分为两类,一类是基于区域生成的R-CNN[18]系算法,R-CNN,Fast R-CNN[19],Faster R-CNN[20]等,这些算法是two-stage的,需要先由算法产生目标候选框,然后再对候选框进行分类与回归;另一类是YOLO,SSD这类one-stage算法,仅仅使用一个卷积神经网络CNN直接预测不同目标的类别和位置。

2016年,Redmon提出YOLO算法,YOLO成为计算机视觉领域最知名的目标检测算法之一,被业界广泛使用。YOLO的全称是You Only Look Once,与另一种著名的目标检测算法Fast R-CNN相比具有两大优势:(1)速度快:每秒45帧的检测速率,可用于实时视频检测中,在更小的模型上甚至达到155帧;(2)通用性好:在真实图像数据上训练的网络,可用于虚构的绘画作品上。但YOLO也存在局限性,其正确率没有Fast R-CNN高,每个检测框只能检测一个物体,边缘不规则的物体会影响到周围物体的识别。Redmon后来又在原始的YOLO技术上,发展出了YOLO9000[21],YOLOv3[22]等算法,扩展了检测物的种类并提高了模型的准确率。

1.1 YOLOv3

YOLO是一种端到端的目标检测模型,其核心思想为:利用整张图作为网络的输入,直接在输出层回归边界框(Bounding Box)的位置及所属类别,在目前的目标检测中达到了最好的识别精度和速度的平衡。

YOLOv3的网络输入图片尺寸为416×416,将输入图像分为S×S个网格(Grid Cell),如果某个对象的中心坐标落在某个网格中,就由该网格来预测这个对象。每个网格要预测B个边界框,每个边界框除了回归自身位置之外,还要预测一个置信度(Confidence Score)以及C个类别概率。其中,置信度反映检测框对检测结果的自信程度,其计算公式为:

Pr(Object)×IOU,

(1)

式中,Pr(Object)为当前边界框中含有对象的置信度;IOU(Intersection over Union)为交并比,其计算为预测边框和真实边框的交集和并集的比值,表示当前边界框预测目标位置的准确性,如图1所示。

图1 交并比(IOU)Fig.1 Intersection over union(IOU)

YOLOv3关于每个边界框的位置预测出中心点相对于网格单元左上角的相对坐标,分别为tx,ty,tw,th,通过坐标偏移公式计算得到边框的位置大小。

bx=σ(tx)+cx,

(2)

by=σ(ty)+cy,

(3)

bw=pwetw,

(4)

bh=pheth,

(5)

式中,tx,ty,tw,th为预测输出;cx,cy为网格的坐标,如某层的特征图大小为13×13,则网格就有13×13个,第1行第1列的坐标(cx,cy)就是(1,1);pw,ph为预测前边界框的尺寸;bx,by,bw,bh为得到的边界框的中心坐标和尺寸,具体见图2。

图2 坐标图Fig.2 Coordinate diagram

1.2 YOLOv3的网络结构

YOLOv3的主干结构是Darknet-53网络,其他预测支路都是采用全卷积的结构。YOLOv3的网络结构如图3所示。

图3 YOLOv3网络结构Fig.3 YOLOv3 network structure

其中,DBL是YOLOv3的基本组件。正如Darknetconv2D_BN_Leaky函数的定义,Darknet的卷积层后接Batch Normalization(BN)和LeakyReLU(激活函数)。除最后一层卷积层外,BN和LeakyReLU已成为卷积层不可缺少的部分,并和卷积层组成最小组件。resn中,n代表数字,有res1,res2,…,res8等,表示这个res_block(残差层)中包含多少个res_unit(残差单元)。这是YOLOv3的大组件,从YOLOv2的Darknet-19到YOLOv3的Darknet-53,YOLOv3加入了YOLOv2没有的残差网络,使网络结构更深。其中,res_block和res_unit的基本组件也是DBL。

YOLOv3采用上采样和融合做法,融合了3个尺度(13×13,26×26,52×52),在多尺度融合特征图上分别做独立检测,使小目标的检测效果明显提高。

1.3 损失函数

在YOLO的运用中,损失函数(Loss Function)是非常重要的。但在YOLOv3的论文中,作者并没有明确提到所用的损失函数,只在YOLOv1中使用了一种叫作SSE(Sum-squared Error)的损失函数。SSE是一种常用的损失函数,只是简单的差方相加,易于优化。从YOLOv3的代码中可以看出,一部分的损失函数使用了二值交叉熵。损失函数由4部分组成:(1)对预测的中心坐标做损失;(2)对预测的宽高做损失;(3)对预测的类别做损失;(4)对预测的置信度做损失;其公式如下:

(6)

2 Deep Sort跟踪算法

Deep Sort算法[23]是在Sort算法的基础上改进的,在实时目标追踪过程中,提取目标的表观特征进行最近邻匹配,有效地改善了有遮挡情况下目标的追踪效果,同时减少了目标跳变的情形。

常见的关联检测结果和追踪预测结果的方法为匈牙利方法,这种Deep Sort算法同时考虑了运动信息的关联和目标外观信息的关联。运动信息的关联是指对已存在的运动目标的运动状态的卡尔曼预测结果与检测结果的关联。其中,马氏距离表示的是数据的协方差距离,是一种有效计算两个未知样本集相似度的方法。

(7)

式中,d(1)为马式距离;dj为第j个检测框的位置;yi为第i个追踪器对目标的预测位置;Si为检测位置与追踪位置之间的协方差矩阵。如果关联的马氏距离小于指定的阈值,则关联成功。另一种关联方法就是计算第i个追踪器的最近100个成功关联的特征集与当前帧第j个检测结果的特征向量间的最小余弦距离,其计算公式为:

(8)

如果这个距离小于指定的阈值,则这个关联是成功的。将两种关联方法的结果线性加权,作为最终的度量。

ci,j=λd(1)(i,j)+(1-λ)d(2)(i,j)。

(9)

只有ci,j位于两个阈值的交集内时,才认为关联成功。

3 基于智能手机的城市车辆即时识别方法

本研究提出的基于智能手机以及计算机视觉技术的城市道路车辆即时识别方法,是使用普通智能手机对城市道路行驶中的车辆拍摄视频,以YOLOv3算法实现初步的视频中车辆的分类检测,之后通过Deep Sort跟踪算法对各类车辆进行计数统计。根据各类车辆的数量统计结果以及分布拟合得到的汽车荷载代表值,统计出某一时段某一公路或桥梁的负载情况,对其结果进行分析,本方法的流程图如图4所示。

图4 流程图Fig.4 Flowchart

4 实例

对于本研究提出的基于智能手机的城市道路车辆即时识别方法,以一条普通城市道路的中间路段为例,分类统计该路段7 d内早中晚3个高峰期的车流量,并统计车辆荷载,对7 d内该路段进行荷载时程分析。由于该道路属于城市主干路,卡车禁止通行,所以本试验仅涉及中小型私家车和公共汽车。

4.1 数据集

本实例采用的数据集为COCO数据集[24],主要从复杂的日常场景中截取。该数据集提供的类别有80类,有超过33万张图片,其中20万张有标注,整个数据集中个体的数目超过150万个。其中,本研究的车辆检测只涉及到两种类别,即“car”,“bus”,在COCO数据集中提取车辆类别,并对YOLO的配置文件进行修改,重新编译,再进行训练。

4.2 试验平台

由于Darknet框架下的YOLOv3对数据集进行训练时,计算量较大,车辆检测过程中,需要处理的数据过多,所以本试验主要在服务器上完成。服务器的主要配置为:NVIDIA Quadro P5000显卡,显存容量16 GB,64 G内存。使用的语言为Python语言,在Pycharm平台上实现。试验样本采集于人行桥上,采集连续7 d的早中晚高峰期车辆视频。视频使用三星SM9209手机拍摄,分辨率为1 920×1 080,所以使用普通经济型手机即可,降低了对采集设备的要求。视频采集设备示意图如图5所示。

图5 采集设备Fig.5 Acquisition equipment

4.3 车重统计分析

大多数对车重的统计分析都是基于WIM称重系统的,但是WIM系统目前仅广泛用于桥梁及大型公路,对于这种城市主干道还没有普及。本实例统计了通过该路段的1 000多辆汽车的型号以及所载人数,并对统计结果进行分布拟合。其中,每辆车的车重取其出厂参数提供的整备质量,每位男性体重均取75 kg,女性体重均取55 kg,小孩体重均取30 kg。据此,认为小轿车、公交车的车重均服从偏态分布,分别对应的频率分布直方图如图6所示。

图6 车重频率分布直方图Fig.6 Histograms of vehicle weight frequency distribution

如图6所示,小轿车、公交车的车重均服从偏态分布。为了与各类车的数量相结合,取各自的数学期望来反映平均取值的大小,小轿车车重的期望为1.727 t,公交车车重的期望为12.325 t。

4.4 车流量统计分析

本试验的研究对象为兰州市的一条城市道路,对其进行车辆识别计数。采集该道路连续7 d早中晚高峰期的车辆行驶视频,各1 min。对采集到的视频进行识别,得到的效果如图7所示。

图7 YOLOv3检测结果Fig.7 YOLOv3 test result

识别完毕,将每一帧检测到的小轿车和公交车的数量进行统计并进行分布拟合,得到1 min内每一帧各类车辆数量的频率分布直方图,通过比较,认为该道路7 d内每天同一时段通过的各类车的数量很近似,如图8所示。

图8中,3 d同一时段的小轿车数量分布都大致相同,对7 d同一时段的小轿车数量进行统计,发现整体的频率分布直方图与与图8大致相同,则认为某一天的偶然性没有对整体水平产生很大影响。7 d早高峰期小轿车数量的整体频率分布直方图如图9所示。

图8 任意3 d同一时段同一类车的频率分布直方图Fig.8 Frequency distribution histograms of same type of vehicles in same period of any 3 days

图9 七天早高峰期小轿车数量的整体频率分布直方图Fig.9 Overall frequency distribution histogram of number of cars in 7-day morning rush hour

如图9所示,可得出早高峰期小轿车的数量主要分布在7~12 veh之间。各个时段各类车辆数量的频率分布直方图如图10所示。

图10 各个时段各类车辆数量的频率分布直方图Fig.10 Frequency distribution histograms of number of each type of vehicles in each period

如图10所示,早高峰期公交车的数量主要分布在0~2 veh之间,午高峰期小轿车的数量主要分布在8~13 veh之间,午高峰期公交车的数量主要分布在0~2 veh之间,晚高峰期小轿车的数量主要分布在8~15 veh之间,晚高峰期公交车的数量主要分布在0~2 veh之间,如表1所示。

表1 各高峰期汽车数量分布区间Tab.1 Distribution range of automobile number in each rush hour

综上所述,7 d的高峰期中,每一帧通过的小轿车数量集中于7~15 veh,最多可达到20 veh,而每一瞬间通过的公交车数量集中于0~2 veh,最多可达到5 veh。

4.5 代入荷载代表值

由相关系数公式计算可得出每一帧的小轿车数量与公交车数量的相关系数,得到早高峰期小轿车数量与公交车数量的相关系数为-0.268 2,午高峰期小轿车数量与公交车数量的相关系数为-0.264,晚高峰期小轿车数量与公交车数量的相关系数为-0.045 9,绝对值均小于0.3,则近似认为小轿车数量与公交车数量相互独立,不具有相关性。

将公交车、小轿车重量的期望值直接代入检测到的每帧公交车、小轿车数量的统计结果中,可得到每一帧的汽车总重量,如图11所示。

图11 各高峰期每帧汽车总重量统计Fig.11 Statistics of vehicle gross weight per frame in each rush hour

根据检测情况看出,所能检测到的路面范围长度约50 m,根据路面整体汽车荷载可求得其均布荷载,均布荷载的分布情况如图12所示。

图12 各高峰期每帧均布荷载频率分布直方图Fig.12 Frequency distribution histograms of uniformly distributed load per frame in each rush hour

如图12所示,3个高峰期的每帧均布荷载分布在3~9 kN/m的情况较多。按照《公路桥涵设计通用规范》(JTG D60—2015)规定,公路—Ⅰ级车道荷载均布荷载标准值为qk=10.5 kN/m,则该路段在车辆行驶高峰期的车辆荷载有时会超过规范规定的标准值。各高峰期每帧均布荷载符合规范标准值规定的概率如表2所示。

如表2所示,每个高峰期的大部分时间内车辆荷载符合规范规定,但也会有超过规范规定的情况出现,而在晚高峰期超限情况更多一些。因此,为减缓交通压力并减少对道路路面的破坏,交通部门应在各个高峰期对本道路进行交通限制。

表2 各高峰期每帧均布荷载符合规定标准值的概率Tab.2 Probability of uniformly distributed load per frame in each rush hour meets specified standard value

5 结论

本研究提出了一种基于智能手机的城市道路车辆即时识别方法,并运用这种方法对某一普通城市道路进行荷载分析,得到以下结论:

(1)利用YOLOv3算法进行目标检测具有较高的准确性,可快速准确地进行目标检测和分类计数。

(2)本方法使用的采集视频设备具有清晰、便携、简便以及经济等优点,可随时随地采集视频。

(3)本方法得出的结论是基于大数据支持下的,对某一普通城市道路的荷载分析,为得到更为精确的道路车辆荷载信息,应与WIM系统得到的数据相结合。

(4)本方法中的YOLOv3算法也存在一定误差,例如漏检、误检、复检等情况,之后还可尝试使用YOLOv4等方法进行完善;采集设备也有可能受到外界因素的干扰,例如风大时或人行桥的振动较大时,都会对视频拍摄效果有干扰。

猜你喜欢

小轿车高峰期直方图
符合差分隐私的流数据统计直方图发布
影响蛋鸡产蛋高峰期的因素及延长措施
一共有多少辆车
用直方图控制画面影调
梨树进入生长高峰期 管理技术看这里
中考频数分布直方图题型展示
幸运
基于空间变换和直方图均衡的彩色图像增强方法
防患于未“燃”,温暖过冬So Easy
接连碰刮三部小轿车都是豆浆惹的祸