【图像处理】A Skinned Multi-Person Linear Model(SMPL)浅解析

  • SMPL的原理
  • 结语

SMPL的原理


首先,博主不做3D建模的工作(尽管这项工作真的很酷),学习blender也仅是出于兴趣,因此,这篇博文中对SMPL模型的理解会有部分不足,内容仅供参考。


《SMPL: A Skinned Multi-Person Linear Model》的作者在文章中写到,一个3D人体mesh由6890个网格顶点和23个关节点组成

  • N=6890N=6890N=6890,3D人体mesh的网格顶点总数
  • K=23K=23K=23,3D人体mesh的关节点总数

同时,作者指出,SMPL将3D人体mesh的状态分为shape和pose:

  • shape影响人体mesh的形状(高矮胖瘦)
  • pose影响人体mesh的姿态(动作姿势)

因为是在三维空间,一个点有三个坐标(x,y,zx,y,zx,y,z),故一个标准3D人体mesh的6890个mesh顶点可表示为:

  • TTT,一个6890∗36890*36890∗3的矩阵。注意,这个矩阵是常数值(对于单独一种性别的mesh来说)

同理,一个标准3D人体mesh的23个关节点可表示为:

  • JJJ,一个24∗324*324∗3的矩阵,23个关节点+1个root orientation。注意,这个矩阵是常数值(对于单独一种性别的mesh来说)

另外,还有blend weight,也就是每一个关节点的坐标变化对每一个mesh顶点坐标变化的影响

  • WWW,一个6890∗246890*246890∗24的矩阵。注意,这个矩阵的值需要训练得到

接下来,文章作者定义了影响shape和 pose的两组参数:

  • shape,影响高矮胖瘦:β\betaβ,10个参数,值在-1到1之间
  • pose,影响动作姿势:θ\thetaθ,72个参数,后69个值在-1到1之间,3*23 + 3,影响23个关节点+1个root orientation的旋转。前三个控制root orientation,后面每连续三个控制一个关节点

这10+72个参数,便是以一个标准3D人体mesh为基础,生成不同shape、不同pose的3D人体mesh所需要的参数



如上图,左一是一个标准3D人体mesh,也就是由TTT、JJJ生成,而颜色代表WWW
左二,是改变了shape后的3D人体mesh,也就是由TTT、JJJ,外加β\betaβ的影响生成
右二,是改变了shape和pose后的3D人体mesh,也就是由TTT、JJJ,外加β\betaβ、θ\thetaθ的影响生成
右一,是在右二的基础上,加入了WWW的影响后的结果


SMPL模型,神经网络通过学习得到的什么?

四个权重:

  • weigth:一个6890∗246890*246890∗24的tensor
  • J_regressor:一个24∗689024*689024∗6890的tensor
  • shapedirs:一个6890∗3∗106890*3*106890∗3∗10的tensor
  • posedirs:一个6890∗3∗2076890*3*2076890∗3∗207的tensor(207=23*9,23是关节点的个数,9是旋转矩阵的元素个数)

至于怎么通过这四个权重,联合TTT和JJJ得到3D人体mesh,原文中有相关公式。感兴趣的朋友自行阅读


最后,作者给出了训练得到的权重,给出了标准3D人体mesh的TTT和JJJ,我们只需要改变β\betaβ和θ\thetaθ,就能得到不同的3D人体mesh了


改变β\betaβ对3D人体mesh的影响:(shape,影响高矮胖瘦,10个参数)

  1. β\betaβ值:[1. 0. 0. 0. 0. 0. 0. 0. 0. 0.]

  2. β\betaβ值:[0. 1. 0. 0. 0. 0. 0. 0. 0. 0.]

  3. β\betaβ值:[0. 0. 0. 0. 0. 0.5 0. 0. 0. 0.5]


改变θ\thetaθ对3D人体mesh的影响:(pose,影响动作姿势,72个参数)

  1. 第1个参数是π\piπ,第2个参数是1,其他参数是0
  2. 第1个参数是π\piπ,第4个参数是1,其他参数是0
  3. 第1个参数是π\piπ,第72个参数是1,其他参数是0

结语

如果您有修改意见或问题,欢迎留言或者通过邮箱和我联系。
手打很辛苦,如果我的文章对您有帮助,转载请注明出处。

