(配置项目环境前,电脑环境需要安装好Anaconda3)
1.
下载项目地址:
git clone https://github.com/wangbm/MTCNN-Tensorflow.git

先使用命令创建MTCNN虚拟环境:
conda create --name MTCNN python=3.6

进入 MTCNN虚拟环境,conda deactivate退出 MTCNN虚拟环境:
source activate MTCNN

退出环境:
source deactivate MTCNN
(这是在ubuntu环境下操作,windows去掉source即可)

安装Tensorflow:
pip install tensorflow-gpu==1.3.0
安装opencv:
conda install opencv

5.运行tensorflow如果有numpy警告出现, 卸载装好的numpy: pip uninstall numpy
从新安装合适版本: pip install numpy==1.13.0

(安装中如果出错,可以卸载,推荐重装所有安装使用conda 安装,因为Anaconda 会自动更新重装关联库)
将文件中的tools.py文件拷贝到prepare_data文件夹下
不然会出现无法找到文件的错误)

下载Wider Face 数据集
可以从官方网站下载Wider Face Training部分并解压缩替换WIDER_train这个文件夹

进入prepare_data文件夹中:
生成P-Net的训练数据
命令行运行 python gen_shuffle_data.py 12
(gen_shuffle_data.py,参数设置为12,生成P-Net的训练数据(注意数据集地址)
运行 gen_tfdata_12net.py,生成对应的 tfrecords 数据格式文件(如果电脑配置不好,源码中size改小一些)

进入src文件夹中:
Step 3 训练P-Net
运行 mtcnn_pnet_test.py,训练P-Net

生成R-Net的训练数据
运行 tf_gen_12net_hard_example.py(更改 default=’…/save_model/seperate_net/pnet/pnet-3000000’,其中eperate_net需要注意地址,不然报错)

命令行运行 python gen_shuffle_data.py 24
(参数设置为24)
运行 gen_tfdata_24net.py,合并数据并生成对应的 tfrecords 数据格式文件(如果电脑配置不好,源码中size改小一些)

训练R-Net
运行mtcnn_rnet_test.py,训练R-Net

生成O-Net的训练数据
运行 gen_24net_hard_example.py
命令行运行 python gen_shuffle_data.py 48
(参数设置为48)
运行 gen_tfdata_48net.py,合并数据并生成对应的 tfrecords 数据格式文件(如果电脑配置不好,源码中size改小一些)

训练O-Net
运行mtcnn_onet_test.py,训练O-Net

测试
运行 test_img.py,参数接你的图片路径和模型路径

说明
1.其中PNet在训练阶段的输入尺寸为12乘12,RNet的输入尺寸为24乘24, ONet的输入尺寸为48乘48.
2.P-Net、R-Net、O-Net分别训练,先训练P-Net,R-Net根据训练的P-Net生成hard样本再训练,O-Net同理。
3.以上的训练过程中生成的hard样本依然是根据原作者的模型,如果使用自己训练的模型,记得修改参数路径

备注:

喜欢的同学请收藏点赞哦~,谢谢

感谢作者开源

(1)简单易学—— 人脸检测 Tensorflow_MTCNN模型训练详细步骤(纯干货,适用于windows和ubuntu系统)相关推荐

  1. 瑞芯微转化人脸检测retinaface模型

    瑞芯微转化人脸检测retinaface模型 一.运行docker 二.转换步骤 1.使用https://netron.app/查看模型的输入及输出 2.设置转换模型参数 3.运行文件生成rknn模型文 ...

  2. YOLOv5s的模型训练与使用(纯小白入门)

    YOLOv5s的模型训练与使用(纯小白入门) 文章目录 YOLOv5s的模型训练与使用(纯小白入门) 概要 下载yolov5与安装依赖 训练 检测 检测图片 实时检测视频 概要 本文主要面向第一次使用 ...

  3. python opencv生成tf模型_基于TensorFlow+ Opencv 的人脸识别 和模型训练

    一.准备工作 本次实例的anaconda 环境 (有需要的自己导入anaconda) 链接:https://pan.baidu.com/s/1IVt2ap-NYdg64uHSh-viaA 提取码:g7 ...

  4. 睁闭眼状态检测——SVM模型训练

    前言 svm训练模型相当简单,难的是提取特征这一步,这里介绍了一个睁闭眼检测功能从提取特征到预测的全过程. 首先,需要准备数据,我这里有睁眼和闭眼的照片各3000张,传统的机器学习方法都需要提取特征, ...

  5. 轻松学Pytorch – 行人检测Mask-RCNN模型训练与使用

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 大家好,这个是轻松学Pytorch的第20篇的文章分享,主要是给大 ...

  6. Qt5.7+Opencv2.4.9人脸识别(四)模型训练

    [注意]本博文的档次适合OpenCV初学者,和要做本科生毕业设计这类档次. 源码的下载地址和原理理论部分请走下面连接 http://blog.csdn.net/qq78442761/article/d ...

  7. PaddlePaddle飞桨OCR文本检测——识别模型训练(三)

    上一篇检测模型训练https://blog.csdn.net/weixin_42845306/article/details/112689152 飞桨的OCR模型分为检测.识别和分类,今天讨论识别. ...

  8. MTCNN人脸检测---PNet网络训练

    前言 本文主要介绍MTCNN中PNet的网络结构,训练方式和BoundingBox的处理方式.PNet的网络结构是一个全卷积的神经网络结构,如下图所: 输入是一个12*12大小的图片,所以训练前需要把 ...

  9. 基于yolov5的目标检测和模型训练(Miniconda3+PyTorch+Pycharm+实战项目——装甲板识别)

    目录 一.环境配置和源码获取 1.Miniconda 2.MIniconda虚拟环境配置PyTorch 3.yolov5项目源码 4.pycharm 二.目标检测 三.模型训练 1.数据集 1.ima ...

最新文章

  1. editplus 3 注册码
  2. 【Python】保留小数点后两位精度
  3. 23种设计模式C++源码与UML实现--装饰者模式
  4. SpringBoot核心注解介绍
  5. 回调地狱解决方案之Promise
  6. macos xampp mysql 命令_MAC系统XAMPP 中 MySQL命令行client配置使用
  7. python中浅拷贝和深度拷贝的区别
  8. latex sign_LATEX科研论文写作教程
  9. 享元模式C++实现(flyweight)
  10. 7.12 PIC+PLT+GOT
  11. 阿里云容器服务Kubernetes之Jenkins X(1)-安装部署实践篇
  12. joystick手柄驱动安卓_万能手柄驱动(PPJOY) 官方版 (图文)
  13. Sketch 54.1 Shark 鲨鱼中文汉化特别版 Mac 设计师必备的原型UI设计工具
  14. excel多表数据自动关联
  15. 阿波罗服务器的投资项目,阿波罗未来产业城调整规划范围 将重点打造“两轴一片”空间格局...
  16. 任买分期搞了个“斩男春计划” 我从中看到了消费分期成功的秘诀
  17. 网络浏览器 Vivaldi 32/64 位 v2.9.1705.31 中文便携版
  18. SQL基本语句应用大全
  19. 2021算法阿里腾讯快手上岸,菜鸟小硕经验分享
  20. 香侬科技独家对话Facebook人工智能研究院首席科学家Devi Parikh

热门文章

  1. Python实现检测文件的MD5值来查找重复文件
  2. java runnable执行完_java – 如何停止Runnable计划在一定数量的执行后重复执行
  3. Python中缺失值的填充
  4. The file Tomcat.exe was not found... Either the CATALINA_HOME environment variable is not defin
  5. 豪江智能更新招股书:2021年净利润、毛利率双降,表现不及同行
  6. linux ps输出项的含义,【整理】ps命令输出字段的含义
  7. 纯干货:docker可视化管理界面
  8. 解决单元测试时报Could not instantiate问题
  9. 【机器学习】树模型遇上类别型特征(Python)
  10. nim博奕和巴什博奕