【caffe配置】face_detection_alighment在windows10+caffe+vs2015下的配置

来源:互联网 发布:网络歌曲排行榜2008 编辑:程序博客网 时间:2024/05/19 16:22

前段时间看了KaipengZhang的论文《Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks》,这篇文章将face detection和face alignment的两个任务合二为一,而且达到了很惊人的准确率,在两项任务上效果都很好。具体论文笔记之后我会抽时间写,先附上用原作者的caffemodel来测试的过程。

先附上一张我自己跑的很震撼的效果图。


参考资料

1.作者的github:https://github.com/kpzhang93/MTCNN_face_detection_alignment

2.happynear大神的github:https://github.com/happynear/MTCNN_face_detection_alignment

在ubuntu下的配置

这里也顺便简单说一下ubuntu下的配置方法,一共有三种实现,前两种我用过:

1. matlab+caffe 参照:https://github.com/kpzhang93/MTCNN_face_detection_alignment

这种方法就直接参照KaipengZhang的github,这里假定你已经知道如何编译caffe,不再在本文叙述。然后安装Matlab2014b以上版本。安装步骤参考http://blog.csdn.net/lanbing510/article/details/41698285。然后在matlab的命令窗口输入addpath('你自己caffe/matlab的路径');savepath;即可。

然后进入MTCNN_face_detection_alignment/code/codes/MTCNNv2运行damo.m即可。

2.python+caffe 参照:https://github.com/DuinoDu/mtcnn

这种方法就是只要编译了caffe的python接口,运行demo.py即可。但是目录下的model只有论文中写的那个版本,即只有p-net,r-net,o-net,准确率不如MTCNNv2高。

3.Python & mxnet 参照:https://github.com/pangyupo/mxnet_mtcnn_face_detection

这种方法我没试过,就不多说了。

言归正传,介绍一下在windows下的配置:

环境:vs2015+cuda8.0

这里说一下,必须得装vs2015不然在最后测试的时候会报一个 LNK1181 无法打开输入文件_CRT_SECURE_NO_WARNINGS.obj 的奇怪错误。

步骤:

1. 下载caffe以及第三方库

happynear的caffe: https://github.com/happynear/caffe-windows/tree/ms

第三方库:http://pan.baidu.com/s/1skDNfPV

下载之后,把第三方库放在 caffe根目录/windows/thirdparty。


2. 复制windows目录下的CommonSettings.props.example为CommonSettings.props,并用notepad或者记事本打开,看看里面的cuda版本是不是8.0。

3. 下载cudnn http://developer.download.nvidia.com/compute/machine-learning/cudnn/secure/v5.1/prod/8.0/cudnn-8.0-windows10-x64-v5.1.zip?autho=1479381105_0221c7ba6091251d29dcc979399bb158&file=cudnn-8.0-windows10-x64-v5.1.zip

下载之后解压到任意的地方,比如D:/cuda。

还要安装python,如果你已经在windows下装过就不用了,或者装anaconda也可以。

4. 打开windows目录下的caffe工程,会发现有两个工程无法加载,smlc和static_mxnet,这两个不用理或者直接卸载就行了。

在libcaffe的属性里添加刚才下载的cudnn、python路径。



5. 编译libcaffe工程,右键点击生成。

如果出现copy cudnn....dll 失败的错误,你就再修改一下CommonSettings.props里的cudnn路径为你自己的路径就行。


这样应该就把libcaffe编译好了。在caffe-windows-ms\Build\x64\Release下会生成libcaffe.lib

6. 编译caffe.binding工程。

同样要添加cudnn和python的路径,参照第4步。编译的时候如果提示找不到一些dll,把dll找到并且拷到相应的目录就行。

这样在caffe-windows-ms\Build\x64\Release就生成了caffe.binding.lib

7. 测试

从happynear的github上下载测试程序,https://github.com/happynear/MTCNN_face_detection_alignment。

打开code/codes/vs/下的工程,testPyCascadeCNN会无法加载,不用管删掉即可。

CascadeFaceDetection添加包含目录和附加依赖目录如下:



TestCascadeCNN添加包含目录和库目录如下:






然后按F5跑就行了,还可以从摄像头读取帧做人脸检测和关键点对齐。


happynear说windows下的版本比最原始的matlab版本快了2-3倍,事实证明确实如此。

0 0
原创粉丝点击