浙江大学学报(工学版), 2024, 58(1): 10-19 doi: 10.3785/j.issn.1008-973X.2024.01.002

计算机技术

混合采样下多级特征聚合的视频目标检测算法

秦思怡,, 盖绍彦,, 达飞鹏

1. 东南大学 自动化学院,江苏 南京 210096

2. 东南大学 复杂工程系统测量与控制教育部重点实验室,江苏 南京 210096

Video object detection algorithm based on multi-level feature aggregation under mixed sampler

QIN Siyi,, GAI Shaoyan,, DA Feipeng

1. School of Automation, Southeast University, Nanjing 210096, China

2. Key Laboratory of Measurement and Control of Complex Engineering Systems, Ministry of Education, Southeast University, Nanjing 210096, China

通讯作者: 盖绍彦,男,副教授. orcid.org/0000-0001-5750-4013. E-mail: qxxymm@163.com

收稿日期: 2023-06-13  

基金资助: 江苏省前沿引领技术基础研究专项项目(BK20192004C);江苏省高校优势学科建设工程资助项目

Received: 2023-06-13  

Fund supported: 江苏省前沿引领技术基础研究专项项目(BK20192004C);江苏省高校优势学科建设工程资助项目

作者简介 About authors

秦思怡(1999—),女,硕士生,从事目标检测的研究.orcid.org/0009-0004-8702-1230.E-mail:qin.siyi@foxmail.com , E-mail:qin.siyi@foxmail.com

摘要

针对现有基于深度学习的视频目标检测算法无法同时满足精度和效率要求的问题,在单阶段检测器YOLOX-S的基础上,提出基于混合加权采样和多级特征聚合注意力的视频目标检测算法. 混合加权参考帧采样(MWRS)策略采用加权随机采样操作和局部连续采样操作,充分利用有效的全局信息与帧间局部信息. 多级特征聚合注意力模块(MFAA)基于自注意力机制,对YOLOX-S提取的分类特征进行细化,使得网络从不同层次的特征中学到更加丰富的特征信息. 实验结果表明,所提算法在ImageNet VID数据集上的检测精度均值AP50达到77.8%,平均检测速度为11.5 ms/帧,在检测图片上的目标分类和定位效果明显优于YOLOX-S,表明所提算法达到了较高的精度,具有较快的检测速度.

关键词: 机器视觉 ; 视频目标检测 ; 特征聚合 ; 注意力机制 ; YOLOX

Abstract

A video object detection algorithm which was built upon the YOLOX-S single-stage detector based on mixed weighted reference-frame sampler and multi-level feature aggregation attention was proposed aiming at the problems of existing deep learning-based video object detection algorithms failing to simultaneously meet accuracy and efficiency requirements. Mixed weighted reference-frame sampler (MWRS) included weighted random sampling and local consecutive sampling to fully utilize effective global information and inter-frame local information. Multi-level feature aggregation attention (MFAA) module refined the classification features extracted by YOLOX-S based on self-attention mechanism, encouraging the network to learn richer feature information from multi-level features. The experimental results demonstrated that the proposed algorithm achieved an average precision AP50 of 77.8% on the ImageNet VID dataset with an average detection speed of 11.5 milliseconds per frame. The object classification and location performance are significantly better than that of YOLOX-S, indicating that the proposed algorithm achieves higher accuracy and faster detection speed.

Keywords: machine vision ; video object detection ; feature aggregation ; attention mechanism ; YOLOX

