深度学习人脸检测和识别系统 DFace

姓名:米芃

学号:16040520018

[嵌牛导读]DFace软件介绍

[嵌牛鼻子]DFace  开源

[嵌牛提问]如何入门学习人脸识别

[嵌牛正文]今天为大家介绍一款基于多任务卷积网络(MTCNN)和Center-Loss的多人实时人脸检测和人脸识别系统DFace 。

DFace 是个开源的深度学习人脸检测和人脸识别系统。所有功能都采用 pytorch 框架开发。pytorch是一个由facebook开发的深度学习框架,它包含了一些比较有趣的高级特性,例如自动求导,动态构图等。

DFace天然的继承了这些优点,使得它的训练过程可以更加简单方便,并且实现的代码可以更加清晰易懂。 DFace可以利用CUDA来支持GPU加速模式。我们建议尝试linux GPU这种模式,它几乎可以实现实时的效果。

MTCNN 结构

依赖

cuda 8.0

anaconda

pytorch

torchvision

cv2

matplotlib

在这里我提供了一个anaconda的环境依赖文件environment.yml,它能方便你构建自己的虚拟环境。

conda env create -f path/to/environment.yml

训练mtcnn模型

MTCNN主要有三个网络,叫做PNet, RNet 和 ONet。因此我们的训练过程也需要分三步先后进行。为了更好的实现效果,当前被训练的网络都将依赖于上一个训练好的网络来生成数据。所有的人脸数据集都来自 WIDER FACE 和 CelebA。WIDER FACE仅提供了大量的人脸边框定位数据,而CelebA包含了人脸关键点定位数据。

生成PNet训练数据和标注文件

python src/prepare_data/gen_Pnet_train_data.py --dataset_path {your dataset path} --anno_file {your dataset original annotation path}

乱序合并标注文件

python src/prepare_data/assemble_pnet_imglist.py

训练PNet模型

python src/train_net/train_p_net.py

生成RNet训练数据和标注文件

python src/prepare_data/gen_Rnet_train_data.py --dataset_path {your dataset path} --anno_file {your dataset original annotation path} --pmodel_file {yout PNet model file trained before}

乱序合并标注文件

python src/prepare_data/assemble_rnet_imglist.py

训练RNet模型

python src/train_net/train_r_net.py

生成ONet训练数据和标注文件

python src/prepare_data/gen_Onet_train_data.py --dataset_path {your dataset path} --anno_file {your dataset original annotation path} --pmodel_file {yout PNet model file trained before} --rmodel_file {yout RNet model file trained before}

生成ONet的人脸关键点训练数据和标注文件

python src/prepare_data/gen_landmark_48.py

乱序合并标注文件(包括人脸关键点)

python src/prepare_data/assemble_onet_imglist.py

训练ONet模型

python src/train_net/train_o_net.py

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 人脸识别,基于人脸部特征信息识别身份的生物识别技术。摄像机、摄像头采集人脸图像或视频流,自动检测、跟踪图像中人脸,...
    利炳根阅读 1,903评论 0 1
  • 本系列文章面向深度学习研发者,希望通过Image Caption Generation,一个有意思的具体任务,深入...
    imGeek阅读 1,881评论 0 8
  • 读这本书的理由很是随意,因为有一天《红龙》限免,就随手下在了kindle里,恰巧6月份回了两次家,在火车上就看完了...
    一个突然爱唠叨的人阅读 573评论 0 0
  • 这周的行情不是难做,是非常的难做。几乎全部都是震荡行情,走势一步三回头,稍微大一点的波动都是一根或几根K线快速完成...
    枯藁阅读 269评论 0 0
  • 时间,它可以改变一切! 把桑田变成大海。 把高山变成田园, 把年轻的面容化为枯槁, 把美丽的草原变成沙漠。 你看那...
    玲珑释心阅读 422评论 0 0