How Does Facial Recognition Work?
來源:infoq.cn 作者:杨皓博,有三AI 言有三
今天帶來一篇人臉辨識中的顏值打分數技術,所謂「顏值」,基於什麼標準來評判高低呢?既然是個「數值」,那到底能不能「測量」一下?
01 概述
近年來隨著人臉辨識技術的發展,顏值打分數也受到了廣泛的關注與研究。即便可使人來打分數,大家也口味各異,御姐蘿莉各有所愛。電腦又豈能判斷人的美醜呢?實際上科學家研究過人臉的 " 顏值 ",並一直在開發相對應的「顏值算法」。
「平均臉」 的思想,是透過算法檢測特徵點,然後將人臉圖像劃分成不同區域,再做分段放射變換與加權平均,綜合考慮人臉的形狀特徵,和紋理特徵,合成的圖如下:
五官勻稱、輪廓對稱、膚色美觀的臉,更容易受到大眾的喜歡,這一點在顏值中,可算達到臉共識,也就是「醜人多作怪,美人一個胚」。正因如此,顏值算法才有了可行性,很多公司開發了顏值打分數的應用,接著我們就來看看。
同一張圖在不同應用中的測定:
不同的人臉在同一應用中測定 (百度 AI 為例)
不同年齡不同膚色,在顏值打分數系統中,評分測試 (例曠視科技,列出部分測試):
顏值測定是一項娛樂的應用,我們從下面的數據集中,隨機拿了幾張圖做測試,結果如下:
1. 不同膚色給出分數無明顯差異
2. 評分多在 60 分左右
總的來說表現都差不多,娛樂為主吧。
02人臉顏值數據集與標價指標
2.1 數據集
數據集共 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.1 Pearson correlation coefficient
用來度量數據間是否存在線性關係,也表徵了變量間線性關係的強弱。它透過計算兩個數據集合之間的距離,用來衡量兩個數據集合的線性相關度。
設 N 幅人臉圖像的人工評分值為{ x1,x2,…,xi,…,xN} ,計算得到的分值為 { y1,y2,…,yi,…,yN } ,其中 xi 表示第 i 幅圖像的真值,yi 表示第 i 幅圖像的人臉顏值預測結果。相關係數 r 計算公式如式如下:
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傳統方法研究思路
傳統方法研究思路,自然就是手動提取特徵,我們基於參考文獻來做說明。
分為幾何特徵與表觀特徵,幾何特徵包括人臉關鍵特徵點位置、關鍵位置距離資訊,以及人臉各器官面積比例;表觀特徵包括 LBP 紋理特徵。將這兩種特徵,進行串聯得到融合特徵。
下面是具體的步驟。
3.1 圖像預處理
人臉圖像收集時,品質不同且伴有噪聲,明暗灰度也差異較大,對圖像進行預處理,有助於後續對人臉特徵的提取與計算。圖像預處理包括灰度化處理、位置檢測,以及傾斜校正處理。
1. 將圖像轉化為灰度圖
2. 利用 Haar 分類器截取人臉的大致區域
3. 計算傾斜角並矯正
3.2 幾何特徵提取
3.2.1 全局特徵
根據 ASM 算法將 68 個人臉特徵點的橫縱坐標,連接起來構成表徵人臉,幾何特徵關鍵點的特徵向量,這就是全局特徵。但是由於原始圖像角度問題,會導致向量在計算過程中,會出現誤差,所以要對向量進行歸一化處理,具體包括 (1) 平移不變處理 (2) 尺度不變處理 (3) 旋轉不變處理
3.2.2 人臉距離特徵
人到一定年齡以後,臉部的器官位置資訊,將不再隨著年齡的成長而變化 ( 手術或意外情況除外) ,基於 ASM-68 向量定義 18 個距離特徵如下:
2.2.2 Maxumum absolute error 和 root mean square error
Maxumum absolute error 就是真值和預測值的絕對差值,root mean square error 就是誤差平方和的根,比較簡單就不列出公式了。
03傳統方法研究思路
傳統方法研究思路,自然就是手動提取特徵,我們基於參考文獻來做說明。
分為幾何特徵與表觀特徵,幾何特徵包括人臉關鍵特徵點位置、關鍵位置距離資訊,以及人臉各器官面積比例;表觀特徵包括 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.3 面積特徵
根據 ASM 定位的關鍵點,找到表徵各器官面積的三角形,如眼睛、鼻子、下巴、嘴等, 將得到的 54 個三角形面積特徵,歸一化後就可以得到三角形面積特徵。
3.3 表觀特徵提取
表觀特徵表徵的,是人臉的整體外貌和人臉的皮膚狀況等資訊。可以反映出如紋理資訊、人臉皮膚的狀態、顏色深淺臉部資訊等。表觀特徵選擇比較成熟的 LBP 特徵。
LBP 特徵,就是在圖像的某個區域內,將中心像素點的像素值作為閾值,相鄰像素點與其進行對比,大於閾值標記為 1,小於或等於則標記為 0,產生 8 位二進制數,該值作為中心像素點的 LBP 值。當然,Gabor 特徵也是經常使用的。
3.4 特徵融合與分類
3.4.1 人臉特徵融合
前面提取的幾何特徵,顯示了人臉關鍵特徵點資訊、人臉各器官間的距離比例資訊,以及面積特徵等,表觀特徵表徵了人臉的全局紋理特性。由於都已經進行了歸一化處理,因此可以直接採用串聯的方式,進行特徵融合。
3.4.2 分類
融合了特徵之後就可以進入分類器了,常用的是 SVM。
採用了 18 維的距離特徵和 Gabor 濾波特徵,使用了 linear regression,gaussian regression 和 support vector regression 方法進行比較。效果如下:
3.3 表觀特徵提取
表觀特徵表徵的,是人臉的整體外貌和人臉的皮膚狀況等資訊。可以反映出如紋理資訊、人臉皮膚的狀態、顏色深淺臉部資訊等。表觀特徵選擇比較成熟的 LBP 特徵。
LBP 特徵,就是在圖像的某個區域內,將中心像素點的像素值作為閾值,相鄰像素點與其進行對比,大於閾值標記為 1,小於或等於則標記為 0,產生 8 位二進制數,該值作為中心像素點的 LBP 值。當然,Gabor 特徵也是經常使用的。
3.4 特徵融合與分類
3.4.1 人臉特徵融合
前面提取的幾何特徵,顯示了人臉關鍵特徵點資訊、人臉各器官間的距離比例資訊,以及面積特徵等,表觀特徵表徵了人臉的全局紋理特性。由於都已經進行了歸一化處理,因此可以直接採用串聯的方式,進行特徵融合。
3.4.2 分類
融合了特徵之後就可以進入分類器了,常用的是 SVM。
採用了 18 維的距離特徵和 Gabor 濾波特徵,使用了 linear regression,gaussian regression 和 support vector regression 方法進行比較。效果如下:
從結果看來,對於幾何特徵,Gaussian Regression 和 Support vector Regression 表現更好均優於 linear regression 方法,而對於紋理特徵,求取關鍵點的方法的不同,使得 Gaussian regression 和 Support vector Regression 各有優劣。
04深度學習方法研究思路
基於深度學習的方法,由於已經沒有了手設特徵的一步,所以就只剩下優化目標的選擇,和網路的選擇。更強大的網路,通常都有更好的性能,我們看看訓練的結果。
實驗結果顯示符合我們的預測,網路最強大的 ResNext-50 取得最優性能,同時,所有的網路都優於最好的傳統方法。基於深度學習的方法,沒有太多可以說的地方,懟數據就是正確答案。
05總結
最後我們做一個總結。人臉顏值打分數算法,雖然是一個比較主觀的問題,但是也可以取得比較統一的結果。它可以是一個分類問題,也可以是一個回歸問題。
基於深度學習的方法 + 更大更高品質的數據集的整理,可以非常完美地解決這個問題。在各大軟體當中目前用於娛樂,但顏值算法同樣在美容等行業有一定價值,還有待應用。
按此回今日3S Market新聞首頁
按此回今日3S Market新聞首頁
沒有留言:
張貼留言