PDF (2492KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

秦思怡, 盖绍彦, 达飞鹏. 混合采样下多级特征聚合的视频目标检测算法. 浙江大学学报(工学版)[J], 2024, 58(1): 10-19 doi:10.3785/j.issn.1008-973X.2024.01.002

QIN Siyi, GAI Shaoyan, DA Feipeng. Video object detection algorithm based on multi-level feature aggregation under mixed sampler. Journal of Zhejiang University(Engineering Science)[J], 2024, 58(1): 10-19 doi:10.3785/j.issn.1008-973X.2024.01.002

视频目标检测是计算机视觉领域的一项基础任务,在社会安防、国防军事和智能交通等领域中有着广泛的应用需求[1]. 近年来,基于深度学习的视频目标检测算法取得了显著的进展,这些方法可以大致分为基于光流的方法[2-3]、基于视频目标跟踪的方法[4-5]和基于注意力机制的方法[6-7]. 基于光流的算法使用额外的光流模型,显著增加了目标检测整体模型参数量;基于视频目标跟踪的方法使用了额外的任务,而不是让网络直接检测目标. 这2种方法的速度和准确性存在很大的不平衡[8]. 基于注意力机制的方法考虑图像特征聚合的计算成本,序列级语义聚合算法(sequence level semantics aggregation algorithm, SESLA)[9]作为基于注意力机制的方法代表,根据区域级特征之间的语义相似性,提出长程特征聚合方案. Chen等[10]设计全局-局部聚合模块,以更好地建模目标之间的关系. Jiang等[11]提出称为可学习的时空采样(learnable spatio-temporal sampling, LSTS)模块,用于学习相邻帧特征之间语义层次的依赖关系. 现有方法大多因采用固定的采样策略,可能无法充分利用视频序列中的全局上下文信息. 另外,现有算法由于无法有效、准确地融合不同的尺度和多层级的特征,常常导致目标的误检、漏检问题.

针对上述问题,本文提出混合加权采样下多级特征聚合注意力的视频目标检测网络(video object detection algorithm based on multi-level feature aggregation under mixed sampler , MMNet). 本文的主要工作如下.

(1)设计混合加权参考帧采样策略(mixed weighted reference-frame sampler, MWRS),利用更有效的全局随机帧和关键帧前、后帧的信息优势,具有全局感知和上下文感知的信息增强功能.

(2)基于注意力机制,提出多级特征聚合注意力模块(multi-level feature aggregation attention module, MFAA) . 该模块的2个分支分别关注不同层次的特征,针对性地对特征权重进行分配,通过特征随机失活操作提高模型的鲁棒性,聚合多层次的特征来提高识别和定位的准确率.

(3)在ImageNet VID数据集[12]上进行实验,结果表明,所提出的MMNet具有检测速度较快、精度较高的优点,可以较好地解决视频目标检测算法检测精度和速度不平衡的问题,证明了该方法的有效性.

1. 相关工作

1.1. YOLOX-S单阶段检测器

在视频目标检测任务中,采用基础检测器对输入的视频帧进行特征提取,得到初步的预测结果,对大量的检测结果进行初步特征选择.

基础的图像检测器主要分为单阶段和两阶段检测器. 基于区域的卷积神经网络(region based convolutional neural network, RCNN)[13],提出两阶段目标检测器的基本框架. 针对两阶段检测器普遍存在的运算速度慢的缺点,YOLO[14]提出单阶段检测器,不需要生成候选框,直接将边框的定位问题转化为回归问题,提升了检测速度[15]. Joseph等在YOLO的基础上进行一系列改进,提出YOLO的v2[16]和v3[17]版本. Liu等[18]提出另一种单阶段目标检测方法——单阶段多边框检测算法(single-stage multibox detector algorithm, SSD). Yan等[19]提出YOLOv5,设计不同的CSP结构和多个版本,提高了网络特征的融合能力.

采用YOLOX-S单阶段检测器作为基础检测器,因为其具有高性能、高效性和多尺度特征表示的优势. YOLOX-S是YOLOX系列[20]的标准化版本之一,是对YOLOv5系列中的YOLOv5-S进行一系列改进得到的. YOLOX-S作为轻量级模型,在保持较高检测精度的同时,具有较小的模型体积和内存占用. YOLOX通过使用多尺度特征表示来提高目标检测的准确性,使用解耦检测头和简化的最优传输样本匹配方案(simplified optimal transport assignment, SimOTA)技术,能够在不同尺度上检测目标物体,综合利用多层级的特征表示,使得YOLOX在处理视频中不同尺度的目标物体时更具优势.

1.2. 自注意力机制

在视频目标检测任务中,需要对基础检测器输出的粗糙的分类特征进行再细化. 由于特征各个维度对目标的贡献不同,为了突出更重要的特征,抑制不太重要的特征,在网络中引入注意力机制.

注意力机制是从大量信息中筛选出少量重要信息,并聚焦到这些重要信息上,忽略大多不重要的信息. 标准的自注意力机制(self-attention, SA)是注意力机制的变体,减少了对外部信息的依赖,擅长捕捉数据或特征的内部相关性[21],结构如图1(a)所示.

图 1

图 1   SA和MFAA模块的结构

Fig.1   Structure of SA module and MFAA module


标准的自注意力机制可以描述为将一组查询、键和值映射到输出. 实际计算中,将一组查询、键和值分别打包为矩阵 ${{\boldsymbol{Q}}}$${{\boldsymbol{K}}}$${{\boldsymbol{V}}}$,矩阵由输入的特征向量 ${{\boldsymbol{X}}}$经过线性变换得到,如下所示:

$ \left. \begin{array}{l} {\boldsymbol{Q}} = {{\boldsymbol{W}}^Q}{\boldsymbol{X}},\\ {\boldsymbol{K}} = {{\boldsymbol{W}}^K}{\boldsymbol{X}},\\ {\boldsymbol{V}} = {{\boldsymbol{W}}^V}{\boldsymbol{X}}. \end{array} \right\}$

式中:各个变换矩阵 ${{\boldsymbol{W}}}$可以经过网络的学习得到.

注意力函数的输出为值 ${{\boldsymbol{V}}}$的加权和,其中分配给每个值的权重由查询与相应键的softmax函数计算[22]得到,计算过程为

$ {\bf{SA}} = {{\rm{softmax}}} \left( {{\boldsymbol{A}}} \right){{\boldsymbol{V}}};{{\boldsymbol{A}}} = \frac{{{{\boldsymbol{Q}}}{{{\boldsymbol{K}}}^{\rm{T}}}}}{{\sqrt d }}. $

式中:SA为输出矩阵; $d$${{\boldsymbol{Q}}}$${{\boldsymbol{K}}}$中每个特征的维度, 除以 $\sqrt d $可以使得 $ {{\boldsymbol{Q}}}{{{\boldsymbol{K}}}^{\rm{T}}} $符合 ${\rm{N}}(0,1)$的分布,类似于归一化,可以防止输入softmax函数的值过大而导致偏导数趋近于0,还可以使注意力的分布更加均匀.

2. 网络结构的设计

构建的视频目标检测网络MMNet的框架如图2所示,输入为一系列连续的视频帧,输出标记目标类别和位置的视频帧. 将输入的视频帧通过混合加权参考帧采样,得到一系列随机参考帧和关键帧的前后连续帧. 将得到的视频帧入到单阶段检测器YOLOX-S中进行特征提取,输出初步的分类和回归的预测特征 ${{{\boldsymbol{X}}}_{\rm{c}}}$${{{\boldsymbol{X}}}_{\rm{r}}}$. 由于大多数初步预测结果的置信度较低,需要从特征图中选择高质量的特征. 使用topK算法,根据置信度分数由高到低排序,挑选出前750个预测特征. 使用非最大抑制(non-maximum suppression, NMS)算法[23],通过不断检索分类置信度最高的检测框,使用交集-重叠来表示2个边界框之间的内在关联,将大于人工给定阈值的边界框视作冗余检测框删去,以减少冗余[24]. 将选择后的特征输入多级特征聚合注意力模块,在不同尺度上聚合分类和回归的特征后进行最终分类.

图 2

图 2   MMNet算法的网络结构图

Fig.2   Structure diagram of MMNet


2.1. 混合加权参考帧采样策略

