pytorch实现mtcnn人脸检测算法

原博地址: https://blog.csdn.net/Sierkinhane/article/details/83308658
mtcnn-pytorch代码: https://github.com/Sierkinhane/mtcnn-pytorch(star!)
论文地址: https://kpzhang93.github.io/MTCNN_face_detection_alignment/paper/spl.pdf

这篇博客记录本人复现CSDN博主@Sierkinhane 提供的mtcnn-pytorch人脸检测算法代码的过程,感谢@Sierkinhane的工作。

训练数据准备

  • 下载 WIDER FACE 放在 ./data_set/face_detection路径中
    run > python ./anno_store/tool/format/transform.py
  • 下载 CNN_FacePoint 放在 ./data_set/face_landmark路径中
    下载地址: http://mmlab.ie.cuhk.edu.hk/archive/CNN_FacePoint.htm

训练步骤

  • 生成P-Net训练数据(positive、negative、part)

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

  • 训练 P-Net

    run > python mtcnn/train_net/train_p_net.py

  • 生成R-Net训练数据(positive、negative、part)

    run > python mtcnn/data_preprocessing/gen_Rnet_train_data.py (可能你需要修改代码中已经训练好的P-Net模型路径,默认的是原来的模型)
    run > python mtcnn/data_preprocessing/assemble_rnet_imglist.py

  • 训练 R-Net

    run > python mtcnn/train_net/train_r_net.py

  • 生成O-Net训练数据(positive、negative、part)

    run > python mtcnn/data_preprocessing/gen_Onet_train_data.py
    run > python mtcnn/data_preprocessing/gen_landmark_48.py
    run > python mtcnn/data_preprocessing/assemble_onet_imglist.py

  • 训练 O-Net

    run > python mtcnn/train_net/train_o_net.py

Error1: ValueError: low >= high

delta_x = np.random.randint(max(-size,-x1),w)
File "mtrand.pyx", line 1264, in mtrand.RandomState.randint
ValueError: low >= high;;

Solution1:

运行 gen_Pnet_train_data.py 时出现很多小问题,这里没有一一列举。最后发现WIDER FACE 数据库 gt 存储的格式是 box (x_left, y_top,w, h),训练数据准备阶段运行 transform.py 生成的anno_train.txt 转换为以 box (x_left, y_top, x_right, y_bottom)的格式保存,运行成功。
除此之外,WIDER_train\images\54–Rescue54_Rescue_rescuepeople_54_29.jpg 倒数第5个gt给出的w为负数,我直接删除了这个样本。

pytorch实现mtcnn人脸检测算法相关推荐

  1. mtcnn人脸检测python_pytorch实现mtcnn人脸检测算法

    pytorch实现mtcnn人脸检测算法 原博地址: https://blog.csdn.net/Sierkinhane/article/details/83308658 mtcnn-pytorch代 ...

  2. mtcnn人脸检测算法介绍

    0. 概述 MTCNN(Multi-task Cascaded Convolutional Networks,多任务卷积神经网络),是2016年由Kaipeng Zhang.Zhanpeng Zhan ...

  3. MTCNN人脸检测算法

    人脸检测是指识别数字图像中的人脸.人脸检测可以视为目标检测的一种特殊情况.在目标检测中,任务是查找图像中特定类的所有对象的位置和大小.例如行人和汽车. 在人脸检测中应用较广的算法就是MTCNN( Mu ...

  4. 基于TensorFlow的MTCNN人脸检测算法(生成PNet的人脸关键点数据 代码注解)

    代码源自Github:https://github.com/AITTSMD/MTCNN-Tensorflow 该阶段代码取自 Git主 代码目录下 MTCNN-Tensorflow-master / ...

  5. 人脸检测算法理解之mtcnn

    最近在一次交流活动中,再次听别人讲人脸检测算法mtcnn,虽然以前也断断续续听过两次,对于一些技术细节仍不清楚,为了解决自己的困惑,笔者又重拾起这一算法,在认真研读论文和思考后有了新的理解,于是记录下 ...

  6. 【CV】10种轻量级人脸检测算法大PK | 代码集合开源

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 最近在微信公众号 AIZOO 里看到轻量级人脸检测算法大盘点的文章 ...

  7. 10种轻量级人脸检测算法大PK

    几个月前,AIZOO曾经盘点过 最强六大开源轻量级人脸检测项目分析 | 附打包下载,nihate同学将它丰富到10种算法,并用Python.对他们进行了汇总整理,以及效果的对比. Github链接:h ...

  8. 10种轻量级人脸检测算法大PK | 代码集合开源

    喜欢就关注 AIZOO 吧! 几个月前,AIZOO曾经盘点过 最强六大开源轻量级人脸检测项目分析 | 附打包下载,nihate同学将它丰富到10种算法,并用Python.对他们进行了汇总整理,以及效果 ...

  9. RetinaFace,最强开源人脸检测算法

    作者 | CV君 来源 | 我爱计算机视觉(ID:aicvmlaicvmlaicvml) 人脸检测为目标检测的特例,是商业化最早的目标检测算法,也是目前几乎各大 CV 方向 AI 公司的必争之地. W ...

最新文章

  1. 微信小程序中的tabBar设置
  2. 【天池直播】图像系列直播第一讲--带你入坑深度学习
  3. Collection中的基本方法
  4. CodeForces 1096D(线性dp)
  5. 执行Bean 实例化
  6. leetcode剑指 Offer 47. 礼物的最大价值(动态规划)
  7. java - 通用 CRUD(增、删、改、查)工具类,代码高效复用
  8. micropython教程nucleo-f767zi开发板_教你做CMSIS-DAP仿真器(基于Nucleo-F767ZI)
  9. 计算机管理可以更新吗,微信可以批量管理好友吗(电脑版微信3.0.0更新规则了)...
  10. PHP PDO学习(二) exec执行SQL
  11. 中国节能吊扇行业市场供需与战略研究报告
  12. 原生App vs 移动Web App : 你如何选择
  13. CentOS之——CentOS 6.5 安装RTL8111/8168B PCI EXPRESS网卡并解决安装出现的问题
  14. iphone页面怎么实现固定工具栏 html css js,固定工具栏 data-position=fixed
  15. 学校生均计算机台数统计表,学校计算机数量名称、型号、数量、发布情况统计表...
  16. 长安居大不易--用大数据分析西安租房现状
  17. PS7.0 下雨效果
  18. 计算机 英文缩写含义,常见计算机英文缩写含义
  19. 2023年电工杯 | 2023年电工杯数学建模竞赛思路(A题、B题)
  20. Three.js学习笔记---我和小伙伴都惊呆了

热门文章

  1. 深度学习【16】YAD2K,pytorch-caffe-darknet-convert,转换后概率不一样的问题
  2. 【科技与文艺】从星球大战日谈科幻文艺
  3. 项目管理(知识体系概述)
  4. 10进制和16进制 数字和ASCII码互转
  5. 如何把RGB图像的256色减少为16色、32色、64色
  6. 算法7:迪杰斯特拉算法
  7. 图像、视觉处理的相关代码
  8. [图文]历届奥斯卡影帝(中)
  9. Node版本管理器nvm
  10. 使用FPT上传下载文件和解决中文名文件乱码问题