第二十二周周报

论文研读:Camera Distance-aware Top-down Approach for 3D Multi-person Pose

Estimation from a Single RGB Image

粗读10篇文献。

在这里插入图片描述

通过图2 我可以知道这个论文大概实现的这个姿态估计效果的方法,首先是把图片输入到DetectNet网络,该网络的作用是将人从图片中识别出来,然后根据识别出来的人物框图,分别送入到RootNet和PoseNet网络中去,RootNet是根节点识别网络,能够将这个图像的根节点信息估计出来,得到根节点的坐标(x,y,z)。PoseNet网络是来估计人的姿态,估计出的也是人的3d姿态。最后整合整个图的对应的3d人体姿态的空间系。

LCR-net:单张图的进行3d多人姿态估计的。

(对抗性)Wei Yang, Wanli Ouyang, Xiaolong Wang, Jimmy Ren,
Hongsheng Li, and Xiaogang Wang. 3d human pose esti-
mation in the wild by adversarial learning. In CVPR, 2018.

联合训练姿势回归和身体部位检测器的多任务框架。

Sijin Li and Antoni B Chan. 3d human pose estimation from
monocular images with deep convolutional neural network.
In ACCV, 2014.

自身编码器结构对高维关节依赖进行建模。

Bugra Tekin, Isinsu Katircioglu, Mathieu Salzmann, Vincent
Lepetit, and Pascal Fua. Structured prediction of 3d human
pose with deep neural networks. BMVC, 2016.

单阶段和两阶段方法。

贡献:

1.一种新的通用框架,用于从单个RGB图像中估计3D多人姿势。该框架是第一个完全基于学习的、相机距离感知的自上而下方法。

2.作者的框架输出多个人体关键点的绝对以相机为中心的坐标。为此,提出了一个3D人体根部定位网络(RootNet)。该模型可以很容易地将3D单人姿态估计技术扩展到多人的绝对3D姿态估计。

3.在几个公开可用的数据集上显著优于以前的3d多人姿态估计。

模型概述:

该方法由DetectNet、Root-Net和PoseNet组成。DetectNet检测输入图像中每个人的人类绑定框。
RootNet从DetectNet上截取人的图像,并定位人的根R =(xR,yR,ZR),其中xR和yR是像素坐标,ZR是绝对深度值。将相同的裁剪后的人体图像馈送到PoseNet,它估计根相对三维姿态Prelj = (xj, yj, Zjrel),其中xj和yj是裁剪后的图像空间中的像素坐标,Zjrel是根相对深度值。我们将Zjrel转换为Zjabs,方法是在原始输入图像空间中加入ZR并变换xj和yj。然后,通过简单的反投影得到最终的绝对3D位姿{Pabsj}Jj=1。

DetectNet

第一部分是backbone,通过使用深度残差网络(ResNet)[12]和特征金字塔网络从输入图像中提取有用的局部和全局特征。基于提取的特征,

第二部分,区域提议网络,提出人类边界框候选。

RoIAlign层提取每个提议的特征并将它们传递给第三部分,即分类头网络。头部网络判断给定的提议是否为人类,并估计边界框的细化偏移量。

RootNet

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这个是解释了k的方程的由来,其实就是用了小孔成像的原理,用相似三角形,在已知相机的焦距情况下,

+在这里插入图片描述

在这里插入图片描述

图4说明了,在不同的实际面积情况下,相同的距离;相同的实际面积和不同的距相机的距离。这也就说明如果单纯用假设实际面积和其在图片中的边界框里之间的比值来模拟实际的深度信息是存在问题的,如上图4a所示,蹲下的小孩距离相机显然是比站起的小孩近的,因此存在问题的。

网络结构

在这里插入图片描述

RootNet的网络架构由三个组件组成,

骨干网使用ResNet提取输入人体图像的有用全局特征。

其次,二维图像坐标估计部分从主干部分提取特征映射,并使用三个连续的去卷积层进行上采样,使用批处理归一化层和ReLU激活函数。然后,
应用1 × 1卷积生成根的2D热图。Soft-argmax从2D热图中提取2D图像坐标xR,yR。

