人体动捕相关算法

news2024/9/25 22:57:57

SMPL、SMPLify

SMPL(Skinned Multi-Person Linear (SMPL) Model)Keep it SMPL: Automatic Estimation of 3D Human Pose and Shape from a Single Image,2015
在这里插入图片描述

SMPL

关节点数量:K=23,其中0号节点(不在K之中)为root,其角度值为人体的Global Orientation
顶点数量:N=6890

将人体建模为一个线性混合蒙皮模型。
在这里插入图片描述

  • Tp为T-pose与Shape和Pose的线性叠加
    在这里插入图片描述
    • Shape为Shape基与Shape参数的线性叠加,其中Sn为扫描的数据经过PCA得到的10个主成分
      在这里插入图片描述
    • Pose也会影响mesh的成型,如行走、奔跑等会影响到跨部的mesh
      Pose的计算如下
      在这里插入图片描述
      其中R为通过Rodrigues公式,将旋转角转为旋转矩阵
      Pn为9K=207维(K=23,root的旋转只影响朝向,不影响mesh, 9K= 23 * 9=207)个混合成型的基本pose模版
      在这里插入图片描述
      这个Pn实际上也是一个学习到的矩阵,用以将pose与静默pose之间的差异映射到N个顶点上
  • J是一个线性回归器,用于从mesh顶点回归24个关节点的坐标
    其本质上也是一个变换矩阵,N * 3 -> ( K + 1 ) * 3
    在这里插入图片描述
  • w为混合权重(blend weights) 表示顶点i受到关节k的旋转的影响权重
  • W ( . ) 为标准混合蒙皮函数(standard blend skinning function)
    可以是线性的,也可是双四元素,被用于平滑关节中心的混合权重来旋转顶点
    在这里插入图片描述

SMPLify

从单张无约束的图片中估计3D人体的pose和shape的方法,是一种基于优化的方法。
首先使用DeepCut来预测2D身体关节位置,然后将统计人体模型SMPL拟合到2D关节。同时提出了利用3D模型来抑制身体部位互穿现象的方法。

  • Loss
    在这里插入图片描述
    • E J E_J EJ: 关节重投影损失
      在这里插入图片描述
      R θ R_{\theta} Rθ对Joints进行旋转, Π k {\Pi_k} Πk为相机投影, ρ {\rho} ρ是Geman-McClure惩罚函数, w i w_i wi为关键点的置信度
    • E θ E_{\theta} Eθ: 先验pose损失,其中的参考对象为CMU数据集训练的pose先验:用MoSh算法从CMU的marker数据上得到对应的SMPL参数,得到大约100万个姿态的高斯分布。为了计算效率进行了近似。
      在这里插入图片描述
    • E α E_{\alpha} Eα:膝盖和肘部的弯曲惩罚项
      在这里插入图片描述
      i i i表示与肘部和膝盖弯曲有关的pose参数,当这些部位的旋转角为正( 关节反弯曲)时,会收到较大的惩罚。
    • E s p E_{sp} Esp:互穿惩罚。把人体的各部分近似成一个胶囊( 重心在 C ( θ , β ) C(\theta, \beta) C(θ,β),半径为 σ ( β ) \sigma(\beta) σ(β)),
      -在这里插入图片描述
    • E β E_{\beta} Eβ:shape的正则
      在这里插入图片描述
  • 优化过程
    • 第一步,估计相机的平移参数和人体方向(Pose[:3])
      • 先通过躯干长度(肩部和臀部的关节点距离)和2D关键点距离之间的比例关系,以及默认焦距和相机距离之间比例关系,估算相机距离(相机平移的Z轴项):est_d = focal_length * (mean_height3d / mean_height2d)
      • 通过最小化躯干长度的投影损失,估算相机平移参数和人体全局方向
    • 第二步,通过迭代的方式,按照上面的loss,优化SMPL模型的 β \beta β θ \theta θ参数。
    • 其中,若2D关键点的左右肩膀的距离小于预定的阈值,将会对第二步中的人体朝向进行翻转,分别进行优化,并以loss较小的朝向进行参数更新。

SMPL-X、SMPLify-X

SPIN

HMR

PARE

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

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

相关文章

一区黏菌算法+双向深度学习+注意力机制!SMA-BiTCN-BiGRU-Attention黏菌算法优化双向时间卷积双向门控循环单元融合注意力机制多变量回归预测

一区黏菌算法双向深度学习注意力机制!SMA-BiTCN-BiGRU-Attention黏菌算法优化双向时间卷积双向门控循环单元融合注意力机制多变量回归预测 目录 一区黏菌算法双向深度学习注意力机制!SMA-BiTCN-BiGRU-Attention黏菌算法优化双向时间卷积双向门控循环单元…

keil的debug功能

文章目录 一.窗口介绍二.功能2.1 debug断点调试和窗口变量2.2 四个花括号功能2.2.1 进去函数和下一步功能2.2.2 跳过函数和跳过该行代码功能2.2.3 函数内部跳出功能2.2.4 执行到光标处 2.3 查看内部寄存器 一.窗口介绍 二.功能 2.1 debug断点调试和窗口变量 先打开下图debug断…

Scanner流程控制语句

1. Scanner类 Scanner的意思是扫描 Scanner是JDK提供的一个类,位于java.util包下,所以我们如果需要使用则必须导包,导包的语句必须在声明包之后,在声明类之前 Scanner类是用来接受用户输入的各种信息 Scanner类提供了用于接受…

Ubuntu中交叉编译armdillo库

