WTPose 框架:基于 Transformer 的 Waterfall 模块提升姿态估计能力 !

向量数据库大模型机器学习

点击下方卡片,关注「集智书童」公众号

点击加入👉「集智书童」交流群

picture.image

picture.image

picture.image

picture.image

picture.image

想要了解更多:

前沿AI视觉感知全栈知识👉「分类、检测、分割、关键点、车道线检测、3D视觉(分割、检测)、多模态、目标跟踪、NerF」

行业技术方案 👉「AI安防、AI医疗、AI自动驾驶」

AI模型部署落地实战 👉「CUDA、TensorRT、NCNN、OpenVINO、MNN、ONNXRuntime以及地平线框架」

欢迎扫描上方二维码,加入「 集智书童-知识星球 」,日常分享论文、学习笔记、问题解决方案、部署方案以及全栈式答疑,期待交流!

免责声明

凡本公众号注明“来源:XXX(非集智书童)”的作品,均转载自其它媒体,版权归原作者所有,如有侵权请联系我们删除,谢谢。

picture.image

作者提出了Waterfall Transformer 架构用于人体姿态估计 (WTPose),这是一个单次通过、端到端可训练的框架,旨在进行多人姿态估计。

作者的框架利用基于 Transformer 的 Waterfall 模块,从多种主干阶段生成多尺度特征图。

该模块在级联架构中进行筛选操作,以扩展感受野并捕获局部和全局上下文,从而提高网络的整体特征表示能力。

作者在 COCO 数据集上的实验表明,使用修改后的 Swin 主干和基于 Transformer 的 Waterfall 模块的 WTPose 架构,在多人姿态估计方面优于其他 Transformer 架构。

  1. Introduction

人体姿态估计是一项具有广泛实际应用的挑战性计算机视觉任务[27], [19]。基于卷积神经网络(CNNs)的深度学习方法提高了最先进的性能[23], [2], [5]。近期,视觉Transformer在计算机视觉任务中,包括姿态估计方面表现出色。

在本文中,作者提出了一种名为WTPose的“瀑布Transformer”架构,该架构在一个灵活的框架中运行,以改进基本模型的表现。图1展示了使用WTPose进行的姿态估计示例。作者架构的一个关键特性是将多尺度的瀑布Transformer模块(WTM)集成进来,以增强视觉Transformer模型(如Shifted Window(Swin)Transformer [14])的表现。作者通过WTM的瀑布分支处理主干网络从多个层次提取的特征图。该模块基于膨胀注意力机制执行滤波操作,增加视野(Field-of-View, FOV),并捕捉局部和全局语境,从而显著提高性能。本文的主要贡献包括:

picture.image

作者提出了一种新颖的Waterfall Transformer架构用于姿态估计,这是一种单次通过、端到端可训练的多尺度方法,适用于自上而下的多人2D姿态估计。该方法包含一个多尺度注意力模块,并采用扩张注意力机制,能够捕捉更大的感受野,从而获取全局和局部上下文。

作者的实验在COCO数据集上的结果显示,与类似的Transformer方法相比,该方法在姿态估计性能上有所提升。

  1. Related Work

2.1. CNNs for pose estimation

随着深度卷积神经网络的发展,人体姿态估计已经取得了卓越的结果。Convolutional Pose Machine (CPM) [23] 架构包括多个阶段,逐步生成更为精细的关节检测。OpenPose 方法 [5] 引入了部分关联场(Part Affinity Fields),以处理单张图像中多人的姿态。Stacked Hour-glass 网络 [15] 使用重复的自底向上和自顶向下的处理,并在中间加入监督,以处理所有尺度的数据并捕捉与身体相关的最佳空间关系,从而实现精确的人体姿态估计。在此基础上,多上下文注意方法 [6] 设计了 Hourglass 剩余单元(HRUs),旨在生成具有较大感受野且不同语义 Level 的注意力图。此外,通过条件随机场(Conditional Random Fields, CRFs)进行后处理,生成局部和全局一致的人体姿态估计。

High-分辨率网络(HRNet)架构[18],[22]将高分辨率子网络和低分辨率子网络并行连接,在整个过程中保持高分辨率表示,并生成更准确且空间上更精确的姿态估计。多阶段姿态网络[11]与HRNet[22]的工作方式类似,但它采用跨阶段特征聚合策略从早期阶段传递信息到后期阶段,并配备了从粗到细的监督机制。

