胡永健, 姚其森, 林育儀, 劉光堯, 劉琲貝
(1.華南理工大學 電子與信息學院,廣東 廣州 510640; 2.公安部物證鑒定中心,北京 100038)
近年來利用深度學習網絡生成的Deepfake換臉視頻在互聯網上廣泛傳播。這類視頻中的人臉區域被替換為他人的臉,從而實現身份篡改。若被惡意利用,將對社會輿論和國家安全造成極大的威脅和沖擊。國內外研究機構迅速展開對換臉視頻檢測方法的研究,從不同角度出發,設計自動識別算法,判斷一段視頻是否為換臉視頻。
換臉視頻檢測按技術路線大致可分為兩大類:第1類基于傳統手工特征,主要利用圖像處理和機器學習方法提取換臉視頻中的低級(也稱像素級)偽造痕跡后再利用模式分類器進行分類;第2類基于深度學習,借助神經網絡挖掘換臉視頻的篡改特征。一般而言,基于第1類方法存在特征提取不充分的缺陷,其檢測效果與第2類方法相比較差。
本文研究第2類方法。關于基于深度學習的換臉視頻檢測方法,文獻[1]指出視頻壓縮使噪聲衰減,難以通過單獨分析噪聲檢測偽造人臉痕跡,故提出2個淺層面部視頻偽造檢測網絡;文獻[2]認為諸如AlexNet的經典卷積神經網絡從訓練數據上學習到的特征是表征圖像內容而非篡改檢測所需要的篡改痕跡,為了更好地學習篡改痕跡特征并削弱圖像內容信息,定義了一種新的卷積層,稱為受約束卷積層;文獻[3]基于人臉反欺詐檢測思想,利用注意力機制處理和改善特征圖,除了實現二分類判斷外還可定位篡改區域;文獻[4]認為目前的Deepfake技術由于算力和生成時間的限制,只能合成固定尺寸的臉部,換臉必須經過仿射形變來匹配源臉,導致形變臉與其周邊區域的上下文在分辨率上存在不一致,且修邊的后處理也會留下明顯操作痕跡,因此提出只需訓練模型檢測是否存在上述形變和修邊噪聲即可分辨真假臉,可極大減少訓練時所需的負樣本數量;文獻[5]提出雙支路結構,其中一條支路傳播原始圖像信息,另一條支路壓制圖像內容,放大利用高斯-拉普拉斯(Laplacian of Gaussian,LoG)算子得到的多頻段信息;文獻[6]采取多實例學習(multiple instance learning,MIL)的方式檢測多人臉視頻中的部分人臉置換問題;文獻[7]認為在換臉視頻檢測中局部紋理特征比高階語義信息更有用,提出結合空域圖像和相位頻譜來捕捉換臉視頻的上采樣偽影。文獻[8]認為由Softmax損失函數監督學習得到的特征有分離能力但區分度不夠大,同時固定的濾波器和手工特征無法從多樣的輸入人臉提取足夠的頻率特征,因此提出單一中心損失函數,旨在壓縮類內自然人臉的不同,并在嵌入域增強類間差異,此外還提出一個自適應頻率特征生成模塊,以更全面的方式挖掘頻率線索;文獻[9]認為現有換臉方法還未充分考慮嘴型的匹配問題,提出利用唇讀來檢測是否發生換臉;文獻[10]認為現有方法把真假臉視頻檢測模型化為基于全局特征的二分類問題,無法學習篡改一般性特征,同時也容易過擬合,因此提出先對人臉圖像進行劃分,通過學習各局部區域的相關性來提高泛化性和魯棒性。
概括起來,文獻[1-4]強調換臉殘留的空域痕跡,文獻[5-8]在利用空域特征的基礎上還利用了頻域或者時域特征,文獻[9]利用了面部生理特征而文獻[10]利用了圖像內容的局部相關性。上述方法檢測結果各有優劣,檢測途徑并無定論,然而都有一個特點:庫內檢測效果好但跨庫測試性能下降顯著,檢測器存在泛化性能不足或過擬合問題。為此,本文提出一種基于多域特征融合的換臉視頻檢測算法,融合空域、頻域和時域3個方面信息來解決這個問題。
本文算法采取傳統手工和神經網絡結合的方式,將手工提取的RGB(紅、綠、藍)圖像、離散傅里葉變換(discrete Fourier transform,DFT)頻譜圖和光流圖輸入多路卷積神經網絡,借助其優異的特征提取能力更好地捕捉換臉視頻在空域、頻域和時域上的篡改痕跡。


