[Paper Reading] Fusing Monocular Images and Sparse IMU Signals for Real-time Human Motion Capture

news/2024/11/13 19:08:14/文章来源:https://www.cnblogs.com/fariver/p/18541715

目录
  • 名称
  • TL;DR
  • Method
    • Local Pose Estimation
      • RNN-P1
      • RNN-P2
      • RNN-P3
    • Global Translation Estimation
      • RNN-T1
      • RNN-T2
      • RNN-T3
    • Hidden State Feedback Mechanism
  • Experiment
  • 效果可视化
  • 总结与发散
  • 相关链接

名称

link
时间:23.09
作者与单位:

主页:
https://github.com/shaohua-pan/RobustCap

TL;DR

融合IMU与视觉信号做动捕是新Topic,IMU能够弥补视觉不足(FOV外、极端遮挡、光照 等)。方法层面使用双分支来处理两套坐标系,即IMU在人体root坐标系下估计body pose,同时会将IMU信号转到Camera坐标系下与视觉信号融合。实验证明这种方法能够打败 纯视觉、纯IMU及其它两者融合的方案。

Method

Local Pose Estimation

RNN-P1

输入6个IMU的rot与acc共12D的源数据,预测root坐标系下的相对joint坐标。

RNN-P2

结合视觉信息,预测camera坐标系下的相对坐标,Loss与上述相同。

\(x_c\)是Camera系下的IMU信息,由\(x_r\)从root系下转换而来。
\(P_{2d}\)是2D图像关节点(MediaPipe得出)变换至归一化平面点。
\(\sigma\)表示每个关节点置信度。

RNN-P3

用来融合两个坐标系下position,得到pose rotation。
step1:将camera系下\(p_c^e\)转到root系下,与\(p_c^e\)进行融合(直接用关节点置信度加权平均),再结合\(x_r\)预测joint rotations,Loss参考下面。

Global Translation Estimation

多模态预测root position及融合

RNN-T1

预测是否踩地,参考TransPose

RNN-T2

预测root点速度,通过积分来获得root position,参考TransPose

RNN-T3

用来通过视觉2D点预测camera坐标系下的root position
最终,根据置信度融合视觉与IMU的root position

Hidden State Feedback Mechanism

主要解决初始动作捕捉的问题(RNN模型中的hidden state对于不同初始姿态使用相同的hidden state),这是不合理的。这里提出的不同模态的hidden state信息交互来缓解这类Badcase。

这篇文章里面的 Hidden State Feedback Mechanism章节主要在用什么方法,解决什么问题? FromChatGPT(这篇文章里面的 Hidden State Feedback Mechanism章节主要在用什么方法,解决什么问题? ) 这篇文章中的“Hidden State Feedback Mechanism”章节主要介绍了一种用于增强双坐标策略中两个分支的方法,解决的问题是在极端输入情况下如何提高运动捕捉的准确性和鲁棒性。具体来说,这个方法通过在两个坐标系统之间交换信息,使得在一种信号(视觉或惯性)不可靠时,另一种信号可以对结果进行校正和补充。

该机制主要包含以下几个关键点:

双坐标策略的局限性:在双坐标策略中,两个分支(一个基于视觉信号,另一个基于惯性测量单元IMU信号)独立运行,没有相互之间的信息交流。这可能导致在某些情况下,如视觉信号不可用或IMU信号漂移时,单独的分支无法提供准确的运动捕捉结果。

隐藏状态的初始化问题:对于基于RNN的模型,如果使用固定的初始隐藏状态,可能会导致在跟踪过程中出现误差,因为人的起始姿势可能不同,错误的初始状态会导致网络无法根据变化的输入信号正确调整其隐藏状态。

隐藏状态反馈机制:为了解决上述问题,文章提出了一种隐藏状态反馈机制。这个机制允许在两个坐标系统之间进行信息交换,使得在某个分支表现良好时,可以帮助另一个分支提高性能。

具体实现:对于RNN-P1(基于根坐标系的局部姿势估计),当视觉信号足够好时,可以使用从RNN-P2(基于相机坐标系的局部姿势估计)获得的关节位置来初始化RNN-P1的隐藏状态。对于RNN-T3(全局位置估计),当视觉信号不可用时,可以使用最终融合的结果来更新其隐藏状态,以减少视觉信号不可用时的漂移。

效果:通过这种机制,当视觉信号恢复时,系统可以立即恢复到合理且与之前输出一致的结果,避免了突然的变化,特别是在目标重新进入相机视野时。

