如何快速弄懂一个新模型_想弄懂SMPL模型该如何学习?

SMPL是一个可微分的模型,参数规范所以被广泛应用(SMPL在发布时,就已经可以支持很多工业应用软件)。SMPL之外,还有DMPL(能够模拟soft tissue),SMPL-x(升级版SMPL),等等。此外SMPL支持软组织动力学。

如果入门的话,可以先学习一下blend skinning, 理解 blend shape。一般来说,构建mesh与骨架的关系时(使用骨架去驱动mesh进行形变),使用得最广泛的模型是 Linear Blend Skinning (Linear BS)。但是直观地说,如果直接基于LBS或者DQBS用skeleton去drive mesh进行形变的话,会出现Skin collapse, Candy wrapper artifacts等效果可见下图左一左二肘部。从左到右: Linear BS、Dual-quaternion BS、BlendSCAPE、SMPL-LBS、SMPL-DQBS、最右边这个是使用mesh去配准扫描数据(可以近似理解为较为理想的结果->ground truth)

可以看到SMPL-LBS、SMPL-DQBS、最右边这个是使用mesh去配准扫描数据得到的结果,可以看到效果还不错。也就是说SMPL在蒙皮效果上是不错的。简单来说,SMPL是首先利用pose参数将关节点进行旋转(pose的参数对应控制着每个关节点的旋转情况,但是在他的paper中他先将轴角坐标用Rodrigues公式搞成旋转矩阵),然后基于关节点的旋转结果使用blend skinning将人体网格drive过去。一般你在paper中看到的函数W(·)就是blend-skinning函数,大多数情况下使用LBS。

SMPL中的shape参数是利用PCA原理控制mesh的胖瘦高矮。如果你仔细观察的话,第一个shape参数可以约等于控制的整个模型的size。事实上,以前(包括现在),使用PCA来描述人体网格或者Garment网格依然非常流行。

如果你只是用它,你需要知道的是:你可以通过pose和shape(也有人会加上一个global的transition项来控制整体的位移)来生成一个人体的mesh。你可以用SMPL去fitting一个scans、image或者video,搞成优化问题(fitting)或者使用DNN进行regression。遗憾地是SMPL的pose、shape参数不含人体的prior知识,所以大多数的fitting都是要引入discriminator或者引入prior信息避免发生违背人体结构信息的错乱。没有先验知识下,任意pose参数导致的SMPL的疑惑行为

从今天来看,现在的SMPL其实被拓展集成了很多新的模块:能够处理抓取交互

能够建模呼吸等动作--> 让模型更加realistic.

基于SMPL的Garment模型(最早是衣服和人体不分割--> single layer; 后来衣服单独作为一层建模-->2 layers.)

描述语与SMPL模型的对应关系

更加灵活的手部

更加细致的面部表情

将SMPL的模型bind到卡通人物或者动物上

等等

关于应用就不说了,太多了3D pose estimation/analysis

motion estimation/analysis

3D reconstruction (最近再和隐函数一结合,建模效果惊奇)

2D image/video synthesis (SMPL作为中间体)

animation

使用SMPL合成数据库/改进监督方法

SMPL与Neural Rendering结合

等等

这种参数化人体对应的是参数化的人脸。SMPL是MPI一个很有影响力的工作之一。他们其实也做了人脸的这种模型:FLAME。最早是在SIGGRAPH ASIA 2017,最近他们又拓展了模型,应该是FLAME2020版本了。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值