卷積神經網絡(CNN)
局部連接
傳統的神經網絡是全連接,即壹層的神經元與上壹層的所有神經元都建立連接,這樣導致參數非常多,計算量非常大,而CNN是局部連接,壹層的神經元只與上壹層的部分神經元建立連接,這樣可以減少參數和計算量。
Technology-MachineLearning-FaceRegonition-CNN-LocalConnected
權值***享
給壹張輸入圖片,用壹個filter去掃時,filter裏面的數就叫權重。用該filter對整個圖片進行了某個特征的掃描,例如Edge detection,這個過程就是權值***享,因為權重不變。
Technology-MachineLearning-FaceRegonition-CNN-WeightSharing
人臉識別
多個CNN加其他層,遍歷而成的人臉識別處理結構:
Technology-MachineLearning-FaceRegonition-CNN-Example
層提取到的信息的演進:
Technology-MachineLearning-FaceRegonition-CNN-Example2
人臉檢測
傳統算法
識別:滑動窗口+分類器
用壹個固定大小的窗口去滑動掃描圖像,並通過分類器去分辨是否是人臉。有時候人臉在圖片中過小,所以還要通過放大圖片來掃描。
Technology-MachineLearning-FaceRegonition-Window&Classifier
訓練:特征+Adaboost
傳統特征:LBP/HOG/Harr
圖片原始的RGB信息,維度太高,計算量過大,且不具備魯棒性,即光照和旋轉,對RGB信息影響非常大。
利用LBP得到二進制值,再轉換成十進制:
Technology-MachineLearning-FaceRegonition-LBP
效果圖:
Technology-MachineLearning-FaceRegonition-LBP-Example
Adaboost
由於移動設備對計算速度有壹定要求,所以用多個弱分類器加權疊加來完成壹個強分類器,從而保證速度。
Technology-MachineLearning-FaceRegonition-Adaboost
深度學習
特征的選取是比較復雜的,可能需要大量的統計學和生物學知識積累,而深度學習不需要選擇特征,這是其很大優勢,另外通過GPU代替CPU等方式,可以得到壹個更好的效果。
Technology-MachineLearning-FaceRegonition-DeepLeaning-Example
關鍵點檢測、跟蹤
傳統算法
Cascade regression/ESR/SDM
傳統算法步驟:
根據人臉檢測的框位置,先初始化初始臉部輪廓位置;
進行上壹步位置和圖形特征檢測下壹步位置(壹般是叠代殘差);
進行叠代,最終得到相對準確的輪廓位置。
Technology-MachineLearning-FaceRegonition-KeyPoints
深度學習
深度學習算法步驟:
對圖像進行輪廓定位態校正;
全局粗定位;
局部精細定位。
作者:YI_LIN
來源:簡書