Windows环境下 sphereface人脸识别模型配置caffe(一)
本教程是在windows环境下进行,默认caffe(微软版)你已经在电脑上成功配置。sphereface人脸识别开放源码:https://github.com/wy1iu/sphereface。caffe微软版本开放源码:https://github.com/Microsoft/caffe。使用软件:vs2013出这篇文章的目的是写一个适合2020且细节更加详细的配置文章。一、配置caffe与sp
本教程是在windows环境下进行,默认caffe(微软版)你已经在电脑上成功配置。
sphereface人脸识别开放源码:
https://github.com/wy1iu/sphereface
caffe微软版本开放源码:
https://github.com/Microsoft/caffe
使用软件:vs2013
出这篇文章的目的是写一个适合2020且细节更加详细的配置文章。
一、配置caffe与sphereface
1、文件下载、解压
首先先在GitHub上下载下来sphereface,GitHub地址在上面已经说过了,下载过后将压缩包解压。
2、文件拷贝:
将 sphereface-master/tools/caffe-shpereface/src/caffe/include/caffe/layers目录下的margin_inner_product_layer.cpp、margin_inner_product_layer.cu拷贝到caffe-master\src\caffe\layers目录下,其中“.cu”的是用于GPU的cuda源码,没GPU的电脑可以不拷贝。
另外在 sphereface-master\tools\caffe-sphereface\src\caffe\util 目录下将另外依赖的源码math_functions.cpp、math_functions.cu也要拷贝到微软版caffe的相应目录caffe-master\src\caffe\util。
将 sphereface-master/tools/caffe-sphereface/include/caffe/layers 文件下的margin_inner_product_layer.hpp 拷贝到 caffe-master\include\caffe\layers 目录下。
3、caffe.proto改写:
找到 sphereface-master/tools/caffe-sphereface\src\caffe\proto 目录下的这个"caffe.proto"文件,用 Sublime Text 3 或者记事本打开,这个文件十分重要,其定义了caffe所有支持层的参数,类型,名字,ID等。同样在微软版的caffe类似目录下(我的目录caffe-master\src\caffe\proto)找到"caffe.proto"文件打开,这2个文件大致上一样,其实上有很多不一样的地方,如果“图方便”直接把caffe.proto替换掉微软的会有错误,踩坑不少,后面编译会有莫名其妙的错误。打开后找到如图二所示的位置,看箭头指的下一个适合的指定层ID是多少,然后在下面适合位置根据第一个打开的sphereface模型中的caffe.proto新层参数往第二个里面添加参数,如图三红色那一行添加的所示。
最后,然后在文件最后添上一些新层的参数ID说明,也是根据第一个打开的(sphereface自带的)文件添加,如图四红色部分所示。
二、编译源码
1、首先打开caffe-master\windows文件夹下的Caffe.sln。
分别在如图红色部分三个文件夹的layer目录下添加刚才拷贝的文件(margin_inner_product_layer.cpp、margin_inner_product_layer.cu、margin_inner_product_layer.hpp),注意,看layer目录下是什么类型的文件就添加哪个后缀的刚才拷贝的文件!
添加-现有项,去找到你刚才拷贝过来的文件。
当你将三个文件添加完后,你就可以编译caffe项目,鼠标右键解决方案,选择重新生成解决方案,等待编译完成,这时候如果报错,看错误原因,是在哪个cpp文件或者头文件的问题,然后再对照微软版的caffe找问题。
注意!
一定将Debug换成Release,如图所示:
windows caffe 容易出错,预祝大家成功上岸。
Reference:
https://blog.csdn.net/cuixing001/article/details/79207109
更多推荐
所有评论(0)