人臉識別:利用MFC、OpenCV、SeetaFace搭建簡單的人臉檢測系統(win7/c++)

最終效果如圖:
在這裏插入圖片描述

SeetaFace簡介

SeetaFace是山世光研究組的開源人臉識別引擎guthub地址:github:SeetaFaceEngine

其中FaceDetection部分,採用漏斗形級聯結構FuSt(Funnel-Structured Cascade).即頂部由多個針對不同姿態的快速LAB級聯分類器構成;緊接着是若干基於SURF特徵的多層感知機MLP級聯結構;最後由一個基於SURF特徵的MLP級聯結構處理所有姿態的候選窗口.

$ Fast-LAB-Cascade \Rightarrow Coarse-MLP-Cascade \Rightarrow Fine-MLP-Cascade $

本地編譯配置了FaceDetection部分,測試了一下,對於側臉一定角度以及部分遮擋的人臉效果還不錯.
[配置完成的FaceDetection: SeetaFace Detection.環境(win7/c++)]

測試效果如圖:

這裏寫圖片描述這裏寫圖片描述

1、控制檯程序

其餘兩部分的編譯配置同上,這裏我們使用MFC結合OpenCV2.4以及SeetaFace搭建一個簡單的人臉註冊識別系統。

第一部分是一個人臉註冊模塊(也含有檢測部分),有人臉的識別和採集,主要是將人臉特徵提取後以txt文件保存,同時也保存下當前的人臉圖像。

下載地址:

SeetaFace.part1
SeetaFace.part2

如圖當檢測到人臉時框選並顯示:
在這裏插入圖片描述
當人臉圖像大小適中、無明顯遮擋時顯示出檢測到的五個關鍵點位置,綠框框選,此時按空格鍵:
在這裏插入圖片描述
然後,在控制檯輸入對應人臉編號/名字,回車確認。完成人臉的採集和註冊:
在這裏插入圖片描述
這樣可以得到對應的人臉圖像和對應的txt文件:
在這裏插入圖片描述

2、MFC界面

(人臉採集註冊部分沒有放到MFC界面下,有興趣的自行寫一下吧)
將採集到的人臉數據放到MFC下,點擊“檢測”開始讀取攝像頭進行人臉檢測,結果如圖:
在這裏插入圖片描述

下載地址:
FaceMFC.part1
FaceMFC.part2
FaceMFC.part3


Funnel-Structured Cascade for Multi-View Face Detection with
Alignment-Awareness

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章