人臉特徵點定位方法綜述
(An Empirical Study of Recent Face Alignment Methods閱讀筆記)
人臉特徵點定位方法具有里程碑式的發展有五個:
1、1995 年Cootes 的ASM算法;
2、1998 年Cootes 的AAM算法;
3、2006 年cristinacce 的CLM算法(Constrained Local Model);
4、2010 年Dollar 的cascaded Regression算法;
5、2013年 Sun 首次將深度學習方法CNN應用到人臉特徵點定位上;
當前的人臉特徵點定位有三種方法:基於局部方法(local-basedmethods)、基於全局的方法(holistic-basedmethods)以及基於混合的方法。注:ASM,AAM不包括在內;
一、基於局部方法(local-based methods)
基於局部方法通常有兩種:local expert和spatial shape model .前者着重描述特徵點附近圖像的“模樣”,後者着重於描述臉部形狀的變化。
1.1、Local expert主要由以下三類:1)基於分類方法,例如一般基於Gabor特徵或SIFT特徵的SVM,基於DRMF的字典學習(Dict.L)和多通道關聯濾波器(CF);
2)基於迴歸的方法,例如支持向量迴歸(SVR)和連續條件隨機場(CCNF);
3)基於投票的方法。
1.2、Shape model比較典型的就是CLM(局部約束模型),還有其他的比如RANSAC,圖匹配,高斯牛頓可變性部分模型(GNDPM),混合樹模型以及層次可能性模型(HPM)
基於局部方法不足之處:1)當特徵點較多是,計算量大;2)難以平衡局部響應與全局約束;
二、基於全局的方法(holistic-based methods)
當前大多數基於全局的方法都是從粗到精的方式進行工作的。比如形狀估計一般開始與初始形狀S0,通過T個迴歸器級聯逐步地對形狀進行微調,然後獲得最終形狀。可以用如下算法進行解釋:
儘管當前提出了許多策略,但大多數策略都是基於上面的那個框架,只不過這些方法的區別主要在這三個方面:1)初始化設置不同;2)shape-indexed特徵不同;3)迴歸器的不同;不過特徵提取和迴歸器通常是相互依賴的。
初始化:對於基於形狀迴歸的方法初始化主要有三種策略:random,mean shape以及supervised。這裏說一下,基於supervised初始化策略通常通過一個輔助模型(比如ConvNet)計算初始化模型。
Shape indexed特徵:當前有大量的不同的圖像特徵用來作爲Shape indexed特徵,包括灰度像素差值,手工特徵(SIFT或HOG等),學習特徵(使用自編碼器或ConvNet)
迴歸器:迴歸器也有許多不同的構建方法,比如:隨機厥 random ferns,隨機森林random forests,支持向量迴歸SupportVector Regressor,監督梯度下降法Supervised Descent Method(SDM) 以及他的擴展方法。當前,也有許多人將深度學習的框架應用到人臉對齊的問題上,這種方法一般都是一種基於全局的(holistic),從粗到精(coarse-to-fine)的方式。
值得注意的是,特徵和迴歸器的結合無非就是兩種,non-linear features + linear regression以及linear features + non-linear regression,這是因爲從image到face pose的mapping過程就是一個非線性的過程。
三、基於混合的方法
基於混合的方法用的比較多的就是臉部遮擋檢測occlusion detection,unified face detection andalignment 以及Active Pictorial Model。
四、人臉特徵點定位常用數據集
五、人臉檢測方法
(1)OpenCV自帶的基於Harr特徵的V-Jdetector;
(2)基於HOG+SVM特徵的dlib;
(3)doppia庫的三種人臉檢測方法(DPM,HeadHunter和HeadHunter_baseline)。
上面幾種人臉檢測效果中doppia庫提供的人臉檢測效果最好,順便提一下,doppia庫除了有比較好的人臉檢測算法之外還有行人檢測算法DPM, DPM應該算是的傳統機器學習模式(非深度學習)下行人檢測效果最好的算法。另外下面是一些網友整理的具有state-of-the-art的人臉檢測方法:
文章中有對常用的幾種人臉檢測算法進行對比:
六、特徵點定位評估指標
這裏就着重介紹一下作者提出的new特徵點定位評估標準: 。當前使用的最多的特徵點定位誤差歸一化的方法就是:
這裏表示估計形狀與ground truth形狀的歐式距離,表示雙眼距離,即兩眼中心的歐式距離。
評估特徵點定位評估方法有兩種,一種是平均誤差,另一種是累積誤差分佈曲線(CED,CumulativeError Distribution)。
作者在文章中提出了一種新的人臉特徵點定位估計評估指標,就是通過計算該曲線的面積進行評估。
這裏,e表示歸一化誤差,f(e)表示累積誤差分佈函數。
橫座標表示歸一化誤差值e,縱座標表示小於歸一化誤差e的特徵點佔所有特徵點的比例。值得一說的是,該方法的好處就在於的值不像平均誤差那樣受單個點誤差較大而發生較大變化,非常敏感。
七、實驗
作者對近年來一些的一些人臉特徵點定位方法進行相關的復現性實驗並對比其實驗效果。這些方法包括CFAN,RCPR,IFA,CFSS,SDM,LBF等等。
注:上述實驗結果只是作者實現的效果並非方法原作者所提供的實驗數據,而且部分實驗結果與方法原作者的存在出入。
重要影響因素
作者在文章研究了許多影響特徵點定位效果的因素,比如人臉檢測方法(faceCentre shift, face scale change),初始化以及級聯程度等等。我在這裏就介紹一下文章中介紹的兩個重要因素。作者選取了基於全局(holistic-based)的人臉對齊方法的兩個重要影響因素:初始化(initialization)和和級聯程度(cascade level),選擇的研究對象是具有突破性的人臉對齊方法---顯性性狀迴歸(ESR)。
上面RD(random)表示隨機選取形狀,MS(means shape)表示平均形狀。