«上一篇 下一篇»
  计算机工程  2022, Vol. 48 Issue (10): 28-36  DOI: 10.19678/j.issn.1000-3428.0063344
0

引用本文  

郭克友, 贺成博, 王凯迪, 等. COVID‐19疫情下基于YOLOv4的安全社交距离风险评估[J]. 计算机工程, 2022, 48(10), 28-36. DOI: 10.19678/j.issn.1000-3428.0063344.
GUO Keyou, HE Chengbo, WANG Kaidi, et al. Risk Assessment of Safety Social Distance Based on YOLOv4 in the COVID-19 Pandemic[J]. Computer Engineering, 2022, 48(10), 28-36. DOI: 10.19678/j.issn.1000-3428.0063344.

基金项目

交通运输行业重点科技项目“面向自动驾驶汽车封闭测试环境的可遥控仿真行人测试装备研发”(2018-ZD1-010);北京工商大学2021年研究生科研能力提升计划项目

作者简介

郭克友(1975—),男,副教授,主研方向为嵌入式开发、机器视觉;
贺成博,硕士研究生;
王凯迪,硕士研究生;
王苏东,硕士研究生;
李雪,硕士研究生;
张沫,研究员

文章历史

收稿日期:2021-11-24
修回日期:2021-12-31
COVID‐19疫情下基于YOLOv4的安全社交距离风险评估
郭克友1 , 贺成博1 , 王凯迪1 , 王苏东1 , 李雪1 , 张沫2     
1. 北京工商大学 人工智能学院, 北京 100048;
2. 交通运输部公路科学研究院, 北京 100088
摘要:为保持行人在新型冠状病毒肺炎(COVID-19)疫情下的安全社交距离,有效控制和预防疫情传播,构建一种基于YOLOv4的安全社交距离风险评估模型。利用微调后的YOLOv4算法对行人进行目标提取,获取行人关键点,并将行人连续运动视为质点的连续运动,结合DeepSort算法实现对行人的跟踪处理。在此基础上,建立视觉坐标系,在鸟瞰视角下提出运动矢量分析算法计算和判断行人运动方向并评估行人的安全社交距离。在牛津城市中心的数据集上评估模型有效性,实验结果表明,微调后YOLOv4算法在行人检测中平均精度均值达到90.33%,行人社交距离风险评估准确率达到88.23%,性能优于Fast R-CNN、Faster R-CNN、YOLOv3和YOLOv4算法,表明所提模型能够有效提升安全社交距离的检测准确性。
关键词YOLO网络    安全社交距离    新型冠状病毒肺炎    目标检测    运动矢量分析    
Risk Assessment of Safety Social Distance Based on YOLOv4 in the COVID-19 Pandemic
GUO Keyou1 , HE Chengbo1 , WANG Kaidi1 , WANG Sudong1 , LI Xue1 , ZHANG Mo2     
1. School of Artificial Intelligence, Beijing Technology and Business University, Beijing 100048, China;
2. Institute of Highway Science, Ministry of Transport, Beijing 100088, China
Abstract: In order to maintain a safety social distance in the COVID-19 pandemic, control and prevent pandemic transmission, a risk assessment model of safety social distance based on YOLOv4 is constructed. The fine-tuned YOLOv4 algorithm extracts the pedestrian target, obtains their key points, and regards their continuous movement as a continuous movement of particles. When combined with the DeepSort algorithm, it can be used to track pedestrians. On this basis, a visual coordinate system is established, and a motion vector analysis algorithm is proposed to calculate and judge the direction of pedestrian movement and evaluate the safety social distance of pedestrians from an aerial perspective. The effectiveness of the model is evaluated on the Oxford City Center Dataset. The experimental results show that the mean Average Precision(mAP) of the fine-tuned YOLOv4 algorithm in pedestrian detection reaches 90.33%, and the accuracy of pedestrian social distance risk assessment reaches 88.23%. These values are superior to those of the Fast R-CNN, Faster R-CNN, YOLOv3, and YOLOv4 algorithms. Thus, the proposed model effectively improves the detection accuracy of safe social distance.
Key words: YOLO network    safety social distance    Corona Virus Disease 2019(COVID-19)    object detection    motion vector analysis    

开放科学(资源服务)标志码(OSID):

0 概述

新型冠状病毒肺炎(Corona Virus Disease 2019,COVID-19)是由SARS-CoV-2病毒引起的急性呼吸道传染病,自2019年12月起,许多国家和地区受到了COVID-19的侵袭[1]。2020年5月,世界卫生组织(World Health Organization,WHO)认定COVID-19为“大流行病”[2]。WTO于2021年11月18日发布的统计数据证实了200个国家中有2亿感染者,死亡人数高达500万人。目前,仍没有明确的方案或方法消灭新型冠状病毒,全世界都采取了预防措施以限制该病毒的传播[3-4]。由于安全的社交距离是公共预防传染病毒的途径之一,因此在人群密集的区域进行社交距离的安全评估十分重要。