第三个组件是深度估计部分。它也从骨干部分取一个特征图,应用全局平均池化。然后,池化后的特征图经过1 × 1的卷积,输出单个标量值γ。最后的绝对深度值ZR通过k乘以√ γ得1到。在实践中,我们实现了RootNet输出γ0并将其与k相乘以获得绝对深度值ZR=ZR = γ’k。

损失函数:我们通过最小化估计坐标和groundtruth坐标之间的L1距离来训练RootNet。损失函数Lroot定义如下:

在这里插入图片描述

其中*表示接地真值。

PoseNet

第一部分是主干,利用ResNet从裁剪后的人类图像中提取有用的全局特征。其次,姿态估计部分从主干部分提取特征映射,并使用三个连续的反卷积层对其进行上采样,并使用批处理归一化层和ReLU激活函数。对上采样的特征图进行1 × 1卷积,生成每个关节的3D热图。使用soft-argmax操作提取二维图像坐标(xj,yj)和根相对深度值Zjrel。

实验

数据集与评价指标:

1.Human3.6m:首先用MPJPE来衡量关键点预测的误差:。第一个是平均每个关节位置误差
(MPJPE),它是在对估计的和真实的三维姿态的人根对齐后计算的;第二个是进一步校准后的MPJPE。这个度量被称为PA-MPJPE。为了评估绝对三维人体根的定位,我们引入根R的估计坐标与基真R *之间的欧几里得距离的平均
值,即根位置误差的平均值(MRPE)作为一个新的度量。

在这里插入图片描述

其中上标i为样本指标,N为测试样本总数。

2.MuCo-3DHP和MuPoTS-3D数据集:为了进行评估,在与groundt
ruth进行根对齐后,使用来自各种阈值的正确关键点的3D百分比(3DPCKrel
)和3DPCK曲线下的面积。当预测值与真实坐标之间的欧几里得距离小于25cm时,认为预测值的平均精度(AP25root)是正确的。

3.方案:(1)方案1使用6名受试者(S1、S5、S6、S7、S8、S9)进
行训练,S11进行测试。PA MPJPE用作评估指标。
方案2使用5名受试者(S1、S5、S6、S7、S8)进行训练,
2名受试者(S9、S11)进行测试。MPJPE被用作评估指
标。我们在视频中每隔第5帧和第64帧进行训练和测
试,分别如下[43,44]。在训练时,除了Human3.6M数
据集外,我们还使用了后续的MPII 2D人体姿态估计
数据集[1][37,43,44,52]。每个小批由一半Human3.6M
数据和一半MPII数据组成。对于MPII数据,在Sun et
al.[44]之后,RootNet和PoseNet的z轴损失值都变为零。

(2)MuCo-3DHP和MuPoTS-3D数据集。按照之前的协议,我们合成了400K帧,其中一半是背景增强的。为了增强,我们使用COCO数据集中的图像,除了人类图像。在Mehta等人的MuCo-3DHP数据集上训练我们的模型时,我们使用了额外的COCO 2D人类关键点检测数据集。每个小批由一半MuCo-3DHP和一半COCO数据组成。对于COCO数据,在Sun et al.之后,RootNet和PoseNet的z轴损失值都变为零。

消融研究

在这里插入图片描述

将RootNet和PoseNet组合成一个共享骨干部分的单一模型(即ResNet)。来自主干的图像特征以并行方式馈送到RootNet和PoseNet的每个分支。与联合学习相比,在相似的运行时间下,作者的脱节学习给出了更低的误差。作者认为这是因为RootNet和PoseNet的每个任务不是高度相关的,所以联合训练所有的任务会增加训练的难度,导致准确率降低。

DetectNet的作用。为了展示人体检测的性能如何影响最终的3D人体根定位和3D多个人姿态估计的准确性,我们在表2的第二,第三和第四行中使用DetectNet在各种主干(即ResNet-50 [48], ResNeXt-101-32[48]) 和 groundtruth box 中比较了aprot25, AUCrel和3dpckab。由表可知,基于相同的RootNet,更好的人体检测模型提高了三维人体根定位和三维多人姿态估计的性能。然而,与其他Detect-Net模型相比,groundtruth box并没有显著提高整体精度。因此,我们有足够的理由相信,给定的框覆盖了大多数具有如此高检测AP的人实例。我们也可以得出结论,边界框估计精度对3D多人姿态估计精度没有太大的影响。