网上关于交叉编译armdillo库比较少,借鉴了一些但是在前几天编译时总是磕磕绊绊,于是写一个详细的编译过程。 交叉编译armdillo库包含两个步骤:交叉编译依赖库和交叉编译armdillo库。armdillo官网介绍依赖库如下图所示: 需要注意如…

01【MATLAB】最小二乘系统辨识

目录 1.系统辨识的定义及其分类 1.1 系统辨识的定义 1.2 系统辨识的分类 2.参数模型 3.系统辨识的步骤 一、最小二乘法(Least Squares Method)一般步骤 二、LSM原理及应用 三、LSM在控制系统建模中的应用 1.系统辨识的定义及其分类 1.1 系统辨识的…

Leetcode面试经典150题-201.数字范围按位与

给你两个整数 left 和 right ,表示区间 [left, right] ,返回此区间内所有数字 按位与 的结果(包含 left 、right 端点)。 示例 1: 输入:left 5, right 7 输出:4示例 2: 输入&…

Kolmogorov-Arnold——代替 MLP以提高模型的代表性和性能

前言 论文地址:https://arxiv.org/abs/2409.10594 源码地址:https://github.com/Adamdad/kat.git 传统的变压器模型使用多层感知器(MLP)来混合通道间的信息,而本文则使用了科尔莫哥罗德网络(KAN&#xff0…

微信第三方开发平台接入公众号整体技术方案

1.1 公众号简介 官网地址:微信公众平台 微信公众号 就像是你在微信里的一个“官方小号”,专门用来发布内容、和粉丝互动。用户可以关注你的公众号,收到你发布的消息,就像朋友圈那样。公众号还能提供很多实用功能,比如…

在 React 中模拟输入

需求 与 Bug 项目的 C# 桌面端使用 CefSharp 内嵌了一个三方网站,在外部实现了一个登录控件,外部登录后希望内嵌的三方网站自动登录,实现代码如下: browser.ExecuteScriptAsync($"document.getElementsByName(username)[0]…

s3c2440——ADC模数转换器,Linux驱动编程——u-boot

一、ADC 模拟:连续;数字:离散。 模拟信号一般指连续变化的电压值。转换的步骤:采样、量化。 ADC中soc电压转为数字信号的方法:逐次逼近法。 分辨率:nbit;表示一个电压比较器比较10次&#xf…

CoreDNS实现跨集群service解析实践

CoreDNS实现跨集群service解析实践 背景介绍使用条件实现方案 CoreDNS是一款使用Go语言实现的专为云原生应用而生的DNS服务器。本文介绍CoreDNS在特定实际场景下的一种进阶使用实践,也许能为其他也在使用CoreDNS做服务发现的同学提供一些启发和思考。 背景介绍 在…

三星推出990 EVO Plus固态硬盘,支持PCIe 4.0性能出色

容量高达4TB,提供增强的性能和能效。性能卓越,随机读写速度分别为为 1,050K IOPS 和 1,400K IOPS。 韩国——2024年9月25日—三星电子于今天宣布推出990 EVO Plus固态硬盘,为其固态硬盘产品线再添新成员。990 EVO Plus 支持 PCIe 4.0和最新的…

Icarus翼星求生教你使用服务器开服

1、购买后登录服务器(百度莱卡云游戏面板) 登录面板的信息在绿色的登陆面板按键下方,不是你的莱卡云账号 进入控制面板后会出现正在安装的界面,大约10分钟左右就能安装完成 2、创建端口 点击目录上的网络,再次页面下点…

kali-linux-2023.4 安装与配置

kali官网 作者:程序那点事儿 日期:2024/01/15 21:34 进入kali官网,点到下载页面 选择安装方式(本次私用虚拟机安装)。裸机安装是指,先要安装虚拟机(例如:CentOS7&#xff09…

【算法】贪心+堆排序实现大根堆及标准库容器类的融合使用

📢博客主页:https://blog.csdn.net/2301_779549673 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📢本文由 JohnKi 原创,首发于 CSDN🙉 📢未来很长&#…

centos7安装Redis单机版

一、检查是否有GCC环境 gcc --version # 提示-bash: gcc: 未找到命令 说明没有gcc环境# 安装gcc环境 yum install gcc# 如果yum源报错 # 1.检查网络是否正常 ping www.baidu.com # 2.备份当前的yum源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo…

IntraWeb制作汉堡菜单

IntraWeb开发web网站时如何制作手机页面? delphi源代码:示例两列布局带顶部汉堡菜单(兼容电脑与手机) 功能:交互式网页,两列布局,顶部汉堡菜单,点击汉堡图标关闭左侧栏,…

【NLP】基于“检测器-纠错器”中文文本纠错框架

前言 许多方法将中文拼写纠正(检测和纠正给定中文句子中的错误字符)视为序列标注任务,并在句子对上进行微调。一些方法使用错误检测器作为初步任务,然后将检测结果用于辅助后续的错误纠正过程。然而,现有方法在使用检…

RIFormer:保持你的视觉主干有效但移除令牌混合器

摘要 https://arxiv.org/pdf/2304.05659 本文研究了如何在去除其基本构建块中的标记混合器(token mixers)的同时保持视觉主干的有效性。标记混合器作为视觉变换器(Vision Transformers, ViTs)的自注意力机制,旨在实现…

java项目之新闻稿件管理系统(源码+文档)

项目简介 新闻稿件管理系统实现了以下功能: 新闻稿件管理系统的主要使用者管理员功能有个人中心,用户管理,记者管理,审批员管理,新闻分类管理,新闻信息管理,系统管理等。记者发布新闻信息&…