Learning Dynamic Facial Radiance Fields for Few-Shot Talking Head Synthesis 筆記
摘要
Talking head synthesis is an emerging technology with wide applications in film dubbing, virtual avatars and online education. Recent NeRF-based methods generate more natural talking videos, as they better capture the 3D structural information of faces. However, a specific model needs to be trained for each identity with a large dataset. In this paper, we propose Dynamic Facial Radiance Fields (DFRF) for few-shot talking head synthesis, which can rapidly generalize to an unseen identity with few training data. Different from the existing NeRF-based methods which directly encode the 3D geometry and appearance of a specific person into the network, our DFRF conditions face radiance field on 2D appearance images to learn the face prior. Thus the facial radiance field can be flexibly adjusted to the new identity with few reference images. Additionally, for better modeling of the facial deformations, we propose a differentiable face warping module conditioned on audio signals to deform all reference images to the query space. Extensive experiments show that with only tens of seconds of training clip available, our proposed DFRF can synthesize natural and high-quality audio-driven talking head videos for novel identities with only 40k iterations. We highly recommend readers view our supplementary video for intuitive comparisons. Code is available in https://sstzal.github.io/DFRF/.
會說話的頭像合成是一項新興的技術,在電影配音、虛擬化身和在線教育等領域有著廣泛的應用。最近的基于NeRF的方法生成更自然的談話視頻,因為它們更好地捕獲面部的3D結構信息。然而,需要針對具有大型數(shù)據(jù)集的每個身份訓練特定模型。在本文中,我們提出了動態(tài)面部輻射場(DFRF)的幾個鏡頭說話的頭部合成,它可以快速推廣到一個看不見的身份與少量的訓練數(shù)據(jù)。與現(xiàn)有的直接將特定人的3D幾何形狀和外觀編碼到網(wǎng)絡中的基于NeRF的方法不同,我們的DFRF條件在2D外觀圖像上的人臉輻射場來學習人臉先驗。因此,面部輻射場可以靈活地調(diào)整到新的身份與幾個參考圖像。此外,為了更好地建模的面部變形,我們提出了一個可微的面部變形模塊的音頻信號變形的查詢空間的所有參考圖像。大量的實驗表明,只有幾十秒的訓練剪輯可用,我們提出的DFRF可以合成自然和高質(zhì)量的音頻驅(qū)動的說話頭部視頻的新身份,只有40k迭代。我們強烈建議讀者查看我們的補充視頻,以進行直觀的比較。代碼可在www.example.com上獲得https://sstzal.github.io/DFRF/。
GitHub:https://github.com/sstzal/DFRF
知識點
框架
Overview of the proposed Dynamic Facial Radiance Fields (DFRF)所提出的動態(tài)面部輻射場(DFRF)的概述。
使用預訓練的基于RNN的DeepSpeech模塊來提取每幀音頻特征。對于幀間一致性,進一步引入時間濾波模塊[39]以計算平滑音頻流圖像流投影基于注意力的特征融合音頻特征A,其可以表示為其相鄰音頻特征的基于自注意力的融合。以這些音頻特征序列A為條件,我們可以學習音頻-嘴唇映射。該音頻驅(qū)動的面部輻射場可以表示為 ( c , σ ) = F θ ( p , d , A ) \quad(c,\sigma)=\mathcal{F}_{\theta}\left(p,d,A\right) (c,σ)=Fθ?(p,d,A)。
由于身份信息被隱式編碼到面部輻射場中,并且在渲染時不提供顯式身份特征,因此該面部輻射場是人特定的。對于每個新身份,都需要在大型數(shù)據(jù)集上從頭開始優(yōu)化。這導致昂貴的計算成本并且需要長的訓練視頻。為了擺脫這些限制,我們設計了一個參考機制,使訓練有素的基礎模型能夠快速泛化到新的人員類別,只有一小段目標人員可用。圖2中示出了這種基于參考的架構的概述。具體地,取N個參考圖像
M
=
{
M
n
∈
R
H
×
W
∣
1
≤
n
≤
N
}
M=\left\{M_n\in\mathbb{R}^{H\times W}\text{}|1\leq n\leq N\right\}
M={Mn?∈RH×W∣1≤n≤N}及其對應的攝像機位置
{
T
n
}
\{T_n\}
{Tn?}作為輸入,用一個兩層卷積網(wǎng)絡計算其像素對齊的圖像特征
F
=
{
F
n
∈
R
H
×
W
×
D
∣
1
≤
n
≤
N
}
F=\left\{F_n\in\mathbb{R}^{H\times W\times D}|1\leq n\leq N\right\}
F={Fn?∈RH×W×D∣1≤n≤N},無下采樣。在本工作中,特征尺寸D被設置為128,并且H、W分別表示圖像的高度和寬度。多個參考圖像的使用提供了更好的多視圖信息。對于一個3D查詢點
p
=
(
x
,
y
,
z
)
∈
P
p=\left(x,y,z\right)\in\mathcal{P}
p=(x,y,z)∈P,我們使用本征函數(shù)
{
K
n
}
\{K_n\}
{Kn?}和相機姿態(tài)
{
R
n
,
T
n
}
\{R_n,T_n\}
{Rn?,Tn?}將其投影回這些參考的2D圖像空間,并得到相應的2D坐標。使用
p
n
r
e
f
=
(
u
n
,
v
n
)
\begin{matrix}p_n^{ref}=(u_n,v_n)\end{matrix}
pnref?=(un?,vn?)?來表示第n幅參考圖像中的2D坐標,該投影可以被公式化為:
p
n
r
e
f
=
M
(
p
,
K
n
,
R
n
,
T
n
)
,
(1)
p_n^{ref}=\mathcal{M}(p,K_n,R_n,T_n),\tag1
pnref?=M(p,Kn?,Rn?,Tn?),(1)
其中
M
\text{}\mathcal{M}
M是從世界空間到圖像空間的傳統(tǒng)映射。然后,在舍入操作之后對來自N個參考的這些對應的像素級特征
{
F
n
(
u
n
,
v
n
)
}
∈
R
N
×
D
{\{F_n}(u_n,v_n)\}\in{\mathbb{R}^{N\times D}}
{Fn?(un?,vn?)}∈RN×D進行采樣,并與基于注意力的模塊融合,以獲得最終特征
F
~
=
A
g
g
r
e
g
a
t
i
o
n
(
{
F
n
(
u
n
,
v
n
)
}
)
∈
R
D
\tilde{F}=A g g r e g a t i o n(\{F_{n}(u_{n},v_{n})\})\in\mathbb{R}^{D}
F~=Aggregation({Fn?(un?,vn?)})∈RD。這些要素網(wǎng)格包含有關身份和外觀的豐富信息。使用它們作為我們的面部輻射場的附加條件,使得模型可以從幾個觀察到的幀快速概括為新的面部外觀。該雙驅(qū)動面部輻射場最終可以被公式化為:
(
c
,
σ
)
=
F
θ
(
p
,
d
,
A
,
F
~
)
.
(2)
(c,\sigma)=\mathcal F_\theta\left(p,d,A,\tilde F\right).\tag2
(c,σ)=Fθ?(p,d,A,F~).(2)
可微分面變形
我們將查詢3D點投影回這些參考圖像的2D圖像空間,如等式(1)所示。(1)以得到經(jīng)調(diào)節(jié)的像素特征。該操作基于NeRF中的先驗知識,即從不同視點投射的相交光線應對應于相同的物理位置,從而產(chǎn)生相同的顏色。這種嚴格的空間映射關系適用于剛性場景,但說話的臉是動態(tài)的。說話時,嘴唇和其他面部肌肉會根據(jù)發(fā)音而運動。應用等式(1)直接在可變形的說話面部上可能導致關鍵點不匹配。例如,標準體積空間中的嘴角附近的3D點被映射回參考圖像的像素空間。如果參考面示出不同的嘴部形狀,則映射點可能遠離期望的真實的嘴角。這種不準確的映射導致來自參考圖像的不正確的像素特征條件,這進一步影響對說話嘴的變形的預測。
為了解決這個限制,我們建議一個audio-conditioned和3D逐點面變形模塊
D
η
\mathcal{D}_{\eta}
Dη?。退化抵消
Δ
o
=
(
Δ
u
,
Δ
v
)
\Delta o=(\Delta u,\Delta v)
Δo=(Δu,Δv)為每個投影點”在特定的變形,就像圖像流圖2所示。具體來說,
D
η
\mathcal{D}_{\eta}
Dη?實現(xiàn)變形場與中長期規(guī)劃三層,其中
η
\eta
η是可學的參數(shù)?;貧w抵消
Δ
o
\Delta o
Δo,動態(tài)查詢圖像和參考圖像之間的差異需要有效地利用。查詢的音頻信息反映了動態(tài)圖像,而變形的參考圖片可以看到通過
{
F
n
}
\{F_n\}
{Fn?}隱式的圖像特征。因此,我們將這兩個部分與查詢3D點坐標P-起作為
D
η
\mathcal{D}_{\eta}
Dη?的輸入。面變形的過程來預測補償模塊
D
η
\mathcal{D}_{\eta}
Dη?可以制定為:
Δ
o
n
=
D
η
(
p
,
A
,
F
n
(
u
n
,
v
n
)
)
.
(3)
\Delta o_n=\mathcal{D}_\eta(p,A,F_n(u_n,v_n)).\tag3
Δon?=Dη?(p,A,Fn?(un?,vn?)).(3)
然后,如圖3所示,將預測的偏移
o
n
o_n
on?添加到
p
n
r
e
f
p^{ref}_n
pnref?,如圖3所示,以得到如圖3所示的精確對應坐標
p
n
r
e
f
‘
p^{ref^{`}}_n
pnref‘?,以得到3D查詢點
p
p
p,
p
n
r
e
f
=
p
n
r
e
f
+
Δ
o
n
=
(
u
n
′
,
v
n
′
)
,
(
where??
u
n
′
=
u
n
+
Δ
u
n
??
a
n
d
??
v
n
′
=
v
n
+
Δ
v
n
.
)
(4)
p_n^{ref}=p_n^{ref}+\Delta o_n=(u_n',v_n'),(\text{where}\ \ u'_n=u_n+\varDelta u_n\mathrm{\ \ and\ \ }v'_n=v_n+\varDelta v_n.)\tag4
pnref?=pnref?+Δon?=(un′?,vn′?),(where??un′?=un?+Δun???and??vn′?=vn?+Δvn?.)(4)
由于硬索引操作
F
n
(
u
n
′
,
v
n
′
)
F_{n}({u_{n}}^{\prime},{v_{n}}^{\prime})
Fn?(un?′,vn?′)不可微,因此梯度不能被反向傳播到該扭曲模塊。因此,我們引入了一個軟指標函數(shù)來實現(xiàn)可微翹曲,其中每個像素的特征是通過雙線性采樣的特征插值其周圍的點。以這種方式,可以端到端地聯(lián)合優(yōu)化變形場
D
η
\mathcal{D}_{\eta}
Dη?和面部輻射場
F
θ
\mathcal{F}_{\theta}
Fθ?。該軟索引操作的可視化在圖3中示出。對于綠點,其像素特征通過其四個最近鄰居的特征通過雙線性插值來計算。為了更好地約束該扭曲模塊的訓練過程,我們引入正則化項
L
r
L_r
Lr?以將預測偏移的值限制在合理的范圍內(nèi)以防止失真。
L
r
=
1
N
?
∣
P
∣
∑
p
∈
P
∑
n
=
1
N
Δ
u
n
2
+
Δ
v
n
2
,
(5)
L_r=\dfrac{1}{N\cdot|\mathcal{P}|}\sum\limits_{p\in\mathcal{P}}\sum\limits_{n=1}^N\sqrt{\Delta u_n^2+\Delta v_n^2},\tag5
Lr?=N?∣P∣1?p∈P∑?n=1∑N?Δun2?+Δvn2??,(5)
其中 P \mathcal{P} P是體素空間中所有3D點的集合, N N N是參考圖像的數(shù)量。此外,我們認為,低密度的點更有可能是背景區(qū)域,應該有低變形偏移。在這些區(qū)域中,應施加更強的正則化約束。為了更合理的約束,我們將上述 L r L_r Lr?改變?yōu)椋?/p>
L
r
′
=
(
1
?
σ
)
?
L
r
,
(6)
L_r{'}=(1-\sigma)\cdot L_r,\tag6
Lr?′=(1?σ)?Lr?,(6)
其中
σ
\sigma
σ表示這些點的密度。動態(tài)面部輻射場最終可以被公式化為:
(
c
,
σ
)
=
F
θ
(
p
,
d
,
A
,
F
~
′
)
,
(7)
(c,\sigma)=\mathcal F_\theta\left(p,d,A,\tilde F'\right),\tag7
(c,σ)=Fθ?(p,d,A,F~′),(7)
其中
F
~
=
A
g
g
r
e
g
a
t
i
o
n
(
{
F
n
(
u
n
′
,
v
n
′
)
}
)
\tilde{F}=A g g r e g a t i o n(\{F_{n}(u'_{n},v'_{n})\})
F~=Aggregation({Fn?(un′?,vn′?)})。
利用該面部變形模塊,可以將所有參考圖像變換到查詢空間,以更好地對說話面部變形進行建模。消融研究已經(jīng)證明了該組件在產(chǎn)生更準確和音頻同步的嘴部運動方面的有效性。
可微分面翹曲的可視化(Visualization of the differentiable face warping.)。查詢3D點(紫色)被投影到參考圖像空間(紅色)。然后,學習偏移Δ o以將其扭曲到查詢空間(綠色),其中其特征通過雙線性插值來計算。
體渲染
體繪制用于對來自等式(7)的顏色c和密度σ進行積分轉化成人臉圖像。我們將背景、軀干和頸部部分一起作為渲染“背景”,并從原始視頻中逐幀恢復。我們將每條射線的最后一個點的顏色設置為相應的背景像素,以渲染包括軀干部分的自然背景。這里,我們按照原始NeRF中的設置,在音頻信號A和圖像特征
F
′
~
\tilde{F^{\prime}}
F′~的條件下,相機光線
r
r
r的累積顏色
C
C
C為:
C
(
r
;
θ
,
η
,
R
,
T
,
A
,
F
~
′
)
=
∫
z
n
e
a
r
z
f
a
r
σ
(
t
)
?
c
(
t
)
?
T
(
t
)
d
t
,
(8)
C\left(r;\theta,\eta,R,T,A,\tilde{F}'\right)=\int_{z_{near}}^{z_{far}}\sigma\left(t\right)\cdot c(t)\cdot T\left(t\right)dt,\tag8
C(r;θ,η,R,T,A,F~′)=∫znear?zfar??σ(t)?c(t)?T(t)dt,(8)
其中
θ
\theta
θ和
η
\eta
η分別是面部輻射場
F
θ
\mathcal F_{\theta}
Fθ?和面部扭曲模塊
D
η
\mathcal{D}_{\eta}
Dη?的可學習參數(shù)。
R
R
R是旋轉矩陣,
T
T
T是平移向量。
T
(
t
)
=
e
x
p
(
?
∫
z
n
e
a
r
t
σ
(
r
(
s
)
)
d
s
)
T\left(t\right)=e x p\left(-\int_{z_{n e a r}}^{t}\sigma\left(r\left(s\right)\right)d s\right)
T(t)=exp(?∫znear?t?σ(r(s))ds)是沿著相機光線的積分透射率,其中
z
n
e
a
r
z_{near}
znear?和
z
f
a
r
z_{far}
zfar?是相機光線的近邊界和遠邊界。我們按照NeRF設計MSE損失為
L
M
S
E
=
∥
C
?
I
∥
2
L_{MSE} =\left\|C-I\right\|^{2}
LMSE?=∥C?I∥2,其中I是地面真值顏色。與方程中的正則化項耦合。(6),總損失函數(shù)可以公式化為:
L = L M S E + λ ? L r ′ . (9) L=L_{MSE}+\lambda\cdot L_r{'}.\tag9 L=LMSE?+λ?Lr?′.(9)文章來源:http://www.zghlxwxcb.cn/news/detail-828100.html
效果
文章來源地址http://www.zghlxwxcb.cn/news/detail-828100.html
到了這里,關于Learning Dynamic Facial Radiance Fields for Few-Shot Talking Head Synthesis 筆記的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!