(CVPR-2019)用于人体姿势估计的深度高分辨率表示学习

news2024/11/23 0:15:47

用于人体姿势估计的深度高分辨率表示学习

paper题目:Deep High-Resolution Representation Learning for Human Pose Estimation

paper是中国科学技术大学发表在CVPR 2019的工作

paper地址

Abstract

在本文中,我们对人体姿势估计问题感兴趣,重点是学习可靠的高分辨率表示。大多数现有方法从高分辨率到低分辨率网络产生的低分辨率表示中恢复高分辨率表示。相反,我们提出的网络在整个过程中保持高分辨率表示。

我们从高分辨率子网络作为第一阶段开始,逐步添加从高分辨率到低分辨率的子网络以形成更多阶段,并将多分辨率子网络并行连接。我们进行重复的多尺度融合,使得每个从高到低分辨率的表示一遍又一遍地接收来自其他并行表示的信息,从而产生丰富的高分辨率表示。因此,预测的关键点热图可能更准确且空间更精确。我们通过两个基准数据集(COCO 关键点检测数据集和 MPII 人体姿势数据集)的优异姿势估计结果,凭经验证明了我们网络的有效性。此外,我们还展示了我们的网络在 PoseTrack 数据集上的姿势跟踪方面的优越性。代码和模型已在 https://github.com/leoxiaobin/deep-high-resolution-net.pytorch 上公开提供。

1. Introduction

二维人体姿态估计一直是计算机视觉中的一个基本但具有挑战性的问题。目标是定位人体解剖关键点(例如肘部、手腕等)或部位。它有很多应用,包括人体动作识别、人机交互、动画等。本文对单人姿态估计感兴趣,这是其他相关问题的基础,例如多人姿态估计[6,26,32 , 38, 46, 55, 40, 45, 17, 69],视频姿态估计和跟踪[48, 70]等。

最近的发展表明深度卷积神经网络已经实现了最先进的性能。大多数现有方法通过网络传递输入,通常由串联连接的从高分辨率到低分辨率的子网络组成,然后提高分辨率。例如,Hourglass [39]通过对称的从低到高的过程恢复高分辨率。 SimpleBaseline [70] 采用一些转置卷积层来生成高分辨率表示。此外,扩张卷积还用于放大从高到低分辨率网络的后面层(例如 VGGNet 或 ResNet)[26, 74]。

我们提出了一种新颖的架构,即高分辨率网络(HRNet),它能够在整个过程中保持高分辨率表示。我们从高分辨率子网作为第一阶段开始,逐步添加从高分辨率到低分辨率的子网以形成更多阶段,并将多分辨率子网并行连接。我们通过在整个过程中一遍又一遍地在并行多分辨率子网络之间交换信息来进行重复的多尺度融合。我们估计网络输出的高分辨率表示的关键点。生成的网络如图 1 所示。


图 1. 说明了所提出的 HRNet 的架构。它由并行的高到低分辨率子网络组成,并在多分辨率子网络之间重复信息交换(多尺度融合)。水平和垂直方向分别对应于网络的深度和特征图的比例。

与现有广泛使用的姿势估计网络[39,26,74,70]相比,我们的网络有两个好处。 (i) 我们的方法并行连接高分辨率到低分辨率的子网,而不是像大多数现有解决方案那样串联连接。因此,我们的方法能够保持高分辨率,而不是通过从低到高的过程恢复分辨率,因此预测的热图在空间上可能更精确。 (ii) 大多数现有的融合方案聚合了低层和高层表示。相反,我们执行重复的多尺度融合,以借助相同深度和相似级别的低分辨率表示来增强高分辨率表示,反之亦然,从而导致高分辨率表示对于姿态估计也很丰富。因此,我们预测的热图可能更准确。

我们凭经验证明了优于两个基准数据集的关键点检测性能:COCO 关键点检测数据集 [35] 和 MPII 人体姿势数据集 [2]。此外,我们在 PoseTrack 数据集 [1] 上展示了我们的网络在视频姿势跟踪方面的优越性。

2. Related Work

大多数传统的单人姿态估计解决方案采用概率图模型或图像结构模型[76, 49],最近通过利用深度学习来改进,以更好地建模一元和成对能量[9, 63, 44]或者模仿推理过程中的迭代[13]。如今,深度卷积神经网络提供了主导解决方案[20,34,60,41,42,47,56,16]。有两种主流方法:回归关键点的位置[64,7],估计关键点热图[13,14,75],然后选择热值最高的位置作为关键点。