研究能够平衡检测准确性和效率的采样策略,对于视频目标检测任务至关重要. 主流的采样方法一般采用全局随机采样[25]或者局部采样[26]. 这2种采样方法都存在因为特征捕获不全面导致的特征聚合不足的问题. 全局采样方法缺乏来自相邻帧的空间和时间信息,失去了视频的时间维度优势;局部采样在目标运动速度较快或者遮挡严重的情况下,为关键帧检测提供的有效信息少. 为了解决这些问题,更好地增强互补特征,设计混合加权参考帧采样策略,引入全局的特征信息和前后帧时间信息,进行特征集成增强.

MWRS的输入为需要检测的连续视频帧. 如图3所示,MWRS包括加权随机采样(weighted random sampling)操作和局部连续采样(local consecutive sampling)操作.

图 3

图 3   混合加权参考帧采样策略的结构

Fig.3   Structure of MWRS strategy


加权随机采样操作分为以下3个步骤.

1)确定每一帧的权重. 采用差值哈希算法计算每个视频帧与关键帧 ${f_k}$的整体图像相似度,将相似度 ${s_i}$作为对应视频帧 ${f_i}$的采样权重 ${w_i}$,其中 $i$为视频帧的索引值. 差值哈希算法的主要流程如下:在对视频帧进行哈希转换时,通过左、右2个像素大小的比较,得到最终长度为64的0-1哈希序列,计算关键帧哈希序列和其余每一帧哈尼序列的汉明距离 ${d_i}$(Hamming distance),再利用公式 $ {s_i} = 1 - {{{d_i}}}/{{64}} $得到相似度.

2)计算相对采样概率. 将所有帧的权重相加,得到总权重. 对于每一帧,将其权重除以总权重,得到该帧的相对采样概率,计算过程如下:

$ {P_i} = \frac{{{w_i}}}{{\displaystyle\sum\limits_i {{w_i}} }}. $

式中: ${w_i}$为步骤1)求得的视频帧对应的权重; ${P_i}$为每一帧的相对采样概率,每一帧的采样概率和它的权重成正比[27].

3)进行加权采样. 生成 ${k_{{\rm{g}}} }$个0~1.0的随机数 $\xi $,按照相对概率依次累积判断. 若随机数落在某一帧的相对概率范围内,则选取该帧为关键帧的参考帧. 这样既可以引入更有效的全局特征信息来检测关键帧的目标,又可以增大模型捕捉到少数样本的概率,在一定程度上解决数据集样本不平衡的问题.

为了补充视频的连续时空信息,将当前需要检测的视频帧作为关键帧,同步进行局部连续采样操作来采样关键帧 ${f_k}$前、后 ${k_{\rm{l}}}$个连续帧 $\left\{ {{f_t}} \right\}_{t = k - \tau }^{k+\sigma }$,其中 $k$表示关键帧所对应的位置索引, $k+\sigma $表示采样关键帧后的 $\sigma $个连续帧, $k - \tau $表示采样关键帧前的 $\tau $个连续帧( $\sigma +\tau = {k_{\rm{l}}}$). 因为视频信息具有很大的冗余性,增加采样帧数会降低检测效率. 经过实验(结果见表1)验证,取 ${k_{\rm{g}}}$${k_{\rm{l}}}$的比值为4∶1. 将2种采样操作得到的视频帧拼接为1个序列,再送入YOLOX-S检测器中进行特征提取.

表 1   不同采样比例在ImageNet VID验证集上的精度

Tab.1  Accuracy of different sampling ratios on ImageNet VID verification set

${k_{\rm{g}}}:{k_{\rm{l}}}$ AP50/%
1∶2 72.6
1∶1 74.6
2∶1 76.1
3∶1 77.1
4∶1 77.8
5∶1 77.7

新窗口打开| 下载CSV


2.2. 多级特征聚合注意力模块(MFAA)

单个的自注意力机制对当前位置的信息进行编码时,会过度地将注意力集中于自身的位置,对特征的聚合不够有效和充分. 考虑到回归和分类特征对特征再细化都有所贡献,提出多级特征聚合注意力模块,提取包含相互关系的特征信息,挖掘更加丰富的特征信息,从而增强模型的表达能力.

多级特征聚合注意力模块主要包括全局信息注意力分支(global attention branch)和局部信息注意力分支(local attention branch),如图1(b)所示.

模块的输入是分类特征 ${{{\boldsymbol{X}}}_{\rm{c}}}$和回归特征 ${{{\boldsymbol{X}}}_{\rm{r}}}$经过图2的全连接层(fully connected layer,FC)线性变换分别得到的,分类特征的查询 ${{{\boldsymbol{Q}}}_{\rm{c}}}$、键 ${{{\boldsymbol{K}}}_{\rm{c}}}$、值 ${{{\boldsymbol{V}}}_{\rm{c}}}$和回归特征的查询 ${{{\boldsymbol{Q}}}_{\rm{r}}}$、键 ${{{\boldsymbol{K}}}_{\rm{r}}}$、值 ${{{\boldsymbol{V}}}_{\rm{r}}}$如下所示:

$ \left.\begin{array}{l} {{{\boldsymbol{Q}}}_{\rm{c}}},{{{\boldsymbol{K}}}_{\rm{c}}},{{{\boldsymbol{V}}}_{\rm{c}}} = {{\rm{FC}}}\; ({{{\boldsymbol{X}}}_{\rm{c}}}), \\ {{{\boldsymbol{Q}}}_{\rm{r}}},{{{\boldsymbol{K}}}_{\rm{r}}},{{{\boldsymbol{V}}}_{\rm{r}}} = {{\rm{FC}}}\; ({{{\boldsymbol{X}}}_{\rm{r}}}). \end{array}\right\} $

