人臉關鍵點檢測 遞迴編譯碼網路

2021-07-22 10:14:34 字數 2760 閱讀 7384

本次介紹一篇關於人臉關鍵點檢測(人臉對齊)的文章:

《eccv16 a recurrent encoder-decoder network for sequential face alignment》.

作者主頁: **和預訓練模型後面會放出來。

目前,採用神經網路直接進行回歸的的人臉關鍵點檢測方法越來越多。雖然效能越來越好,但還是很容易受到大的人臉姿態變化以及嚴重遮擋的影響。

encoder-decoder:即編碼階段先做特徵學習,然後解碼階段做關鍵點回歸。

首先給出方法的整體流程圖,我們簡單分析下包含哪幾個模組。

首先從整體上來看一下編譯碼階段,enc:encode,denc:decode.

下圖是文章中使用到的編譯碼網路,是乙個全卷積網路:前半部分卷積表示編碼,後半部分反卷積表示解碼。作者提到使用全卷積,是因為可以得到同樣尺寸的輸出,這樣便於進行遞迴操作。

由圖可以看出,input是3通道彩色圖,label是圖樣大小的單通道圖(假設l個關鍵點,則取值,0表示背景)。output與input大小相同但通道數變為\(l+1\),即第乙個通道表示背景,後續的 \(l\) 個通道依次表示 \(l\) 個關鍵點的pixel級別的置信度。之所以採用 \(l+1\) 個通道是為了保留關鍵點的整體性。

文中作者使用的是vgg網路,不過去掉了所有的全連線並利用現有的卷積層引數初始化網路,所以模型大小只有14.8m,編碼階段最後的輸出為 \(4\times4\times256\)。

此外,編碼階段使用了5個stride=2的 \(2\times2\) max-pooling, 為了在解碼階段可以有效地還原出原來的空間資訊,作者這裡為每乙個啟用值花費2bit來記錄max-pooling的選擇位置。還有一點,作者在網路中加入了bn來加速收斂(ps. 在我的實驗中,對於小網路和回歸問題,bn經常會帶來反效果。)

reg:regression。上面的編譯碼階段最終的輸出是乙個 \(l+1\) 通道的feature map,而我們最終需要的輸出則是一組l個座標([x,y],共2l個數值),所以我們還需要一步非線性對映,

這裡的loss就是常見的歐氏距離:

其中,\(y^*\) 為ground truth,所有的座標都是減去mean shape的值。

具體的對映網路如下:

由圖可知,input是 \(128\times128\times(l+1)\),output是 \(2l\times1\)。網路結構類似於編譯碼階段,但規模稍小。

此外,由於輸入是高度抽象的缺少細節資訊,所以會影響效能。so,作者從編碼階段拿到conv2_2 和 conv4_3的特徵和當前網路對應階段的特徵拼接起來,從而利用起來全域性和區域性的資訊。

(ps. 這已經很複雜了模型已經很大了啊t_t,實際還怎麼實時啊)

空間遞迴學習是為了實現由粗到細的關鍵點定位,而以前的由粗到細方法往往是級聯多個網路,這裡則只使用乙個網路。

示意圖如下:

這個示意圖其實描述的就是下面這樣乙個遞迴公式:

輸入是 \((l+1)\) 通道的response map,輸出則是乙個單通道的label map。具體的處理過程主要有兩步:

(1)將((l+1)\) 通道的response map融合為乙個單通道圖,該圖上的數值為\(0,…l\)。 融合的方法為選取置信度最大的label,即按照下式:

(2)這裡主要實現將(1)的結果怎樣處理成乙個label map,方法是:在(1)的每個關鍵點分布中心處劃定乙個小的正方形,在3次遞迴時舉行尺寸依次是7pixels、5pixels和3pixels。

遞迴採用了lstm結構,示意圖如下(具體結構可參照原文):

本文的方法中,遞迴學習不僅存在於之前的空間上,還有時間上的遞迴學習。

示意圖如下:

這裡講最後乙個模組,身份識別輔助模組。

前面講到 \(f_\)的輸出為 \(4\times4\times512\), 該輸出被分割為兩個\(4\times4\times256\)的特徵,分別用來描述身份和姿態表情變化。

之所以新增身份識別部分,作用類似於湯曉鷗的multitask,據說可以收斂到更好魯棒性也更好。(ps. 據說啊,反正我的實驗裡面multitask, 沒有明顯的積極作用)

識別部分的網路結構如下,使用的是分類loss:

最後新增乙個實驗結果圖:

caffe 人臉關鍵點檢測 密集人臉關鍵點檢測

mtcnn聯合人臉檢測和對齊任務提供了5點關鍵點的能力,但是對於姿態姿態恢復等應用是遠遠不夠的,經常會出現某個點錯誤導致大幅抖動,顯然需要更密集的關鍵點.常見的資料集都是68點和106點。人臉關鍵點檢測主要面臨下面幾個挑戰 區域性變化 現實場景中人臉的表情,廣告,以及遮擋情況都有較大的變化,如fig...

人臉關鍵點檢測綜述

目錄 1.前言 2 人臉檢測資料集 3.人臉檢測方法 4.鏈結以及部分部落格解讀鏈結 根據知乎專欄 整理出來的 綜述。馬住慢慢看總結。序號 時間主要方法 優點缺點1 an introduction to active shape models 1995 asm模型簡單直接,架構清晰明確,易於理解和應...

人臉關鍵點 PFLD人臉關鍵點檢測解讀

參考 應用場景 人臉特效,疲勞檢測,美妝,非官方code 圖1 模型結構圖 圖2 人臉關鍵點 圖3 輔助分支 pfld的模型訓練策略 一開始我們設計的那個簡單的網路,採用的損失函式為mse,所以為了平衡各種情況的訓練資料,我們只能通過增加極端情況下的訓練資料 平衡各類情況下的訓練資料的比例 控制資料...