大多数用于关键点热图估计的卷积神经网络由类似于分类网络的主干子网络组成,它会降低分辨率,主体产生与其输入相同分辨率的表示,然后是估计关键点位置的热图的回归器。估计然后转换为全分辨率。主体主要采用从高到低、从低到高的框架,可能会增加多尺度融合和中(深)监督。

从高到低和从低到高。从高到低的过程旨在生成低分辨率和高级表示,而从低到高的过程旨在生成高分辨率表示[4,11,22,70,39,60]。这两个过程都可能重复多次以提高性能[74,39,14]。

代表性的网络设计模式包括: (i) 对称的从高到低和从低到高的过程。 Hourglass 及其后续[39,14,74,30]将从低到高的过程设计为从高到低的过程的镜像。 (ii) 从高到低重,从低到高轻。从高到低的过程是基于ImageNet分类网络,例如[11, 70]中采用的ResNet,而从低到高的过程只是一些双线性上采样[11]或转置卷积[70]层。 (iii) 与扩张卷积的组合。在[26,50,34]中,ResNet或VGGNet的最后两个阶段采用扩张卷积来消除空间分辨率损失,随后进行轻量级从低到高的处理以进一步提高分辨率,避免昂贵的计算成本仅使用扩张卷积[11,26,50]。图 2 描述了四个代表性的姿态估计网络。


图 2.依赖于从高到低和从低到高框架的代表性姿态估计网络的图示。 (a)沙漏[39]。(b) 级联金字塔网络[11]。 © SimpleBaseline [70]:用于从低到高处理的转置卷积。 (d) 与扩张卷积的组合[26]。右下图例:reg。 = 常规卷积,扩张 = 扩张卷积,反式。 = 转置卷积、跨步 = 跨步卷积、连接。 =串联。在(a)中,从高到低和从低到高的过程是对称的。在(b)、©和(d)中,作为分类网络(ResNet或VGGNet)的一部分的从高到低的过程是重的,而从低到高的过程是轻的。在(a)和(b)中,高到低和低到高过程的相同分辨率层之间的跳跃连接(虚线)主要旨在融合低级和高级特征。在(b)中,右侧部分finenet结合了通过卷积处理的低级和高级特征。

多尺度融合。最直接的方法是将多分辨率图像分别输入多个网络并聚合输出响应图[62]。 Hourglass [39] 及其扩展 [74, 30] 通过跳跃连接逐步将从高到低过程中的低级特征组合成从低到高过程中的相同分辨率的高级特征。在级联金字塔网络[11]中,globalnet将从高到低的过程中从低到高的级别特征逐步组合到从低到高的过程中,然后细化网络将处理后的从低到高的级别特征组合起来通过卷积。我们的方法重复多尺度融合,部分受到深度融合及其扩展的启发[65,71,57,77,79]。

中级监督。早期为图像分类而开发的中间监督或深度监督[33, 59]也被用来帮助深度网络训练和提高热图估计质量,例如[67, 39, 62, 3, 11]。沙漏方法[39]和卷积姿态机方法[67]将中间热图处理为剩余子网络的输入或输入的一部分。

我们的方法。我们的网络并行连接从高到低的子网络。它在整个过程中保持高分辨率表示,以实现空间精确的热图估计。它通过重复融合从高到低的子网络产生的表示来生成可靠的高分辨率表示。我们的方法与大多数现有作品不同,后者需要单独的从低到高的上采样过程并聚合低级和高级表示。我们的方法在不使用中间热图监督的情况下,在关键点检测精度方面具有优越性,并且在计算复杂性和参数方面具有高效性。

有相关的多尺度网络用于分类和分割[5,8,72,78,29,73,53,54,23,80,53,51,18]。我们的工作部分受到其中一些[54,23,80,53]的启发,并且存在明显的差异,使得它们不适用于我们的问题。由于每个子网络(深度、批量归一化)和多尺度融合缺乏适当的设计,卷积神经结构[54]和互连的CNN[80]无法产生高质量的分割结果。网格网络[18]是许多权重共享的U-Net的组合,由两个跨多分辨率表示的独立融合过程组成:在第一阶段,信息仅从高分辨率发送到低分辨率;在第二阶段,信息仅从高分辨率发送到低分辨率;在第二阶段,信息仅从高分辨率发送到低分辨率。在第二阶段,信息仅从低分辨率发送到高分辨率,因此竞争性较差。多尺度密集网络[23]没有目标,也无法生成可靠的高分辨率表示。

3. Approach