RootNet的影响。为了展示3D人体根定位的性能如
何影响3D多人姿势估计的准确性,我们使用表2中的各
种RootNet设置比较AUCrel和3DPCKabs。第一行和第二行
显示,基于相同的DetectNet,我们的RootNet显示出显着与直接使用k作为深度值的设置相比,aprot25和3dpckab更高。当k用作深度值时,我们使用RootNet的x和y。这个结果表明,RootNet成功地纠正了k值。第四行和最后
一行显示,与我们的RootNet相比,groundtruth人类根提
供了类似的AUCrel,但显着更高3DPCKabs
。这一发现表明,为了获得更准确的绝对3D多人姿态估计结果,需
要更好的人类根定位。

PoseNet的影响。表2中的所有设置都提供类似
AUCrel。特别是,表的第一行和最后一行显示,使用
groundtruth box和human root并没有提供明显更高的
AUCrel。
由于表中的结果是基于相同的PoseNet,我们可
以得出结论,AUCrel,这是对根相对3D人体姿态估计的
评估,高度依赖于PoseNet的准确性。

论文研读:BlazePose: On-device Real-time Body Pose tracking

摘要:

提出了BlazePose,这是一种用于人体姿势估计的轻量级卷积神经网络架构,专为移动设备上的实时推理而定制。在推理过程中,该网络为单个人生成33 个身体关键点,并在Pixel 2 手机上以每秒30 帧以上的速度运行。这使得它特别适合于健身跟踪和手语识别等实时用例。

贡献:

我们的主要贡献包括一个新颖的身体姿势跟踪解决方案和一个轻量级的身体姿势估计神经网络,它同时使用热图和回归到关键点坐标。

在这里插入图片描述

图1意思是,这一帧的目标位置(锚框)是由上一帧来的,也就是说不是每一帧都是执行Face detector识别人要检测的人,触发face detector的条件是当整个画面没有锚框时,再把当前帧送入face detector中,获得锚框。

在这里插入图片描述

在目标检测中,我们多数使用的是NMS,非极大值抑制的方法(生成很多框,取交并比最大的)去得到合适的锚框,但是这种方法是适合于刚性物体。而人体是非刚性的物体,比如说人招手、拥抱的时候,这个锚框就没法被交并比来筛选出来。因此作者们提出了一个观点:在单人人体检测中,即对于我们的单人用例,人的头部应该总是可见的。而人的脸是特征很鲜明的,五官位置也相当固定的,两个眼睛一个鼻子,相对位置信息是比较全面的。作者使用了一个人脸检测器,并且它还能识别出人的肩膀的中部和臀部的连线。这样所构成的圆圈,能够包含整个人体进去。

在这里插入图片描述

网络结构

仅在训练阶段使用热图和偏移损失,并在运行推理之前从模型中删除相应的输出层。因此,我们有效地使用热图来监督轻量嵌入,然后由回归编码器网络利用。训练用两个方法,预测用一个方法(回归),减少了计算量。**由图可以见,不同层块是进行跨层连接的,这样做的好处是,既发挥深层网络的语义信息,又能发挥浅层网络提取出的边缘、细粒度等底层的图像信息。图片中的实线是能够反向回传梯度的,虚线是不能回传的。**这个结构是受沙漏文献的启发。

对齐和咬合增强

在这里插入图片描述

作者认为在关键点检测中至关重要的是姿势的先验,也就是能否正确输入检测框,检测框的位置是精确的。因此需要对检测框进行处理。作者提出了对齐的操作。基于检测阶段或前一帧关键点,对人进行对齐,使臀部之间的点位于作为神经网络输入传递的方形图像的中心。估计旋转为臀部中部和肩部中部点之间的直线 L,并旋转图像,使 L 平行于 y 轴。对尺度进行估计,使所有的身体点都适合在身体周围划定的方形边界框中,如所示。最重要的是,应用 10%的缩放和移位增强,以确保跟踪器处理帧之间的身体运动和扭曲的对齐。

实验

手动标注了两个数据集,AR 数据集,而第二个数据集仅由瑜伽/健身姿势组成,使用了MS coco支持的17个关键点,用预测关键点和目标实际的关键点之间的欧氏距离来判断预测精确度。如果小于如果二维欧几里得误差小于相应人躯干尺寸的 20%,我们假设正确检测到的点。