社交距离的测量旨在通过保持个体之间的物理距离和减少相互接触的人群来减缓或阻止病毒传播,在抗击病毒和预防大流感中发挥重要作用[5],但时刻保持安全距离具有一定的难度,特别是在校园、工厂等场所。在这种情况下,将人工智能、深度学习技术集成至安全摄像头,开发智能摄像头技术对行人进行社交距离评估尤为关键。针对疫情防范的要求,现阶段主要采用人工干预和计算机处理技术。人工干预存在人力资源要求高、风险大、时间成本高等缺点,而在计算机处理技术中,引入人工智能对社交安全距离进行安全评估具有良好的效果。吉林大学齐春阳提出基于单目视觉夜间前方车辆检测与距离研究[6],采用two-stage的检测方式和注意力机制对车辆距离进行安全评估,但该方法的检测率和速度仍有较大的提升空间。BIAN等提出一种基于可穿戴磁场的接近传感系统用于检测社交距离[7],该系统可达到近100%的准确率,但由于需要极大的资金成本,因此不能很好地进行实际应用。PUNN等基于微调的YOLOv3和DeepSort技术,通过人员检测和跟踪来测控COVID-19社交距离[8],但由于网络自身具有滞后性,因此该方法存在检测精度低、网络模型冗余等缺点。SATHYAMOORTHY等提出COVID-Robot[9],在拥挤的场景中利用移动机器人监控社交距离限制,该方法在室内场景下起到了良好的监控作用,但鉴于机器人自身的因素限制,通过地平面的角度图不能及时监控被遮挡的行人。

上述研究致力于结合人工智能对抗COVID-19疫情,这对于改善和促进民众生活质量具有重要意义[10-11]。本文利用微调的YOLOv4和DeepSort算法对行人质点进行提取与跟踪。在此基础上,提出行人质点的运动矢量分析算法搜寻长时间未处于安全社交距离的行人,通过鸟瞰视角计算行人个体之间的距离,从而实现安全社交距离检测。

1 安全社交距离评估模型 1.1 总体框架

面向公众对于安全社交距离的实际要求,本文以公开数据集——牛津城市中心的数据集作为研究对象,基于YOLOv4网络框架对目标行人进行检测,并提出运动矢量分析算法追溯长时间未处于安全社交距离的行人群体,利用鸟瞰图对违反社交距离的个体进行连线标定。本文模型的总体框架如图 1所示。

Download:
图 1 本文安全社交距离评估模型的总体框架 Fig. 1 Overall framework of the proposed safety social distance assessment model
1.2 基于YOLOv4的行人检测

YOLOv4[12]使用卷积网络CSPDarknet53进行特征提取,网络结构模型如图 2所示。在每个Darknet53的残块行加上跨阶段局部结构(Cross-Stage Partial,CSP)[13],将基础层划分为两部分,再通过跨层次结构的特征融合进行合并[14]。同时,采用特征图金字塔网络(Feature Pyramid Network,FPN)[15],通过不同层特征的高分辨率来提取不同尺度特征图进行对象检测。最终网络输出3个不同尺度的特征图,在3个不同尺度特征图上分别使用3个不同的先验框进行预测识别,使得远近大小目标均能被准确检测[16]

Download:
图 2 YOLOv4网络结构模型 Fig. 2 YOLOv4 network structure model

YOLOv4的先验框尺寸是考虑PASCALL_VOC、COCO数据集包含的复杂种类而生成的,并不一定完全适合行人。由于本文旨在研究行人之间的社交距离,因此针对行人目标检测,利用聚类算法对YOLOv4的先验框进行微调[17]

首先,将行人数据集$ F $依据相似性分为i个对象,即$ F=\left\{{f}_{1}, {f}_{2}, \cdots, {f}_{i}\right\} $,其中每个对象都具有m个维度的属性。聚类算法的目的是将i个对象依据相似性聚集到指定的j个类簇,每个对象属于且仅属于一个距离最近的类簇中心。初始化j个聚类中心$ C=\left\{{c}_{1}, {c}_{2}, \cdots, {c}_{j}\right\} $,计算每个对象到每个聚类中心的欧式距离,如式(1)所示:

$ {D}_{\mathrm{d}\mathrm{i}\mathrm{s}}({f}_{i}, {c}_{j})=\sqrt{\sum\limits_{t=1}^{m}{\left({f}_{it}-{c}_{jt}\right)}^{2}} $ (1)

其中:$ {f}_{i} $表示第i个对象;$ {c}_{j} $表示第j个聚类中心;$ {f}_{it} $表示第i个对象的第t个属性;$ {c}_{jt} $表示第j个聚类中心的第t个属性。

然后,依次比较每个对象到每个聚类中心的距离,将对象分配至距离最近的簇类中心的类簇中,得到$ l $个类簇$ S=\left\{{s}_{1}, {s}_{2}, \cdots, {s}_{l}\right\} $。聚类算法中定义了类簇的原型,类簇中心就是类簇内所有对象在各个维度的均值,计算公式如式(2)所示:

$ {c}_{j}=\frac{\sum\limits_{{f}_{i}\in {s}_{l}}{f}_{i}}{{s}_{l}} $ (2)

其中:$ {s}_{l} $表示第$ l $个类簇中的对象个数。

本文针对先验框的微调通过Python语言实现,微调后的先验框更注重对行人的检测。

1.3 基于DeepSort算法的行人跟踪

YOLOv4完成行人目标检测后生成边界框(Bounding box,Bbox),Bbox含有包含最小化行人边框矩形的坐标信息。本文引入DeepSort算法[18]完成对行人的质点跟踪,目的是为了在运动矢量分析时计算行人的安全社交距离。

首先,对行人进行质点化计算。质点位置计算公式如式(3)所示:

$ \left\{\begin{array}{l}{x}_{\mathrm{c}\mathrm{n}\mathrm{t}\mathrm{e}\mathrm{r}}=\frac{{x}_{\mathrm{t}\mathrm{o}\mathrm{p}\_\mathrm{l}\mathrm{e}\mathrm{f}\mathrm{t}}+{x}_{\mathrm{l}\mathrm{o}\mathrm{w}\mathrm{e}\mathrm{r}\_\mathrm{r}\mathrm{i}\mathrm{g}\mathrm{h}\mathrm{t}}}{2}\\ {y}_{\mathrm{c}\mathrm{e}\mathrm{n}\mathrm{t}\mathrm{e}\mathrm{r}}=\frac{{y}_{\mathrm{t}\mathrm{o}\mathrm{p}\_\mathrm{l}\mathrm{e}\mathrm{f}\mathrm{t}}+{y}_{\mathrm{l}\mathrm{o}\mathrm{w}\mathrm{e}\mathrm{r}\_\mathrm{r}\mathrm{i}\mathrm{g}\mathrm{h}\mathrm{t}}}{2}\end{array}\right. $ (3)

其中:xcenterycenter分别为质点的横纵坐标;$ {x}_{\mathrm{t}\mathrm{o}\mathrm{p}\_\mathrm{l}\mathrm{e}\mathrm{f}\mathrm{t}} $$ {y}_{\mathrm{t}\mathrm{o}\mathrm{p}\_\mathrm{l}\mathrm{e}\mathrm{f}\mathrm{t}} $分别表示边界框左上角的横纵坐标;$ {x}_{\mathrm{l}\mathrm{o}\mathrm{w}\mathrm{e}\mathrm{r}\_\mathrm{r}\mathrm{i}\mathrm{g}\mathrm{h}\mathrm{t}} $$ {y}_{\mathrm{l}\mathrm{o}\mathrm{w}\mathrm{e}\mathrm{r}\_\mathrm{r}\mathrm{i}\mathrm{g}\mathrm{h}\mathrm{t}} $分别表示界框右下角的横纵坐标。

在确定行人质点位置后,利用DeepSort算法实现对多个目标的精确定位与跟踪,核心算法流程如图 3所示。

Download:
图 3 DeepSort核心算法流程 Fig. 3 Procedure of DeepSort core algorithm

DeepSort算法在Sort算法[19]的基础上增加了级联匹配和新轨迹的确认步骤。首先利用卡尔曼滤波器算法[20]预测行人轨迹Tracks,然后使用匈牙利算法将预测得到的行人轨迹Tracks和当前帧中检测到的行人进行匹配(级联匹配和IoU匹配),最后通过卡尔曼滤波进行更新。具体计算公式如下:

$ {\mathit{\boldsymbol{X}}}_{t|t-1}=\mathit{\boldsymbol{A}}{\mathit{\boldsymbol{X}}}_{t-1\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }|t-1}+{\mathit{\boldsymbol{W}}}_{t-1\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }|t-1} $ (4)
$ {\mathit{\boldsymbol{P}}}_{t|t-1}=\mathit{\boldsymbol{A}}{\mathit{\boldsymbol{P}}}_{t-1\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }|t-1}{\mathit{\boldsymbol{A}}}^{\mathrm{T}}+\mathit{\boldsymbol{Q}} $ (5)
$ {\mathit{\boldsymbol{X}}}_{t|t}={\mathit{\boldsymbol{X}}}_{t|t-1}+{\mathit{\boldsymbol{K}}}_{t}\left({\mathit{\boldsymbol{Z}}}_{t}-{\mathit{\boldsymbol{X}}}_{t-1\mathrm{ }|t-1}\right) $ (6)
$ {\mathit{\boldsymbol{P}}}_{t|t}={\mathit{\boldsymbol{P}}}_{t|t-1}-{\mathit{\boldsymbol{K}}}_{t}\mathit{\boldsymbol{H}}\mathit{\boldsymbol{P}}t|t-1 $ (7)
$ {\mathit{\boldsymbol{K}}}_{t}=\mathit{\boldsymbol{P}}t|t-1{\mathit{\boldsymbol{H}}}^{\mathrm{T}}{\left(\mathit{\boldsymbol{H}}\mathit{\boldsymbol{P}}t|t-1{\mathit{\boldsymbol{H}}}^{\mathrm{T}}+\mathit{\boldsymbol{R}}\right)}^{-1} $ (8)

