APP下载

Conditional HOTR:基于Transformer的人物交互检测

2023-08-15张诗凡叶海波

计算机技术与发展 2023年8期
关键词:解码器参考点指针

张诗凡,叶海波

(南京航空航天大学 计算机科学与技术学院,江苏 南京 211106)

0 引 言

人物交互检测(HOI)是一项视觉关系检测任务,旨在将一幅图片中所有具有交互关系的人和物体成功配对,识别出人和物体的位置和类别,以及交互动作的类别,以帮助更好地理解场景。这可以表示为检测一组<人,动作,物>的HOI三元组。

目前主要有两类HOI检测方法,一类是顺序HOI检测,也叫做两阶段方法,另一类是并行检测,即一阶段方法。两阶段方法将HOI检测任务解耦为目标检测任务和交互分类任务,可想而知这种方法比较耗时、昂贵。在一阶段方法中,人类通过先验知识预先定义交互检测的规则,有些工作借助交互点[1-2]、交互框[3]来定位交互关系。因为目标检测可以和交互分类并行,所以这类一阶段方法更加高效,但它们仍然需要手工后处理阶段来对匹配规则进行匹配。

最近,因为NLP领域transformer[4]的火热应用,以及受到一些将transformer运用到CV领域的工作——如DETR的启发和影响,一些基于transformer的端到端HOI检测算法被提出。如DETR[5]一样,它们将HOI检测看作是一个集合预测问题,因此消除了对额外的手工后处理阶段的需要。利用transformer强大的建模能力,它们提取图片的全局信息,transformer的解码器通过交叉注意力模块中的query来查询与交互相关的特征,之后解码器的输出结果通过检测头,以端到端的方式得到HOI关系。这些方法解决了一阶段算法的问题,即不需要手工后处理而是直接端到端检测,取得了较好的效果,但仍然面临新的挑战。

在目标检测领域,DETR[5]和Conditional DETR[6]模型都利用transformer来实现端到端的目标检测,它们发现,在transformer的交叉注意力模块中,内容嵌入起主要作用,而位置嵌入对mAP的贡献很小。然而,交叉注意力的内容嵌入必须同时匹配key的内容嵌入和位置嵌入,并且其所定位的区域对于检测物体的位置和类别非常重要,因此高质量的内容嵌入是非常必要的。因此,笔者认为在基于transformer的HOI领域,同样需要高质量的内容嵌入来识别和定位,要减少对内容嵌入的依赖。

受Conditional DETR[6]的启发,针对交叉注意力层,该文提出了条件交互查询,它作为位置嵌入缩小了搜索范围以帮助显式地定位与交互相关的区域。这样,对于内容嵌入方面的要求便没那么高了,因为它可以更专注于内容方面来进行识别,而定位则交由条件交互查询。虽然HOI检测任务与目标检测任务类似,但两者存在一定的差异。HOI检测的关键是正确匹配人物对,而不仅仅是检测物体实例,因此需要根据HOI检测任务的特点来设计条件交互查询。该文实现了基于HOTR[7](一种基于transformer的HOI检测模型)的条件交互查询。与Conditional DETR不同的是,通过交互query来预测生成人和物体的参考点,以此来表示人和物体在交互中的位置,并且让它们参与检测头的最终预测过程。

然后,根据设计的公式由人和物体参考点生成交互参考点,可以理解这些交互参考点定位了与交互相关的区域。对于设计条件交互查询,包含了两部分内容:交互参考点和当前解码器的输出,因为它们都包含了与定位相关的信息,所以要将这些信息都考虑进去。将该模型称为Conditional HOTR,它改进了transformer的注意力机制,以便更好地适应HOI检测任务。与基线方法HOTR对比,Conditional HOTR的mAP在V-COCO上提高了2.13百分点,在HICO-DET上提高了8.33百分点,并且在V-COCO数据集上精度达到了目前最优。

1 相关工作

1.1 传统人物交互检测

传统人物交互检测算法可以划分为两阶段和一阶段方法。

1.1.1 两阶段HOI检测

在两阶段方法中[8-21],首先会执行目标检测任务,预训练的目标检测器首先检测人和物体的边框及其对应的类别,然后将所有检测出的人和物体两两组合配对,将所有成对的组合传入一个单独的神经网络进行训练和交互分类。一些工作利用人类姿态[9,14,17,20]来检测HOI关系,这有助于细粒度交互类别的检测。还有一些工作提出了以实例为中心[11,18]的注意力机制、面向动作[15]的关系推理网络进行HOI检测。ACP[13]的目的是解决HOI的长尾分布问题。还有一些方法用图结构表示HOI关系[10,16,19]。还有方法[21]基于关系推理的交互实例推荐网络来进行HOI检测。

