1. 程式人生 > >【技術綜述】人臉顏值研究綜述

【技術綜述】人臉顏值研究綜述

文章首發於微信公眾號《與有三學AI》

今天帶來一篇人臉識別中的顏值打分技術,所謂“顏值”,基於什麼標準來評判高低呢?既然是個“數值”,那到底能不能“測量”一下?

01概述

近年來隨著人臉識別技術的發展,顏值打分也受到了廣泛的關注與研究。可即使人來打分,大家也口味各異,御姐蘿莉各有所愛。計算機又豈能判斷人的美醜呢?實際上科學家研究過人臉的"顏值",並一直在開發相對應的”顏值演算法”。【1】“平均臉” 的思想是通過演算法檢測特徵點,然後將人臉影象劃分成不同區域再做分段放射變換與加權平均,綜合考慮人臉的形狀特徵和紋理特徵,合成的圖如下:

五官勻稱,輪廓對稱,膚色美觀的臉更容易受到大眾的喜歡,這一點在顏值中可算達到臉共識,也就是“醜人多作怪,美人一個胚”。正因如此,顏值演算法才有了可行性,國內各大公司開發了顏值打分應用,我們看看。

同一張圖在不同應用中的測定

不同的人臉在同一應用中測定(百度AI為例)

不同年齡不同膚色在顏值打分系統中評分測試(例曠視科技,列出部分測試):

顏值測定是一項娛樂的應用,我們從下面的資料集中隨機拿了幾張圖做測試,結果如下

1. 不同膚色給出分數無明顯差異

2. 評分多在60分左右

總的來說表現都差不多,娛樂為主吧。

02 人臉顏值資料集與標價指標

2.1 資料集

地址在https://github.com/HCIILAB/SCUT-FBP5500-Database-Release。

資料集共5500個正面人臉,年齡分佈為15-60,全部都是自然表情。包含不同的性別分佈和種族分佈(2000亞洲女性,2000亞洲男性,750高加索男性,750高加索女性),資料分別來自於資料堂,US Adult database等。每一張圖由60個人進行評分,共評為5個等級,這60個人的年齡分佈為18~27歲,均為年輕人。適用於基於apperance/shape等的模型研究。同時,每一個圖都提供了86個關鍵點的標註。

各類人群的顏值分佈如下:

顏值分數都使用包含兩個主成分的混合高斯模型去擬合,紅色和綠色分別是低顏值和高顏值的分佈曲線,可見對於這4類人群,平均高顏值在4,低顏值在2.5左右。

另外文【2】中還列出了一些資料集,大家可以自行了解。

2.2 評價準則

2.2.1 Pearson correlation coefficient

用來度量資料間是否存線上性關係,也表徵了變數間線性關係的強弱。它通過計算兩個資料集合之間的距離用來衡量兩個資料集合的線性相關度。設 N 幅人臉影象的人工評分值為{ x1,x2,…,xi,…,xN} ,計算得到的分值為{ y1,y2,…,yi,…,yN } ,其中 xi 表示第i幅影象的真值,yi 表示第i幅影象的人臉顏值預測結果。相關係數 r 計算公式如式如下:

r 值越高,表示人工分類結果與本文方法預測結果越接近,該方法的效能就越好,反之,則越差,如下圖所示。

2.2.2 Maxumum absolute error和root mean square error

Maxumum absolute error就是真值和預測值的絕對差值,root mean square error就是誤差平方和的根,比較簡單就不列出公式了。

03 傳統方法研究思路

傳統方法研究思路,自然就是手動提取特徵,我們基於參考文獻【3】來做說明。

分為幾何特徵表觀特徵,幾何特徵包括人臉關鍵特徵點位置、關鍵位置距離資訊以及人臉各器官面積比例;表觀特徵包括LBP紋理特徵。將這兩種特徵進行串聯得到融合特徵。

下面是具體的步驟。

3.1影象預處理

人臉影象收集時質量不同且伴有噪聲,明暗灰度也差異較大,對影象進行預處理有助於後續對人臉特徵的提取與計算。影象預處理包括灰度化處理、位置檢測以及傾斜校正處理

1. 將影象轉化為灰度圖

2. 利用Haar分類器擷取人臉的大致區域

3. 計算傾斜角並矯正

3.2 幾何特徵提取

3.2.1 全域性特徵

根據ASM演算法將68個人臉特徵點的橫縱座標連線起來構成表徵人臉幾何特徵關鍵點的特徵向量,這就是全域性特徵。但是由於原始影象角度問題會導致向量在計算過程中會出現誤差,所以要對向量進行歸一化處理,具體包括(1)平移不變處理(2)尺度不變處理(3)旋轉不變處理

3.2.2 人臉距離特徵

人到一定年齡以後,面部的器官位置資訊將不再隨著年齡的增長而變化( 手術或意外情況除外) ,基於ASM-68向量定義18個距離特徵如下:

3.2.3 面積特徵

根據 ASM定位的關鍵點找到表徵各器官面積的三角形,如眼睛、鼻子、下巴、嘴等, 將得到的54個三角形面積特徵歸一化後就可以得到三角形面積特徵。

3.2 表觀特徵提取

表觀特徵表徵的是人臉的整體外貌和人臉的面板狀況等資訊。可以反映出如紋理資訊、人臉面板的狀態、顏色深淺面部資訊等。表觀特徵選擇比較成熟的LBP特徵。

LBP特徵,就是在影象的某個區域內,將中心畫素點的畫素值作為閾值,相鄰畫素點與其進行對比,大於閾值標記為1,小於或等於則標記為0,產生8位二進位制數,該值作為中心畫素點的LBP值。當然,Gabor特徵也是經常使用的。

3.3 特徵融合與分類

3.3.1人臉特徵融合

前面提取的幾何特徵顯示了人臉關鍵特徵點資訊、人臉各器官間的距離比例資訊以及面積特徵等,表觀特徵表徵了人臉的全域性紋理特性。由於都已經進行了歸一化處理,因此可以直接採用串聯的方式進行特徵融合。

3.3.2 分類

融合了特徵之後就可以進入分類器了,常用的是SVM。

在文【2】中分別採用了18維的距離特徵和Gabor濾波特徵,使用了linear regression,gaussian regression和support vector regression方法進行比較。效果如下:

從結果看來,對於幾何特徵,gaussian regression和support vector regression表現更好均優於linear regression方法,而對於紋理特徵,求取關鍵點的方法的不同,使得gaussian regression和support vector regression各有優劣。

04 深度學習方法研究思路

基於深度學習的方法,由於已經沒有了手設特徵的一步,所以就只剩下優化目標的選擇和網路的選擇。更強大的網路,通常都有更好的效能,我們看看文【2】訓練的結果。

實驗結果表明符合我們的預測,網路最強大的ResNext-50取得最優效能,同時,所有的網路都優於最好的傳統方法。基於深度學習的方法沒有太多可以說的地方,懟資料就是正確答案。

05 總結

最後我們做一個總結。人臉顏值打分演算法,雖然是一個比較主觀的問題,但是也可以取得比較統一的結果。它可以是一個分類問題,也可以是一個迴歸問題。基於深度學習的方法+更大更高質量的資料集的整理,可以非常完美地解決這個問題。在各大軟體當中目前用於娛樂,但顏值演算法同樣在美容等行業有一定價值,還有待應用。

同時,在我的知乎專欄也會開始同步更新這個模組,歡迎來交流

注:部分圖片來自網路

—END—