今天繼續上期的《人臉關鍵點檢測》,精彩的現在才真正的開始,後文會陸續講解現在流行的技術,有興趣的我們一起來學習!
Deep learning based methods
近年來,深度學習成為解決計算機視覺問題的常用工具。對於人臉關鍵點檢測和跟蹤,有從傳統方法向基於深度學習的方法轉變的趨勢。
在早期的工作中(Wu, Y., Wang, Z., Ji, Q.: Facial feature tracking under varying facial expressions and face poses based on restricted boltzmann machines. In: IEEE Conference on Computer Vision and Pattern Recognition, pp. 3452–3459 (2013)),深層Boltzmann模型,一個概率深度模型,被用來捕捉由於姿態和表情而引起的面部形狀變化,用於人臉裡程碑的檢測和跟蹤。近年來,卷積神經網絡模型成為人臉關鍵點檢測,主要是深度學習模型,並且大多採用全局直接回歸或級聯回歸框架。這些方法大致可分為純學習法和混合學習法。
純學習方法直接預測人臉關鍵點位置,而混合學習方法則將深度學習方法與計算機視覺投影模型相結合進行預測。
純學習方法:這類方法使用強大的CNNs模型從人臉圖像中直接預測關鍵點位置。在早期的工作中(Sun, Y., Wang, X., Tang, X.: Deep convolutional network cascade for facial point detection. In: IEEE Conference on Computer Vision and Pattern Recognition, pp. 3476–3483 (2013)),它以級聯的方式預測了五個人臉關鍵點。在第一層,它應用一個包含四個卷積層的CNN模型(下圖)來預測由面部邊界框確定的人臉圖像的關鍵點位置。然後,幾個淺層網絡對每個點進行局部細化。
從那以後,在兩個方向上都比早起某些工作有一些改進。在第一個方向上,(Zhang, Z., Luo, P., Loy, C., Tang, X.: Facial landmark detection by deep multi-task learning. In: European Conference on Computer Vision, Part II, pp. 94–108(2014)和Zhang, Z., Luo, P., Loy, C.C., Tang, X.: Learning deep representation for face alignment with auxiliary attributes. IEEE Transactions on Pattern Analysis and Machine Intelligence 38(5), 918–930 (2016))利用多任務學習的思想來提高性能。直覺是,多個任務可以共享相同的表示,它們的聯合關係將提高單個任務的性能。例如,多任務學習與CNN模型相結合,共同預測面部特徵、面部頭部姿態、面部屬性等。在該工作(Ranjan, R., Patel, V.M., Chellappa, R.: Hyperface: A deep multi-task learning framework for face detection, landmark localization, pose estimation, and gender recognition. CoRR abs/1603.01249 (2016). URL http://arxiv.org/abs/1603.01249)提出了一個類似的多任務CNN框架,以聯合執行人臉檢測、地標定位、姿態估計和性別識別。不同的是它結合了多個卷積層的特徵,以利用粗特徵表示和精細特徵表示。
在第二個方向上,一些工作改進了方法的級聯程序(Sun, Y., Wang, X., Tang, X.: Deep convolutional network cascade for facial point detection. In: IEEE Conference on Computer Vision and Pattern Recognition, pp. 3476–3483 (2013))。例如,某paper構造了類似的級聯CNN模型來預測更多的點(68個關鍵點而不是5個)(Zhou, E., Fan, H., Cao, Z., Jiang, Y., Yin, Q.: Extensive facial landmark localization with coarse-to-fine convolutional network cascade. In: IEEE International Conference on Computer Vision Workshops, pp. 386–391 (2013))。它從所有68個點的預測開始,並逐步將預測分解為局部的面部成分。在該paper(Zhang, J., Shan, S., Kan, M., Chen, X.: Coarse-to-fine auto-encoder networks (CFAN) for real-time face alignment. In: European Conference on Computer Vision, Part II, pp. 1–16 (2014))中,深層自動編碼器模型用於執行相同的級聯關鍵點搜索。而在(Trigeorgis, G., Snape, P., Nicolaou, M.A., Antonakos, E., Zafeiriou, S.: Mnemonic descent method: A recurrent process applied for end-to-end face alignment. In: IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 4177–4187. Las Vegas, NV, USA (2016))中,Trigeorgis等人沒有以級聯的方式訓練多個網絡,訓練了一種深度卷積遞歸神經網絡(RNN),用於端到端面部關鍵點的檢測,以模擬級聯行為。級聯階段嵌入到RNN的不同時間切片中。
混合深度方法將CNN與3D視覺相結合,如投影模型和三維形變形狀模型(上圖)。它們不是直接預測二維面部關鍵點位置,而是預測三維形狀可變形模型係數和頭部姿態。然後,通過計算機視覺投影模型確定二維關鍵點位置。例如,(Zhu, X., Lei, Z., Liu, X., Shi, H., Li, S.: Face alignment across large poses: A 3d solution. In: IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV (2016))建立了一個密集的三維人臉模型。然後,採用迭代級聯回歸框架和深度CNN模型對三維人臉形狀係數和姿態參數進行更新。在每一次迭代中,利用視覺投影模型將三維形狀投影到二維,並將二維形狀作為CNN回歸預測模型的附加輸入,以融合目前估計的三維參數。類似地,(Kanade, T., Cohn, J.F., Tian, Y.: Comprehensive database for facial expression analysis. In: IEEE International Conference on Automatic Face and Gesture Recognition, pp. 46–53)在第一個級聯CNN模型中使用整個面部外觀來預測三維形狀參數和姿態的更新,而在後期級聯CNN模型中使用局部斑塊來細化關鍵點。
與純學習方法相比,混合方法的三維形狀變形模型和姿態參數是表示二維關鍵點位置的更為緊湊的方法。因此,CNN中需要估計的參數較少,形狀約束可以顯式地嵌入到預測中。此外,由於引入了三維姿態參數,它們可以更好地處理姿態變化。
在之前講解中,我們討論了面部表情三種主要類別中的關鍵點檢測方法:整體方法、約束局部方法(CLM)和基於回歸的方法。三種主要的方法存在著相似之處和相互關係。
首先,整體方法和CLMs都將使用顯式構造的面部形狀模型捕捉全局面部形狀模式,這些模型通常在它們之間共享。CLMs改進了整體方法,因為它們使用局部外觀,而不是整體的面部外觀。所需的動機是將整體的面部外觀建模更困難,並且局部圖像修補程序與整體外觀模型相比,光照改變和面部遮擋更加魯棒。
第二,基於回歸的方法,尤其是用於級聯回歸方法與整體AAM共享相似的直覺。例如,它們通過擬合外觀來估計關鍵點,並且它們全部可以被配製成非線性的平方問題。然而,整體方法預測2D形狀,外觀模型係數通過擬合整體外觀模型,而級聯回歸方法直接通過擬合局部外觀而不顯式2D形狀模型來預測關鍵點。該配件整體方法的問題可以用基於LearnBased的方法或分析方式來解決,如前面所討論的那樣,所有級聯回歸方法執行通過學習進行估計。雖然整體模型的基於學習的擬合方法通常使用相同的方法,用於以迭代方式進行係數更新的模型,級聯回歸方法以級聯方式學習不同的回歸模型。
AAM模型在之前討論為一種特定類型的整體方法非常類似於監督下降方法(SDM)(Xiong, X., De la Torre Frade, F.: Supervised descent method and its applications to face alignment. In: IEEE International Conference on Computer Vision and Pattern Recognition (2013))作為一種特定類型的方法級聯回歸方法。兩個級聯學習從形狀索引特徵到形狀(係數)更新的映射的模型。經訓練的模型在當前級聯階段中,將修改訓練用於在下一狀態下訓練回歸模型的數據。雖然以前的整體方法適合整體外觀並預測模型係數,但SDM擬合局部外觀並預測關鍵點位置。
第三,在CLM中使用的基於regressional的局部外觀模型中存在相似性。之前的基於回歸方法,兩者都預測從關鍵點位置的初始猜測的位置更新。以前的方法獨立地預測每個關鍵點位置,而後來的方法預測它們是聯合的,形狀約束可以隱式嵌入。以前的方法通常執行一步預測,相同的回歸模型,而後面的方法可以以級聯方式應用不同的回歸函數。
第四,與整體方法和約束局部方法相比,基於回歸的方法可能會更有希望。基於回歸的方法繞過顯式面部形狀建模並隱式嵌入人臉形狀模式約束。基於回歸的方法直接預測關鍵點,而不是整體方法中的模型係數。直接預測形狀通常可以由於小模型係數,實現較好的精度錯誤可能導致大的關鍵點誤差。
下期我們針對各種因素進行講解,並在流行的數據集上的實驗效果做詳細描述,最後給出未來趨勢及著重點。
https://github.com/luoyetx/deep-landmark
https://github.com/yinguobing/cnn-facial-landmark
如果想加入我們「計算機視覺研究院」,請掃二維碼加入我們。我們會按照你的需求將你拉入對應的學習群!計算機視覺研究院主要涉及深度學習領域,主要致力於人臉檢測、人臉識別,多目標檢測、目標跟蹤、圖像分割等研究方向。研究院接下來會不斷分享最新的論文算法新框架,我們這次改革不同點就是,我們要著重」研究「。之後我們會針對相應領域分享實踐過程,讓大家真正體會擺脫理論的真實場景,培養愛動手編程愛動腦思考的習慣!