我们训练了两个不同容量的模型:BlazePose Full (6.9MFlop, 3.5M Params)和 BlazePose Lite (2.7 MFlop, 1.3MParams)。尽管我们的模型表现出比 OpenPose 模型稍差的性能在 AR 数据集上,BlazePose Full 在瑜伽/健身用例上优于OpenPose。与此同时,BlazePose 在单个中间层手机 CPU上的执行速度比在 20 核桌面 CPU 上的 OpenPose 快 25-75倍,具体取决于所要求的质量。

在这里插入图片描述

BlazePose的两个大小模型与OpenPose在两个数据集的效果对比。其实精度是差不多的,但是帧数得到大幅度提升,因此这个方法可以用于轻量化应用。

本周总结:花了大量的时间在准备复现Camera Distance-aware Top-down Approach for 3D Multi-person Pose Estimation from a Single RGB Image上,最终因数据集没下载好,导致只能跑demo,没有办法自己训练走一编流程。下周安排,找一篇容易复现的文献,粗读2013年左右的文章。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML概念

文章目录 1. HTML 概念1.1. 简介1.2. 思想1.3. 特点1.4. 语法1.4.1. 标签1.4.2. 属性1.4.3. 标签体1.4.4. 注释 2. HTML 实体2.1. 练习 3. HTML 结构3.1. <!DOCTYPE html>声明3.2. html根标签 4. 补充4.1. 管理文件4.2. 配置 VsCode4.2. 配置 VsCode 1. HTML 概念 1.1. 简…

PyQt6实战1

创建一个json处理的小工具 功能&#xff1a; 1.json格式化 2.jsonpath提取数据 3.保存文件 main.py from PyQt6.QtGui import QFocusEvent from PyQt6.QtWidgets import * from PyQt6.QtCore import * from PyQt6.QtGui import * import sys import json import time impo…

有什么针对新闻媒体行业的安全解决方案

对媒体行业而言&#xff0c;门户网站是最易受到攻击的地方。常见的攻击方式有网页篡改、挂马和被植入暗链等。门户网站作为新闻媒体对外的第一扇门&#xff0c;通常承载了大量的流量&#xff0c;一旦遭到攻击&#xff0c;造成的影响会更具有可怕的“传播力”。那么我们应该如何…

【逆向实战 某视频防盗链参数的生成】防盗链cKey的生成,还要补环境?还是单嵌套的webpack?

逆向日期&#xff1a;2024.03.10 使用工具&#xff1a;Node.js 类型&#xff1a;单嵌套Webpack 文章全程已做去敏处理&#xff01;&#xff01;&#xff01; 【需要做的可联系我】 AES解密处理&#xff08;直接解密即可&#xff09;&#xff08;crypto-js.js 标准算法&#xf…

我们的一生都是在挤火车。

哈喽&#xff0c;你好啊&#xff0c;我是雷工&#xff01; 昨天从燕郊坐火车回石家庄&#xff0c;由于赶上元旦假期&#xff0c;所有高铁票都售罄&#xff0c;一张普通火车票&#xff0c;还是一周前就买才买到的。 从燕郊站&#xff0c;到北京站&#xff0c;然后地铁去北京西站…

JWT的是什么

session共享 什么是session共享 Session共享是指在分布式系统中&#xff0c;在多个服务器之间共享同一个用户的会话数据。在传统的Web应用中&#xff0c;用户的会话信息通常存储在服务器端的Session中&#xff0c;而每个用户的请求在同一个服务器上处理&#xff0c;因此可以轻…

YOLOV5 初体验:简单猫和老鼠数据集模型训练

1、前言 前两天&#xff0c;通过OpenCV 对猫和老鼠视频的抽取&#xff0c;提取了48张图片。这里不再介绍&#xff0c;可以参考之前的文章&#xff1a;利用OpenCV 抽取视频的图片&#xff0c;并制作目标检测数据集-CSDN博客 数据的目录如下&#xff1a; 项目的下载见文末 2、制…

微信小程序跳转到其他小程序

有两种方式&#xff0c;如下&#xff1a; 一、appid跳转 wx.navigateToMiniProgram({appId: 目标小程序appid,path: 目标小程序页面路径,//不配的话默认是首页//develop开发版&#xff1b;trial体验版&#xff1b;release正式版envVersion: release, success(res) {// 打开成功…