人体姿态估计,又名关键点检测,旨在从尺寸为 W × H × 3 W \times H \times 3 W×H×3的图像 I \mathbf{I} I中检测 K K K个关键点或部位(例如肘部、手腕等)的位置。最先进的方法将这个问题转化为估计 K K K个大小为 W ′ × H ′ , { H 1 , H 2 , … , H K } W^{\prime} \times H^{\prime},\left\{\mathbf{H}_1, \mathbf{H}_2, \ldots, \mathbf{H}_K\right\} W×H,{H1,H2,,HK}的热图,其中每个热图 H k \mathbf{H}_k Hk表示第 k k k个关键点的位置置信度。

我们遵循广泛采用的管道[39,70,11],使用卷积网络来预测人类关键点,该网络由一个由两个跨步卷积组成的茎组成,降低了分辨率,一个主体输出与以下分辨率相同的特征图:它的输入特征图,以及估计热图的回归器,其中选择关键点位置并将其转换为完整分辨率。我们重点关注主体的设计,并介绍我们的高分辨率网络(HRNet),如图 1 所示。

顺序多分辨率子网。现有的姿态估计网络是通过串联连接从高到低分辨率的子网络来构建的,其中每个子网络形成一个阶段,由一系列卷积组成,并且相邻子网络之间有一个下采样层以将分辨率减半。

N s r \mathcal{N}_{s r} Nsr为第 s s s阶段的子网, r r r为分辨率索引(其分辨率为第一个子网分辨率的 1 2 r − 1 \frac{1}{2^{r-1}} 2r11)。具有 S S S(例如4)级的从高到低的网络可以表示为:
N 11 → N 22 → N 33 → N 44 \mathcal{N}_{11} \rightarrow \mathcal{N}_{22} \rightarrow \mathcal{N}_{33} \rightarrow \mathcal{N}_{44} N11N22N33N44

并行多分辨率子网。我们从高分辨率子网络作为第一阶段开始,逐步添加高分辨率到低分辨率子网络,形成新的阶段,并将多分辨率子网络并行连接。因此,后一级并行子网的分辨率由前一级的分辨率和一个较低的分辨率组成。

包含 4 个并行子网的示例网络结构如下:

反复进行多尺度融合。我们在并行子网之间引入交换单元,以便每个子网重复接收来自其他并行子网的信息。这是一个显示信息交换方案的示例。我们将第三阶段分为几个(例如3个)交换块,每个块由3个并行卷积单元组成,并行单元之间有一个交换单元,如下所示:


其中 C s r b \mathcal{C}_{s r}^b Csrb表示第 s s s阶段第 b b b块的第 r r r分辨率下的卷积单元, E s b \mathcal{E}_s^b Esb是对应的交换单元。


图 3. 说明交换单元如何从左到右分别聚合高分辨率、中度和低分辨率的信息。右图例:strided 3×3 = strided 3×3 卷积,上采样。 1×1 = 1 × 1 卷积后的最近邻上采样。

我们在图 3 中说明了交换单元,并在下面介绍了公式。为了讨论方便,我们去掉下标 s s s和上标 b b b。输入是 s s s个响应图: { X 1 , X 2 , … , X s } \left\{\mathbf{X}_1, \mathbf{X}_2, \ldots, \mathbf{X}_s\right\} {X1,X2,,Xs}。输出是 s s s个响应图: { Y 1 , Y 2 , … , Y s } \left\{\mathbf{Y}_1, \mathbf{Y}_2, \ldots, \mathbf{Y}_s\right\} {Y1,Y2,,Ys},其分辨率和宽度与输入相同。每个输出都是输入映射的聚合, Y k = ∑ i = 1 s a ( X i , k ) \mathbf{Y}_k=\sum_{i=1}^s a\left(\mathbf{X}_i, k\right) Yk=i=1sa(Xi,k)。跨阶段的交换单元有一个额外的输出映射 Y s + 1 \mathbf{Y}_{s+1} Ys+1 Y s + 1 = a ( Y s , s + 1 ) \mathbf{Y}_{s+1}=a\left(\mathbf{Y}_s, s+1\right) Ys+1=a(Ys,s+1)

