人脸识别引擎SeetaFaceEngine简介及在windows7 vs2013下的编译
SeetaFaceEngine是開源的C++人臉識別引擎,無需第三方庫,它是由中科院計算所山世光老師團隊研發(fā)。它的License是BSD-2.
SeetaFaceEngine庫包括三個模塊:人臉檢測(detection)、面部特征點定位(alignment)、人臉特征提取與比對(identification)。
人臉檢測模塊:基于一種結合經典級聯(lián)結構和多層神經網絡的人臉檢測方法實現(xiàn),其所采用的漏斗型級聯(lián)結構(Funnel-Structured Cascade,FuSt)專門針對多姿態(tài)人臉檢測而設計,其中引入了由粗到精的設計理念,兼顧了速度和精度的平衡。FuSt級聯(lián)結構在頂部由多個針對不同姿態(tài)的快速LAB級聯(lián)分類器構成,緊接著是若干個基于SURF特征的多層感知機(MLP)級聯(lián)結構,最后由一個統(tǒng)一的MLP級聯(lián)結構(同樣基于SURF特征)來處理所有姿態(tài)的候選窗口,整體上呈現(xiàn)出上寬下窄的漏斗形狀。從上往下,各個層次上的分類器及其所采用的特征逐步變得復雜,從而可以保留人臉窗口并排除越來越難與人臉區(qū)分的非人臉候選窗口。
面部特征點定位:采用一種由粗到精的自編碼器網絡(Coarse-to-Fine Auto-encoder Networks, CFAN )方法實現(xiàn)。CFAN級聯(lián)了多級棧式自編碼器網絡,其中的每一級都刻畫從人臉表觀到人臉形狀的部分非線性映射。具體來說,輸入一個人臉區(qū)域(由人臉檢測模塊得到),第一級自編碼器網絡直接從該人臉的低分辨率版本中快速估計大致的人臉形狀S0。然后,提高輸入人臉圖像的分辨率,并抽取當前人臉形狀S0(相應提升分辨率)各特征點位置的局部特征,輸入到下一級自編碼器網絡來進一步優(yōu)化人臉對齊結果。以此類推,通過級聯(lián)多個棧式自編碼器網絡,在越來越高分辨率的人臉圖像上逐步優(yōu)化人臉對齊結果。CFAN方法實現(xiàn)了5個面部關鍵特征點(兩眼中心,鼻尖和兩個嘴角)的精確定位。
人臉特征提取與比對:采用深度卷積神經網絡VIPLFaceNet實現(xiàn),一個包含7個卷積層與2個全連接層的DCNN。VIPLFaceNet將5x5的卷積核拆分為兩層3x3的卷積核,從而增加了網絡深度,而并沒有增加計算量;VIPLFaceNet還減少了每個卷積層的kernel數目以及FC2層的節(jié)點數。同時,通過引入Fast Normalization Layer(FNL),加速了VIPLFaceNet的收斂速度,并在一定程度上提升了模型的泛化能力。特征比對可簡單采用Cosine計算相似度,然后進行閾值比較(驗證應用)或排序(識別應用)即可。
以上內容摘自:http://mp.weixin.qq.com/s?__biz=MzI1NTE4NTUwOQ==&mid=2650325457&idx=1&sn=5fa67f028980b3f451d1e2b568d49cbf&chksm=f235a6dbc5422fcd7eefff058dfaccaeca2b3b0000ccee0edaf523a3db7740967c018cd25d00&scene=1&srcid=0914vg7OKyrgGSOr8Vv2RzIF#wechat_redirect&utm_source=tuicool&utm_medium=referral
這三個模塊,每個模塊都可以單獨生成一個動態(tài)庫,在源碼的每個模塊的examples目錄下給出了在
windows vs2013下的工程,為了便于以后測試和調試,這里將3個工程全部放在了新建的Face_Test工程下,
可以在x64 debug/release下直接生成相應的動態(tài)庫,圖如下:
GitHub:https://github.com/fengbingchun/Face_Test
總結
以上是生活随笔為你收集整理的人脸识别引擎SeetaFaceEngine简介及在windows7 vs2013下的编译的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 人脸检测库libfacedetectio
- 下一篇: 人脸识别引擎SeetaFaceEngin