分类特征通常可以提供更全面的语义信息,用于对整个视频序列中的目标物体进行分类. 由于全局帧通常具有更广阔的视野和更全局的场景信息,将 ${{{\boldsymbol{Q}}}_{\rm{r}}}$${{{\boldsymbol{K}}}_{\rm{r}}}$输入全局信息注意力分支. 局部信息注意力机制的目标是捕捉目标物体的局部特征和动态变化,回归特征是对目标的位置和边界框进行回归预测,可以更好地捕捉目标物体的细节和运动变化,因此将 ${{{\boldsymbol{Q}}}_{\rm{c}}}$${{{\boldsymbol{K}}}_{\rm{c}}}$输入局部信息注意力分支,利用生成的权重对 ${{{\boldsymbol{V}}}_{\rm{c}}}$进行增强.

2.2.1. 全局信息注意力分支

因为视频流中包含很多冗余信息,标准自注意力机制在视频目标检测数据集上往往会出现过拟合的问题. 为了克服以上问题,设计全局信息注意力分支,如图1(b)的右半部分所示. 在自注意力机制中加入掩码机制,从输入的分类特征的置信度得分中随机地掩盖得分,让自注意力机制不仅考虑 ${{{\boldsymbol{Q}}}_{\rm{c}}}$${{{\boldsymbol{K}}}_{\rm{c}}}$之间的相似性,而且考虑 ${{{\boldsymbol{K}}}_{\rm{c}}}$的质量. 执行随机失活操作,主动抛弃一部分中间层的特征值,对高注意力值进行部分惩罚,鼓励模型更多关注与目标有关的其他图像块,有助于捕捉全局鲁棒特征,以缓解过拟合问题. 全局信息注意力分支的输出矩阵可以表示为

$ {{{\bf{SA}}} _{{\rm{global}}}} = {{\rm{softmax}}} \left( {{{\rm{drop}}} \left( {{{\rm{Mask}}} \left( {{\boldsymbol{S}}} \right) \circ \frac{{{{{\boldsymbol{Q}}}_{{\rm{c}}} }{{\boldsymbol{K}}}_{{\rm{c}}} ^{\rm{T}}}}{{\sqrt {{d_{\rm{c}}}} }}} \right)} \right){\text{ }}{\text{.}} $

式中: ${d_{\rm{c}}}$${{{\boldsymbol{Q}}}_{\rm{c}}}$${{{\boldsymbol{K}}}_{\rm{c}}}$中每个特征的维度, ${{\boldsymbol{S}}}$为YOLOX-S检测器得到的分类初步预测结果的置信度矩阵, $ \circ $表示哈达玛乘积,drop表示随机失活操作,Mask表示掩码操作.

2.2.2. 局部信息注意力分支

采用全局信息注意力分支,有效地减少了高注意力值的数量,在有效捕获低频全局信息的同时,对高频局部信息的处理能力不足. 为了解决该问题,设计局部信息注意力分支,如图1(b)的左半部分所示.

分别聚合 ${{{\boldsymbol{Q}}}_{\rm{r}}}$${{{\boldsymbol{K}}}_{\rm{r}}}$的局部信息,为了减少参数和计算量,采用2个深度卷积操作(depth-wise convolution, DWconv)[28]得到 ${{{\boldsymbol{Q}}}_{\rm{l}}}$${{{\boldsymbol{K}}}_{\rm{l}}}$,计算两者的哈达玛积. 为了得到更高质量的权重系数,加入非线性因素,增强模型的表达能力. 非线性激活 ${{\rm{Tanh}}} $函数的输出为−1~1,是以0为中心的,并且在0附近的梯度大,能够加速模型收敛,所以引入 ${{\rm{Tanh}}} $函数,将结果转换为−1~1的权重系数,采用随机失活来提高鲁棒性. 整个过程如下.

$\left. \begin{array}{l} {{{\boldsymbol{Q}}}_{\rm{l}}} = {{\rm{DWconv}}} \left( {{{{\boldsymbol{Q}}}_{\rm{r}}}} \right).\\ {{{\boldsymbol{K}}}_{\rm{l}}} = {{\rm{DWconv}}} \left( {{{{\boldsymbol{K}}}_{\rm{r}}}} \right).\\ \end{array} \right\}$

$ {{{\bf{SA}}} _{{\rm{local}}}} = {{\rm{softmax}}} \left( {{{\rm{drop}}} \left( {{{\rm{Tanh}}} \left( {\frac{{{{{\boldsymbol{Q}}}_{\rm{l}}}{{\boldsymbol{K}}}_{\rm{l}}^{\rm{T}}}}{{\sqrt {{d_{\rm{r}}}} }}} \right)} \right)} \right){\text{ }}{\text{.}} $

式中:SAlocal为局部信息注意力分支的输出矩阵, ${d_{\rm{r}}}$${{{\boldsymbol{Q}}}_{\rm{r}}}$${{{\boldsymbol{K}}}_{\rm{r}}}$中每个特征的维度.

由于设计多级特征聚合注意力模块的主要目的是分类结果的再细化,只须分别计算全局信息注意力分支与局部信息注意力分支生成的权重和 ${{{\boldsymbol{V}}}_{\rm{c}}}$的积,再将结果拼接在一起,得到多级特征聚合注意力模块的输出. MFAA模块的输出矩阵为

$ {{{\bf{MFAA}}} _{{\rm{out}}}} = {{\rm{concat}}} \left( {{{\bf{SA}}_{{{\rm{global}}} }}{{{\boldsymbol{V}}}_{\rm{c}}},\;{{\bf{SA}}_{{\rm{local}}}}{{{\boldsymbol{V}}}_{\rm{c}}}} \right). $

式中: $ {{\rm{concat}}} $表示拼接操作.

2.3. 损失函数

视频目标检测任务中,损失函数的设计是为了在视频目标检测任务中解决不同的问题和优化目标,一般为如下形式:

$ L = \alpha {L_{{\rm{cls}}}}+\lambda {L_{{{\rm{bbox}}} }}+\mu {L_{{\rm{obj}}}}. $