UniPose (+) [2]、OmniPose [1] 和 BAPose [3] 方法提出了多种Waterfall Atrous 空间池化(WASP)模块的变种,用于单人、多人顶下式和多人底上式的姿态估计。WASP模块启发了WTPose中的瀑布Transformer模块,因为它显著提高了网络的多尺度表示能力和视野(FOV),并提取了包含更多上下文信息的特征,从而在无需后续处理的情况下获得更精确的姿态估计。

Vision Transformers for Pose Estimati

近年来,使用Transformer架构进行人体姿态估计的兴趣有所激增。在早期的工作中,使用CNN Backbone 网络作为特征提取器,而将Transformer视为更优的解码器[25], [12]。TransPose[25]架构结合了基于CNN的 Backbone 网络的初始部分,用于从图像中提取特征,并采用标准的Transformer架构[21],利用注意力层学习依赖关系并预测2D人体姿态的关键点。然而,TransPose在建模关键点之间的直接关系方面存在局限性。

TokenPose[12]则明确地将每个关键点嵌入为一个token,并通过自我注意交互学习视觉线索和约束关系。HRFormer[26]受到HRNet[22]的启发,采用了多分辨率并行设计。它在茎部和第一阶段使用卷积,随后是Transformer块。Transformer块在不重叠划分的特征图上执行自我注意,并使用3x3深度卷积进行划分映射间的跨注意。ViTPose[24]采用简单的非分层视觉Transformer[8]作为 Backbone ,用于提取特征图。该架构然后采用反卷积层或双线性上采样解码器进行2D姿态估计。PoseFormer[28]提出了一种基于视频帧中的2D姿态序列的纯Transformer架构,用于3D姿态估计。

  1. Waterfall Transformer

提出的瀑布式Transformer架构,如图2所示,是一种单次通过、端到端可训练的网络,该网络结合了一个修改后的Swin Transformer Backbone 和作者基于Transformer的多尺度瀑布模块,用于多人姿态估计。Swin中的切片分割层被两个卷积(Stem)和ResNet-101的第一个残差块所取代,从而改进了Swin的特征表示。

picture.image

WTPose 的处理 Pipeline 如图2 所示。输入图像被送入由作者修改后的 Swin Transformer 构建的 Backbone 网络。来自多个阶段的 Swin 的多尺度特征图通过作者的瀑布流 Transformer 模块(WTM)进行处理,并送入解码器生成 K 个 Heatmap ,每个关节一个 Heatmap 。多尺度的 WTM 维持了特征图的高分辨率,并且能够对可见和遮挡的关节生成准确的预测。

作者瀑布Transformer模块的架构如图3所示。WTM从Disentangled Waterfall Atrous Spatial Pooling (D-WASP)模块[3], [4]中获得灵感,该模块利用空洞块和瀑布架构来增强多尺度表示。然而,与D-WASP[3], [4]通过空洞卷积扩大视野不同,作者提出的方法采用了一个具有扩张和非扩张邻域注意力的空洞Transformer块来扩大视野。这个空洞Transformer基于DiNAT[9]架构构建,包括扩张和非扩张邻域注意力。扩张的邻域注意力通过增加扩张率来扩大局部感受野,并执行稀疏全局注意力;而非扩张的邻域注意力则将每个像素的Self-Attention限制在其最近的邻居范围内。

picture.image

为了应对由于分层 Backbone 结构导致的上下文和空间信息丢失问题,WTM通过瀑布分支处理Swin Backbone 网四个阶段的多尺度特征图。首先,WTM模块利用双线性插值对来自第二、三、四阶段的低分辨率特征图进行上采样操作,使其与第一阶段的高分辨率特征图匹配,然后将所有特征图结合起来生成增强联合估计所需的多尺度特征表示。

输出特征图 被送入瀑布型Transformer块(Waterfall Transformer Blocks, WTB),通过逐级增强的过滤级cascade来扩展视场。每个WTB包含两种类型的注意力机制:膨胀多头邻域自注意力(Dilated Multi-Head Neighborhood Self-Attention, D-MHSA),其后接多层感知机(Multi-Layer Perceptron, MLP),用于捕捉全局上下文;非膨胀多头邻域自注意力(Nondilated Multi-Head Neighborhood Self-Attention, N-MHSA),其后接MLP,用于捕捉局部上下文。

其中, 和 分别表示第 块中 MHSA 模块和 MLP 模块的输出特征;DMHSA 和 N-MSHA 分别基于膨胀窗口和非膨胀窗口的多头自注意力机制。

