caffe人脸检测

基于python和alexnet模型实现的人脸检测

转:https://blog.csdn.net/aiwodaqinshi/article/details/81366588
系统环境:ubuntu16.04 内核:4.15.0-29-generic


首先要配置好caffe的环境,caffe环境的搭建就不在这里说了
下面开始进入正题:正式实现人脸检测功能
接下来所需要的所有文件及脚本: https://download.csdn.net/download/aiwodaqinshi/10580383
注:由于上传文件大小被限制了,图片就不上传了,想要详细按照流程进行一遍此实验的需要自己准备图片数据源,
如果只是想达到最终人脸检测的效果,模型和调用author.py脚本我已经上传只需要适当修改路径即可。

1 创建工程目录

1.创建一个目录face_detect,用来存储此次工程项目,最好创建在当前用户的家目录下
2.在face_detect目录创建一个train目录和一个val目录,分别用来保存训练的图片和测试的图片。
3.train目录下新建一个0目录和1目录,分别存放人脸图片和非人脸图片
讲过上面的操作,现在目录结构应该是下面这样。

张忠义

2 制作LMDB数据源

4.给样本打标签
本次试验中人脸的数据标签为0,非人脸的数据标签为1,然后再face_detect目录下创建一个train.txt文件,用来存储标签,一会制作LMDB模型时会用到。train.txt 文件的格式为:
1/xxx1.jpg 1
0/xxx.0jpg 0
其中xxx0为非人脸图片的文件名,xxx1为人脸图片的文件名
接着再新建一个val.txt文件格式同上
注:train.txt文件val.txt文件会上传,图片太大了超过了限制就不上传了。
5.制作LMDB数据源
通过提前写好的 face-lmdb.sh脚本(脚本也会上传)放到工程目录face_detect下,只需要将脚本中内容适当修改即可制作好数据源。
需要修改的内容有:
注:face-lmdb.sh脚本也会上传

  • 第五行:路径改为当前工程目录的绝对路径,就是/home/yourname/face_detect
  • 第六行:路径改为当前工程目录的绝对路径,同上
  • 第七行:caffe安装的工具的文件下,例如我的是 /home/zzy/caffe/build/tools
  • 第九行:改为工程目录中中train目录的绝对路径
  • 第十行:改为工程目录中val目录的绝对路径
    此处修改看着不太懂可以参考我的脚本文件进行修改。
    修改完后,保存,执行此脚本即可生成LMDB数据源,此过程时间较长,这是在face_detect下会生成如下两个目录。
    这里写图片描述

3 训练模型

6.将一开始准备好的网络模型文件(train.prototxt)及超参数文件(solver.prototxt)放到face_detect目录中,
然后执行train.sh脚本即可对模型进行训练,
train.sh需要改的地方就是路径问题,这里就不多说了。
指行完train.sh脚本会生在face_detect下生成model目录,目录下生成如下模型,这里迭代了50000次
注:模型文件以及超参数文件和train.sh脚本也都会上传

这里写图片描述

4 实现多尺度人脸检测

根据deploy.prototxt文件(全连接时使用)和deploy_full_conv.prototxt文件(全卷积时使用)
以及上一步中生成的_iter_50000.caffemodel模型,生成alexnet_iter_50000_full_conv.caffemodel模型文件
innerToConv.py脚本实现这一过程,脚本见 http://www.mamicode.com/info-detail-1918510.html
然后执行author.py脚本即可
最终实际效果图。

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值