函数 a ( X i , k ) a\left(\mathbf{X}_i, k\right) a(Xi,k)包括从分辨率 i i i到分辨率 k k k X i \mathbf{X}_i Xi进行上采样或下采样。我们采用跨步 3 × 3 3 \times 3 3×3卷积进行下采样。例如,一个步幅为 2 的 3 × 3 3 \times 3 3×3卷积用于 2 × 2 \times 2×下采样,两个连续的步幅为 2 的 3 × 3 3 \times 3 3×3卷积用于 4 × 4 \times 4×下采样。对于上采样,我们采用简单的最近邻采样和 1 × 1 1 \times 1 1×1卷积来对齐通道数。如果 i = k , a ( ⋅ , ⋅ ) i=k, a(\cdot, \cdot) i=k,a(,)只是一个恒等连接: a ( X i , k ) = X i a\left(\mathbf{X}_i, k\right)=\mathbf{X}_i a(Xi,k)=Xi

热图估计。我们简单地根据最后一个交换单元输出的高分辨率表示来回归热图,这在经验上效果很好。损失函数定义为均方误差,用于比较预测热图和真实热图。真实值 heatmpas 是通过应用 2D 高斯生成的,标准偏差为 1 像素,以每个关键点的组真实位置为中心。

网络实例化。我们通过遵循 ResNet 的设计规则来实例化用于关键点热图估计的网络,将深度分配给每个阶段以及每个分辨率的通道数。

主体,即我们的 HRNet,包含四个阶段和四个并行子网络,其分辨率逐渐降低到一半,相应的宽度(通道数)增加到两倍。第一阶段包含 4 个残差单元,每个单元与 ResNet-50 相同,由宽度为 64 的瓶颈形成,后面是一个 3×3 卷积,将特征图的宽度减少到 C。第二,第 3、4 级分别包含 1、4、3 个交换块。一个交换块包含 4 个残差单元,其中每个单元在每个分辨率下包含两个 3 × 3 卷积,以及一个跨分辨率的交换单元。综上,总共有8个交换单元,即进行了8次多尺度融合。

在我们的实验中,我们研究了一小网和一大网:HRNet-W32和HRNet-W48,其中32和48分别表示最后三个阶段高分辨率子网的宽度(C)。其他三个并行子网络的宽度对于HRNet-W32为64、128、256,对于HRNet-W48为96、192、384。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/752944.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

什么是真正的骨传导耳机,列举出几款实用的骨传导耳机

骨传导耳机从发布到现在有了几年的时间,也有很多人开始了解,但真正去选购的人还是很少,如果你没有使用过骨传导耳机,在选购时会很迷茫。作为一个骨传导耳机的重度使用者,下面就给大家分享一下我的体验感受以及选购建议…

OpenCv色彩空间

目录 一、RGB 二、图像处理入门 三、色彩空间的转换 一、RGB 在表示图像时,有多种不同的颜色模型,但最常见的是红、绿、蓝(RGB) 模型RGB 模型是一种加法颜色模型,其中原色 (在RGB模型中,原色是红色 R、绿色 G 和蓝色 B)混合在…

selenium自动化测试工具

Selenium是一个用于测试网站的自动化测试工具,支持各种浏览器包括Chrome、Firefox、Safari等主流界面浏览器,同时也支持phantomJS无界面浏览器。 查看chrome版本,114.05735.199 去 http://chromedriver.storage.googleapis.com/index.html 网…

【从零开始学爬虫】采集全国各地历年房价数据

l 采集网站 【场景描述】采集全国各地历年房价数据。 【源网站介绍】58同城—国内专业的“本地、免费、真实、高效”生活服务平台! 【使用工具】前嗅ForeSpider数据采集系统,免费下载: http://www.forenose.com/view/commodity/forespider…

正则表达式与“三贱客”

第三阶段基础 时 间:2023年7月11日 参加人:全班人员 内 容: 正则表达式与“三贱客” 目录 shell脚本的基本应用: 一、正则表达式与grep 2)正则表达式的组成 1)正则表达式grep常见的选项 2&…

《向量数据库指南》:向量数据库Pinecone关键概念和工作流程

目录 用例 关键概念 向量搜索 向量嵌入 向量数据库 工作流程 定价和部署选项 开始使用 介绍PINECONE向量数据库 Pinecone使构建高性能的向量搜索应用程序变得轻松。 它是一个托管的、云原生的向量数据库,具有简单的API和无需基础架构的优势。 Pinecone具有以下特…

[论文分享]SimMIM:一种简单的掩模图像建模框架

文章地址:https://arxiv.org/abs/2111.09886 代码地址:GitHub - microsoft/SimMIM: This is an official implementation for "SimMIM: A Simple Framework for Masked Image Modeling". 1 摘要 本文介绍了SimMIM,这是一个用于掩模…

React初学者需要的库从哪里下载?