其中:行人质点坐标(xy)表示为当前状态$ {\mathit{\boldsymbol{X}}}_{t\left|t\right.} $$ {\mathit{\boldsymbol{X}}}_{t-1\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }|t-1} $为上一时刻目标状态;$ {\mathit{\boldsymbol{X}}}_{t|t-1} $为上一时刻预测出当前时刻的目标状态;实际检测到的行人质心坐标表示为观测状态$ {\mathit{\boldsymbol{Z}}}_{t} $$ {\mathit{\boldsymbol{P}}}_{t|t-1} $为当前时刻估计误差协方差;$ {\mathit{\boldsymbol{P}}}_{t-1\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }|t-1} $为上一时刻估计误差协方差;$ {\mathit{\boldsymbol{P}}}_{t|t-1} $为上一时刻预测出当前时刻的估计误差协方差;$ \mathit{\boldsymbol{A}} $为状态转移矩阵;$ \mathit{\boldsymbol{H}} $为观测矩阵;$ {\mathit{\boldsymbol{K}}}_{t} $为卡尔曼滤波的增益矩阵;$ {\mathit{\boldsymbol{W}}}_{t-1\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }\mathrm{ }|t-1} $为上一时刻的激励噪声;$ \mathit{\boldsymbol{Q}} $$ \mathit{\boldsymbol{R}} $分别为激励噪声和观测声的协方差矩阵。

至此,完成了对行人目标的检测和跟踪。在此基础上,本文按照目前国内疫情情况和政策指导[21]提出运动矢量分析算法,目的在于针对同向行人监控安全距离,避免行人长时间处于非安全的社交距离。

1.4 运动矢量分析算法

三维世界投影至二维透视平面导致对象之间的距离存在不切实际的像素距离,即透视效应。在三维空间中,原始的三个参数(xyz)在相机的接收图像中压缩为二维(xy),深度参数(z)不可用,而在低维空间中,使用欧几里得距离的计算准则进行行人距离估计是错误的。为了应用校准的逆透视变换(Inverse Perspective Mapping,IPM),首先需要设置z=0来进行相机校准以消除透视效应,此外,需要知道相机的位置、高度、视角以及光学规格[22],以最终确定鸟瞰图下行人的坐标信息[23],从而进一步执行矢量分析算法确定安全距离。可通过OpenCV库中的“getPerspectiveTransform”方法计算变换矩阵[24]。通过应用IPM,使世界坐标点$ \left({X}_{\mathrm{W}}, {Y}_{\mathrm{W}}, {Z}_{\mathrm{W}}\right) $映射为二维像素点$ \left(u, v\right) $,计算公式如式(9)所示:

$ {\left[\begin{array}{ccc}u& v& 1\end{array}\right]}^{\mathrm{T}}=K\mathit{\boldsymbol{R}}\mathit{\boldsymbol{T}}{\left[{X}_{\mathrm{W}}, {Y}_{\mathrm{W}}, {Z}_{\mathrm{W}}\right]}^{\mathrm{T}} $ (9)

其中:K为相机的固有参数;$ \mathit{\boldsymbol{R}} $为旋转矩阵;$ \mathit{\boldsymbol{T}} $为平移矩阵。

使用齐次坐标,考虑到相机图像平面垂直于世界坐标系中的Z通道(即Z=0),三维点与投影结果图像之间的关系可以表示为:

$ \left[\begin{array}{c}u\\ v\\ 1\end{array}\right]=\left[\begin{array}{ccc}{n}_{11}& {n}_{12}& {n}_{13}\\ {n}_{21}& {n}_{22}& {n}_{23}\\ {n}_{31}& {n}_{32}& {n}_{33}\end{array}\right]\left[\begin{array}{c}{X}_{\mathrm{W}}\\ {Y}_{\mathrm{W}}\\ 1\end{array}\right] $ (10)

其中:$ {{n}_{i}}_{j}\in \mathit{\boldsymbol{N}} $$ \mathit{\boldsymbol{N}}\in {\mathbb{R}}^{3\times 4} $)是变换矩阵,其通过固有矩阵$ \mathit{\boldsymbol{K}} $、旋转矩阵$ \mathit{\boldsymbol{R}} $和平移矩阵$ \mathit{\boldsymbol{T}} $提供。

最终,从透视空间转移到反向透视空间也可以用以下标量形式表示以确定二维坐标:

$ \left(u, v\right)=\left(\begin{array}{l}\frac{{m}_{11}\times {X}_{\mathrm{W}}+{m}_{12}\times {Y}_{\mathrm{W}}+{m}_{13}}{{m}_{31}\times {X}_{\mathrm{W}}+{m}_{32}\times {Y}_{\mathrm{W}}+{m}_{33}}\text{,}\\ \frac{{m}_{21}\times {X}_{\mathrm{W}}+{m}_{22}\times {Y}_{\mathrm{W}}+{m}_{23}}{{m}_{31}\times {X}_{\mathrm{W}}+{m}_{32}\times {Y}_{\mathrm{W}}+{m}_{33}}\end{array}\right) $ (11)

