基于边缘计算的多摄像头视频协同分析方法
2023-09-19期治博杜磊霍如杨帆黄韬
期治博,杜磊,霍如,4,杨帆,黄韬
(1.北京邮电大学网络与交换国家重点实验室,北京 100876;2.中国信息通信研究院工业互联网与物联网研究所,北京 100083;3.北京工业大学信息学部,北京 100124;4.网络通信与安全紫金山实验室,江苏 南京 211111)
0 引言
随着新一代信息技术的发展,城市的智能化程度不断提升,智慧城市迅速崛起并成为城市发展的新理念和新方向。智慧城市利用物联网、云计算、边缘计算和人工智能等新型计算技术,将城市规划、设计、建设、管理和运营等领域智能化,实现更加高效的城市运行。智慧城市的发展使城市监控摄像头的数量急剧增加,这对城市建设和安防带来了显著改善。然而,现有的城市视频监控设备是各自独立的,不利于城市建设中大数据分析的整合[1]。因此,研究多摄像头视频协同处理,从庞大的视频数据中挖掘价值,成为未来城市互联监控的发展方向和重点。多摄像头视频数据的处理也是许多视觉智能应用的基础,如物体检测和跟踪、物体视觉定位、物体速度估计等。快速发展的网络技术对这些智能应用提供了支持并使之成为热点[2]。因此,多摄像头视频分析引起了众多学者的关注。
现有的多摄像头视频分析方法大多基于独立视频流进行处理[3]。具体而言,这些方法适用于同一场景下多个摄像头同时采集不同角度的视频,然而在对这些采集的视频进行分析时,主要针对每个摄像头的单个视频流进行处理。为了在成本和精度之间进行权衡,通常采用帧采样或级联滤波器去除较不重要的视频帧以减少视频量,从而降低成本。然而,所有的调整和压缩操作都是在单个视频流内进行的,不同摄像头采集的视频处理是相互独立的,这导致了视频分析中计算和存储资源的线性增加。因此,基于这些视频分析方法,多摄像头视频分析需要较大的计算、网络和存储资源。
为了提高实时多摄像头视频分析的效率并降低处理时延,可以在边缘端对多摄像头视频进行协同分析。它通过构建多个摄像头之间的关联性来减少待分析视频的数据量,缩减后的视频可以在边缘端或传输到云端进行进一步的处理,从而降低整体视频数据的冗余度,减轻边缘端和云端视频处理的工作量,进而减少处理时延。同时相较于上述独立视频流分析,这种方法对计算能力和存储资源等方面的要求较低。
因此,实现多摄像头视频的协同分析主要涉及以下2 个问题。1) 实时的视频处理方法。实时视频处理需要丰富的计算、网络和存储资源,但摄像头本身的视频处理能力有限,难以支持大规模且实时的视频数据检测和分析。因此,考虑利用配备边缘服务器来扩展摄像头的视频处理能力是必要的。将视频传输到边缘服务器进行处理,利用边缘计算将云端计算能力下沉到边缘端,可以减轻摄像头的负担,并降低计算和传输时延。2) 多个摄像头之间的关联性。在相同时段和场景下,不同角度摄像头所拍摄的视频片段之间存在一定的关联性。这可能包括从不同角度拍摄了同一个目标的不同面,或者同一个目标在不同摄像头的视频中先后出现。由于不同摄像头的空间布局和视角关系通常很复杂,因此需要计算和处理不同视频片段之间的关联性,并作为后续视频压缩处理的依据。
为了应对上述问题,本文提出了一种边缘端多摄像头视频协同分析方法。该方法基于机器学习算法,设计关键窗口模型和多摄像头关联程度计算策略,为后续的视频数据量缩减和进一步的视频处理做准备。本文主要的研究工作总结如下。
1) 提出了一种新颖的多摄像头视频协同分析方法。该方法首先对每个摄像头采集的视频进行目标检测;然后根据目标检测的结果生成关键窗口,对视频进行特征提取和初步筛选;随后结合提取的特征利用重识别技术对检测到的目标进行标注,并根据标注结果计算多摄像头之间的关联程度值;最后基于关联程度值对视频进行压缩处理。
2) 设计了用于表示不同摄像头视频帧中感兴趣区域(RoI,region of interest)的关键窗口。首先对视频帧进行分块处理,然后基于包括重要目标的区域块构建关键窗口。同时本文提出多摄像头关联性计算策略,基于摄像头关键窗口中目标的标注结果,计算不同摄像头之间的关联程度。
3) 提出了一种GC-ReID 算法来实现多摄像头视频协同分析方法。GC-ReID 结合图卷积网络(GCN,graph convolutional network)和重识别(ReID,re-identification)技术,利用GCN 对各摄像头中的重要目标进行快速检测,并结合关键窗口迅速提取视频数据特征。同时,利用ReID 对关键窗口的数据特征进行快速标注,结合计算策略得到多摄像头之间的关联程度值。
1 相关工作
对于引言中所讨论的问题,近期已有学者进行了相关的研究。其中,一些学者结合不同的视频处理策略和边缘计算的能力提出了在边缘服务器上进行视频分析的方法;另一些学者在结合边缘计算技术的基础上,研究视频分析中多个摄像头之间的资源竞争;此外,还有学者关注多个摄像头检测到的目标之间的匹配关联性。本节对这些相关研究进行简要回顾和分析。
现有的视频分析研究主要利用边缘或云的计算能力进行视频分析和处理,以从视频中提取关键特征和有效信息。Yang 等[3]提出了基于检测的跟踪方法,适用于边缘端高分辨率视频的分析。赵羽等[4]提出了一种部署在边缘端的视频处理方法,利用轻量级的神经网络和联邦学习分场景训练模型。Gao 等[5]提出了一种针对云边缘视频流的智能视频处理架构,在云端部署并执行基于深度神经网络(DNN,deep neural network)的视频增强方法。然而,这些研究仅考虑对单个摄像头采集的视频进行分析,而未涉及跨摄像头和多摄像头的视频分析和处理。
关于视频分析中多个摄像头的资源竞争研究主要关注摄像头视频的任务卸载和计算资源分配。Chen 等[6]研究了多服务器和多用户的异质视频分析任务卸载问题,基于博弈论进行卸载算法设计,最终使多服务器多用户的视频分析任务卸载达到纳什均衡。Yang 等[7]提出了终端、边缘和云协同的实时视频分析方法,通过对终端摄像头进行资源分配,使其能够根据实时视频生成高质量的视频帧。Wang 等[8]研究了多个视频流在同一边缘节点上共享上传链路时的配置自适应和带宽分配问题,提出了联合优化配置适应和带宽分配的在线算法。Ran 等[9]提出了在边缘端部署算力更强的服务器,利用深度学习模型来确定终端视频分析任务的最佳卸载策略,并以时延和准确率等作为目标来优化资源调度。Hung 等[10]通过引入主导需求来确定多种资源和准确性之间的平衡,并利用层次聚类缩小搜索空间,同时平衡了视频查询的资源效益和准确性损失。上述多摄像头视频分析方法主要研究边缘系统下多摄像头视频分析任务的分配和卸载,而对于摄像头本身视频数据进行协同处理的方法较少,缺乏对不同摄像头视频数据之间关系的细致分析,并且对视频画面之间的关联程度考虑有限。
一些学者研究了多个摄像头检测到的目标之间的匹配关联性,并提出了进行协同视频处理的方法。Guo 等[11]提出了多人物多摄像头实时视频跟踪框架,设计了基于时间的运动模型研究视频采样帧之间的精确时间间隔,并利用改进的多人匹配级联方案提高摄像头间人员再识别的准确性。Chung 等[12]提出了一种多摄像头多目标车辆跟踪系统,利用车辆行为、合成数据和多种增强技术执行视频数据的上下文约束,从而减少跨摄像头的分析时间。Li 等[13]提出了一种车辆跟踪系统,包括基于特征提取的车辆检测和再识别模型、单摄像机跟踪、增强轨迹预测和多级关联方法。Liu 等[14]提出了一种基于遮挡感知的多目标多摄像头跟踪框架,设计了目标间信息模块提高匹配精度,并利用目标间关联发掘轨迹相似性,最后通过聚类对不同摄像头之间的目标轨迹进行匹配。Li 等[15]设计了视频分析系统Reducto,根据不同的外部条件自定义滤波器对多摄像头的视频帧进行过滤,并通过丢弃视频片段中的帧来权衡传输成本和准确性。尽管上述多摄像头协同分析方法考虑到了摄像头检测到目标的匹配和关联度,但缺少对摄像头本身之间关联性的考虑,导致关键视频帧的筛选力度不足,甚至可能会错失关键目标物体。因此,挖掘多个摄像头之间的实时关联并实现更高效的协同视频分析具有更重要的意义。
2 多摄像头视频数据协同分析模型构建
本节提出了一种多摄像头视频协同分析(MVCA,multi-camera video collaborative analysis)方法。如图1 所示,该方法适用于同一环境中配备有多个摄像头的场景。这些摄像头从不同的角度和方向采集场景视频,并将其传输到边缘服务器。边缘服务器对接收到的视频进行分析和处理,其中包括使用GCN 算法建立关键窗口,利用ReID 算法的结果计算多摄像头之间的关联程度。关联程度值可以作为对视频进行压缩的参考依据。最后,将压缩后的视频在边缘端或者传输到云服务器进行深入分析和处理。这种方法大大减少了视频处理数据量,降低了系统时延,并减轻了边缘服务器和云服务器的负担,有助于最大化边缘系统的整体效用。GCN 和ReID 的构建和训练在云服务器离线完成,然后分别部署到直连边缘服务器和主边缘服务器上。
图1 MVCA 方法框架
2.1 边缘系统模型
本文在边缘侧部署了多个摄像头,以捕获多个角度的实时视频数据。摄像头集合表示为N={n1,n2,n3,…,nx},其中,x为摄像头的数量。边缘服务器由一个主边缘服务器Ms 及与摄像头直接连接的直连边缘服务器M={m1,m2,m3,…,mx}组成。每个摄像头都与一个直连边缘服务器相连。主边缘服务器用于计算多个摄像头之间的关联程度,而直连边缘服务器用于生成关键窗口。压缩后的视频可以在主边缘服务器或者由直连边缘服务器传输到云服务器进行进一步分析,如图1 所示。通过权衡视频分析开销和分析粒度,本文对若干时间段的视频数据进行了分析,每个时间段T的最小分析单元为一个时隙t,t∈T={t0,t1,t2,…,ty},y为时间段T中最后一个时隙的编号。在每个时间段T的开始,不同摄像头拍摄的视频以一个时隙为单位进行分割并依次上传至直连边缘服务器。边缘系统模型的参数和含义如表1 所示。
表1 边缘系统模型的参数和含义
1) 通信模型
如上文所述,多个摄像头N拍摄的视频将同时传输到各自的直连边缘服务器进行进一步处理。因此,本文使用频分多址(FDMA,frequency division multiple access)技术来处理多摄像头的视频传输任务。根据香农定理,可以得到摄像头nz(0≤z≤x,x表示摄像头的数量)的传输速率为
与一些现有的研究[16-17]类似,本文所提方法中忽略了主边缘服务器在得到多摄像头关联程度值后返回结果到各直连边缘服务器的时间成本。这是因为在视频分析和处理过程中,传输和分析结果所需要的时间代价比传输和处理视频数据所需要的时间代价要小很多。因此,当摄像头nz将拍摄的视频单元传输到相应的边缘服务器时,其传输时延为
虽然在本文中忽略了主边缘服务器返回结果到各直连边缘服务器的时间成本,但是直连边缘服务器会将生成的关键窗口区域和检测到的特征传输到主边缘服务器和云服务器,因此本文也采用FDMA 来处理多个直连边缘服务器的数据传输任务。同样根据香农定理,可以得到直连边缘服务器mz(0≤z≤x,x表示直连边缘服务器的数量,也是摄像头的数量)的传输速率为
同样,当直连边缘服务器mz将关键窗口和提取的特征数据传输到主边缘服务器或云服务器时,其传输时延为
2) 计算模型
与现有研究[8]类似,本文使用虚拟并行处理技术[18]来支持同时执行多个摄像头视频分析,从而实现对多个视频进行并行处理。在计算模型中,摄像头nz所采集视频数据中每个字节的计算需求为Cr(CPU 周期)。因此,直连边缘服务器和主边缘服务器在处理视频时的计算时延为
其中,Fe表示执行视频处理的边缘服务器的CPU频率。本文设定所提方法中边缘系统的总时延Dtotal由传输时延和计算时延组成,即
2.2 感兴趣区域与关键窗口建立
为了便于发现不同摄像头之间的视频数据关联性,本文设计了一种对摄像头采集的视频帧进行分块的方法。具体而言,摄像头nz拍摄的视频帧被划分为大小相同的块状区域。这些块状区域是相对较小的矩形,它们共同构成并覆盖了视频帧的整个画面。如图2 所示,每个摄像头采集的视频帧画面被划分为16 个矩形区域块,按照从左到右和从上到下的顺序,索引分别为1~16。摄像头nz的区域块集合用表示,其中第i个区域块被表示为如图2(a)所示,摄像头1 采集视频帧的左上角,其中第一行的区域块可以表示为R1,1、R1,2、R1,3和R1,4,其余的区域块依次类推。需要注意的是,视频帧中的每个区域块并不特定于某一帧或某一时隙,进行区域分块是为了能够更精确地划分摄像头所采集的视频帧画面。
图2 摄像头1~4 在时隙t 内采集的视频帧画面
在本文提出的MVCA 方法中,首先需要使用机器学习算法对不同摄像头采集的视频帧进行快速检测,检测结果中可能包含目标物体的区域块即感兴趣区域,例如,移动的人或物体都属于重要目标物体。这些感兴趣区域构成了关键窗口。在视频分析过程中,本文优先处理关键窗口内的区域块,因为这些区域块包含目标物体,而关键窗口以外的区域块动态性较差且缺乏目标物体,所以处理优先级级别较低,甚至被忽略而不进行分析和处理。在本文中,构成关键窗口的最小元素是以上所设计的区域块。摄像头nz的关键窗口用表示,即是包含目标物体的所有区域块的集合。例如,图2(b)展示了摄像头2 的关键窗口,即斜纹阴影标注的区域块,包括区域块1~8。这些区域块是通过目标检测选择得到的,共同构成了摄像头2 的关键窗口。因此,图2 中摄像头1~4 的关键窗口分别表示为
在进行视频数据处理时,为每个摄像头设计一个包含最少区域块的关键窗口非常重要,特别是当人们希望关键窗口适用于较长的分析时间时。这样在对视频进行处理时,只需要分析关键窗口中的区域就能够提取到视频数据中的关键信息,从而有效减少了视频数据的处理量。本文提出的GC-ReID 利用GCN[19]快速检测视频中的目标物体用以生成关键窗口,更详细的介绍见第3 节。
2.3 多摄像头关联性构建
为了进一步减少视频数据的分析量,本文设计了多摄像头关联性的构建方法。其主要原理是采用机器学习算法对于关键窗口中的目标物体进行检测并提取特征,然后对提取的特征进行分类。根据分类结果为关键窗口中每个检测到的物体分配一个ID 号。然而,由于这些摄像头处于同一场景下,不同摄像头采集的视频帧往往会捕捉到相同的目标物体。因此,通过分类算法,同一物体将被赋予相同的ID 号。例如,图2(a)和图2(b)分别表示在同一环境中2 个不同的摄像头拍摄的画面。利用GC-ReID 中的ReID 算法,可以识别2 个画面中相同的人物,为其分配相同的ID 号。假设同一场景下同一时隙检测到的目标物体的集合为L={l1,l2,l3,…,lo}。虽然角度不同,但是人物l1、l2、l3、l4和l5同时出现在摄像头1 和摄像头2的视频帧中,即他们在2 个摄像头中都被检测到。然而,人物l6只出现在图2(b)中,即只被摄像头2检测到。
依次类推,表2 中列出了10 个所检测到目标物体的所有区域块集合RSt。
表2 图2 中区域块的集合
根据表2 可以观察到,不同摄像头之间检测到相同目标物体的数量存在差异。当2 个摄像头检测到相同目标物体数量较多时,可以认为它们之间的关联性较强。为了便于分析不同摄像头之间的关联性,本文使用式(14)来计算关联程度值AS。
3 多摄像头视频数据协同分析方法实现
本文设计了GC-ReID 算法用于实现多摄像头视频协同分析方法。如图3 所示,各摄像头直连的边缘服务器并行执行GCN 算法,从多个摄像头采集的视频数据中筛选关键特征,并根据这些特征建立关键窗口模型。随后,直连边缘服务器将关键窗口的内容传输到主边缘服务器。主边缘服务器使用ReID 算法,将GCN 的结果和提取的关键窗口的内容作为输入,对关键窗口中检测到的目标物体进行筛选并分配ID 号。根据ReID算法的处理结果,计算不同摄像头之间的关联程度值。随后将关联程度值返回到直连边缘服务器,根据这些关联程度值对多个摄像头采集的视频进行压缩和优化。最后,压缩后的视频可以选择在主边缘服务器或者传输到云服务器上进行进一步分析和处理,例如目标检测和目标跟踪等。GCN 和ReID 算法的构建和训练均事先在云服务器完成并下发到边缘服务器。
图3 GC-ReID 的总体流程
3.1 关键窗口的建立
本文采用GCN 提取摄像头采集的视频帧的关键特征,并检测其中的目标物体。最后,根据包含这些目标物体的区域块构建每个摄像头的关键窗口,详细结构如图4 所示。
图4 GCN 的结构
图4 中的输入是连续的视频帧片段,由摄像头采集并上传到直连边缘服务器。输入GCN 模块后先使用两层卷积层初步提取视频帧的特征。然后将处理后的连续视频帧建模为图G={V,E}。其中,节点集合为V={v1,v2,…,vz},z表示节点的数量;边集合为E=Etemp∪Esema,Etemp表示时间边,Esema表示语义边。一个节点表示一个视频帧,一条边表示一对节点之间的依赖关系。随后使用图卷积结构块提取特征。图卷积结构块包含2 个图卷积流:时间流操作固定的时态相邻特征,语义流自适应地将语义上下文聚合到视频帧特征中。下面将描述2 种卷积流边的设计以及图卷积过程。
1) 时间边
2) 语义边
语义边Esema是由动态边卷积的概念定义的[20],它是根据图节点之间的特征距离动态构建的。语义边的作用是从语义相关的视频帧中收集信息。图G中每个节点vi的语义边Esema的定义为
其中,nri(k)表示节点vi的第k个近邻节点索引,K表示近邻节点索引数量。nri(k)是在图卷积块上动态确定的,通过它能够更新整个图卷积块中本质上携带语义上下文信息的节点。因此,Esema可以自适应地改变以表示新的语义上下文级别。
3) 图卷积和流聚合
图G中所有节点的特征表示为Y=[y1,y2,…,yz] ∈Rc×z,其中,c表示每个视频帧的特征维度。本文使用单层边卷积[20]来进行图卷积操作GC。
其中,W∈R2c×c′表示可训练的权重矩阵,A∈Rz×z表示不带自环(节点和它本身之间的边)的邻接矩阵,[*,*]表示列的矩阵串联。本文将A中的第(i,j)个元素表示为A(i,j)=1{(vi,vj)∈E},其中,1{*}是指示函数。图卷积结构模块中的2 个卷积流都分别设计了32 条路径来增加转换的多样性。
图卷积结构模块的输出是语义流和时间流以及输入的聚合,可以用式(19)表示。
2 种图卷积流都遵循分裂-转换-合并的策略,首先,使用多个卷积流来对图进行更新和聚合,输出作为进一步提取的特征。然后,将提取的特征输入定位模块,其中锚点定义的子图由固定大小的特征表示。最后,定位模块对视频帧中的目标物体进行定位和检测,根据定位结果结合关键窗口的建立方法输出关键窗口。
3.2 多摄像头关联性的构建
本文采用DiDi-MTMC[21]算法为关键窗口中检测到的目标物体分配ID 号。该算法将从视频帧中提取的特征进行融合,并结合融合后的特征进行分类。该算法可为多个摄像头拍摄视频帧中的每个目标物体(本文场景中为人)分配一个唯一的ID 号。通过对这些ReID 的结果进行筛选,并根据计算策略计算多个摄像头之间的关联程度。
GC-ReID 算法如算法1 所示。
算法1GC-ReID 算法
3.3 视频压缩
摄像头采集的视频经过边缘服务器的处理后传输到云服务器进行进一步的处理。在边缘服务器进行处理可以得到每个摄像头的关键窗口和摄像头之间的关联程度。因此,本文可以结合关键窗口和摄像头之间的关联程度对多个摄像头采集的视频进行视频帧筛选和压缩。压缩后的视频能够减少视频数据量,并提升云端视频处理的效率。
在视频压缩过程中,首先根据当前时段各摄像头生成的视频帧的关键窗口对视频画面进行分割,去除关键窗口以外的视频帧区域,只保留关键窗口区域进行后续分析。然后,如果边缘端或者云端工作人员想要查看特定摄像头采集的视频或者某个摄像头中重要物体出现的画面,主边缘服务器会对选定摄像头与其余摄像头的关联程度值进行排序。根据排序结果,优先传输关联程度较高的摄像头视频帧的关键窗口区域到主边缘服务器或云服务器进行进一步的分析和操作。这样,只需处理关联程度较高的几个摄像头的关键区域,可以大大缩减视频分析的数据量,同时提升分析效率。
4 实验结果及分析
本文通过相关实验,从不同评价指标的角度来对所提出的MVCA 方法的性能进行分析。此外,本文还将MVCA 方法与其他方法进行了比较,并对结果进行了讨论。
4.1 实验环境和数据集
仿真实验是在SALSA 数据集[22]的录制视频上进行的。该数据集展示了某学术会议海报会场(如图 2所示)中不同人员的活动和交流情况,该会场配备了4 个不同方向的摄像头,分别是摄像头1、2、3和4。每个摄像头可以利用直连边缘服务器生成各自的关键窗口,并实时检测和分配人员的ID 号。所采集的视频编码标准和格式分别为H.264 视频编码标准和在主要网络广播应用中支持流媒体的MP4 格式。仿真环境边缘服务器的配置包括一个英特尔酷睿i5-10400F CPU 和一个拥有8 GB 内存的Nvidia GeForce GTX 1080 GPU。实验中视频片段的持续时间设定为2 s,帧率为30 Hz。
4.2 实验结果分析
进行多摄像头视频协同分析时,本文需要在保持分析效果较好的前提下,尽量降低处理的代价。为了评价视频分析方法的性能,需要考虑准确性和代价。本文使用准确率、系统时延和视频压缩率作为性能评价指标。为了验证所提出的MVCA 方法的性能,本节设计了消融实验和不同方法的性能比较。通过对实验结果进行详细的数据和理论分析,进一步验证了所提方法的有效性。
1) 性能评价指标
准确率。本文采用准确率Accuracy 作为指标之一来对方法的性能进行评价,如式(20)所示。其中,Qtrue表示场景中的实际人数,Qdec表示检测到的人数。然而,由于本文使用的数据集未提供场景中的实际人数,因此在实验仿真中使用YOLO V3 方法[23]的检测结果作为人员检测的正确基线。
系统时延。系统时延可以反映视频分析方法的实时性,低时延会有更好的用户体验。在本文中,视频以及处理后的数据在摄像头和直连边缘服务器之间、直连边缘服务器和主边缘服务器之间、直连边缘服务器和云服务器之间进行传输会产生传输时延。此外,关键窗口的生成和多摄像头关联程度的计算会产生计算时延。本文的系统时延主要包括传输时延和计算时延,如式(6)所示。
视频压缩率。为了在保持准确性的前提下降低系统时延并提升系统效用,视频分析方法需要减少视频分析量。因此,本文将视频压缩率Rc 作为本文方法的性能评价指标之一,如式(21)所示。其中,Bcomp表示压缩后的视频数据量,Binit表示原始视频数据量,视频数据量的单位为MB。本文实验重点观察摄像头1 及其检测到的目标物体,并根据关联程度来决定是否选择处理和分析其他摄像头采集或处理后的视频帧。
2) MVCA 方法性能分析
为了验证关键窗口和多摄像头关联性的作用,首先进行消融实验,将本文提出的MVCA 方法与只使用ReID 方法(没有关键窗口,用No-key window 表示)、使用文献[17]中STS 方法的帧采样模型(替代MVCA 中的关键窗口模型)以及只构建关键窗口模型而不进行多视频协同处理的方法(没有关联性构建,用No-association 表示)进行比较。图5 分别展示了MVCA、No-key window、STS帧采样和No-association 在准确率、系统时延和视频压缩率3 个方面的对比。
图5 MVCA、No-key window、STS 帧采样和No-association 的性能比较
在准确率方面,MVCA 和No-association 的准确率较高,这是因为它们利用关键窗口模型有效减少了视频中非重要目标物体的干扰。STS 帧采样的准确率次高,该方法虽然减少了非关键帧的数量,但是对关键目标物体所在的区域划分不够准确,容易受到非重要目标物体的影响,且可能会移除包含关键目标的画面。No-key window 的准确率相对较低,这是由于该方法没有对视频帧进行筛选或切割,其中的一些非重要目标会对检测准确率造成影响。
在系统时延和视频压缩率方面,MVCA 方法有着最低的系统时延和最高的视频压缩率,相比于No-key window,MVCA 利用关键窗口模型筛选感兴趣区域缩减了视频数据量;相比于No-association 方法,MVCA 重点分析关联程度值较高的摄像头视频,因此进一步减少了需要处理的视频量,降低了传输和计算时延;STS 帧采样方法虽然通过删减非关键帧的方式减少了所需处理的视频量,但其处理后的视频量比关键窗口处理后多,因此可知关键窗口模型比帧采样更有效。
综上所述,关键窗口对视频中重要目标物体检测准确率的提升和系统时延的降低具有显著作用。多摄像头关联性则可作为进一步减少视频处理量的有效依据。
3) 不同多摄像头视频分析方法的性能比较
本节比较了本文提出的MVCA 方法与第1 节相关工作中介绍的一些先进的多摄像头视频分析方法。这些方法包括REDUCTO、文献[11]方法和文献[14]方法。图6 分别展示了MVCA、REDUCTO、文献[11]和文献[14]方法在准确率、系统时延和视频压缩率3 个方面的对比。
图6 MVCA、REDUCTO、文献[11]和文献[14]方法的性能比较
在准确率方面,文献[11]方法准确率最高,这是因为该方法针对每个摄像头的视频帧建立了运动模型,并对所有帧都基于时间进行了详细的分析。MVCA 的准确率次高,原因是其在利用关键窗口进行视频压缩时,忽略了部分非关键窗口区域中的重要目标物体,从而影响了准确率。REDUCTO和文献[14]方法的准确率都不理想,这是由于REDUCTO 采用帧过滤的方法,有较高的可能性删除包含目标物体的关键帧;而文献[14]方法在构建目标间的信息模块时候着重考虑目标本身的特征,未考虑目标在视频帧中位置的变化。
在系统时延和视频压缩率方面,文献[14]方法具有最低的系统时延和最高的视频压缩率,这是由于该方法在构建目标间的信息模块时仅关注目标本身特征,未考虑帧间目标特征,因此时间复杂度较低;同时,在多目标分析时采用的聚类方法仅结合提取的目标特征数据,未对多个摄像头采集的视频帧本身进行联合处理,因此数据量较少。MVCA 的系统时延次低而视频压缩率次高,这是由于利用关键窗口对视频帧进行分割实现视频压缩,并结合多摄像头关联性模型对传输到云服务器的视频实现进一步压缩。REDUCTO 在系统时延和视频压缩率方面的表现不如前两者,原因是其虽然采用了帧过滤方法压缩视频,但后续对多摄像头处理的压缩力度不足。文献[11]方法具有最高的系统时延和最低的视频压缩率,这是由于该方法对所有视频帧基于时间建立模型进行详细分析,未进行帧删减等操作,同时建立了多人匹配级联模型,因此耗时较多;该方法的视频压缩仅通过多人匹配级联模型实现,因此压缩幅度较小。
综合考虑多个评价指标,本文提出的MVCA方法在准确率、系统时延和视频压缩率3 个方面整体优于其他方法。
5 结束语
本文研究了智慧城市场景下多摄像头视频分析的问题,提出了一种高效的解决方法MVCA。该方法能够实时地对多摄像头采集的视频进行协同分析。具体而言,通过快速建立视频流的关键窗口来定义感兴趣区域,并在此基础上快速构建摄像头之间的关联性。通过获取关联程度值,有效地减少了视频数据的分析量,从而提高了多摄像头视频分析的效率,减轻了边缘服务器的负担,并提升了边缘系统的性能。在SALSA 数据集上进行的实验表明,本文提出的MVCA 方法降低了系统时延,提高了视频压缩率,并且保持了95.6%的准确率。
在未来的工作中,笔者将考虑任务卸载和时间空间属性在多摄像头视频分析中的应用,以进一步平衡边缘服务器的负载,提升边缘系统的效用。