当前位置: 代码迷 >> 综合 >> SMPL: A Skinned Multi-Person Linear Model
  详细解决方案

SMPL: A Skinned Multi-Person Linear Model

热度:76   发布时间:2024-01-16 00:19:01.0

这篇文章就是通过数据训练一些参数

N N N为点数, K K K为关节数, β ? \vec{\beta} β ?为shape blend shapes parameters, θ ? \vec{\theta} θ 为pose blend shapes parameters.

∣ θ ? ∣ |\vec{\theta}| θ 的参数个数为 3*K + 3, 对于每个joint,3个参数表示旋转, 另外3个是root joint的旋转

公式(1) 3 axis angle -> rotation matrix

公式(2) deform each vertex, 注意 J \mathbf J J是joint的location

公式(3) 先乘以rest post的逆, 然后再乘上每个joint的post

公式(6), posed vertices 是从rest post T ˉ \bar{\mathbf T} Tˉ + shape blend shapes offset B S B_S BS? + pose blend shapes offset B P B_P BP?

公式(5), deformed vertices

shape blend shapes
给定一组blend shapes parameters β ? \vec{\beta} β ?, 产生最终的shape displacement B S ∈ R 3 N B_S\in \mathbb R^{3N} BS?R3N, 所要训练就是 3 N × ∣ β ? ∣ 3N\times|\vec \beta| 3N×β ?的矩阵 S \mathcal S S

pose blend shapes
属于Pose参数对blend shapes的微调, 从一组pose parameters θ ? \vec{\theta} θ , 产生最终的shape displacement B P ∈ R 3 N B_P\in \mathbb R^{3N} BP?R3N

首先他把pose的参数 θ ? \vec{\theta} θ 展开成 9 K 9K 9K个, 然后训练 3 N × 9 K 3N\times9K 3N×9K矩阵 P \mathcal P P

Joint locations
joint位置的估计只跟 B S B_S BS?有关, 跟 B P B_P BP?无关, 主要训练 3 N × 3 K 3N\times3K 3N×3K的matrix J \mathcal J J

后面的训练就不细讲了
公式(14), E D E_D ED?是data term, 测量ground truth 到deformed vertices之间差距, E Y E_Y EY?是joints及模型的对称性, E J E_J EJ?是joint的估计与ground truth之间的差距, E P E_P EP?是尽量让regression matrix P \mathcal P P稀疏, E W E_W EW?是尽量让weight尽可能接近通过segmentation初始化后的结果.

  相关解决方案