瀑布模块旨在创建一个瀑布 Stream 处理过程,首先对输入进行初步处理,然后生成新的分支。与级联方法不同,WTM通过结合所有WTB分支的所有流以及多尺度表示中的深度可分离池化(DWP)层,实现了更为全面的集成。

其中,求和符号表示concat操作,是从ResNet Bottleneck 层获得的低级特征,表示卷积,而表示核大小为3、步幅为1的卷积。

  1. Experiments

作者在Common Objects in Context(COCO)[13]数据集上进行了多人姿态估计实验。COCO数据集[13]包含了超过20万张野外图片,并且包含了25万个实例的人类目标。作者使用COCO训练集2017版本,包含5.7万张图片和15万个实例的人目标进行WTPose的训练,并在包含5千张图片的val 2017验证集上进行验证。标注的姿态包含17个关键点。

作者采用物体关键点相似度(OKS)[13] 来评估作者的模型。根据[13] 设定的评价框架,作者报告 OKS 作为所有实例IOU在0.5到0.9之间的平均精确率(AP),以及0.5 和0.75 ,还包括中等 和大型 实例的平均精确率。作者还报告了0.5到0.95之间的平均召回率 (AR)。

作者采用了Swin Base(Swin-B)Transformer作为主干网络,并使用来自[14]预训练权重进行初始化。默认情况下,Swin-B架构采用窗口大小为7。对于WTM模块,作者尝试了多种膨胀率,并发现交替使用膨胀窗口带来的大感受野和非膨胀窗口带来的小感受野,可以提高预测效果。作者将WTB块的膨胀率设置为(2,1),(4,1),(4,1),(8,1),并保持窗口大小为7。

作者的模型在包含4块A100 GPU的系统上使用mmpose代码库[7]进行训练,批量大小设为32。作者采用mmpose中的默认训练设置来训练WTPose,并使用AdamW [16]优化器,学习率设为5e-4。作者的模型总共训练了210个epoch,在第170个和第200个epoch时学习率降低10倍进行衰减。

4.1. Experimental results on the COCO dataset

作者在COCO数据集上进行了训练和测试,并将WTPose与Swin框架进行了比较,详见表1。作者的WTPose模型参数量比Swin-B多130万,平均精度和平均召回率分别提高了1.2%和0.9%。与Swin-L相比,WTPose大约小54%,但在平均精度和平均召回率方面仍分别优于Swin-L 0.8%和0.6%。瀑布Transformer模块改进了特征图,提高了关键点检测的准确性。

picture.image

作者在WTPose中进行了消融研究以探究各个组件的效果。表2展示了使用Swin-B主干和分辨率为384×288的输入图像的各种配置结果。作者设置窗口大小为7×7,在每个注意力层中分配8个头,并选择扩张率2、4、4、8来增加不同WTB块的感知区域大小。扩张率为1、2、4、8时的感知区域大小分别为7×7、13×13、25×25和49×49。首先,作者分别针对每个WTB尝试了扩张率2、4、4、8的情况,在每个WTB中进行指定扩张率的一次扩张多头自注意力操作。接着,作者对每个WTB分别使用了一次扩张和未扩张的多头自注意力机制,并将扩张率设为(2, 1)、(4, 1)、(4, 1)、(8, 1)。作者的主要观察结果是:(i) 将瀑布流Transformer模块与修改后的Swin主干结合能够改进特征表示;(ii) 在Swin-B的开始添加一个Stem和ResNet Bottleneck 可以进一步增强主干的能力。

picture.image

  1. Conclusion

作者提出了一种瀑布Transformer框架用于多人姿态估计。WTPose结合了作者的瀑布Transformer模块,该模块处理来自Swin主干网络各个阶段的特征图,并通过级联的膨胀和非膨胀注意力块来增加感受野并捕获局部和全局上下文。

WTPose采用修改后的Swin-B主干网络和瀑布Transformer模块,在其他Swin模型的基础上实现了性能提升。

参考

[0]. Waterfall Transformer for Multi-person Pose Estimation 。

picture.image

扫码加入👉「集智书童」交流群

(备注: 方向+学校/公司+昵称 )

picture.image

点击下方“ 阅读原文 ”,

了解更多AI学习路上的 「武功秘籍」

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
火山引擎大规模机器学习平台架构设计与应用实践
围绕数据加速、模型分布式训练框架建设、大规模异构集群调度、模型开发过程标准化等AI工程化实践,全面分享如何以开发者的极致体验为核心,进行机器学习平台的设计与实现。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论