圖1 基于多域特征融合的換臉視頻篡改檢測算法框架
用OpenCV對視頻分幀,逐幀保存成視頻幀圖像,得到視頻幀序列{f0,f1,…,fN-1},其中N表示單個視頻分幀后的總幀數。為便于計算光流特征,首幀圖像f0不作為檢測對象,即待測視頻幀序列為{f1,…,fN-1}。用Dlib工具庫逐幀提取人臉矩形框作為檢測區域。
提取各幀人臉的多域特征圖像,具體過程包括:
(1)將各幀檢測區域統一調整成224×224×3大小,作為空域RGB圖像IS。
(2)通過二維離散傅里葉變換獲取檢測區域頻譜信息,并進行中心化和對數變換以增加頻譜細節,再將頻譜圖調整成128×128×1大小,作為DFT頻譜圖IF。
(3)采用Gunnar Farneback算法[12]對連續兩幀的檢測區域計算稠密光流場,可視化成224×224×3的光流圖,作為時域光流圖IO。
為提取上述圖像深層卷積特征,構建多路卷積特征提取模塊,包含如下3個分支:
(1)RGB分支,將RGB圖像IS輸入Xception[13]網絡提取空域卷積特征G1。
(2)DFT特征分支,將DFT頻譜圖G2輸入Xception網絡提取頻域卷積特征G3。
(3)光流特征分支,將光流圖IO。輸入ResNet50[14]網絡提取時域卷積特征G3。
需要說明的是,在使用Xception和ResNet50網絡進行特征提取時,本文對原網絡進行了改造,去掉了用于特征分類的全局平均池化層和全連接層。


圖2 通道注意力模塊網絡結構示意圖


(1)對視頻數據進行預處理。將數據集的視頻進行分幀,選擇待測幀序列,并提取各幀圖像的人臉檢測區域。
(2)提取空域、頻域和時域特征圖像。提取各幀圖像檢測區域的RGB圖像IS,并計算DFT頻譜圖IF和光流圖IO,將IS、IF和IO歸一化到[0, 1]區間,作為網絡的輸入。
(3)構建多路卷積神經網絡,用于多域卷積特征的提取和融合。采用Adam優化器,初始學習率設置為1×10-4,批次大小(batch-size)設置為16,使用交叉熵損失函數作為模型訓練損失函數。
(4)訓練所述網絡。計算損失并反向傳播更新網絡權重系數,采取提前停止策略避免模型過擬合,保存最小損失值對應的權重作為模型權重。
對待測數據進行預處理,提取多域特征圖像,歸一化到[0, 1],輸入訓練完成的網絡,輸出測試樣本被判決為真臉和假臉的概率。
為了驗證算法性能,在4個公開換臉視頻數據集上進行了庫內及跨庫測試,使用半總錯誤率(half total error rate,HTER)、接收機操作特征曲線下方的面積(area under ROC curve,AUC)等指標對算法進行分析和評價。
實驗采用TIMIT、Fake Faces in the Wild(FFW)、FaceForensics++(FF++)[15]以及Deep Fake Detection(DFD)等近年公開的4個換臉視頻數據庫。其中FFW數據庫只提供了換臉視頻,為保證真假樣本平衡,在視頻來源相同的FF++數據庫中選取了50段真實視頻作為補充。FF++和DFD數據庫包含多種壓縮率的視頻,取常用的C0和C23壓縮率視頻進行測試。基于文獻[16]的研究結論,按照7∶2∶1的比例將數據庫按人劃分為訓練集、驗證集和測試集,并在不采取數據增廣的條件下進行實驗。
實驗主要基于深度學習框架Keras實現,所用顯卡為TITAN XP,系統為Ubuntu16.04,CUDA版本為9.0.176,Keras版本為2.2.4,OpenCV版本為4.1.2。
(1)注意力機制。注意力機制通過學習一個特征權重分布,并將特征權重與原始特征進行加權求和,以此突顯重要的區域。根據注意力機制施加位置的不同,可分為空間注意力機制、通道注意力機制以及空間和通道結合的注意力機制等實現形式。
為研究不同注意力機制對算法性能的影響,將本文算法的通道注意力模塊分別替換為ECA[17]、CBAM[18]、Triplet Attention[19]3種注意力機制,與本文采用的SE注意力機制進行對比實驗。其中,ECA和SE屬于通道注意力機制,CBAM和Triplet屬于空間和通道結合的注意力機制。DFD(C23)訓練數據庫下不同注意力機制對比結果見表1所列。