本文提出行人运动矢量分析算法旨在检测同向行人的安全距离。经计算机视觉处理后,依据相机信息得到行人在鸟瞰图下的坐标信息$ {l}_{k}=\left({u}_{k}, {v}_{k}\right) $,同理可得行人在$ k-1 $时刻的全局位置坐标$ {l}_{k-1}=\left({u}_{k-1}, {v}_{k-1}\right) $。定义行人的运动矢量为$ {\mathit{\boldsymbol{M}}}_{\mathrm{P}} $,如式(12)所示:

$ {\mathit{\boldsymbol{M}}}_{\mathrm{P}}={\left({u}_{k}-{u}_{k-1}, {v}_{k}-{v}_{k-1}\right)}^{\mathrm{T}} $ (12)

为了获取当前时刻的运动矢量,设当前时刻的行人位置为$ {l}_{k-1} $,下一帧行人预测区域的中心位置为$ {l}_{k} $,由此得到的行人运动矢量如图 4所示。

Download:
图 4 行人运动矢量 Fig. 4 Pedestrian motion vector

图 4中,$ \mathrm{\Delta }l $的大小即为向量$ {\mathit{\boldsymbol{M}}}_{\mathrm{P}} $的模,物理意义为行人在两个时刻间的移动距离。由于连续两帧图像间的时间间隔很短,因此本文将行人移动的平均移动速率作为当前时刻的行人运动速率$ {v}_{\mathrm{P}} $,其方向即为沿着$ \mathrm{\Delta }l $的方向,夹角θ表示行人相对于自身当前位置的移动方向,由此可以得到速率$ {v}_{\mathrm{P}} $x轴和y轴方向的投影值,分别为$ {v}_{xk} $$ {v}_{yk} $。至此,可以连续得到行人在当前时刻的移动速率大小以及行人相对于当前位置的移动方向,可用语言描述为行人在$ ({u}_{k}, {v}_{K}) $位置以速率$ {v}_{\mathrm{P}} $沿着与x轴呈θ角的射线方向移动。

设定一个行人间安全社交距离的阈值$ {d}_{\mathrm{P}} $,对于安全社交距离的识别,判断公式如下:

$ \left|{\mathit{\boldsymbol{V}}}_{\mathrm{p}i\mathrm{p}j}\right| < {d}_{\mathrm{P}} $ (13)

其中:i、j为整数;$ {\mathit{\boldsymbol{V}}}_{\mathrm{p}i\mathrm{p}j} $为行人i与行人j之间的位置向量;参数$ {d}_{\mathrm{P}} $取值为1,小于阈值表示行人间距离小于1 m,为非安全社交距离。在安全社交距离风险评估算法中,对每个行人,以当前的空间位置坐标为圆心、$ {d}_{\mathrm{P}} $为半径的范围内进行搜索,其运算复杂度与for的循环控制变量呈一次线性关系,即On)。如果含有行人,则再对行人的运动矢量进行分析。成群行走的行人通常具有相似的移动方向和相近的移动速率,运动矢量判断的计算公式如下:

$ {\sigma }_{ij}=\mathrm{a}\mathrm{r}\mathrm{c}\mathrm{c}\mathrm{o}\mathrm{s}\left(\frac{{\mathit{\boldsymbol{M}}}_{\mathrm{p}i}\times {\mathit{\boldsymbol{M}}}_{\mathrm{p}j}}{\left|{\mathit{\boldsymbol{M}}}_{\mathrm{p}i}\right|\left|{\mathit{\boldsymbol{M}}}_{\mathrm{p}j}\right|}\right) < {\sigma }_{\mathrm{p}} $ (14)
$ \left|{\mathit{\boldsymbol{v}}}_{\mathrm{p}i}-{\mathit{\boldsymbol{v}}}_{\mathrm{p}j}\right| < {v}_{\mathrm{p}} $ (15)

其中:ij为整数;$ {\sigma }_{ij} $为行人i与行人j运动矢量的夹角;设定一个阈值$ {\sigma }_{\mathrm{p}} $$ {\rm{ \mathsf{ π} }}/18 $,小于阈值表示行人间具有相同的移动方向。

2 实验结果及分析

本文实验的软件环境使用Ubuntu 16.04 LTS操作系统及Pytorch深度学习框架。在硬件配置中,CPU使用英特尔酷睿i7-7900X,GPU使用英伟达GTX Titan X 16 GB显存。

2.1 实验数据集

实验使用Caltech行人数据库[25]和戴姆勒行人检测标准数据库[26]这两个采用车载摄像头的公开数据集,将“person”子集作为YOLOv4行人检测模型的训练集,在标准通用测试集Oxford Town Centre Dataset上进行验证检测。

