標籤:

[論文筆記] Finding Tiny Faces in the Wild with Generative Adversarial Network

論文概述

純屬個人理解,梳理自己思路用,僅供參考(可能會有標點錯誤或語句不通順 +_+)

本文主要解決無限制場景下的微小人臉檢測問題,tiny face指尺寸小,解析度低,模糊並缺乏必要信息的人臉patch,tiny face檢測問題如下圖所示。通過利用GAN模型對tiny face進行高分辨和去模糊的人臉生成,在通過判別器來進行識別。生成網路包含super-resolving和refining兩個過程,這兩個過程分別解決解析度低和人臉模糊兩個問題,分別通過借鑒SR-GAN和cycle-GAN。

整體網路結構主要包括MB-FCN和GAN兩部分,如下圖所示。MB-FCN檢測器用於初步檢測,訓練時為GAN網路提供樣本,測試時為GAN提供ROI。GAN網路使用生成器和判別器構成。生成器網路由兩個sub-network,一個是up-sample sub-network,另一個是refinement sub-network,其目的是生成高解析度和去模糊的人臉patch。判別器網路有兩個判別任務,一個是人臉是否是高分辨,另一個是patch是否是人臉。

Generator network

由於tiny face缺乏細節信息和重建誤差MSE loss的影響(保留低頻信息,丟失高頻信息,這是由誤差函數導致的),生成的超分辨人臉往往比較模糊。需要設計refinement sub-network來去除模糊現象。up-sample sub-network中有兩個de-conv layer用來做上採樣,使解析度提升4倍。refinement sub-network中除了最後一層,其餘每個conv之後都有BN和Relu。

Discriminator network

判別網路使用VGG作為backbone,同時去除conv5之後的max-pooling,替換全連接層fc6,fc7,fc8為兩個並行的fc_GAN和fc_clc,網路結構參數如下圖所示。

Loss function

網路結構的多任務學習通過混合多個loss來實現。整體loss主要分為三個部分圖像重構誤差pixel-wise loss,GAN網路誤差adversarial loss以及分類誤差classification loss。

  • Pixel-wise loss

生成網路的輸入是tiny face加上隨機noise,該MSE loss是強制使生成人臉逼近高分辨人臉,公式如下所示。G1表示up-sample sub-network,G2表示refinement sub-network

  • Adversarial loss

生成網路的損失定義為如下公式,該loss引導圖像生成儘可能多含有高頻信息。

  • Classification loss

該loss是判別器的損失函數,為了區分人臉與非人臉,人臉樣本主要包括高分辨人臉和有生成器生成的低分辨人臉。該loss可以使生成網路重建image更sharper。

  • Objective function

將以上三個loss合併,可以得到整體目標函數,如下公式所示。

考慮到生成網路和監督網路的優化,可以修改上述loss,分為生成網路G的loss和監督網路D的loss,如下圖所示。

結論

通過對上述設計進行Ablation,可以得到各個部分所起到的作用,如下表所示。

對比其他演算法結果如下圖所示。


推薦閱讀:

R語言數據分析筆記——Cohort 留存分析
Numpy基礎知識
第一章:英語句子的主幹
今日2.22《子夜》書摘
筆記工具推薦

TAG:筆記 | 科技 |