表1 不同注意力機制對比結果 %
由表1可知:采用ECA、CBAM和Triplet注意力模塊的模型在庫內和跨庫測試時表現均不及本文算法的檢測效果;本文的SE通道注意力機制優化了特征學習,使得HTER更小,AUC值更大,對各支路篡改特征的提取能力更強。
(2)特征融合方式。特征通道拼接、特征逐元素相加和決策層融合是3種常見的特征融合實現方式。為研究不同特征融合方式對算法性能的影響,本文設計了E1和E22組對比實驗。E1采取特征逐元素相加的方式,將各支路輸出的卷積特征經過全局平均池化,得到3個1×2×2 048維的特征向量,然后利用Softmax計算獲取3個特征向量在各通道維度的權重,再逐通道加權求和得到1×2×2 048維的特征向量輸入全連接層分類。E2采取決策層融合的方式,將各支路輸出的卷積特征分別進行全局平均池化,并輸入2通道的全連接層得到3個2維預測向量,最后利用Softmax計算對預測向量加權求和,作為最終的模型預測輸出。
E1、E2與本文采用的特征通道拼接方式進行對比,DFD(C23)訓練數據庫下不同特征融合方式對比結果見表2所列,網絡結構如圖3所示。

表2 不同特征融合方式對比結果 %

圖3 特征通道拼接方式對比圖
從實驗結果可知,無論是特征逐元素相加模型E1還是決策層融合模型E2,其在庫內及跨庫測試的表現均差于本文采取的特征通道拼接融合模型。分析其原因有如下2點:① 特征逐元素相加需滿足各個特征向量語義相似的先驗條件,而本文算法提取的空域、頻域和時域特征在特征語義上存在一定差異,DFT頻譜丟失了位置信息,而光流圖是反映運動信息;② 決策層融合方式往往在多個分類器性能相當的情況下表現較好,但本文的DFT分支和光流分支信息不全面,獨立檢測性能弱于RGB分支。另外,特征通道拼接方式可以最大程度地保留多域篡改信息,得到信息更豐富、魯棒性更強的分類特征,因此模型的庫內和跨庫性能均得到改善。
為了對本文算法進行全面評估,選取近年來發表的6個國內外篡改檢測算法[1-3,6,13,20]進行對比,其中文獻[20]針對GANs(生成式對抗網絡)假臉檢測提出了3個輕量級網絡,本文選用ShallowNetV1用于換臉檢測。選用ShallowNetV1而非V2、V3是為了避免網絡過淺導致無法提取穩定的檢測特征。
(1)HTER比較。不同算法在DFD(C23)數據庫和FF++(C0&C23)數據庫訓練模型的庫內及跨庫測試結果分別見表3、表4所列。表3中,本文算法在庫內測試達到最優,HTER為1.6%。在跨FF++(C0)、FF++(C23)、TIMIT和FFW庫測試時,除了MISLnet[2],本文算法的表現均優于其他算法,雖然MISLnet在FF++(C0)和FF++(C23)數據庫上表現略優于本文算法,但在其他測試條件下HTER性能均不如本文算法。

表3 不同算法在DFD(C23)數據庫訓練模型的HTER %

表4 不同算法在FF++(C0&C23)數據庫訓練模型的HTER %
在表4中,無論是庫內還是跨庫,本文算法的HTER值一直位于較低的水平,說明其誤差小,總體表現穩定。其他所有算法在庫內和跨庫的HTER值均起落劇烈,說明它們的檢測特征隨庫的不同變化大,檢測誤差不夠穩定,泛化性能不好。
(2)AUC比較。不同算法在DFD(C23)數據庫和FF++(C0&C23)數據庫訓練模型的庫內及跨庫測試AUC柱形圖分別如圖4、圖5所示。與其他算法相比,本文算法在庫內及跨庫測試時達到最高或接近最高的AUC值,且在2個不同數據庫訓練的模型跨庫測試表現更為穩定,與上述HTER指標比較結果一致,驗證了本文算法性能優良且跨庫穩定性好。

