动效网站建设/免费发布推广的平台
前言 现有的头部姿势估计主要集中在具有预先检测到的正面头部的单个人,这依赖于单独训练的面部检测器,不能很好地泛化到完整的视点。在本文中,作者关注全范围 MPHPE 问题,并提出了一个名为 DirectMHP 的直接端到端简单基线,通过多头的联合回归位置和方向设计了一种新颖的端到端可训练单级网络架构,以解决 MPHPE 问题。
这种灵活的设计可以接受任意姿势表示,同时可以隐含地从更多环境中获益,以提高 HPE 精度,同时保持头部检测性能。
Transformer、目标检测、语义分割交流群
欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息。
计算机视觉入门1v3辅导班

论文:https://arxiv.org/pdf/2301.13817.pdf
代码:https://github.com/hnuzhy/DirectMHP
论文出发点
目前,两个最广泛使用的 HPE 数据集BIWI和300W-LP仅包含窄范围偏航角(-99°,99°)的头部姿势标签。现有 HPE 方法的性能在这些基准上趋于饱和。然而,覆盖全范围偏航角(−180°、180°)的 HPE 方法因此同样具有重要的应用价值。
作者认为目前的两阶段 HPE 方法存在以下两个缺点:(1)人脸/头部检测和方向估计的两阶段模型不能端到端地训练,这使得它不紧凑且效率低下;(2) 单独的阶段无法整合和利用整个人体和周围背景的信息,因此这些模型在野外应用时对挑战性条件不稳健。
创新思路
由于多人头部姿势估计 (MPHPE) 任务没有专门的公共数据集。因此,本文首先分别构建两个 2D 全范围 MPHPE 数据集 AGORA-HPE 和 CMUHPE。然后,本文提出了一种新颖的单级端到端网络结构 DirectMHP,它可以直接预测出现在一张图像中的所有人类头部的全方位姿势。该方法通过共享特征实现联合头部检测和姿势估计。同时,将头部姿势作为相邻属性集成到典型对象预测中,支持任意姿势表示,例如欧拉角。
方法
Benchmarks Construction
(1)AGORA-HPE
首先通过封闭形式的解决方案从具有精确正面视图和预定义相机参数Cref的通用头部模型Href计算相似变换矩阵Mc。在Hreal和Href中精心选择N0对角地标进行对齐。然后,使用Mc松散地围绕每个头部定义一个变换后的3D半球,并通过具有真实相机参数Creal的2D投影生成其边界框,以获得包含背景和整个头部的区域。最后,为了提取头部方向,估计从相机世界Ccam到现实世界Creal的变换矩阵 Mr。Mr计算如下:

然后按照数据集300W-LP和BIWI按照俯仰-偏航-滚动顺序拆分出三个欧拉角。丢弃掉可能没有至少一个有效头部姿势标签的图像,最终生成的 AGORA-HPE 基准分别包含1,070和14,408个图像用于验证和训练集。
(2)CMU-HPE
CMU Panoptic Dataset由一个大规模的多视图系统收集。它的场景主要集中在半球形设备中的一个人或互动的人身上。其标签包括 31 个同步高清视频流中多人的 3D 身体姿势、手部关键点和面部特征。它还提供来自31个视图的校准相机参数Creal。典型的采样时刻快照如下图所示:

类似于构建AGORA-HPE的过程,本文构建了CMU-HPE,它分别有16,216和15,718个图像用于验证和训练集。
如下图,本文构建的两个数据集的俯仰角和横滚角基本上服从正态分布。

提出的两个全范围数据集自然包含比300W-LP&AFLW2000和BIWI更多的人脸隐形头。如下图所示,除了那些奇特的头部后仰外,普通的正面脸往往与自遮挡、隐现遮挡或异常角度等复杂情况并存。

DirectMHP
在MPHPE方法中,训练了一个密集的检测网络来直接预测一组头部对象,其中包含头部边界框集和相应的头部姿势同时设置,并联合头部检测和姿势估计之间的内在相关性。
然后,将头部姿势视为附加的头部属性,并将其与其头部位置连接起来以构建头部对象的联合表示,在统一框架中使用联合预测将这两个任务集成在一起。
一方面,一个合适的头部边界框具有强烈的局部特征(例如,眼睛、耳朵和下巴)和弱的全局特征(例如周围背景和解剖位置),用于其头部方向估计。因此,本文将两者绑定到一个嵌入中,以使网络能够学习它们的内在关系。
Network Architecture Design
网络结构如下图所示。采用目标检测架构(YOLOv5)作为backbone,从一张输入图像I中提取特征并生成预测网格。在训练期间,使用目标网格G来监督损失函数L。在推理中,应用对预测的头部对象进行非最大抑制 (NMS)以获得最终边界框集和相关头部姿势集。