式中: ${L_{{\rm{cls}}}}$${L_{{\rm{bbox}}}}$${L_{{\rm{obj}}}}$为分别用于分类任务损失、检测框(bounding box, BBox)回归任务和目标置信度任务的3种损失函数; $\alpha $$\lambda $$\mu $为各个损失函数的权重参数,用于平衡不同任务的损失[26].

在采用以上通用的损失函数形式的基础上,对各种损失函数的方法进行不同的组合设计. 通过实验进行比较和测试,使用二分类交叉熵损失(balanced cross entropy loss, BCE Loss)作为分类和置信度损失函数,表达式如下:

$ {{\rm{BCE}}} {\rm{Loss}} = \left\{ {\begin{array}{*{20}{c}} { - \ln {y^{'}},} \\ { - \ln \left( {1 - {y^{'}}} \right),} \end{array}\begin{array}{*{20}{c}} {y = 1;} \\ {y = 0.} \end{array}} \right. $

式中: $y$为1时表示正样本,反之为负样本; ${y^{'}}$为网络预测的样本输出,取值区间与 $y$相同.

之前研究中常用的交并比(intersection over union,IoU)损失函数是基于预测框和标注框之间的交并比,在视频目标检测任务中使用,可能出现失去梯度方向,从而无法优化的情况. 选用DIoU(distant-IoU)损失函数[29]作为检测框损失函数,表达式如下所示:

$ {\rm{DIoU\; Loss}} = 1 - \frac{{{{S_{\rm{i}}}}}}{{{{S_{\rm{u}}}}}}+\frac{{{\rho ^2}\left( {{{\boldsymbol{b}}},{{{\boldsymbol{b}}}^{{{\rm{gt}}} }}} \right)}}{{{c^2}}}. $

式中: ${{\boldsymbol{b}}}$${{{\boldsymbol{b}}}^{{{\rm{gt}}} }}$分别为预测框和标注框的中心点,Si为预测框和标注框交集的面积,Su为预测框和标注框并集的面积, $\;\rho $表示欧氏距离操作, $c$为最小包围2个检测框的框的对角线长度. DIoU损失函数的惩罚项能够直接最小化中心点间的距离,解决IoU损失函数的梯度问题.

3. 实验及结果分析

3.1. 实验数据集和评估标准

在ILSVRC2015挑战赛中引入的ImageNet VID数据集上进行模型训练与测试. ImageNet VID数据集包含30个基本类别,是ImageNet DET数据集[12]中200个基本类别的子集. 具体来说,ImageNet VID数据集包含3 862个用于训练的视频、555个用于验证的视频和937个用于测试的视频,在训练集和验证集的视频帧上都被标记上真实值的检测框. 训练集的每段视频包含6~5 492帧图像,单帧图像均为720像素的高分辨率图像,所以仅训练集就达到100多万张图像,这种大规模的数据有利于拟合一个较好的模型,以完成视频目标检测任务. 为了使数据集富有多样性,挑选静态图像目标检测数据集ImageNet DET中相同数量的对应类别的图片作为训练数据集的补充.

采用推理时每帧检测时间t作为检测速度的评价指标,t包括进行采样操作的时间. 每帧的检测时间越短,表明检测速度越快.

用参数量P和浮点运算次数(floating point operations, FLOPs)作为模型复杂度的评价指标. 参数量和浮点运算量越小,表明模型复杂度越低.

使用平均精度(average precision, AP)作为检测精度的评价指标,AP指算法在某一类图像上进行检测的平均精度. 在计算AP时,需要对预测框和真实框进行匹配,按照置信度从高到低排序,计算每个置信度下的精度和召回率. 对这些精度-召回率点进行插值,得到平滑的曲线,计算该曲线下的面积作为AP.

AP50指的是计算平均精度时,使用0.5作为IoU的阈值. IoU评估真值检测框与预测检测框之间的重叠程度,以确定检测结果的准确性. 在目标检测任务中,AP50常用来评估模型检测出来的物体与真实物体的重叠程度是否达到了一定的阈值. AP50越大,表示模型的检测准确率越高.

3.2. 实验细节

实验所用计算机的硬件配置如下:中央处理器(CPU)为Intel®CoreTMi7-13700F,主频为2.10 GHz;图形处理器(GPU)为GeForce RTX 4090. 深度学习框架使用PyTorch 2.0.0,环境配置使用anaconda 20.04.1,操作系统为Ubuntu 18.04,CUDA版本为CUDA 12.0.

优化方法为使用随机梯度下降算法(stochastic gradient descent, SGD),采用数据集中的单个样本或一批样本的梯度来更新模型参数,适用于大规模数据集和复杂模型. SGD算法的更新公式为

$ {{\boldsymbol{\omega}} _{t+1}} = {{\boldsymbol{\omega}} _t} - \eta {\nabla _{\boldsymbol{\omega}} }L\left( {{{\boldsymbol{\omega}} _t};{{{\boldsymbol{x}}}_i};{{{\boldsymbol{y}}}_i}} \right). $

式中: ${{\boldsymbol{\omega}} _t}$为在时间步 $t$的模型参数; ${\nabla _{\boldsymbol{\omega }}}L\left( {{{\boldsymbol{\omega }}_t};{{{\boldsymbol{x}}}_i};{{{\boldsymbol{y}}}_i}} \right)$为在 $\left( {{{{\boldsymbol{x}}}_i},{{{\boldsymbol{y}}}_i}} \right)$上损失函数 $L$相对于模型参数的梯度; $\eta $为学习率,控制更新步长.

设置动量为0.9,利用余弦函数进行学习率的衰减. 刚开始训练时,模型的权重是随机初始化的,此时若选择较大的学习率,可能带来模型的不稳定振荡,所以选择在第一轮训练预热学习率的方式. 在预热期间,学习率从0线性增加到优化器中的初始预设值0.000 2,之后学习率线性降低.

在网络的输入端采用马赛克数据增强,通过随机缩放、随机裁剪、随机排布的方式进行图像拼接. 将混合加权参考帧采样策略的总采样帧数设置如下: ${k_{{\rm{g}}} }$= 48, ${k_{\rm{l}}}$= 16. 用COCO数据集预训练的权重初始化单阶段检测器YOLOX-S,将非最大抑制算法的阈值设置为0.75,对MMNet进行微调训练. 在训练阶段,训练批次为32,训练轮数为10. 为了避免模型过拟合和提高准确度,从352×352到672×672以32步长随机调整输入图像的大小. 在测试阶段,将图像大小统一调整为576×576.

3.3. 对比实验结果与分析

为了验证算法的有效性,采用对比实验,与8种先进方法的比较如表2所示. 为了排除GPU性能对速度指标的影响,在表2中标注了T的结果表示是在TITAN RTX 型号的高性能GPU上得到的,未标注的结果都是在普通GPU上得到的.

表 2   不同算法在ImageNet VID验证集上的实验结果

Tab.2  Experiment results of different algorithms on ImageNet VID verification set

网络模型 主干网络 t/ms AP50/%
FGFA[1] ResNet-101 104.2 76.3
MEGA[10] ResNet-101 230.4 82.9
VOD-MT[30] VGG-16 73.2
LSTS[11] ResNet-101 43.5 77.2
TIAM[31] ResNet-101 74.9
QueryProp[7] ResNet-50 21.9(T) 80.3
SALISA[32] EfficientNet-B3 75.4
YOLOX-S[20] Modified CSP v5 9.4 69.5
MMNet Modified CSP v5 11.5 77.8

新窗口打开| 下载CSV


表2可以看出,MMNet在ImageNet VID数据集上取得了77.8%的AP50和11.5 ms/帧的速度. 与基准方法YOLOX-S相比,速度只损失了2.1 ms/帧,精度提高了8.3%. MMNet在精度上的表现优于FGFA、VOD-MT、LSTS、TIAM和SALISA算法. 与检测结果更精确的MEGA和QueryProp算法相比,MMNet的检测速度有大幅度的提升. 结果表明,MMNet提高了视频目标检测的精度,极大地加快了视频检测速度,证明改进算法是精确、高效的.

在ImageNet VID测试集上,将MMNet和YOLOX-S算法的检测结果可视化,以更直观地分析优劣,结果如图4所示,检测框上方显示的是目标类别和置信度. 如图4(a)所示,当目标被遮挡或者目标姿势不常见时,对比算法因为没有充分利用帧间信息,可能会产生漏检的情况. 如图4(b)所示,由于非目标物体和目标形状相似,或者目标运动速度较快,对比算法因为特征聚合不全面,可能产生误检的情况. 本文算法利用更全面的参考帧信息,使用注意力机制聚合全局和局部特征,提取了更有效的特征,因此当关键帧出现各种混淆情况时,能够正确地检测出目标.

图 4

图 4   2种算法在ImageNet VID测试集上的检测结果可视化对比

Fig.4   Comparison of visualization results of two algorithms on ImageNet VID test dataset


3.4. 消融实验

为了评估本文算法中不同模块的有效性,采用控制变量法,对混合加权参考帧采样策略和多级特征聚合注意力模块进行消融实验. 所有实验均在ImageNet VID验证集上评估.

3.4.1. 混合加权参考帧采样策略

为了验证混合加权参考帧采样策略的有效性,评估在基准方法YOLOX-S上加入混合加权参考帧采样策略对不同速度目标检测精度的影响. 目标速度分为慢速、中速和快速,这3个类别是根据相邻帧中相同目标的平均IoU分数来分类的. 慢速:IoU > 0.9. 中速:0.9 ≥ IoU ≥ 0.7. 快速:IoU < 0.7. 表3中最后1行是测试整个数据集的平均精度,实验结果如表3所示. 表中,加粗字体表示指标结果最优.

表 3   混合加权参考帧采样策略在ImageNet VID验证集上测试不同速度目标的精度结果

Tab.3  Accuracy result of detecting objects with different speeds of MWRS strategy on ImageNet VID verification set

%
速度 AP50
YOLOX-S YOLOX-S+MWRS
慢速 80.1 81.5
中速 71.4 75.6
快速 55.3 59.3
平均精度 69.5 77.1

新窗口打开| 下载CSV


表3可以看出,加入混合加权参考帧采样策略后的模型相比于YOLOX-S来说,整体检测精度均有提升,虽然对慢速目标的检测精度只有小幅度提升,但对中速和快速目标检测有明显提升. 这是因为慢速目标视频的前、后帧与关键帧相比变化不大,视频帧信息的冗余程度更大,这种情况下,MWRS策略对精度的提升效果有限. 在目标移动速度较快的情况下,目标的形变和位移较大,更需要捕获更全面、更高质量的参考帧信息. 该实验结果表明,MWRS策略能够将加权随机帧和局部连续帧结合起来作为补充信息,提高了有效特征的利用率,说明MWRS策略在提高视频目标检测精度方面是有效的.

为了评估混合加权参考帧采样策略中不同的加权随机采样和局部连续采样帧数比例的效果,在ImageNet VID验证集上,设计5组 ${k_{{\rm{g}}} }$${k_{\rm{l}}}$的比值进行实验,结果如表1所示.

表1可以看出,增大 ${k_{{\rm{g}}} }$${k_{\rm{l}}}$比值后模型的精度明显提升,直到比值大于4后检测精度趋于稳定. 这是因为比值越大,意味着模型能够看到更多的全局信息和长期依赖关系,这有助于模型更好地理解序列中的整体结构和上下文信息,有助于提高模型的准确性. 然而,kgkl一旦达到一定值,进一步增大kgkl可能不会提高模型的性能,因为模型已经从全局帧中获取了足够丰富的全局信息. 综合考虑视频模板检测的精度要求和参考帧采样的时间成本,其余实验选择采用kgk1 = 4∶1的采样策略.

3.4.2. 多级特征聚合注意力模块

为了验证多级特征聚合注意力模块的有效性,在ImageNet VID验证集上设计以下3个对照组:一是基准方法YOLOX-S,二是在YOLOX-S上加入标准自注意力机制SA,三是在YOLOX-S上加入多级特征聚合注意力模块. 实验结果如表4所示.

表 4   多级特征聚合注意力模块在ImageNet VID验证集上不同速度目标的精度

Tab.4  Accuracy of detecting objects with different speeds of MFAA module on ImageNet VID verification set

%
速度 AP50
YOLOX-S YOLOX-S+SA YOLOX-S+MFAA
慢速 80.1 81.8 81.9
中速 71.4 75.4 75.6
快速 55.3 58.3 59.3
平均精度 69.5 76.9 77.5

新窗口打开| 下载CSV


表4可知,加入多级特征聚合注意力模块后的模型的表现远好于基准方法,且更优于标准自注意力模块对精度的提升效果,故所提的MFAA模块对视频目标检测任务能够起到更好的作用. MFAA模块对于不同速度目标的检测精度提升效果不同:对于慢速目标,精度相对于基准算法提高了1.9%;对于中速目标,精度提高了4.2%;对于快速目标,精度提高了4%. MFAA模块对运动速度较快的目标检测的效果提升明显,能够更好地聚焦运动目标的显著特征,抑制背景噪声干扰,提高模型最终的检测精度. MFAA模块采用的随机失活操作强迫模型基于不完整的特征进行学习,可以帮助特征聚合从单阶段检测器中捕获更好的语义表示,有利于模型注重覆盖目标的细节信息. 实验结果说明,MWRS模块对于视频目标检测任务是有效的.

表5所示,在YOLOX-S的基础上单独采用混合加权参考帧采样策略,能够在保持检测速度的同时,达到AP50 = 77.1%的检测精度;单独加入多级特征聚合注意力模块,能够只损失1.9 ms/帧的检测速度,达到AP50 = 77.5%的检测精度. 共同运用2个模块,在参数量和网络复杂度略大于基准算法的同时,运算速度略微下降,精度达到AP50 = 77.8%. 这说明结合混合加权参考帧采样策略和多级特征聚合注意力模块,能够提高视频目标检测任务的精度. 本文算法的改进使得网络能够高效地聚合特征信息.

表 5   所提算法在ImageNet VID验证集上的消融实验结果

Tab.5  Results of ablation experiments of proposed algorithm on ImageNet VID verification set

MWRS MFAA P/106 FLOPs/109 t/ms AP50/%
8.95 21.63 9.4 69.5
8.95 21.63 9.6 77.1
10.41 26.88 11.3 77.5
10.41 26.88 11.5 77.8

新窗口打开| 下载CSV


4. 结 语

本文提出基于混合加权参考帧采样策略和多级特征聚合注意力的视频目标检测网络MMNet. 通过设计的混合加权参考帧采样策略,对加权全局帧和局部参考帧进行采样,为关键帧的检测提供更全面的补充信息. 提出多级特征聚合注意力模块,使用双分支结构来聚合全局信息和局部信息,有助于网络捕捉到更丰富的特征信息. 在ImageNet VID数据集上的实验结果表明,MMNet的检测精度为77.8%,在一定程度上缓解了由于目标遮挡、罕见姿势或者动态模糊等带来的漏检和误检问题,检测速度为11.5 ms/帧,速度远超大部分视频目标检测算法,在确保检测精度的情况下满足了实时性的要求. MMNet存在使用的数据集检测目标种类不多和难、易样本数量不平衡问题,后续将在更多的视频数据集上进行研究,设计新的更适合视频目标检测任务的损失函数,提高算法的鲁棒性.

参考文献

史钰祜, 张起贵

基于局部注意的快速视频目标检测方法

[J]. 计算机工程, 2022, 48 (5): 314- 320

[本文引用: 2]

SHI Yuhu, ZHANG Qigui

Method for fast video object detection based on local attention

[J]. Computer Engineering, 2022, 48 (5): 314- 320

[本文引用: 2]

ZHU X, WANG Y, DAI J, et al. Flow-guided feature aggregation for video object detection [C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. Venice: IEEE, 2017: 408-417.

[本文引用: 1]

ZHU X, XIONG Y, DAI J, et al. Deep feature flow for video recognition [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017: 2349-2358.

[本文引用: 1]

FEICHTENHOFER C, PINZ A, ZISSERMAN A. Detect to track and track to detect [C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. Venice: IEEE, 2017: 3038-3046.

[本文引用: 1]

KANG K, LI H, YAN J, et al

T-CNN: tubelets with convolutional neural networks for object detection from videos

[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2017, 28 (10): 2896- 2907

[本文引用: 1]

HAN M, WANG Y, CHANG X, et al. Mining inter-video proposal relations for video object detection [C]// Proceedings of the European Conference on Computer Vision. Glasgow: Springer, 2020: 431-446.

[本文引用: 1]

HE F, GAO N, JIA J, et al. QueryProp: object query propagation for high-performance video object detection [C]// Proceedings of the AAAI Conference on Artificial Intelligence. Palo Alto: AAAI, 2022, 36(1): 834-842.

[本文引用: 2]

JIAO L, ZHANG R, LIU F, et al

New generation deep learning for video object detection: a survey

[J]. IEEE Transactions on Neural Networks and Learning Systems, 2022, 33 (8): 3195- 3215

DOI:10.1109/TNNLS.2021.3053249      [本文引用: 1]

WU H, CHEN Y, WANG N, et al. Sequence level semantics aggregation for video object detection [C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. Seoul: IEEE, 2019: 9217-9225.

[本文引用: 1]

CHEN Y, CAO Y, HU H, et al. Memory enhanced global-local aggregation for video object detection [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle: IEEE, 2020: 10337-10346.

[本文引用: 2]

JIANG Z, LIU Y, YANG C, et al. Learning where to focus for efficient video object detection [C]// Proceedings of European Conference on Computer Vision. Berlin: Springer, 2020: 18-34.

[本文引用: 2]

RUSSAKOVSKY O, DENG J, SU H, et al

Imagenet large scale visual recognition challenge

[J]. International Journal of Computer Vision, 2015, 115 (3): 211- 252

DOI:10.1007/s11263-015-0816-y      [本文引用: 2]

GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Columbus: IEEE, 2014: 580-587.

[本文引用: 1]

REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: unified, real-time object detection [C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle: IEEE, 2016: 779-788.

[本文引用: 1]

李凯, 林宇舜, 吴晓琳, 等

基于多尺度融合与注意力机制的小目标车辆检测

[J]. 浙江大学学报: 工学版, 2022, 56 (11): 2241- 2250

[本文引用: 1]

LI Kai, LIN Yushun, WU Xiaolin, et al

Small target vehicle detection based on multi-scale fusion technology and attention mechanism

[J]. Journal of ZheJiang University: Engineering Science, 2022, 56 (11): 2241- 2250

[本文引用: 1]

REDMON J, FARHADI A. YOLO9000: better, faster, stronger [C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. Honolulu: IEEE, 2017: 6517–6525.

[本文引用: 1]

REDMON J, FARHADI A. YOLOv3: an incremental improvement [EB/OL]. (2018-04-08)[2023-07-31]. https://arxiv.org/abs/1804.02767.

[本文引用: 1]

LIU W, ANGUELOV D, ERHAN D, et al. SSD: single shot multibox detector [C]// Proceedings of the European Conference on Computer Vision. [S. l. ]: Springer, 2016: 21-37.

[本文引用: 1]

YAN B, FAN P, LEI X, et al

A real-time apple targets detection method for picking robot based on improved YOLOv5

[J]. Remote Sensing, 2021, 13 (9): 1619- 1627

DOI:10.3390/rs13091619      [本文引用: 1]

GE Z, LIU S, WANG F, et al. Yolox: exceeding yolo series in 2021 [EB/OL]. (2021-08-06)[2023-07-31]. https://arxiv.org/abs/2107.08430.

[本文引用: 2]

于楠晶, 范晓飚, 邓天民, 等

基于多头自注意力的复杂背景船舶检测算法

[J]. 浙江大学学报: 工学版, 2022, 56 (12): 2392- 2402

[本文引用: 1]

YU Nanjing, FAN Xiaobiao, DENG Tianmin, et al

Ship detection algorithm in complex backgrounds via multi-head self-attention

[J]. Journal of ZheJiang University: Engineering Science, 2022, 56 (12): 2392- 2402

[本文引用: 1]

VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need [C]// In Proceedings of the 31st International Conference on Neural Information Processing Systems. Red Hook: Curran Associates Inc. , 2017: 6000–6010.

[本文引用: 1]

NEUBECK A, VAN G L. Efficient non-maximum suppression [C]// 18th International Conference on Pattern Recognition. Hong Kong: IEEE, 2006: 850-855.

[本文引用: 1]

张娜, 戚旭磊, 包晓安, 等

基于25预测定位的单阶段目标检测算法

[J]. 浙江大学学报: 工学版, 2022, 56 (4): 783- 794

[本文引用: 1]

ZHANG Na, QI Xulei, BAO Xiaoan, et al

Single-stage object detection algorithm based on optimizing position prediction

[J]. Journal of ZheJiang University: Engineering Science, 2022, 56 (4): 783- 794

[本文引用: 1]

SUN G, HUA Y, HU G, et al. Mamba: multi-level aggregation via memory bank for video object detection [C]// Proceedings of the AAAI Conference on Artificial Intelligence. Palo Alto: AAAI, 2021: 2620-2627.

[本文引用: 1]

WANG H, TANG J, LIU X, et al. PTSEFormer: progressive temporal-spatial enhanced TransFormer towards video object detection [C]// Proceedings of the European Conference on Computer Vision. Tel Aviv: Springer, 2022: 732-747.

[本文引用: 2]

EFRAIMIDIS P S, SPIRAKIS P G

Weighted random sampling with a reservoir

[J]. Information Processing Letters, 2006, 97 (5): 181- 185

DOI:10.1016/j.ipl.2005.11.003      [本文引用: 1]

TAN M, LE Q. Efficientnet: rethinking model scaling for convolutional neural networks [C]// International Conference on Machine Learning. Long Beach: [s. n.], 2019: 6105-6114.

[本文引用: 1]

ZHENG Z, WANG P, LIU W, et al. Distance-IoU loss: faster and better learning for bounding box regression [C]// Proceedings of the AAAI Conference on Artificial Intelligence. Palo Alto: AAAI, 2020: 12993-13000.

[本文引用: 1]

KIM J, KOH J, LEE B, et al. Video object detection using object's motion context and spatio-temporal feature aggregation [C]// 25th International Conference on Pattern Recognition. Milan: IEEE, 2021: 1604-1610.

[本文引用: 1]

蔡强, 李韩玉, 李楠, 等

基于时序信息和注意力机制的视频目标检测

[J]. 计算机仿真, 2021, 38 (12): 380- 385

DOI:10.3969/j.issn.1006-9348.2021.12.078      [本文引用: 1]

CAI Qiang, LI Hanyu, LI Nan, et al

Video object detection with temporal information and attention mechanism

[J]. Computer Simulation, 2021, 38 (12): 380- 385

DOI:10.3969/j.issn.1006-9348.2021.12.078      [本文引用: 1]

EHTESHAMI B B, HABIBIAN A, PORIKLI F, et al. SALISA: saliency-based input sampling for efficient video object detection [C]// Proceedings of the European Conference on Computer Vision. Tel Aviv: Springer, 2022: 300–316.

[本文引用: 1]

/