总的来说,隐藏状态反馈机制通过在双坐标策略的两个分支之间动态地交换信息,提高了系统在面对极端情况时的鲁棒性和准确性。

Experiment


效果可视化

总结与发散

  • 高低频率的融合没有重点介绍
  • relative position与rotation与global的分开预测

相关链接

https://github.com/shaohua-pan/RobustCap

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

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

相关文章

HarmonyOS Next 入门实战 - 创建项目、主题适配

​开发一个简单的demo,其中涉及一些鸿蒙应用开发的知识点,其中涉及导航框架,常用组件,列表懒加载,动画,深色模式适配,关系型数据库等内容,在实践中学习和熟悉鸿蒙应用开发。 ​​ ​​ 首先下载并安装DevEco Studio开发环境,下载完成后按照提示安装即可,过程不在多说…

rust学习八、包和模块

总体上,也没有什么特别的地方,和其它语言比较起来。 我们可以看懂熟悉的字眼:包括、模块、use、公共等等 如果是英文,则需要知道crate、pub。 本章节对应相关书籍的第七章节. 一、一个rust可执行程序的大体结构 就本章节而言,尚未接触到一个非常复杂的工程结构,据说有什么…

starrycan的pwn学习记录1

一.Introducation 0x01 简介CTF 0x02 什么是pwn ”Pwn”是一个黑客语法的俚语词,是指攻破设备或者系统 。发音类似“砰”,对黑客而言这就是成功实施黑客攻击的声音--砰的一声,被“黑”的电脑或手机就被你操纵了。 CTF中的pwn CTF中的PWN主要是针对于二进制漏洞挖掘与利用,通…

计算机组成原理与操作系统 第二章 处理机组成与管理

目录1.CPU的功能和组成1.1CPU的四大功能1.2CPU的基本组成1.3 一条指令如何在CPU内运行2.指令系统2.1机器语言与指令2.1.1基本概念2.1.2一条指令一般应包含的信息2.1.3指令的类型与功能2.1.4寻址方式2.2指令格式的设计2.2.1基本概念2.2.2指令类型2.2.3操作码类型2.2.4指令设计2.…

UWB无线通信技术

UWB定位与通信技术标准第2章 UWB无线通信技术 UWB(超宽带)技术最早诞生于无线通信领域,该新兴技术一出现就备受关注UWB信号有着极大的带宽,其时间分辨率高、抗多径效应能力强,被认为是高速率短距离无线通信中具有很强竞争力的候选方案之一为此,本章寻根溯源,从UWB无线通…

极速启动,函数计算弹性降本能力再升级

本文将深入探讨函数计算如何通过技术革新实现提效降本,以及其在 AI 业务、数据处理和 Web 应用等多个领域的广泛应用。作者:墨飏 在数字化转型的大潮中,云计算成为推动创新和优化业务流程的关键力量。作为阿里巴巴集团的核心产品之一,函数计算(Function Compute)引领着 S…

用函数实现模块化程序设计四

数组作为函数参数数组作为函数参数 调用有参函数时,需要提供实参,实参可以是常量、变量或表达式 数组元素的作用与变量相当,一般来说,凡是变量可以出现的地方,都可以用数组元素代替,因此,数组元素也可以用作函数实参,其用法与变量相同,向形参船体数组元素的值。此外,…

Vulnhub W1R3S: 1.0.1

Vulnhub W1R3S: 1.0.1 0x01:端口扫描 主机发现,靶机ip:192.168.231.133 nmap -sn 192.168.231.0/24-sn 仅主机扫描 /24 扫描c段详细全端口扫描 nmap -sT -sC -sV -O -p21,22,80,3306 192.168.231.133 -oA /root/scan/1/-sT: 以TCP进行扫描; -sC:使用 nmap 的默认脚本集合进…

永宏BI 自定义绘图(环状图)

结果样式:绑定数据:自定义JS代码:点击查看代码 option = {tooltip: {trigger: item,formatter: {a} <br/>{b}: {c} ({d}%)},series: [{type: pie,radius: [50%, 70%],avoidLabelOverlap: false,label: {show: false,position: center},emphasis: {label: {show: false…

Privilege Escalation(权限提升)

Privilege Escalation(权限提升) What the Shell? What is a shell shell 是我们与命令行环境 (CLI) 交互时使用的工具。换句话说, Linux中常见的 bash 或 sh 程序都是 shell 的例子,Windows 上的 cmd.exe 和 Powershell 也是如此。 简而言之,我们可以强制远程服务器向我们…