DFace是個開源的深度學習人臉偵測和人臉辨識系統。所有功能都採用pytorch框架開發。 pytorch是一個由facebook開發的深度學習框架,它包含了一些比較有趣的高階特性,例如自動求導,動態構圖等。 DFace天然的繼承了這些優點,使得它的訓練過程可以更加簡單方便,實現的程式碼可以更加清晰易懂。 DFace可以利用CUDA來支援GPU加速模式。我們建議嘗試linux GPU這個模式,它幾乎可以實現即時的效果。
如果你對DFace有興趣並且想參與這個專案中,以下TODO是一些需要實現的功能
1.基於center loss 或triplet loss原理開發人臉比較功能,模型採用ResNet inception v2。 此功能能夠比較兩張人臉圖片的相似性。具體可以參考Paper和FaceNet
2.反詐騙功能,根據光線,質地等人臉特性來防止照片攻擊,影片攻擊,回放攻擊等。具體可參考LBP演算法和SVM訓練模型。
3、3D人臉反詐欺。
4.mobile移植,依照ONNX標準把pytorch訓練好的模型遷移到caffe2,有些numpy演算法改用c++實作。
5、Tensor RT移植,高併發。
6.Docker支持,gpu版
安裝
DFace主要有兩大模組,人臉偵測和人臉辨識。我會提供所有模型訓練和運行的詳細步驟。你首先需要建構一個pytorch和cv2的python環境,我推薦使用Anaconda來設定一個獨立的虛擬環境。如果使用GPU訓練模式,需要安裝Nvidia的cuda和cudnn。 目前作者傾向Linux Ubuntu安裝環境。感謝熱心網友提供windows DFace安裝體驗,windos安裝教學具體可參考他的部落格。
依賴
cuda 8.0
anaconda
pytorch
torchvision
cv2
matplotlib