Caltech行人数据库是目前规模较大的行人数据库,包含10 h左右的视频,视频的分辨率为640×480像素,30 frame/s。标注约250 000帧,总计时长约为137 min,对350 000个矩形框和2 300个行人进行标注,此外,还对矩形框之间的时间对应关系及遮挡的情况进行标注。Caltech数据库图像示例如图 5所示。

Download:
图 5 Caltech行人数据库图像示例 Fig. 5 Example of image in Caltech pedestrian database

戴姆勒行人检测标准数据库分为检测和分类两个数据集。其中:正样本包含18×36像素和48×96像素的图片15 560张,行人的最小高度为72个像素;负样本共计6 744张,分辩率为640×480像素或者360×288像素。测试集为一段27 min左右的视频,分辨率为640×480像素,共计21 790张图片,包含56 492个行人。分类数据库有3个训练集和2个测试集,每个数据集有4 800张行人图片和5 000张非行人图片,另外还有3个辅助的非行人图片集,各有1 200张图片。戴姆勒行人检测标准数据库图像示例如图 6所示。

Download:
图 6 戴姆勒行人检测标准数据库图像示例 Fig. 6 Example of image in Daimler pedestrian detection standard database
2.2 检测跟踪实验

重新设计锚点框,采用K-means聚类算法对数据集进行维度聚类,得到大、中、小3种尺度共计9个锚框,大小分别为(320,180)、(200,136)、(155,81)、(103,55)、(69,44)、(63,140)、(46,33)、(28,26)、(25,63)。依次分配大、中、小的检测单元,之后对网络进行训练,采用SGD优化器,初始学习率0.000 1,衰竭系数0.000 5,批大小设置为16,其余参数为默认参数,经过2 500次迭代后进行测试,丢失率接近10%。对YOLOv4模型进行微调后,在NVIDIA Geforce GTX TITAN上分别运行微调后YOLOv4算法和原YOLOv4算法,检测结果如图 7图 8所示。

Download:
图 7 微调后YOLOv4算法的行人检测结果 Fig. 7 Pedestrian detection result of fine-tuned YOLOv4 algorithm
Download:
图 8 原YOLOv4算法的行人检测结果 Fig. 8 Pedestrian detection result of original YOLOv4 algorithm

图 7图 8中,行人年龄分布方面包含小孩、年轻人和老人,状态方面包括骑自行车的人、被部分建筑物遮挡的人、推婴儿车的人等各类行人。YOLOv4在检测婴儿以及被遮挡的行人方面效果不佳,如图 8中被遮挡的行人、婴儿和特征相似的行人存在较高的漏检率。但是微调后的YOLOv4算法在检测遮挡的行人以及婴儿等目标时可获得良好的效果,并且有较强的置信度,同时误检和漏检情况较少。

为检验微调后YOLOv4在检测数据集上的检测效果,将其与Fast R-CNN、Faster R-CNN、SDD、YOLOv3等算法进行对比,以平均精度均值(mean Average Precision,mAP)和帧率(FPS)作为评价指标。mAP的值越高,说明算法对目标的检测效果越好;FPS越高,代表每秒输出的画面越多,说明实时检测效果越好。实验结果如表 1所示,从中可以看出:微调后YOLOv4相较于其他算法mAP值和FPS有所提高,为之后的社交距离风险评估提供了保障;由于本文采用是YOLO系列算法,参数量和FLOPS均大幅降低,因此提升了速度。

下载CSV 表 1 微调后YOLOv4算法与其他算法的性能对比 Table 1 Performance comparison of fine-tuned YOLOv4 algorithm with other algorithms

在完成对视域内行人的检测后,通过筛选出特征点将人抽象为质点,利用DeepSort算法中的卡尔曼滤波和匈牙利算法即可得到该行人的移动路径。微调后YOLOv4与原YOLOv4算法的行人跟踪结果分别如图 9图 10所示。实验结果表明,原YOLOv4算法对于行人的跟踪有较强的鲁棒性,但是对婴儿等小目标的识别存在一定的漏检率,而微调后YOLOv4算法在小目标识别方面性能得到了大幅提升,提高了小目标的检测效果。

Download:
图 9 微调后YOLOv4算法的行人目标跟踪结果 Fig. 9 Pedestrian target tracking result of fine-tuned YOLOv4 algorithm
Download:
图 10 原YOLOv4算法的行人目标跟踪结果 Fig. 10 Pedestrian target tracking result of original YOLOv4 algorithm
2.3 运动矢量分析及安全距离评估

在逆变换空间,利用线性距离表示每个人的位置,依据视域内各行人运动矢量间的关系对行人进行安全距离评估,最终算法结果如图 11所示,嵌入式系统将识别出违反安全社交距离的行人并用直线进行连接以作警示。

Download:
图 11 安全距离检测评估结果 Fig. 11 Safety distance detection and evaluation result