Multi-Loss Optimization
计算总训练损失:

计算三个损失分量如下:

Splitting: Offline Inference
训练结束后,需要对预测对象集进行处理。首先,使用非极大值抑制 (NMS) 来过滤掉误报和冗余边界框。通过计算每个预测对象的置信度,不需要修改获得正头部边界框的常见NMS步骤。
结果
DIRECTMHP-M与在300W-LP 数据集上训练的方法的比较(红色表示最好的结果,蓝色表示第二好的结果):

同理,在AGORA-HPE 基准验证集的性能比较:

类似的,在CMU-HPE 基准验证集的性能比较:

来自 COCO val-set 的一些野外图像的可视化如下图所示。第二行和第三行分别是比较6DRepNet和本文方法的例子。使用6DRepNet估计的头部样本有明显的不准确(黄色圈出)。

欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息。
【技术文档】《从零搭建pytorch模型教程》122页PDF下载
QQ交流群:444129970。群内有大佬负责解答大家的日常学习、科研、代码问题。
模型部署交流群:732145323。用于计算机视觉方面的模型部署、高性能计算、优化加速、技术学习等方面的交流。
用于超大图像的训练策略:Patch Gradient Descent
新方案:从错误中学习,点云分割中的自我规范化层次语义表示
ECCV2022 | 重新思考单阶段3D目标检测中的IoU优化
目标检测模型的评价标准总结
Vision Transformer和MLP-Mixer联系和对比
Visual Attention Network
TensorRT教程(一)初次介绍TensorRT
TensorRT教程(二)TensorRT进阶介绍
从零搭建Pytorch模型教程(一)数据读取
从零搭建Pytorch模型教程(二)搭建网络
从零搭建Pytorch模型教程(三)搭建Transformer网络
从零搭建Pytorch模型教程(四)编写训练过程--参数解析
从零搭建Pytorch模型教程(五)编写训练过程--一些基本的配置
从零搭建Pytorch模型教程(六)编写训练过程和推理过程
从零搭建Pytorch模型教程(七)单机多卡和多机多卡训练
从零搭建pytorch模型教程(八)实践部分(一)微调、冻结网络
从零搭建pytorch模型教程(八)实践部分(二)目标检测数据集格式转换
【技术文档】《从零搭建pytorch模型教程》122页PDF下载
入门必读系列(十五)神经网络不work的原因总结
入门必读系列(十四)CV论文常见英语单词总结
入门必读系列(十三)高效阅读论文的方法
入门必读系列(十二)池化各要点与各方法总结
入门必读系列(十一)Dropout原理解析
入门必读系列(十)warmup及各主流框架实现差异
入门必读系列(九)彻底理解神经网络
入门必读系列(八)优化器的选择
入门必读系列(七)BatchSize对神经网络训练的影响
入门必读系列(六)神经网络中的归一化方法总结
入门必读系列(五)如何选择合适的初始化方法
入门必读系列(四)Transformer模型
入门必读系列(三)轻量化模型
入门必读系列(二)CNN经典模型
入门必读系列(一)欠拟合与过拟合总结
相关文章:

姿态估计端到端新方案 | DirectMHP:用于全范围角度2D多人头部姿势估计
前言 现有的头部姿势估计主要集中在具有预先检测到的正面头部的单个人,这依赖于单独训练的面部检测器,不能很好地泛化到完整的视点。在本文中,作者关注全范围 MPHPE 问题,并提出了一个名为 DirectMHP 的直接端到端简单基线&#x…...

jvm学习的核心(五)---垃圾回收算法和常见垃圾回收器
文章目录1.垃圾回收算法**1.1. 标记阶段****1.2. 清除阶段**1.2.1.标记清除算法1.2.2.标记复制算法1.2.3.标记整理算法1.3.引用2.常见的垃圾回收器2.1.Serial回收器2.2.ParNew回收器2.3.Parallel回收器2.4.CMS回收器<font color red>2.5.G1垃圾回收器ZGC回收器ÿ…...

