MTCNN的pytorch实现,测试及训练

写在前面

MTCNN 是人脸检测模型
代码 欢迎star
论文地址
本程序参考了kuaikuaikim/DFace,非常感谢。我修复了程序在训练上会出现的一些bug,并增加了模型在训练时的学习率变化表,优化了训练参数。并在WiderFace验证集上进行测试,发现我训练的模型权重性能优于他们本来提供的模型权重。

测试图

测试图

WiderFace验证集测试结果

其中MTCNN-original为原来权重参数的测试结果
MTCNN-trained为我训练的权重参数的测试结果

Styleeasymediumhard
MTCNN-original65.3%65.1%40.3%
MTCNN-trained71.4%70.4%43.2%

Easy
在这里插入图片描述
在这里插入图片描述

MTCNN网络结构

pnet
在这里插入图片描述
在这里插入图片描述

环境要求

1.pytorch
2.opencv

测试

单张图

修改程序中图片路径

python detect.py

训练

下载widerface
图片文件按以下目录放置

  ./data_set/face_detection/
    WIDER_train/
      images/
    WIDER_val/
      images/

标签文件我已经制作好

./anno_store/anno_train.txt

标签文件的内容为
图片路径 左上x 左上y 右下x 右下y
如果图片有多个框则
图片路径 左上x 左上y 右下x 右下y 左上x 左上y 右下x 右下y 。。。。
当然你可以自己制作标签文件
参考程序在
./anno_store/tool/change.py

训练pnet

准备pnet数据

python mtcnn/data_preprocessing/gen_Pnet_train_data.py
python mtcnn/data_preprocessing/assemble_pnet_imglist.py

训练pnet

python mtcnn/train_net/train_p_net.py

准备rnet数据

python mtcnn/data_preprocessing/gen_Rnet_train_data.py
python mtcnn/data_preprocessing/assemble_rnet_imglist.py

训练rnet

python mtcnn/train_net/train_r_net.py

准备onet数据

python mtcnn/data_preprocessing/gen_Onet_train_data.py
python mtcnn/data_preprocessing/assemble_onet_imglist.py

训练onet

python mtcnn/train_net/train_o_net.py

测试widerFace val

python wildface_test.py
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值