@wujiaju
2020-12-22T08:46:03.000000Z
字数 2118
阅读 1240
2020
一、MTCNN的所需数据集
1. 训练PNet和RNet两个子网络,将 WiderFace 数据集用于人脸检测和人脸边界框回归。
2. 训练ONet,将 FacePoint 的training set数据集用于人脸特征点回归。
anaconda3
pytorch 1.0.0
torchvision
opencv-python
tensorflow
一、获取代码
实验完整代码已给出,可直接下载或是通过git clone命令下载。
二、实验环境安装
1. 确保本机或是服务器已安装好anaconda3环境;
2. pip或conda安装pytorch 1.0.0 和 torchvision环境;(若已安装高版本pytorch,可先尝试使用已安装的pytorch进行实验,遇到版本兼容问题再尝试安装所要求pytorch版本)
3. pip或conda安装opencv-python环境。
conda install pytorch=1.0 #(若已安装pytorch,忽略该命令)
conda install torchvision
pip install opencv-python
三、简单测试给定模型
直接使用我们训练好的网络模型在给定的测试数据集(位于mtcnn_pytorch/data/test_images/目录下,共64张测试图片),运行以下命令,即可在mtcnn_pytorch/data/your_result/目录下查看检测结果。
cd mtcnn_pytorch/
python test_image.py
四、训练
**注意: 在模型训练和测试过程中,检查训练数据集和测试模型路径是否与你本机或服务器存放路径一致,若不一致,则请自行修改相关文件代码。
训练PNet网络 (选做)
cd mtcnn_experiment
python preprocessing/gen_pnet_data.py
python preprocessing/assemble_pnet_imglist.py
python training/pnet/train.py
训练RNet网络 (选做)
cd mtcnn_experiment
python preprocessing/gen_rnet_data.py
python preprocessing/assemble_rnet_imglist.py
python training/rnet/train.py
训练ONet网络 (选做)
cd mtcnn_experiment
python preprocessing/gen_landmark_48.py
python preprocessing/gen_onet_data.py
python preprocessing/assemble_onet_imglist.py
python training/onet/train.py
提示: PNet,RNet,ONet三个网络训练完成,即可在mtcnn_experiment/results/目录下得到三个训练好的网络模型。
测试自己训练的模型 (选做)
在给定的测试数据集(位于mtcnn_experiment/data/test_images/目录下,共64张测试图片)简单测试自己训练好的网络模型,运行以下命令,即可在mtcnn_experiment/data/your_result/目录下查看检测结果。
cd mtcnn_experiment/
python test_youModel_images.py
注意: 检查test_youModel_images.py中的模型路径是否与你训练好的模型路径一致,若不一致,则修改路径。整理实验结果并完成实验报告(实验报告模板将包含在示例仓库中)。
评分项 | 占比 | 说明 |
---|---|---|
出勤 | 40% | 特殊情况可向学院请假,请假条交给助教 |
代码有效 | 30% | 代码是否正确 |
实验报告 | 30% | 是否认真按照实验模板填写 |