Disentangled Representation Learning for 3D Face Shape
探索3D人脸形状的表示学习
2019 CVPR 中科大 张举勇
摘要
原文 | 译文 |
---|---|
In this paper, we present a novel strategy to design disentangled 3D face shape representation. Specifically, a given 3D face shape is decomposed into identity part and expression part, which are both encoded in a nonlinear way. | 本文提出一种新的策略来探索3D人脸的表示。对于一个给定的3D人脸形状,可以通过非线性编码分解成人脸identity和表情两个部分。 |
To solve this problem, we propose an attribute decomposition framework for 3D face mesh. To better represent face shapes which are usually nonlinear deformed between each other, the face shapes are represented by a vertex based deformation representation rather than Euclidean coordinates. | 为了解决这个问题,本文提出一种3D人脸mesh的分解框架,人脸形状之间一般存在非线性的变形,为了更好的表示人脸,本文提出用基于顶点的形变特征而不是基于欧式空间坐标。 |
The experimental results demonstrate that our method has better performance than existing methods on decomposing the identity and expression parts. Moreover, more natural expression transfer results can be achieved with our method than existing methods. | 实验表明,本文提出的方法可以将人脸的特征和表情分解的更好,此外,利用本文的方法可以进行表情迁移 |
main contribution
- 提出一种对3D人脸形状进行分解表示,然后可以从语义层面对人脸和表情进行编辑;
- 提出了一种新的对3D mesh分解的框架,采用基于顶点的形变特征表示;
- 实验证明了提出的分解方法的有效性,并且给出了算法的两个应用。
Disentangled 3D Face Representation
本文的主要是解决人脸识别/重建中的表情影响,如下图所示,认为表情特征在人脸特征中是一个高维曲面,不同人的表情特征在特征空间上应该是一样的,图中的一块黄色区域就表示一个人,黄色区域上不同的蓝点表示同一个人的不同表情,同时不同黄色区域上相同位置的蓝点应该是同一个表情的不同人。关于这种属性和identity强烈相关的表现形式,第一次看到,挺有趣的。
Spectral Graph Convolution
spectral graph convolution是本文用来处理mesh图的卷积操作,
Deformation Representation 形变表征
给定一张没有表情的人脸作为参考人脸,那么其他带表情的人脸都可以表示成参考人脸+一个形变表示。
一张人脸mesh的deformation representation可以表示成一个graph特征,
g
⊆
R
v
×
d
g\subseteq \mathbb{R}^{v \times d}
g⊆Rv×d,其中
d
=
9
d=9
d=9,
v
v
v是顶点数。
Network
网络包括2部分,Decomposition Networks和Fusion Module,即上图的左右两部分。
而每个网络又包括2部分,identity和expression。
Decomposition Networks网络的输入是人脸mesh的Deformation Representation,每个网络都包括一个encoder-decoder,分别得到identity DR和expression DR,这样就完成了decompose的功能,把人脸的DR
g
g
g分解成了
g
i
d
e
n
t
i
t
y
g_{identity}
gidentity和
g
e
x
p
r
e
s
s
i
o
n
g_{expression}
gexpression
Fusion Network是想将上面得到的
g
i
d
e
n
t
i
t
y
g_{identity}
gidentity和
g
e
x
p
r
e
s
s
i
o
n
g_{expression}
gexpression再重构成原先的
g
g
g,通过Fusion Network来确保decompose 的结果是lossless的。
loss包括分解网络的误差、fusion网络的误差和联合误差
分解网络的误差包括:
identity reconstruction loss
L
i
d
L_{id}
Lid
identity (KL) divergence loss
L
i
d
−
K
L
L_{id-KL}
Lid−KL
expression reconstruction loss
L
e
x
p
L_{exp}
Lexp
expression(KL) divergence loss
L
e
x
p
−
K
L
L_{exp-KL}
Lexp−KL
fusion网络的误差
L
r
e
c
L_{rec}
Lrec
联合误差
L
d
i
s
L_{dis}
Ldis
Data Augmentation本文用的是FacewareHouse数据集,只有47个人,每个人47个表情,数据量对于训练一个大网络太少。所以提出了一种基于现有数据进行数据增强的方法。
从
m
m
m个已有的样本进行生成,首先将这些样本从mesh图变成Deformation Reresentation,即(
D
R
1
,
D
R
2
,
.
.
.
,
D
R
m
DR_1,DR_2,...,DR_m
DR1,DR2,...,DRm),提出一个极坐标系均匀分布(
r
,
θ
1
,
θ
2
.
.
.
θ
m
−
1
r,\theta_1,\theta_2...\theta_{m-1}
r,θ1,θ2...θm−1),其中
r
∼
U
(
0.5
,
1.2
)
,
θ
i
∼
U
(
0
,
π
/
2
)
r\sim U(0.5,1.2),\theta_i\sim U(0,\pi/2)
r∼U(0.5,1.2),θi∼U(0,π/2),然后转换成笛卡尔坐标系(
a
1
,
a
2
.
.
.
a
m
a_1,a_2...a_m
a1,a2...am),利用插值方法生成新的样本
∑
i
=
1
m
a
i
D
R
i
\sum_{i=1}^{m}a_iDR_i
∑i=1maiDRi
Application
本文除了做实验验证算法的有效性,还提供了两个应用,一个是expression transfer,一个是Latent space interpolation