1.1.2 一阶段HOI检测

由于两阶段方法受到其冗余推理结构的限制,一些工作提出了一阶段方法,它意味着交互分类检测可以与目标检测并行,而无需再等待其结果才能进入下一阶段。在这些方法中,设计一个合理的匹配模式是将目标检测与交互检测结果匹配的关键。IPNet、PPDM[1-2]将HOI检测视为交互点检测问题,通过将目标检测器检测到的人和物体与交互点关联来完成匹配。除交互点外,Uniondet[3]将人与物体的联合框看作是交互区域来定位交互。由于不需要训练全部的人物组合对,一阶段方法的时间复杂度得到了很大程度的降低,但是它们仍然需要为HOI检测手工设计匹配策略。

1.2 基于transformer的人物交互检测

随着transformer在NLP领域的广泛应用,它最近也被用来解决计算机视觉领域的一些任务,如目标检测。transformer擅长捕捉远距离依赖关系,这正是HOI检测所需要的,transformer帮助聚合图片中的全局上下文信息。

作为目标检测领域的一项创新性工作,DETR[5]利用transformer以端到端的方式来检测物体,许多工作[7,22-24]都受其启发,并将其改进为HOI检测器以简化检测管道。这些方法将HOI检测视为一个集合预测问题,并通过匈牙利算法执行二部匹配来将预测结果和真实值进行一一对应,然后根据匹配的结果计算损失。QPIC[24]设计了query,每个query最多可以捕获一个人物对,所以即使不同HOI关系的实例距离很近,也可以单独提取每个HOI实例的特征。CDN[22]在分析和总结一阶段和两阶段HOI检测方法优缺点的基础上,提出了一种新的方法,即以级联的方式分离目标检测和交互分类。HOTR[7]为HOI检测设计了一个共享编码器和两个并行解码器,分别是实例解码器和交互解码器。

1.3 CV领域对于transformer的改进

随着transformer在CV领域的广泛应用,许多研究不再仅仅满足于transformer的基本结构,因为图像的注意力权重计算量很大,而且一些基于transformer的工作的训练收敛速度较慢。在目标检测领域,对于DETR进行改进的一些工作[6,25-26]致力于解决上述transformer的问题。Deformable DETR[26]提出了一种新的注意力模块,它只关注目标物体参考点周围少量的关键采样点,而不是所有像素点。SMCA[25]通过预测物体区域的高斯映射,加快了检测的收敛速度。Conditional DETR[6]提出了条件位置嵌入,它可以明确地定位物体的边缘,缩小搜索的范围,从而解决检测依赖高质量内容嵌入的问题。

而在HOI检测领域,尚未有研究考虑transformer结构的缺点,受Conditional DETR[6]的启发,设计了条件交互查询,以改进transformer的结构更好地用于HOI检测。

2 文中方法

2.1 概 述

在本节中,详细了介绍基于改进transformer结构的HOI检测方法,帮助显式定位与交互相关的区域并缩小搜索范围。该方法的整体实现框架如图1所示(其中虚线框即为图2所示的条件交互查询的生成方法)。

图1 Conditional HOTR整体框图

图2 条件交互查询pq的生成

Conditional DETR[6]认为解码器中的自注意力模块的主要功能类似于非极大值抑制(NMS),它不涉及查询交互区域,所以只在交叉注意力模块中设计了条件交互查询。设计条件交互查询如图2所示。

2.2 相关知识回顾

2.2.1 HOTR

HOTR[7]是基于transformer的HOI检测模型,它主要由四个部分组成:骨干网络、transformer结构、检测头和组合配对。首先CNN网络提取图片特征,接着将这些特征与映射到正弦编码空间的位置编码相加,结果输入transformer结构,做进一步的特征增强。transformer结构由一个共享的编码器和两个并行解码器构成,其中一个是负责生成实例表示的实例解码器,一个是交互解码器,它负责生成交互表示信息。只在交互解码器上应用条件交互查询,因为在实例解码器上进行目标检测的改进是Conditional DETR所做的工作。实例解码器的检测头预测物体的边框和类别,而交互解码器的检测头负责预测人指针表示、物指针表示和交互类别,而不是直接回归人和物体的边界框。在最后的组合配对部分,对于之前得到的human指针表示和object指针表示,分别寻找与其相似度最高的实例表示(实例表示即实例解码器的输出结果),找到的索引即为相应的human指针和object指针,通过这种方法将具有HOI关系的人物进行匹配,完成HOI检测。

人和物的指针表示向量定义为:

(1)

(2)

其中,fi表示解码器输出的第i个交互表示,给定N个interaction query则得到N个交互表示。

2.2.2 Conditional DETR

