@liushiya
2018-11-26T07:57:12.000000Z
字数 2244
阅读 3495
机器学习
实验
You can click here to get the version in English.
为了训练PNet和RNet,将WiderFace用于人脸分类和人脸边界框回归;为了训练ONet,将WiderFace用于人脸分类和人脸边界框回归,使用Training Dataset用于人脸特征点回归。
anaconda3
pytorch 0.4.1
torchvision
opencv-python
tensorflow(python 3.4,3.5,3.6)
2018年11月24日 上午8:50-12:15 B7-138(谭明奎老师) B7-238(吴庆耀老师)
2018年12月29日 中午12:00
团队协作完成
1.阅读MTCNN的论文
2.获取并运行人脸识别实验代码
1)获取代码
实验完整代码已给出mtcnn_pytorch,可直接下载或是通过git clone命令下载。
git clone https://github.com/wujiaju/mtcnn_pytorch.git
2)实验环境安装
1. 确保本机或是服务器已安装好anaconda3环境;
2. pip或conda安装pytorch 0.4.1 和 torchvision环境;
3. pip或conda安装opencv-python环境。
pip install http://download.pytorch.org/whl/cpu/torch-0.4.1-cp36-cp36m-win_amd64.whl # Windows
pip install http://download.pytorch.org/whl/cpu/torch-0.4.1-cp36-cp36m-linux_x86_64.whl # Linux
pip install torchvision
pip install opencv-python
3)简单测试给定模型
直接使用我们训练好的网络模型在给定的测试数据集(位于mtcnn_pytorch/data/test_images/目录下,共64张测试图片),运行以下命令,即可在mtcnn_pytorch/data/you_result/目录下查看检测结果。
cd mtcnn_pytorch/
python test_image.py
4)训练
注意:在训练过程中,检查训练数据集路径是否与你本机或服务器存放路径一致,若不一致,则需修改相关文件代码。
1.训练PNet网络
cd mtcnn_pytorch
python preprocessing/gen_pnet_data.py
python preprocessing/assemble_pnet_imglist.py
python training/pnet/train.py
2.训练RNet网络
cd mtcnn_pytorch
python preprocessing/gen_rnet_data.py
python preprocessing/assemble_rnet_imglist.py
python training/rnet/train.py
3.训练ONet网络
cd mtcnn_pytorch
python preprocessing/gen_landmark_48.py
python preprocessing/gen_onet_data.py
python preprocessing/assemble_onet_imglist.py
python training/onet/train.py
训练完成,即可在mtcnn_pytorch/results/目录下得到三个训练好的网络模型。
5)简单测试自己训练好的模型
在给定的测试数据集(位于mtcnn_pytorch/data/test_images/目录下,共64张测试图片)简单测试自己训练好的网络模型,运行以下命令,即可在mtcnn_pytorch/data/you_result/目录下查看检测结果。
cd mtcnn_pytorch/
python test_youModel_images.py
注意:检查test_youModel_images.py中的模型路径是否与你训练好的模型路径一致,若不一致,则修改路径。整理实验结果并完成实验报告(实验报告模板将包含在示例仓库中)。
实验报告应包括对MTCNN这篇论文的理解和代码运行两个部分
评分项 | 占比 | 说明 |
---|---|---|
出勤 | 40% | 特殊情况可向学院请假 |
代码有效 | 20% | 代码可以编译通过,没有任何编译错误 |
实验报告 | 30% | 是否按照实验模板填写 |
代码规范 | 10% | 主要考核代码变量命名是否规范 |
有任何的意见或者建议都可以直接在qq群中向助教反映。