当前位置: 首页 > news >正文

【论文阅读】-姿态识别

记录论文阅读,希望能了解我方向的邻域前沿吧

粗读

第一篇

ATTEND TO WHO YOU ARE: SUPERVISING SELF-ATTENTION FOR KEYPOINT DETECTION AND INSTANCE-AWARE ASSOCIATION
翻译:https://editor.csdn.net/md?not_checkout=1&spm=1001.2014.3001.5352&articleId=129070593
无代码
摘要:
本文提出了一种利用Transformer解决关键点检测和实例关联问题的新方法。对于自底向上(Bottom up)的多人姿态估计模型,需要检测关键点并学习关键点之间的关联信息。我们认为,Transformer可以完全解决这些问题。具体来说,vision Transformer中的自注意度量任何一对位置之间的依赖关系,这可以为关键点分组提供关联信息。然而,朴素注意模式仍然没有被主观控制,因此不能保证关键点总是注意到它们所属的实例。为了解决这一问题,我们提出了一种监督多人关键点检测和实例关联的自我注意方法。通过使用**实例掩码(instance mask)**来监督自注意,使其具有实例感知性,我们可以根据成对的注意分数将检测到的关键点分配给相应的实例,而无需使用预定义的偏移向量字段或像基于CNN的自底向上模型那样的嵌入。该方法的另一个优点是,可以直接从监督注意矩阵中获得任意人数的实例分割结果,从而简化了像素分配流程。通过对COCO多人关键点检测任务和人实例分割任务的实验,验证了该方法的有效性和简单性,为特定目的的自我注意行为控制提供了一种很有前景的方法。

本文采用自底向下的方法,自底向上的方法需要首先检测所有的身体关节,然后将它们分组到人体实例中。
文中,我们探讨是否我们可以利用实例语义线索,来将检测到的关键点分组到单独的实例中。我们的主要直觉是,当模型预测特定关键点的位置时,它可能知道该关键点所属的人类实例区域,这意味着模型将相关关节隐含地关联在一起。例如,当一个肘关节被识别时,模型可能会在邻近的手腕或肩膀上识别出它的强空间依赖性,但在其他人的关节上识别出弱空间依赖性。因此,如果我们可以在模型中读出这些学习和编码的信息,检测到的关键点可以被正确地分组到实例中,而不需要人类预定义的联想信号的帮助。
在这里插入图片描述
提到2个模式
朴素自我注意模式和监督自我注意模式:关节点分组提供关联信息。
我们认为,基于自我注意的Transformer满足这一要求,因为它可以在任何一对位置之间提供特定于图像的成对相似性,而不受距离限制,并且产生的注意模式显示了与对象相关的语义。因此,我们尝试利用自我注意机制进行多人姿态估计。但是,我们没有采用以单人区域作为输入的自顶向下策略,而是向Transformer提供包含多人的高分辨率输入图像,并期望它输出编码多人关键点位置的热图。初步结果表明,
1)Transformer输出的热图也能准确响应多个候选位置的多人关键点;
2)检测到的关键点位置之间的注意得分在同一个体内较高,而在不同个体间较低。
基于这些发现,我们引入了一种基于注意力的解析算法来将检测到的关键点分组到不同的人实例中。

不幸的是,naive的自我注意力并不总是表现出令人满意的特性。在许多情况下,一个被检测到的关键点也可能与那些属于不同的人实例的关键点具有相对较高的注意力得分。
解决办法:
利用一个损失函数,通过每个人实例的掩码来显式地监督每个人实例的注意区域。

模型
在这里插入图片描述
模型体系结构由三个部分组成:一个常规ResNet、一个常规Transformer编码器和几个转置的卷积层。两种类型的损失函数被用来监督模型训练。模型的最终输出由groundtruth关键点热图监督。直接的自我注意层之一由实例掩码稀疏地监督。特别地,我们根据每个人实例的可见关键点位置对所选注意层的注意矩阵行进行采样,将其重塑为类似于2d的maps,然后使用每个实例的掩模来监督average map。在该图中,为了简单起见,我们只显示每个实例的几个关键点。

网络架构参照Transpose设计

naive self-attention 我们从热图中获取关键点位置,并进一步可视化这些位置的关注区域。如图1的例子所示,使用朴素的自注意矩阵作为关联参考。

关键点分组

掩膜预测

http://www.lryc.cn/news/24366.html

相关文章:

  • 3.1 模拟栈+表达式求值
  • 【Python语言基础】——Python 创建表
  • 外贸建站,为什么别人的询盘更多更精准?
  • Gateway集成Netty服务
  • SpringMVC控制层private方法中出现注入的service对象空指针异常
  • 【Unity】P4 脚本文件(基础)
  • (2023版)零基础入门网络安全/Web安全,收藏这一篇就够了
  • Vue3电商项目实战-登录模块2【05-登录-表单校验、06-登录-消息提示组件封装、07-登录-账户登录、08-登录-手机号登录、09-退出登录】
  • Python 中都有哪些常见的错误和异常?
  • 51单片机-1
  • 【Azure 架构师学习笔记】-Azure Data Factory (4)-触发器详解-事件触发器
  • 【项目设计】高并发内存池(三)[CentralCache的实现]
  • 2023年,35岁测试工程师只能被“优化裁员”吗?肯定不是····
  • gitlab部署使用,jenkins部署使用
  • 从零开始的机械臂yolov5抓取gazebo仿真(环境搭建篇下)
  • GCC编译器 MinGW的下载安装使用教程
  • 【项目实战】SpringMVC配置全局属性,是实现WebMvcConfigurer接口,还是直接继承WebMvcConfigurationSupport类?
  • 房产营销、地产中介如何高效低成本获客?
  • Kotlin-作用域函数
  • QNX7.1 交叉编译开源库
  • 论文投稿指南——中文核心期刊推荐(外国语言)
  • Fabric系列 - 链码-内部链码的特性
  • NetApp SnapCenter 备份管理 ——借助应用程序一致的数据备份管理,简化混合云操作
  • Java内置队列和高性能队列Disruptor
  • 比特数据结构与算法(第四章_下)二叉树的遍历
  • chatGPT是什么
  • jenkins漏洞集合
  • 用canvas画一个炫酷的粒子动画倒计时
  • Java技术学习——Maven相关知识
  • C++ 认识和了解C++