圖4 不同算法在DFD(C23)數據庫訓練模型的AUC柱形圖

圖5 不同算法在FF++(C0&C23)數據庫訓練模型的AUC柱形圖
(3)復雜度比較。本文在相同的實驗環境下,選取浮點運算次數(floating-point operations,FLOPs)和平均幀檢測時間來評估算法的復雜度,見表5所列,其中FLOPs以百萬(M)為單位,平均幀檢測時間以ms(毫秒)為單位。具體選取FF++數據庫中100段平均時長15 s的視頻進行測試,并計算模型測試總時長,主要包括特征圖像提取和結果判決2個步驟,最后根據測試總時長和測試總幀數計算平均幀檢測時間。

表5 不同算法的復雜度
與其他算法相比,本文算法因使用了多路卷積神經網絡提取多域卷積特征,FLOPs相對有所增加,但少于FFD-VGG16[3]。同時由于本文算法需要額外計算DFT頻譜圖和光流圖作為網絡輸入,平均幀檢測時間相對較長。但從HTER和AUC指標比較看,本文算法的泛化性能更為穩定。犧牲部分FLOPs和檢測時間來提高模型的檢測精度及穩定性,在實際應用場景中有一定意義。
本文用消融實驗(C1、C2、C3、C4、Full)來驗證算法各組成部分的有效性。消融實驗C1使用了RGB分支,將RGB圖像輸入Xception網絡進行訓練;消融實驗C2在C1的基礎上添加了DFT特征分支構建雙流網絡進行訓練;消融實驗C3在C1的基礎上添加了光流特征分支構建雙流網絡進行訓練;消融實驗C4利用3個特征分支構建多路卷積神經網絡進行訓練;消融實驗Full在C4的基礎上,在各支路添加了通道注意力模塊進行訓練,即本文算法模型,具體設置見表6所列。實驗均采取特征通道拼接的方式實現各支路特征融合,DFD(23)訓練數據庫下消融實驗結果見表7所列。

表6 消融實驗設置

表7 消融實驗結果 %
表7中,由C1、C2、C3的實驗結果可知,在RGB分支的基礎上,添加了DFT特征分支和光流特征分支的模型在FF++(C0)數據庫、FF++(C23)數據庫和TIMIT數據庫的跨庫測試HTER均有不同程度的降低,表明DFT特征和光流特征的引入對提高模型的跨庫檢測性能具有積極作用。
由C2、C3、C4的實驗結果可知,消融實驗C4通過多域特征拼接融合的方式,有效降低了模型在FF++(C23)數據庫、TIMIT數據庫和FFW數據庫的跨庫HTER,驗證了多域特征融合的有效性,但在庫內和FF++(C0)跨庫測試中HTER有所升高,可能的原因是直接將多域特征拼接融合存在語義特征不一致的問題而影響融合后分類特征的魯棒性。
對比消融實驗C4和Full的實驗結果,Full通過添加通道注意力模塊進一步降低了模型的庫內及跨庫測試HTER,表明引入SE通道注意力機制有效提高了模型對多域篡改信息的提取能力,從而保證了融合后分類特征的魯棒性。
本文算法在DFD(C23)數據庫訓練模型的庫內及跨庫測試ROC曲線如圖6所示。

圖6 本文算法在DFD(C23)數據庫訓練模型的ROC曲線
庫內測試性能很好,AUC高達99.9%,同時在對多個數據庫進行跨庫測試時,ROC曲線分布相近且較接近左上角,驗證了算法泛化性能良好。
本文基于多特征融合的思想,提出了一種基于多域特征融合的換臉視頻檢測算法,通過融合從空域、頻域和時域分別提取的特征來豐富特征表示,使分類的魯棒性更強。與其他同類方法相比,在保持良好庫內檢測性能的同時,有效提升了模型的泛化性能及穩定性。本文算法探索了將手工提取特征與深度學習網絡有效結合的方式,實驗結果驗證了拓寬特征來源、擴大特征表征范圍是解決換臉視頻檢測算法泛化性能瓶頸的有效技術路徑。后續研究可基于本文算法框架,進一步篩選和引入區分度更強的篡改檢測特征支路,同時也可對各支路特征提取網絡進行優化。