Deepfake 視頻中時空不一致學習

【GiantPandaCV 導語】

針對 Deepfake Video 檢測任務上的時空不一致問題,提出了三種模塊對時間信息、空間信息、時間差異進行建模,能夠靈活地即插即用到 2D CNN 中。

1 前言

在本次工作中,我們將時空不一致學習引入到 Deepfake Video 檢測任務上。我們分別提出了三種模塊。

具體來說,我們在 TIM 模塊中,利用相鄰視頻幀在水平,垂直方向時間差異來進行建模。ISM 模塊則分別利用 TIM 模塊的時間信息,SIM 的空間信息,建立更全面的時空表示。上述這三個模塊構成的 STIL Block 是一個靈活的插件模塊,可以靈活地插入到 2d CNN 中。

倉庫地址:https://github.com/Holmes-GU/MM-2021(目前暫時是空的,作者後續應該會更新) 論文地址:http://arxiv.org/pdf/2109.01860v1

2 概覽

我們將 Deepfake 視頻檢測視爲一種二分類問題,給定一段輸入視頻序列 (T,C,H,W),其中 T 表示的是視頻幀數量,使用 2D-CNN 模型來進行建模。

我們將 deepfake 視頻檢測表述爲一個時空不一致性的學習過程,並設計了 STIL 模塊,插入到 ResNet 模型中。

STIL 模塊是一種雙流模型,我們將輸入 X 從通道維上均分得到 {X1, X2}。

X1 進入到 SIM 中,以捕捉空間僞造模式。TIM 則以逐幀的方式來挖掘 deepfake 給人臉帶來的時間不一致性。ISM 則將信息流從空域引入時域(說人話就是把 SIM 的東西給融進 TIM)。最後雙流的信息被拼接到一起(還有底下一條殘差支路),輸入到下一層。

3SIM (Spatial Inconsistency Module)

之前也有一些研究關於 GAN 中,使用 Upsample 操作會產生棋盤紋理

筆者記得是可以通過合理配置 stride,kernelsize 來避免棋盤紋產生。

並且 Deepfake 在做人臉融合的時候,融合邊緣附近的圖像質量並不一致,我們將這些特徵視爲空間不一致性。

該模塊僅考慮空域而不考慮時域,我們將 SIM 設置爲一個 3 路的模塊。首先將通道一分二,SIM 的輸入是 (T, C/2, H, W)。

4TIM (Temporal Inconsistency Module)

deepfake 基本都是逐幀生成的,沒有考慮視頻前後的信息,因此給定一個圖片來分辨可能很難,但是結合不同幀來看就相對簡單了。

視頻分類模型基本也是時間,空間解耦合的思想

我們發現分別從水平,垂直方向觀察,視頻中時間不一致性更加突出。

首先輸入還是 (T, C/2, H, W),經過 conv,reshape,給到上下兩條支路,分別對水平,垂直方向進行建模。

注意的是這裏 reshape 將維度做了調整

接着是做一個幀間差操作,以水平方向的支路爲例:

就是當前幀經過一層 conv,然後減去上一時間幀。

類似地,也是經過一個三支路模塊:

水平方向和垂直方向兩個支路的置信度加到一起,與輸入 X2 相乘。

5ISM (Information Supplement Module)

這個模塊主要是做信息融合,作者嘗試了三種方式

經過消融實驗,發現 S -> T 效果最好。

還是分三條路:

6 實驗結果

看結果最後都十分不錯,並且也做了很完善的消融實驗

還有一些 STIL Block 的可視化圖,第 1,3 行是視頻序列,2,4 行是 heatmap

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/-RopkKsdpyPWSkTJYOnRsA