elasticsearch篇

1.初识elasticsearch 1.1.了解ES 1.1.1.elasticsearch的作用 elasticsearch是一款非常强大的开源搜索引擎&#xff0c;具备非常多强大功能&#xff0c;可以帮助我们从海量数据中快速找到需要的内容 例如&#xff1a; 在电商网站搜索商品 在百度搜索答案 在打车软件搜索附近…

登录凭证------

为什么需要登录凭证&#xff1f; web开发中&#xff0c;我们使用的协议http是无状态协议&#xff0c;http每次请求都是一个单独的请求&#xff0c;和之前的请求没有关系&#xff0c;服务器就不知道上一步你做了什么操作&#xff0c;我们需要一个办法证明我没登录过 制作登录凭…

LVS (Linux Virtual server)集群介绍

一 集群和分布式 &#xff08;一&#xff09;系统性能扩展方式&#xff1a; Scale UP&#xff1a;垂直扩展&#xff0c;向上扩展,增强&#xff0c;性能更强的计算机运行同样的服务 &#xff08;即升级单机的硬件设备&#xff09; Scale Out&#xff1a;水平扩展&#xff0…

《Vite 报错》ReferenceError: module is not defined in ES module scope

ReferenceError: module is not defined in ES module scope 解决方案 postcss.config.js 要改为 postcss.config.cjs&#xff0c;也就是 .cjs 后缀。 原因解析 下图提示&#xff0c;packages.json 中的属性 type 设置为 module。所有 *.js 文件现在都被解释为 ESM&#xff…

vscode插件-TONGYILingma

通义灵码&#xff0c;是一款基于通义大模型的智能编码辅助工具&#xff0c;提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成、代码解释、研发智能问答、异常报错排查等能力&#xff0c;并针对阿里云 SDK/API 的使用场景调优&#xff0c;为开发者带来高…

HTML5 Web Worker之性能优化

描述 由于 JavaScript 是单线程的&#xff0c;当执行比较耗时的任务时&#xff0c;就会阻塞主线程并导致页面无法响应&#xff0c;这就是 Web Workers 发挥作用的地方。它允许在一个单独的线程&#xff08;称为工作线程&#xff09;中执行耗时的任务。这使得 JavaScript 代码可…

vue iis 配置

下载安装两个IIS模块 1). 传送门&#xff1a;URL Rewrite 2). 传送门&#xff1a;Application Request Routing 注 : 只有在 服务器的主页 有Application Request Routing 部署VUE网站 生成网站 在VUE项目打包生成出发布文件,即文件夹 dist,此处忽略 复制到你需要存放网站的…

Vue 监听器:让你的应用实时响应变化

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

加快代码审查的 7 个最佳实践

目录 前言 1-保持小的拉取请求 2-使用拉取请求模板 3-实施响应时间 SLA 4-培训初级和中级工程师 5-设置持续集成管道 6-使用拉取请求审查应用程序 7-生成图表以可视化您的代码更改 前言 代码审查可能会很痛苦软件工程师经常抱怨审查过程缓慢&#xff0c;延迟下游任务&…

Linux练习题

1、查看后台进程作业ID的指令是(A) A. jobs B. ps C. ls D. pg 2、在Linux系统的vi编辑器中&#xff0c;如果不保存对文件进行的修改&#xff0c;应使用(D )命令强制退出vi编辑器 A. :q B. :wq C. :q! D: :!q 3、列出当前目录下以…

Python实现ETS指标平滑模型(ETSModel算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 ETS模型&#xff08;Error-Trend-Seasonality Model&#xff09;&#xff0c;是一种广泛应用于时间序列…

QT----云服务器部署Mysql,Navicat连接1698 -Access denied for user ‘root‘@‘‘

阿里云有活动&#xff0c;白嫖了一年的新加坡轻量级服务器&#xff0c;有点卡&#xff0c;有时候要开梯子 白嫖300元优惠券 目录 1 安装启动Mysql服务2 更改连接权限2.1 Navicat连接报错1698 -Access denied for user root 3 qt连接云服务器数据库 1 安装启动Mysql服务 我使用…