亿级高并发电商项目-- 实战篇 --万达商城项目 二(Zookeeper、Docker、Dubbo-Admin等搭建工作
👏作者简介:大家好,我是小童,Java开发工程师,CSDN博客博主,Java领域新星创作者 📕系列专栏:前端、Java、Java中间件大全、微信小程序、微信支付、若依框架、Spring全家桶 Ǵ…...

【C#基础】 C# 数据类型总结
序号系列文章0【C#基础】初识编程语言C#1【C#基础】C# 程序通用结构总结2【C#基础】C# 程序基础语法解析文章目录前言数据类型一. 值类型(Value types)二. 引用类型(Reference types)三. 指针类型(Pointer types&#…...

格子玻尔兹曼法介绍
1 LBM简介格子玻尔兹曼法(Lattice Boltzmann Method)简称LBM,是一种CFD算法,可求解流动、传热等常见CFD问题。LBM基于格子玻尔兹曼方程(LBE),从介观尺度(mesoscope)描述了…...

活动星投票在时间的河流上造园分组怎么设置如何进行分组报名
“在时间的河流上造园”网络评选投票_免费小程序运行系统_企业有关的投票_微信投票的应用小程序投票活动如何做?很多企业在运营当中,都会通过投票活动来进行推广,从而达到吸粉、增加用户粘度等效果。而此类投票活动,通过小程序就可…...

c#小笔记本-基础
c#基本知识一.基础操作1.打印-writeline,write2.输入-readline,readkey二.变量1.折叠代码-#region,#endregion2.变量类型(在c语言变量类型上新增的)三.常量-const四.转义字符五.显示转换1.括号强转-低精度装高精度2.parse法-作用于字符串3.co…...

DamiCMS SQL注入分析
2023年将会持续于B站、CSDN等各大平台更新,可加入粉丝群与博主交流:838681355,为了老板大G共同努力。 一、入口文件(单入口文件模式) 看一下Index.php文件代码:引入了php_safe.php文件 查看一下php_safe.php防御文件: 对变量e…...

图傅里叶变换的推导和理解
把传统的傅里叶变换以及卷积迁移到Graph上来,核心工作其实就是把拉普拉斯算子的特征函数 e − i ω t e^{-i\omega t} e−iω...

Java八股文(Java面试题)
JDK、JRE、JVM 三者之间的关系?JDK(Java Development Kit):是Java开发工具包,是整个Java的核心,包括了Java运行环境JRE、Java工具和Java基础类库。它能够创建和编译程序。JRE(Java Runtime Envi…...

java ssm idea高校图书借阅管理系统设计2z87z
本论文是以构建高校图书管理系统设计为目标,使用 jsp制作,由前台用户图书借阅、后台管理员图书分类两大部分组成。着重论述了系统设计分析,系统的实现(用户注册模块,用户登录,用户图书借阅模块,…...

电脑重装系统注册表恢复方法
今天讲关于大家的电脑在遇到一些故障的时候,以及电脑用久了之后会卡顿,那么这时候大家一般都会给电脑重装系统。重装系统之后却发现自己电脑里的注册表不见了,重装系统后怎么恢复注册表?小编就带着大家一起学习重装系统注册表恢复到底是怎…...
信道建模(大尺度、小尺度、莱斯衰落、瑞利衰落、莱斯信道、瑞利信道)
一、大尺度衰落与小尺度衰落 大尺度衰落由收发两端的距离决定,功率上建模为: 小尺度衰落由收发两端的环境决定,比如是否有遮挡,场景有室内、室外、平原、山村、城镇等,这些环境影响到收发两端是否有直达链路࿰…...

2022年12月电子学会Python等级考试试卷(四级)答案解析
青少年软件编程(Python)等级考试试卷(四级) 一、单选题(共25题,共50分) 1. 有n个按名称排序的商品,使用对分查找法搜索任何一商品, 最多查找次数为5次,则n的值可能为?&…...

通过实例告诉你lua中ipairs到底是怎么遍历的!
这个的文章挺多的,但是有好几种说法并且不全。有人说是忽略手动设定值,有人说是从1开始数,直到序号断开,还有人给出结果,但是和我实机测试的效果不一样, 所以我自己总结一篇。经过我的测试和总结得到以下结…...

Axios异步请求 json格式
Axios是Ajax的一个框架,简化Ajax操作。需要axios.min.js 和vue.js的jar。发送普通参数异步请求以及相应异常情况客户端向服务器端异步发送普通参数值:- 基本格式: axios().then().catch()- 示例:axios({ // axios表示要发送一个异步请求metho…...

Postgresql源码(100)Portal与事务的关系(顶层事务与子事务)
1 总结 portal与事务有强绑定的关系,由portal->createSubid变量记录关联关系。如果为1表示顶层事务,关联的是子事务。 不论是顶层事务还是子事务,提交、回滚时只会处理自己创建出来的portal。 顶层事务会清理非活跃状态的Portalÿ…...

Java、JSP企业快信系统的设计与实现
技术:Java、JSP等摘要:计算机网络的出现到现在已经经历了翻天覆地的重大改变。因特网也从最早的供科学家交流心得的简单的文本浏览器发展成为了商务和信息的中心。到了今天,互联网已经成为了大量应用的首选平台,人们已经渐渐习惯了…...

1.2(完结)C语言进阶易忘点速记
1.大端存储:高权位数字放在低地址处,低权位数字放在高地指处。(以字节为单位) 2.小端存储:低权位数字放在低地址处,高权位数字放在高地址处。(以字节为单位) 3.变量(char类型)进行运算的时候一定要注意整形提升与截断࿰…...

雅思经验(十一)
写作:WRITINGTASK 2Governments should spend money on railways rather than roads.To what extent do you agree or disagree with this statement?Give reasons for your answer and include any relevant examples from your own knowledge or experience.思路…...

C++中的智能指针
1.RAII 与引用计数了解 Objective-C/Swift 的程序员应该知道引用计数的概念。引用计数这种计数是为了防止内存泄露而产生的。 基本想法是对于动态分配的对象,进行引用计数,每当增加一次对同一个对象的引用,那么引用对象的引用计数就会增加一次…...

LSTM已死,Transformer当立(LSTM is dead. Long Live Transformers! ):下
2017 年,Google 在论文 Attention is All you need 中提出了 Transformer 模型,其使用 Self-Attention 结构取代了在 NLP 任务中常用的 RNN 网络结构。而且实验也证明Transformer 在效果上已经完败传统的 RNN 网络。Transformer 的整体模型架构如下图所示。尽管它看起来还是很…...

OJ万题详解––[NOIP2004 提高组] 合并果子(C++详解)
目录 题目 分析 参考代码 题目 题目描述 一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的…...

MySQL-字符集和比较规则
在计算机中只能存储二进制数据,那该怎么存储字符串呢?当然是建立字符与二进制数据的映射关系 了,建立这个关系最起码要搞清楚两件事: 界定清楚字符范围:需要把哪些字符映射成二进制数据?编码与解码&#x…...

微搭低代码从入门到精通12-网格布局
开发小程序首要的就是考虑布局的问题,我们在以前的版本只能选择普通容器结合图片和文本组件来构建页面。 使用通用组件布局也可以,但有个问题是你要先学习CSS,要懂布局的概念,比如需要知道啥是flex布局,然后还得熟悉每…...

【c语言】二叉树
主页:114514的代码大冒险 qq:2188956112(欢迎小伙伴呀hi✿(。◕ᴗ◕。)✿ ) Gitee:庄嘉豪 (zhuang-jiahaoxxx) - Gitee.com 引入 我们之前已经学过线性数据结构,今天我们将介绍非线性数据结构----树 树是一种非线性的…...

六、Java框架之SpringBoot
黑马课程 文章目录1. SpringBoot入门1.1 SpringBoot入门案例步骤1:创建SpringBoot项目高版本springboot常见错误步骤2:创建BookController步骤3:启动服务器并运行程序pom.xml示例1.2 官网创建SpringBoot1.3 SpringBoot工程快速启动问题导入打…...

「Python|环境安装|Windows」如何在Windows上安装Python环境?
本文主要介绍如何在Windows上安装Python,帮助初学者或者非程序员伙伴快速搭建可以运行python代码的环境。 文章目录安装python做一点小配置验证python如何安装指定版本的python编程语言的环境搭建一直是学习编程的第一道门槛。 对于如何在Linux系统上安装指定版本的…...

人工智能轨道交通行业周刊-第33期(2023.2.6-2.12)
本期关键词:高铁激光清洗、高铁确认列车、无线通信系统、推理服务优化、量子信息技术 1 整理涉及公众号名单 1.1 行业类 RT轨道交通中关村轨道交通产业服务平台人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交通联盟V…...

五分钟看懂Java字节码:极简手册
字节码新手很容易被厚厚的 JVM 书籍劝退,即使我看过相关书籍,工作真正用到时也全忘了,还得现学。 等我有了一定的字节码阅读经验,才发现字节码其实非常简单,只需要三步就能快速学会: 先了解 JVM 的基本结…...