【图像处理】A Skinned Multi-Person Linear Model(SMPL)浅解析相关推荐

  1. 混合线性模型+mixed linear model+GEEs+GLMM+LMM

    混合线性模型+mixed linear model+GEEs+GLMM+LMM 线性回归 广义线性回归 混合线性模型/线性混合模型 的区别是什么? spss中遇见线性混合模型 价值,意义,目的是什么? ...

  2. voom: precision weights unlock linear model analysis tools for RNA-seq read counts

    voom: precision weights unlock linear model analysis tools for RNA-seq read counts 标准化方式 首先在定义cpm的时候 ...

  3. Google 深度学习笔记 - Limit of Linear Model

    https://www.toutiao.com/a6679981747167298051/ 实际要调整的参数很多 如果有N个Class,K个Label,需要调整的参数就有(N+1)K个 Linear ...

  4. R语言对数线性模型loglm函数_使用R语言进行混合线性模型(mixed linear model) 分析代码及详解...

    1.混合线性模型简介 混合线性模型,又名多层线性模型(Hierarchical linear model).它比较适合处理嵌套设计(nested)的实验和调查研究数据.此外,它还特别适合处理带有被试内 ...

  5. 【李宏毅2020 ML/DL】补充:Structured Learning: Introduction Structured Linear Model

    我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 本次笔记补充视频 BV1JE411g7XF 的缺失部分.在另一个UP主上传的2017课程BV13x411v7U ...

  6. Machine Learning——Linear Model

    本系列博客是我学习周志华的<机器学习(西瓜书)>的自学笔记. 我是零基础学习,因此所写只是书上的知识,肯定不全面,以后随着学习的深入,慢慢补充吧. 基本形式 给定由ddd个属性描述的示例x ...

  7. 线性模型(Linear Model)

    线性模型(Linear Model) 对于给定样本x⃗ \mathbf{\vec{x}},假定其有n维特征,则,x⃗ =(x1,x2,x3,-,xn)T\mathbf{\vec{x}}=(x_1, x ...

  8. 广义线性模型(Generalized Linear Model)之二:Logistic回归

    广义线性模型(Generalized Linear Model)之二:Logistic回归 一.引入:多元线性回归模型 二.Logistic回归模型 三.非条件logistic回归模型 (一)介绍 ( ...

  9. [Watermelon_book] Chapter 3 Linear Model

    Linear Model 基本定义 线性模型简单形式的实际编码 Task Generate data Cost function Gradient descent Training Model eva ...

最新文章

  1. Googlequot;员工quot;曝内幕:Google员工的17个秘密
  2. 计算机组成原理试卷五套,计算机组成原理(五套试题)
  3. Getting Installation aborted (Status 7) ApplyParsePerms: lsetfilecon of /syst...【转】
  4. JQuery:deferred对象的方法
  5. asterisk libxml2
  6. [Hands On ML] 3. 分类(MNIST手写数字预测)
  7. Qt文档阅读笔记-Image QML官方解析与实例
  8. python 单一继承定义_Python学习之单继承与多继承
  9. linux命名管道进程间通信,《Linux 进程间通信》命名管道:FIFO
  10. 微信小程序自动定位城市
  11. 常见debug指令和使用
  12. 【模型理解】KANO模型
  13. windows 7 如何调出快速启动栏
  14. MetaSploit攻击实例讲解------终端下PostgreSQL数据库的使用(包括kali linux 2016.2(rolling) 和 BT5)...
  15. 猜数游戏(实现) 后附源码
  16. 几款漂亮的Eclipse编辑器皮肤 .
  17. TMC4671基于硬件FOC伺服电机控制芯片适应BLDC/PMSM、两相步进、直流有刷、音圈电机
  18. html转pdf 图片跨域问题解决
  19. CTFHub技能树 Web-SSRF 302跳转 Bypass
  20. openid和unionid的区别

热门文章

  1. Fastlane 一键打包/发布APP - 使用记录及踩坑
  2. IE 插件 Trixie 介绍
  3. MATLAB用GARCH模型对股票市场收益率时间序列波动的拟合与预测
  4. 戴尔R620安装server2008 R2系统操作说明
  5. 计算机应用专业总结报告,大专计算机应用专业个人总结报告
  6. Vue-Router 路由重复点击时报错 Uncaught (in promise) NavigationDuplicated:Avoided redundant navigation to curr
  7. FL Studio多少钱,2023年最新FL Studio选购指南
  8. 戴尔dell的R 720服务器设置u盘启动
  9. Vue基础--Vue中的双向绑定v-model指令
  10. SpringBoot集成mybatis拦截器的实现