在react官网下载react.js的方法介绍 1、访问react的github官方页面 访问地址为:Downloads | Reacthttps://react-cn.github.io/react/downloads.html 2、点击Download页面中的"Download Starter Kit"按钮,进行下载 学react的时候用到了babe…

波士顿矩阵模型:产品定位

波士顿矩阵 波士 顿 矩 阵 (BCG Matrix) 又称市 场 增 长 率 — 相 对 市 场 份 额 矩 阵 、波士顿咨 询 集 团 法、四象限分析法、 产 品系列 结 构管理法等。 波士 顿 矩 阵是由美国大型商业 咨 询 公司 —— 波士 顿 咨 询 集 团 首 创 的一种 规 划企业产品 组 合的方法。…

什么是统一建模语言(UML)UML与UML类图的基本概念

什么是统一建模语言UML(Unified Modeling Language) UML(统一建模语言)是一种通用的建模语言,用于描述软件系统的结构、行为和交互。它提供了一组符号和规则,用于创建可视化的图形模型,帮助开发…

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块6

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&am…

resolvecomreference任务返回了false,但未记录错误

IDE从VS2015升级到了VS2022,然后就报了这个错,百度搜了下,没有啥结果,后来发现,2015可以用的一个dll在2022不能用了,把不能用的dll移除即可

VxLAN学习

目录 什么是VXLAN 为什么需要VXLAN 虚拟机动态迁移,要求提供一个无障碍接入的网络 什么是服务器虚拟化技术? 什么是虚拟机动态迁移? VXLAN如何满足虚拟机动态迁移时对网络的要求? 数据中心租户数量激增,要求提供…

TIOBE 2023年7月编程语言排行榜:C++即将超越C!

一、TIOBE统计数据(2023年7月) TIOBE Index编程社区指数是编程语言流行度的一个指标。评级基于全球熟练工程师的数量、课程和第三方供应商的数量。Google、Bing、Yahoo!、维基百科、亚马逊、YouTube 和百度等流行搜索引擎用于计算评级。 七月头条&#…

性能测试工具 Jmeter 测试 JMS (Java Message Service)/ActiveMQ 性能

目录 前言 ActiveMQ 介绍 准备工作 编写jndi.properties添加到ApacheJMeter.jar 中 下载 ActiveMQ 配置 Jmeter 进行测试 点对点 (Queues 队列) 配置 Jmeter 进行测试 发布/订阅 (Topic 队列) 配置发布 Publisher 配置订阅 Subscriber 总结 前言 JMeter是一个功能强大…

【Java】如何有效防止API的重放攻击?API接口防止参数篡改?

文章目录 前言一、API接口常见的安全防护要做到主要有以下几点:二、请求参数防篡改三、防止重放攻击3.1、基于timestamp的方案3.2、基于nonce的方案3.2、基于timestamp和nonce的方案3.3、微信公众号如何保证消息不会被重放攻击 前言 API重放攻击(Replay Attacks)又…

uniapp调接口出现跨域问题。

今天在写uniapp项目的时候,使用在线模拟接口的时候,出现跨域问题。 【问题描述】: ①在内嵌浏览器运行,不会出现跨域问题,好像是内嵌浏览器自动去掉了跨域问题。 ②在外部浏览器调用的时候会出现跨域问题。&#xf…

Yalmip工具箱使用教程(2)-决策变量进阶

博客中所有内容均来源于自己学习过程中积累的经验以及对yalmip官方文档的翻译:https://yalmip.github.io/tutorials/ 1.决策变量的定义 1.1 sdpvar 上文简单介绍了sdpvar函数的用法,接下来将对其进行详细介绍。复习一下,sdpvar函数的基本语…

常用化合物谱图数据库查询系统-40个软件免费查!

化学图谱是用于描述化学物质结构和性质的图形化表示方法,在有机化学、材料科学、生物化学、药物化学等领域都被广泛的应用研究分析。不同类型的化学谱图适用于不同的化学分析和研究领域,为此笔者调研了常用化合物谱图数据库及各个类型的主流使用化学谱图…

(RX200)R5F52315ADFP/R5F52318ADFL/R5F52316CDFL微控制器基于RXv2 32位内核,54MHz 闪存 LQFP

RX200 32位微控制器 (MCU) 在功率效率和性能之间实现了平衡。这些MCU在工作模式下的电流消耗为0.12mA/MHz,在待机模式下的电流消耗仅为0.8μA(保留RAM内容)。RX200 MCU具有54MHz的最高CPU运行速度,可提供4.16 CoreMark/MHz的高性能…