Self-supervised Representation Learning from Videos for Facial Action Unit Detection(CVPR 2019)
Paper PDF
文章目錄
- Introduction
- Innovation
- Method
-
- Feature disentangling
- Target reconstruction
- Cycle with AU/pose changed
- Experiment
-
- Implementation details Detailed
- Comparisons with other methods
- Analysis
Introduction
Facial Action -> Functional -> usual methods -> problem -> proposed method
人臉作為人類之間交流所面對的人體器官,可以顯示出無數種資訊。為了全面的研究面部的運動模式,Ekman和Friesen開發了面部動作編碼系統(FACS),它定義了一套獨特的約40個原子級别的面部肌肉動作,稱為動作單元(Action Units, AUs)。通過對人臉面部運動單元的檢測,我們可以從中擷取大量與人内心活動有關的資訊,并具有廣泛的應用場景。比如,表情識别、健康評估、人機互動等等。通常對AUs的檢測算法按照類型可以分為以下三種:
- Descriptor:
- Supervised:
- Self-supervised:
由于給視訊中人臉打面部運動單元标簽的任務困難,導緻在AUs檢測方面的資料集極為缺乏,小樣本的監督學習也容易造成過拟合。對此,本篇論文提出基于檢測運動信号的自監督學習方式。考慮到不同幀中人物頭部的差異由面部的AUs變化和頭部姿勢的改變兩者共同造成,本文提出一種Twin-Cycle Autoencoder(ACAE)來同時學習頭部姿勢相關和面部運動單元相關的運動資訊,并以此來解耦兩者,達到提取discriminative的AUs表征。具體來講,TCAE通過預測AUs相關和頭部姿勢相關的運動,将源幀的AUs和頭姿态轉換為目标幀的AUs和頭部姿态。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIwczX0xiRGZkRGZ0Xy9GbvNGL2EzXlpXazxSP9EUZqB3MYxGZXlVMk1mYohnMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLwITO5IjN1UTM0ITNwAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
Innovation
- 用像素移動來表示AU以及頭部姿态的運動,并以這種運用信号,來進行自監督的學習。具體見##Cycle with AU/pose changed
- 對AU和頭部的運動進行解耦,獲得更加‘純粹’的AU表征。
Method
整個網絡架構如上圖所示,可以大緻分為以下三個子產品:
Feature disentangling
TCAE首先對源人臉圖像和目标人臉圖像使用編碼器分别獲得各自的AU特征( ϕ s , ϕ t \phi_s,\phi_t ϕs,ϕt)和頭部姿勢特征( ψ s , ψ t \psi_s,\psi_t ψs,ψt)。TCAE将 ϕ s , ϕ t \phi_s,\phi_t ϕs,ϕt級聯在一起輸入AU-related解碼器 D A D_A DA, D A D_A DA用來解碼AUs是如何從源臉變換為目标臉。同理,将 ψ s , ψ t \psi_s,\psi_t ψs,ψt級聯在一起輸入pose-related解碼器 D P D_P DP, D P D_P DP用來解碼頭部姿勢是如何從源臉變換為目标臉。
論文中将這種變換定義為像素的移動。比如AUs造成的變換可以定義為一個矩陣 τ A ∈ R W × H × 2 \tau^A \in \mathbb{R}^{W \times H \times2} τA∈RW×H×2,其中 W , H W,H W,H分别代表圖像的寬和高。 τ x y A = ( δ x , δ y ) \tau^A_{xy}=( \delta_x ,\delta_y) τxyA=(δx,δy),其中 δ x , δ y \delta_x ,\delta_y δx,δy分别表示在位置 ( x , y ) (x,y) (x,y)上的像素在x方向和y方向的位移量。是以, τ A \tau^A τA作為一種變換,将原始人臉改變為AU-changed的人臉,即 I s ↦ I A I_s \mapsto I_A Is↦IA。
與之相似,我們從pose-related解碼器 D P D_P DP從獲得與頭部姿态相關的像素的移動 τ P \tau^P τP。 τ P \tau^P τP作為一種變換,将原始人臉改變為pose-changed的人臉,即 I s ↦ I P I_s \mapsto I_P Is↦IP。
為了區分AU和位姿變化引起的位移,我們在 τ A \tau^A τA上加入L1正則化,以保持AU-related運動的稀疏性和精微性,如式所示:
L 1 A = ∑ x , y ∥ τ x y A ∥ 1 (1) \mathfrak{L}_1^A=\sum_{x,y} \| \tau_{xy}^{A}\|_1 \tag{1} L1A=x,y∑∥τxyA∥1(1)
Target reconstruction
TCAE通過線性組合的方式來整合由 τ A \tau^A τA和 τ P \tau^P τP造成的幀間差異。
τ x y = α x y A τ x y A + α x y P τ x y A s . t . α x y A + α x y P = 1 \begin{aligned} & \tau_{xy} = \alpha_{xy}^A \tau_{xy}^A+\alpha_{xy}^P \tau_{xy}^A \\ s.t. \\ & \alpha_{xy}^A + \alpha_{xy}^P =1 \end{aligned} s.t.τxy=αxyAτxyA+αxyPτxyAαxyA+αxyP=1
τ \tau τ作為變換,将源人臉映射為預測的目标人臉。是以,我們需要限制變換後的人臉與目标人臉的相似度,如式2所示:
L r e c = ∥ τ ( I s ) − I t ∥ 1 (2) \mathfrak{L}_{rec} = \| \tau(I_s)-I_t \|_1 \tag{2} Lrec=∥τ(Is)−It∥1(2)
其中, I s , I t I_s,I_t Is,It分别為源人臉圖檔和目标人臉圖檔。
Cycle with AU/pose changed
在 AU-changed 的循環中:
給定輸入 ( ϕ s ϕ t ) (\phi_s\phi_t) (ϕsϕt), D A D_A DA解碼到由 I s I_s Is到 I A I_A IA的變換 τ A \tau^A τA。這個變換具體為一個( W × H × 3 W \times H \times 3 W×H×3)矩陣,包含每個像素點的mask和偏移量。基于變換 τ A \tau^A τA,我們可以得到AU-changed人臉 I A = τ A ( I s ) I_A=\tau^A(I_s) IA=τA(Is)。并定義 I A I_A IA經過編碼器得到AU相關特征 ϕ s A \phi_s^A ϕsA,頭部姿态相關特征 ψ s A \psi_s^A ψsA。
那麼,給定輸入 ( ϕ s ϕ s A ) (\phi_s\phi_s^A) (ϕsϕsA), D A D_A DA可以解碼為到由 I A I_A IA到 I s I_s Is的變換 τ − A \tau^{-A} τ−A。如果我們在AU-changed人臉 I A I_A IA上使用變換 τ − A \tau^{-A} τ−A,得到的人臉圖像 τ − A ( I A ) = τ − A ( τ A ( I s ) ) \tau^{-A}(I_A)=\tau^{-A}(\tau^A(I_s)) τ−A(IA)=τ−A(τA(Is))一定和源人臉 I s I_s Is相似。是以,得到另一限制條件,如公式3所示:
L c y c A = ∥ τ − A ( τ A ( I s ) ) − I s ∥ 1 (3) \mathfrak{L}_{cyc}^A=\|\tau^{-A}(\tau^A(I_s)) - I_s\|_1 \tag{3} LcycA=∥τ−A(τA(Is))−Is∥1(3)
除此之外,我們還要考慮特征級别的一緻性。考慮到圖像 I s I_s Is經曆AU相關的變換得到圖像 I A I_A IA,是以 I s I_s Is和 I A I_A IA在頭部姿态特征上應該具有相似性, I t I_t It和 I A I_A IA在AU特征上應該具有相似性,是以我們得到公式5:
L e m b A = ∥ ψ s A − ψ s ∥ 2 + ∥ ϕ s A − ϕ t ∥ 2 (5) \mathfrak{L}_{emb}^A =\|\psi_s^A - \psi_s\|^2+\|\phi_s^A - \phi_t\|^2 \tag{5} LembA=∥ψsA−ψs∥2+∥ϕsA−ϕt∥2(5)
pose-changed的循環中:
給定輸入 ( ψ s ψ t ) (\psi_s\psi_t) (ψsψt), D P D_P DP解碼到由 I s I_s Is到 I P I_P IP的變換 τ P \tau^P τP。基于變換 τ P \tau^P τP,我們可以得到pose-changed人臉 I P = τ P ( I s ) I_P=\tau^P(I_s) IP=τP(Is)。并定義 I P I_P IP經過編碼器得到AU相關特征 ϕ s P \phi_s^P ϕsP,頭部姿态相關特征 ψ s P \psi_s^P ψsP。
那麼,給定輸入 ( ψ s ψ s A ) (\psi_s\psi_s^A) (ψsψsA), D P D_P DP可以解碼為到由 I P I_P IP到 I s I_s Is的變換 τ − P \tau^{-P} τ−P。如果我們在pose-changed人臉 I P I_P IP上使用變換 τ − P \tau^{-P} τ−P,得到的人臉圖像 τ − P ( I P ) = τ − P ( τ P ( I s ) ) \tau^{-P}(I_P)=\tau^{-P}(\tau^P(I_s)) τ−P(IP)=τ−P(τP(Is))一定和源人臉 I s I_s Is相似。是以,得到另一限制條件,如公式4所示:
L c y c P = ∥ τ − P ( τ P ( I s ) ) − I s ∥ 1 (4) \mathfrak{L}_{cyc}^P=\|\tau^{-P}(\tau^P(I_s)) - I_s\|_1 \tag{4} LcycP=∥τ−P(τP(Is))−Is∥1(4)
除此之外,我們還要考慮特征級别的一緻性。考慮到圖像 I s I_s Is經曆頭部姿态相關的變換得到圖像 I P I_P IP,是以 I s I_s Is和 I P I_P IP在AU特征上應該具有相似性, I t I_t It和 I P I_P IP在頭部姿态特征上應該具有相似性,是以我們得到公式6:
L e m b P = ∥ ϕ s P − ϕ s ∥ 2 + ∥ ψ s P − ψ t ∥ 2 (6) \mathfrak{L}_{emb}^P =\|\phi_s^P - \phi_s\|^2+\|\psi_s^P - \psi_t\|^2 \tag{6} LembP=∥ϕsP−ϕs∥2+∥ψsP−ψt∥2(6)
Experiment
Implementation details Detailed
編解碼器的設計如下圖所示:
Loss 函數如公式7所示
L = 1 W × H × 3 L r e c + λ 1 W × H × 2 L 1 A + λ 2 W × H × 3 ( L c y c A + L c y c P ) + λ 3 256 ( L e m b A + L e m b P ) (7) \mathfrak{L} = \frac{1}{W \times H \times 3} \mathfrak{L}_{rec} + \frac{\lambda_1}{W \times H \times 2}\mathfrak{L}_1^A+\frac{\lambda_2}{W \times H \times 3}(\mathfrak{L}_{cyc}^A+\mathfrak{L}_{cyc}^P) +\frac{\lambda_3}{256}(\mathfrak{L}_{emb}^A+\mathfrak{L}_{emb}^P) \tag{7} L=W×H×31Lrec+W×H×2λ1L1A+W×H×3λ2(LcycA+LcycP)+256λ3(LembA+LembP)(7)
訓練的過程中采用了Curriculum Learning的方式,即難度遞增的政策進行訓練。
Comparisons with other methods
表中數值均為F1-score: