我是靠谱客的博主 文艺煎蛋,最近开发中收集的这篇文章主要介绍caffe 人脸关键点检测_mtcnn-caffe实现人脸检测,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

MTCNN算法简介

我产出的文章链接:https://cloud.tencent.com/developer/article/1666822

Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Neural Networks.

该项目为您提供了一种更新多输入源的多任务损失的方法。

图片地址:https://github.com/CongWeilin/mtcnn-caffe/blob/master/demo/result.jpg

53555fed2c4eb493a0d3bd36ad1093ec.png

Requirement

  1. Ubuntu 14.04 or 16.04
  2. caffe && pycaffe: https://github.com/BVLC/caffe
  3. cPickle && cv2 && numpy

Train Data

训练数据的生成过程可以参考Seanlinx / mtcnn,

https://github.com/Seanlinx/mtcnn

几乎与Seanlinx相似的样本可以在prepare_data中找到。

第1步。 仅从官方网站下载“Wider Face”部分并解压缩以替换WIDER_train

第2步。 运行gen_12net_data.py生成12net训练数据。 此外,gen_net_imdb.py提供了一个构建imdb的示例,请记住更改和添加新的参数。

第三步。 运行gen_12net_hard_example.py生成硬样本。 运行gen_24net_data.py。 合并这些输出并生成imdb。

第4步。 与上一步类似,运行gen_24net_hard_example.py生成硬样本。 运行gen_48net_data.py。 合并这些输出并生成imdb。 强烈建议读者自己生成培训数据。 通过发送电子邮件可获得12net和24net的样本训练数据(对于百度驱动器来说太大,无法上传48net)

常见问题

下面的问答可以解决您的大多数问题。

Q1:您使用什么数据库? A1:类似于官方文件,Wider Face用于检测,而CelebA用于对齐。

问题2:“ 12(24/48)net-only-cls.caffemodel”文件的作用是什么? A2:提供初始权重进行训练。 由于caffe的初始权重是随机的,因此糟糕的初始权重可能需要很长时间才能收敛,甚至在此之前可能过度拟合。

Q3:为什么预处理图像减128?

A3:将数据从(0,+)分离为(-,+),可以使收敛更快,更准确。 请参阅批量归一化通过减少内部协变量偏移来加速深度网络训练

问题4:您是否实施OHEM(在线硬示例挖掘)? A4:不能。当训练数据不是很大时,使用OHEM。 请参阅faster-rcnn的作者RBG的论文

论文地址:https://arxiv.org/pdf/1604.03540.pdf

1382c10db34679e065cbffcaae47aedd.png

问题5:正负样本比例为12net? A5:此caffemodel使用neg:pos = 3:1。 因为12net的功能是消除否定答案,所以类似于排他方法,我们应该更多地了解否定否定错误答案的方法。

Q6:为什么您的步伐与官方不同? A6:如果输入(X,X)图像,则输出Y =(X-11)/ 2。 输出上的每个点代表输入上的ROI。 ROI的左侧移动范围=输入(0,X-12),输出(0,Y-1)。 因此,该步幅=(X-12)/(Y-1)≈≈2。

Q7:roi(cls / pts).imdb用于什么? 解答7:使用imdb可以更快地将训练数据输入训练网络。 从大型文件中一次将数据读取到内存中,而不是从硬盘中随机搜索数据,将为您节省大量时间。 imdb由python module-cPickle创建。

Q8:tools_matrix.py与tools.py有什么不同? A8:矩阵版本使用线性矩阵来加快计算速度(在FDDB上为160ms)。 如果您不熟悉该区域,请阅读非矩阵版本以了解每个过程。

注意:说的就是下面的两个链接的代码的不同,一个是写成矩阵的方式,可以加快。

https://github.com/CongWeilin/mtcnn-caffe/blob/master/demo/tools.py

https://github.com/CongWeilin/mtcnn-caffe/blob/master/demo/tools_matrix.py

问题9:我希望您的训练数据可以紧急使用。 如何使用它们? 怎么训练? ... A9:???

参考文献

参考代码

最后

以上就是文艺煎蛋为你收集整理的caffe 人脸关键点检测_mtcnn-caffe实现人脸检测的全部内容,希望文章能够帮你解决caffe 人脸关键点检测_mtcnn-caffe实现人脸检测所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部