为了解决DETR训练收敛速度慢的问题,Conditional DETR提出了条件交叉注意力机制,通过条件位置查询嵌入直接寻找物体的边缘区域,以此来缩小搜索物体的范围。简要介绍下它是如何生成条件位置查询的。

Conditional DETR是基于解码器嵌入f(即当前解码器层的输出)以及参考点信息s(由object query生成,有多少个query就生成多少个参考点,代表了每个query所定位的区域)这两部分信息来进行边框预测的。因此,Conditional DETR认为,条件位置查询的生成也应该考虑这两部分,因为它们包含了与位置相关的信息。即,条件位置查询pq:

(s,f)→pq

(3)

2.3 检测头

检测头部分内容见图1。对于交互解码器,最终的检测头不直接回归人和物体的边框,而是像HOTR一样,预测human指针和object指针的表示,回归实例边框的部分由实例解码器完成。为Conditional HOTR设计了一种新的预测方法来生成指针表示信息:

(4)

(5)

其中,f表示解码器嵌入,即当前解码器层的输出,h_reference_point和o_reference_point是human参考点和object参考点,它们是由interaction query经过两层MLP预测得到的2D坐标,并且N个interaction query分别生成N个human参考点和N个object参考点。这些坐标用于表示人和物体的参考位置。FFN{h,o}1由三层MLP组成,作用于解码器嵌入f得到初步的human指针表示和object指针表示。这正是公式(1)和(2)所表示的。然后,通过FFN{h,o}2将human参考点和object参考点映射到与FFN{h,o}1(f)相同的维度(设置为256),并且将两者的结果相加。normalize意味着对结果进行L2标准化操作。

对于动作类别预测,则保持不变。

a=FFNa(f)

(6)

2.4 条件交互查询设计

提出的条件交互查询有助于交互解码器的交叉注意力模块定位交互相关区域,因此在设计它时,考虑所有与位置相关的组件。在2.3节中,详细描述了Conditional HOTR的检测头,它利用解码器嵌入f以及人和物的参考点来预测得到人和物体的指针表示。由于指针表示不仅包含实例的类别信息,还包含了位置信息,因此在设计条件交互查询时,将这两部分考虑在内,即f以及人和物体的参考点。

那么,如何利用人和物体的参考点呢?根据HOI检测的特点,设计了公式,使用人和物体参考点来计算出交互参考点,定义交互点位于人和物体的参考点中间连线上,这也符合真实世界的逻辑。交互参考点a可以表示为:

(7)

ratio是一个超参数,它的值应该在[0,1]之间。不同的交互点定位不同的HOI三元组。使用交互点生成条件交互查询有助于显式地定位与交互相关的区域。

然后,遵循Conditional DETR的步骤,将pointa映射到256维的正弦编码空间,使得它与key的位置嵌入编码方式保持一致:

ps=sinusoidal(pointa)

(8)

对于另一个包含位置相关信息的成分:解码器嵌入f,还遵循Conditional DETR的操作,即f通过一个两层的MLP,形成可学习的转换T。因此,最终的条件交互查询pq的组成是:

pq=Tps

(9)

最终,pq(即位置查询嵌入)与自注意力层的输出(即内容查询嵌入)相加作为交叉注意力模块的query,参与最后的注意力计算,即,query与key进行点乘得到注意力权重。

3 实 验

为了证明Conditional HOTR是有效的,在本节中展示了比较全面的实验。

3.1 数据集和评估指标

3.1.1 数据集

在HICO-DET[8]和V-COCO[27]这两个被HOI检测任务广泛使用的数据集上进行了实验,以验证文中方法的有效性。HICO-DET包含了47 776张图片(38 118张用于训练,9 658张用于测试),并且包括超过150 K对的人物对。它有117个动作类别和80个物体类别,构成600个HOI三元组,其中138个是稀少类别(即少于10个训练实例),其余462个类别为非稀少类别。V-COCO是MS-COCO[28]的一个子集,其中包括10 346张图片(2 533张用于训练,2 867张用于验证,以及4 946张用于测试)。它包含29个动作类别,每个都是一个二进制标签,还包含了80个物体类别。

3.1.2 评估指标

与HOTR一样,使用mAP作为评估指标。对于检测结果,仅当预测的边框和对应的真实边框的交并比(IOU)大于0.5,并且物体类别和动作类别都预测正确时,HOI检测结果被视为正确的正样本。对于V-COCO,报告了两个场景的mAP:场景1需要报告没有物体的情况,而场景2则忽略这种情况。对于HICO-DET,评估默认情况下的性能,即根据所有测试图像来计算AP。报告了三种类型的mAP:所有类别(Full)、稀少类别(Rare)和非稀少类别(Non-Rare)。

3.2 实现细节