针对图 11中标记部分,在不同时间段内对两人至多人的行人行走状态进行判断分析。可以看出:在行人密度正常的情况下,本文算法具有一定的可行性。图 11(a)图 11(b)结果表明,两人安全距离检测评估判断具有较高的准确性;图 11(c)结果表明,由于行人群体在前几秒有相似的位移和速度,因此将其归为违反安全社交距离人群的一部分,在之后的判断中根据算法结果将其排出被选范围;图 11(d)结果表明,在长椅的遮挡下,本文算法在噪音处理后以及背景与行人较为相似的状态下存在漏检,但对于其他情况具有一定的可实施性。最终利用OpenCV绘制成鸟瞰图,如图 12所示,在虚线框图中,利用鸟瞰图对行人质点进行连线警示。

Download:
图 12 测试集的鸟瞰图 Fig. 12 Aerial view of the test set

采用人工安全社交距离标定,将违反安全距离规定的人群视为“群组”,统计前1 000帧的行人总数、实际群组和判断群组绘出三维统计图,如图 13所示。可以看出,本文算法的“群组”识别准确率达到88.23%,视频的帧率为15 frame/s,可满足校园、工厂等封闭环境的防疫需求。

Download:
图 13 每帧的总人数及群组的判断 Fig. 13 Judgment of total number of people and groups per frame
3 结束语

本文结合目前COVID-19疫情状态,在文献[8]方法的基础上进行改进,利用鸟瞰视角开发一个基于CNN的深度社交距离监控模型,结合CSPDarknet53主干网络、SPP空间金字塔池化层以及PANet颈部、Mish激活函数和聚类算法构建行人检测网络框架,基于DeepSort算法进行行人跟踪,最后提出运动矢量算法并利用OpenCV库函数构建鸟瞰图。实验结果表明,该算法能够实现对社交距离风险的有效评估,可满足校园、广场、工厂等环境的防疫需求。后续将对YOLOv4在智能移动平台上的部署做进一步优化,提高图像的像素大小、mAP和帧率,同时减少视频流传输过程中的视频帧损失。

