Win10(64位)+VS2013+caffe+fast-rcnn(cpu-only)

版权声明:本文为博主原创文章,未经博主允许不得转载:https://blog.csdn.net/qq_26548953/article/details/82872195

十分感谢一下博主:虽然部分已经不符合现在的应用,但是对我解决问题提供了思路!!!!
https://blog.csdn.net/u011185952/article/details/71079038
https://blog.csdn.net/u012538490/article/details/53727041
https://blog.csdn.net/sinat_27403413/article/details/52791489
http://www.cnblogs.com/yixuan-xu/p/5858595.html
http://www.cnblogs.com/marso/p/caffe_win10_python.html
https://zhuanlan.zhihu.com/p/22129880

还有一些博主可能忘了地址,没有提到,请见谅。有些图截取自这些博主,如果侵权,立删!!

fastrcnn运行起来的最难部分在于以下阶段:1.caffe配置,2.fast-rcnn的代码运行
本人配置: Win10(64位)+VS2013+caffe+fast-rcnn

此文章仅适用于cpu-only

一:安装adaconda的python
推荐安装Anaconda版本的python2.7,原因是这个版本已经把许多库都集成进来了,不用你自己再去安装库了,网上有好多教程,最后验证python正确安装为止。
R

后续运行过程中有可能还会提示缺少cython,python-opencv,easydict。如果遇到了,认真读一下显示的问题是什么,比如matploit库有问题,红色提示还有一些依赖库需要添加,你就认真添加一下。

二:Caffe-Microsoft
caffe提供Windows工具包:https://github.com/BVLC/caffe/tree/windows

1、打开caffe-master->windows,复制CommonSettings.props.example,修改后缀为CommonSettings.props。
用VS2013打开CommonSettings.props,修改CpuOnlyBuild为true,UseCuDNN改为false。因为要配置Python接口,所以PythonSupport改为true,并将下面的PythonDir修改为自己的Python安装路径,注意Anconda2后面那个斜线不能少。
R
2、caffe.sln的编译 将编译选项切换成Release
双击caffe.sln,在VS2013中打开文件。
先安装程序包:
R
Nuget所需要的第三方库,没用多少时间,自己会安装好,
R
在caffe解压包的目录下是16个包的文件夹(NugetPackages)。
R
一共16个文件夹,一共16个文件夹,一共16个文件夹
如果缺少,继续执行第一个图中的步骤:程序的还原。

**roi_poling层相当重要,不然在最后一步有问题。
由于windows版本caffe的不完善,要先在libcaffe项目中添加roi_poling层的相关支持。具体操作如下:
在libcaffe项目下的 cu—layers 文件夹右击,添加——现有项,找到 caffe根目录—src—caffe—layers下,添加roi_pooling_layer.cu。
R
路径示例:
R
同理,在libcaffe项目下的 src—layers 添加roi_polling_layer.cpp;
(所在路径:caffe根目录—src—caffe—layers)
在libcaffe项目下 include—layers添加roi_pooling_layer.hpp。
(所在路径:caffe根目录—include—caffe—layers)

libcafffe->caffe->pycaffe->convert_imageset,每个项目编译前都需要设置相应的引用路径,这里有两种路径,include路径和libs路径,详细怎么添加见下面:
1)libcaffe在编译前先设置资源引用路径,点击项目右键-》属性-》配置属性-》c/c++,【附加包含目录中】中加入python(这里严格说是Anaconda)的include路径,我这是D:\Anaconda2\include。
R
2)pycaffe在编译前先设置资源引用路径,点击项目右键-》属性-》配置属性-》c/c++,【附加包含目录中】加入python的include路径和numpy的include路径,我这里分别是D:\Anaconda2\include和D:\Anaconda2\Lib\site-packages\numpy\core\include,同时,在链接器中的【附加库目录】中加入python的libs路径和numpy的libs路径,我这里分别是D:\Anaconda2\libs和D:\Anaconda2\Lib\site-packages\numpy\core\lib。
R
R
3)同上,caffe在编译前先设置资源引用路径,点击项目右键-》属性-》配置属性-》c/c++,【附加包含目录中】加入python的include路径,我这是D:\Anaconda2\include,同时,在链接器中的【附加库目录】中加入python的libs路径,我这里是D:\Anaconda2\libs。

编译Python接口:
注意:请使用Release模式

直接先生成libcaffe的解决方案,成功之后,在对整个caffe生成解决方案。(libcaffe右键快捷栏)
R
D:\caffemaster\caffe-master\Build\x64\Release 生成方案
R
将Caffe根目录—Build文件夹下,找到生成的pycaffe,将其中的caffe文件夹整体复制到fast-rcnn根目录—caffe-fast-rcnn—python文件夹下。我生成的caffe是Release版本。同时把pycaffe考入D:\Anaconda2\Lib\site-packages。

验证:
caffe的验证:
双击打开caffe.cpp,Ctrl+F5直接编译,出现如下窗口说明编译成功。
R
Python接口的验证:
在cmd中进入Python,试试能不能导入caffe。
R
最后在cmd中使用pip install protobuf安装

接下来我们做一些简单设置,首先打开环境变量设置,
R
在环境变量下新建PATH和PYTHONPATH,填写对应的文件路径,这样就可以便捷使用caffe和caffe python接口了

三:fast-rcnn
(1)下载fast r-cnn:https://github.com/rbgirshick/fast-rcnn ,解压到一个地方(下面叫fast_rcnn根目录)
(2)下载fast r-cnn所需的模型文件,提供一个别人的下载地址,http://pan.baidu.com/s/1kTzQYgR ,下载完成后,请将3个文件夹放置在fast_rcnn根目录/data中.
(3)用文本编辑器打开fast_rcnn根目录/lib/utils/nms.pyx,将第25行的np.int_t修改为np.intp_t
(4)用文本编辑器打开fast_rcnn根目录/lib/setup.py,将第18行和23行的"-Wno-cpp", "-Wno-unused-function"指令删除,只留下空的中括号[]即可
(5)打开cmd,定位至fast_rcnn根目录/lib目录中,执行python setup.py install。 如果提示Unable to find vcvarsall.bat的话,
VS2013请输入以下指令:SET VS90COMNTOOLS=%VS120COMNTOOLS%
(6)setup.py安装完成后,到python_root/Lib/site-packages/utils中可以找到两个文件cython_bbox.pyd和cython_nms.pyd,把这两个文件复制到fast_rcnn根目录/lib/utils中。
如果遇到问题,认真读一下显示的问题是什么,比如matploit库有问题,红色提示还有一些依赖库需要添加,你就认真添加一下。
(7)这也是最重要的一步,将fast_rcnn根目录/tools/中的demo.py打开,改为与图一样。
R
R
(8)定位至fast_rcnn_root,执行python tools/demo.py,等待结果。

每个人安装都会有不同的问题,首先认真读电脑反应的问题是什么,然后能自己解决的就解决不行的百度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值