因为只修改了HOTR中交互解码器的交叉注意模块及其最终的检测头部分,其他的都遵循原始的模型结构,所以训练过程与HOTR几乎相同。使用AdamW[29]对模型进行训练,将主干网络的学习率设置为1e-5,权重衰减为1e-4。对于V-COCO,将transformer的初始学习率设置为1e-4,对于HICO-DET设置为1e-5。与HOTR一样,主干特征提取网络、编码器以及实例解码器加载在MS-COCO上预训练的模型,这些权重在模型训练期间被冻结。增强机制和损失函数与HOTR相同,并且,对模型训练100个周期,其中学习率在80个周期时衰减一次。

3.3 实验结果

在V-COCO和HICO-DET上进行实验。表1展示了在V-COCO数据集上的实验结果,以及基线方法HOTR和最近的SOTA方法的结果。表2是在HICO-DET数据集上的结果。将ResNet-50作为主干网络。对于HICO-DET数据集,目标检测器在MS-COCO上进行预训练。与基线方法HOTR进行比较时,为了体现出与其结果比较提升的程度,采用提升了多少百分比的形式;而与其他SOTA方法比较时,直接利用表格中mAP的值进行相减得到差值来直观对比mAP。

表1 在V-COCO数据集上的结果

表2 在HICO-DET数据集上的结果

3.3.1 与基线HOTR比较

考虑到不同gpu设备对实验结果的影响,重新跑了一遍HOTR的源码,并将此结果作为文中方法的基线,以此来体现公平。可以看到,在V-COCO测试集上,比HOTR提高了2.13百分点(61.0→62.3),在HICO-DET上提高了8.33百分点(21.73→23.54)。表明文中方法在两个基准上都得到了明显的提升,尤其是在HICO-DET上,这验证了Conditional HOTR的有效性。

3.3.2 与SOTA方法比较

在V-COCO测试集上,Conditional HOTR优于所有的两阶段方法和普通的一阶段方法。对于基于transformer的HOI检测方法,它优于大多数方法,例如相比于HOI Transformer,超过其9.4 mAP,超过QPIC 3.5 mAP。与目前的SOTA方法CDN相比,在同等条件的ResNet50为主干网络的情况下,Conditional HOTR与其具有相同的精度。值得一提的是,文中方法在场景2上达到了SOTA。

对于HICO-DET数据集,Conditional HOTR优于所有两阶段方法和普通一阶段方法。此外,文中方法优于基于transformer的HOI检测方法——HOI Transformer。在基线HOTR的结果和QPIC结果之间差距2.48 mAP的情况下,文中方法最终仅比QPIC低0.67 mAP。QAHOI利用多尺度特征进行HOI检测,这对检测结果有利,文中方法没有使用多尺度,比它低了0.81 mAP。

3.4 消融实验

为了验证设计的条件交互查询的有效性,设置成不同的超参来观察其对结果的影响,不同的参数设置会导致交互点处于不同的位置。从表3可以看出,不同的ratio检测精度不同,但在两个数据集上结果都优于基线HOTR,因此文中方法是有效的。

表3 不同的ratio值的结果

此外,还做了一些额外的实验,通过改变设计的Conditional HOTR的结构来深入探讨其有效性。所有实验均在V-COCO上进行,并使用ResNet50作为主干,ratio设置为0.5。表4是实验的结果。Conditional HOTR-Q表示取消了人和物的参考点的设计,并直接生成一个可学习的向量作为图1中的ps。Conditional HOTR-P表示在最终的检测头中,公式(4)和(5)中的FFNh1(f)和FFNo1(f)直接加上交互点的信息,而不是分别与人和物的参考点信息相加。从结果可以推断,参考点和检测头的设计是有效的。

表4 在V-COCO上进行消融实验

4 结束语

提出了条件交互查询,旨在优化基于transformer的HOI检测方法,并在HOTR上验证了其有效性,称它为Conditional HOTR。在解码器中充当交叉注意的位置查询嵌入,显式地定位与交互相关的区域,减少了对高质量内容查询的依赖。使用交互点和当前解码器层的输出来生成条件交互查询,因为它们包含与位置相关的信息。通过人和物体的参考点来生成交互参考点,其表示HOI三元组的定位区域。文中方法在两个基准数据集上都比HOTR有显著改进,并且超过了大多数的HOI检测方法。

猜你喜欢

解码器参考点指针
科学解码器(一)
科学解码器(二)
科学解码器(三)
FANUC数控系统机床一键回参考点的方法
线圣AudioQuest 发布第三代Dragonfly Cobalt蓝蜻蜓解码器
参考点对WiFi位置指纹算法的影响
数控机床返回参考点故障维修
为什么表的指针都按照顺时针方向转动
FANUC数控机床回参考点故障分析与排除
基于改进Hough变换和BP网络的指针仪表识别