参考文献
[1]
唐江平, 周晓飞, 贺鑫, 等. 基于深度学习的新型冠状病毒肺炎诊断研究综述[J]. 计算机工程, 2021, 47(5): 1-15.
TANG J P, ZHOU X F, HE X, et al. Survey of studies of COVID-19 diagnosis based on deep learning[J]. Computer Engineering, 2021, 47(5): 1-15. (in Chinese) DOI:10.19678/j.issn.1000-3428.0060509
[2]
XU X T, CHEN P, WANG J F, et al. Evolution of the novel coronavirus from the ongoing Wuhan outbreak and modeling of its spike protein for risk of human transmission[J]. Science China Life Sciences, 2020, 63(3): 457-460. DOI:10.1007/s11427-020-1637-5
[3]
FISHER D, WILDER-SMITH A. The global community needs to swiftly ramp up the response to contain COVID-19[J]. Lancet (London, England), 2020, 395(10230): 1109-1110. DOI:10.1016/S0140-6736(20)30679-6
[4]
LEE V J, CHIEW C J, KHONG W X. Interrupting transmission of COVID-19: lessons from containment efforts in Singapore[J]. Journal of Travel Medicine, 2020, 27(3): 1-5.
[5]
LAI S, RUKTANONCHAI N W, ZHOU L, et al. Effect of non-pharmaceutical interventions for containing the COVID-19 outbreak: an observational and modelling study[J]. Nature, 2020, 585: 410-413. DOI:10.1038/s41586-020-2293-x
[6]
齐春阳. 基于单目视觉夜间前方车辆检测与距离研究[D]. 长春: 吉林大学, 2020.
QI C Y. Research on vehicle detection and distance at night based on monocular vision[D]. Changchun: Jilin University, 2020. (in Chinese)
[7]
BIAN S Z, ZHOU B, BELLO H, et al. A wearable magnetic field based proximity sensing system for monitoring COVID-19 social distancing[C]//Proceedings of 2020 International Symposium on Wearable Computers. New York, USA: ACM Press, 2020: 1-5.
[8]
PUNN N S, SONBHADRA S K, AGARWAL S, et al. Monitoring COVID-19 social distancing with person detection and tracking via fine-tuned YOLOv3 and DeepSort techniques[EB/OL]. [2021-10-02]. https://arxiv.org/abs/2005.01385.
[9]
SATHYAMOORTHY A J, PATEL U, SAVLE Y A, et al. COVID-robot: monitoring social distancing constraints in crowded scenarios[EB/OL]. [2021-10-02]. https://arxiv.org/abs/2008.06585.
[10]
BOCHKOVSKIY A, WANG C Y, LIAO H Y M. YOLOv4: optimal speed and accuracy of object detection[EB/OL]. [2021-10-02]. https://arxiv.org/abs/2004.10934.
[11]
张凯, 刘秀民, 陈玉环, 等. 基于人工智能的新型冠状病毒肺炎放射科预警系统研究[J]. 中国医疗设备, 2020, 35(6): 63-66.
ZHANG K, LIU X M, CHEN Y H, et al. Research on an early warning system of Coronavirus Disease 2019 based on artificial intelligence in radiology department[J]. China Medical Devices, 2020, 35(6): 63-66. (in Chinese) DOI:10.3969/j.issn.1674-1633.2020.06.017
[12]
陈新华, 蒋建文, 周华, 等. COVID-19疫情背景下的医院人工智能快速布局和发展战略探讨[J]. 中国工程科学, 2020, 22(2): 130-137.
CHEN X H, JIANG J W, ZHOU H, et al. Rapid layout and development strategy of hospital artificial intelligence during the COVID-19 pandemic[J]. Strategic Study of CAE, 2020, 22(2): 130-137. (in Chinese)
[13]
WANG C Y, MARK LIAO H Y, WU Y H, et al. CSPNet: a new backbone that can enhance learning capability of CNN[C]//Proceedings of IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops. Washington D. C., USA: IEEE Press, 2020: 1571-1580.
[14]
刘晓蓉, 李小霞, 秦昌辉. 融合多尺度对比池化特征的行人重识别方法[J]. 计算机工程, 2022, 48(4): 292-298.
LIU X R, LI X X, QIN C H. Person re-identification method with multi-scale contrast pooling feature[J]. Computer Engineering, 2022, 48(4): 292-298. (in Chinese) DOI:10.19678/j.issn.1000-3428.0061508
[15]
LIN T Y, DOLLÁR P, GIRSHICK R, et al. Feature pyramid networks for object detection[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. Washington D. C., USA: IEEE Press, 2017: 936-944.
[16]
张永亮, 陆阳, 朱芜强, 等. 基于多尺度特征提取和特征融合的交通标志检测[J/OL]. 计算机工程: 1-11[2021-12-17]. https://doi.org/10.19678/j.issn.1000-3428.0062282.
ZHANG Y L, LU Y, ZHU W Q, et al. Traffic sign detection based on multi-scale feature extraction and feature fusion[J/OL]. Computer Engineering: 1-11[2021-12-17]. https://doi.org/10.19678/j.issn.1000-3428.0062282. (in Chinese)
[17]
彭成, 张乔虹, 唐朝晖, 等. 基于YOLOv5增强模型的口罩佩戴检测方法研究[J]. 计算机工程, 2022, 48(4): 39-49.
PENG C, ZHANG Q H, TANG Z H, et al. Research on mask wearing detection method based on YOLOv5 enhancement model[J]. Computer Engineering, 2022, 48(4): 39-49. (in Chinese)
[18]
WOJKE N, BEWLEY A, PAULUS D. Simple online and realtime tracking with a deep association metric[C]//Proceedings of IEEE International Conference on Image Processing. Washington D. C., USA: IEEE Press, 2017: 3645-3649.
[19]
BEWLEY A, GE Z Y, OTT L, et al. Simple online and realtime tracking[C]//Proceedings of IEEE International Conference on Image Processing. Washington D. C., USA: IEEE Press, 2016: 3464-3468.
[20]
张晶晶, 杨鹏, 刘元盛, 等. 基于智能驾驶的动态目标跟踪研究[J]. 计算机工程, 2018, 44(7): 14-19.
ZHANG J J, YANG P, LIU Y S, et al. Research on dynamic target tracking based on intelligent driving[J]. Computer Engineering, 2018, 44(7): 14-19. (in Chinese) DOI:10.19678/j.issn.1000-3428.0051084
[21]
国务院应对新型冠状病毒感染肺炎疫情联防联控机制关于进一步做好当前新冠肺炎疫情防控工作的通知[J]. 中华人民共和国国务院公报, 2021(4): 13-15.
Notice of the State Council on the joint prevention and control mechanism for the new coronavirus pneumonia epidemic on further improving the prevention and control of the current new coronavirus pneumonia epidemic [J]. Bulletin of the State Council of the People's Republic of China, 2021(4): 13-15. (in Chinese)
[22]
REZAEI M, KLETTE R. Computer vision for driver assistance[M]. Berlin, Germany: Springer, 2017.
[23]
REZAEI M, AZARMI M. DeepSOCIAL: social distancing monitoring and infection risk assessment in COVID-19 pandemic[EB/OL]. [2021-12-17]. https://arxiv.org/abs/2008.11672.
[24]
KARAMAN O, ALHUDHAIF A, POLAT K. Development of smart camera systems based on artificial intelligence network for social distance detection to fight against COVID-19[J]. Applied Soft Computing, 2021, 110: 1-10.
[25]
BAI J, HAO P L, CHEN S H. Traffic scene understanding using lightweight convolutional neural network image semantic segmentation[J]. Journal of Automotive Safety and Energy, 2018, 9(4): 433-440. DOI:10.3969/j.issn.1674-8484.2018.04.010
[26]
HUANG H Y, KUENG R, PRESKILL J. Information-theoretic bounds on quantum advantage in machine learning[J]. Physical Review Letters, 2021, 126(19): 1-5.