Win10 + Caffe + CPU + MATLAB (包括各种问题详细解决)(一) —— VS2013 端设置

这里介绍一下 Win10 下,如何搭建 Caffe,仅有 CPU。因为我需要用 MATLAB 调试,所以需要对 Caffe 做关于 MATLAB 的配置。很多博客都写了有关这方面的配置过程,写的也很好,但对于我这种初学者可能还不够细。我就想写一个特别细致的配置过程。但太细又会显得很长很复杂,所以将这个配置过程分为两部分:

Win10 + Caffe + CPU + MATLAB (包括各种问题详细解决)(一) —— VS2013 端设置

(一)是在 VS2013 端的设置,及相关问题解决;

Win10 + Caffe + CPU + MATLAB (包括各种问题详细解决)(二) —— MATLAB 端设置

(二)是在 MATLAB 端的设置,及其相关问题解决;


Win10 + Caffe + CPU + MATLAB (包括各种问题详细解决)

(一) —— VS2013 端设置


1. Caffe Windows 版下载

Github 下载链接: https://github.com/Microsoft/caffe

下载后,解压到某个单独的文件夹内。

2. VS2013 调试

2.1 CommonSettings.props 修改

打开 caffe-naster\windows\,原地复制 CommonSettings.props.example,然后去掉后缀 .example,得到 CommonSettings.props 文件,如下图所示:


用 VS2013 打开 CommonSettings.props,可以看到开始代码如下:


这里,CpuOnlyBuild 是 false 的,而 UseCuDNN 是 true 的。而我的电脑没有 GPU,只用 CPU,所以这两个值要修改。另外,因为我要用 MATLAB 调用 Caffe, 所以下面的 MatlabSupport 也要改成 true。

具体修改结果如下图:


然后保存。先不要关闭,一会儿后面可能还需要改 MATLAB 相关参数。

2.2 VS2013 生成

之后,用 VS2013 打开 caffe.sln。这里显示出共有 16 个项目(如果刚才 CommonSettings.props 修改没有保存,这里只有 14 个项目)。如下图:


1)Release 设置

关于这点,是后来用 MATLAB 调用 Caffe 时报错才发现的。项目默认属性是 Debug,需要手动改成 Release。具体操作如下图:


2)右键 解决方案 ‘Caffe’(16 个项目) --> 生成解决方案。

这时,会自动安装 Nuget 文件,需要一些时间。如下图:

运行结束后,会发现在 caffe-master 并行文件夹里多了一个 Nuget 文件。如图:


同时,很不幸的是有多出报错:


大体是三个问题:

error LNK1104: 无法打开文件 "libcaffe.lib" 

error C2220: 警告被视为错误 - 没有生成“object”文件

256 error C10831: 无法打开包括文件:“gpu/mxGPUArray.h”: No such file or directory 

下面依次解决这些问题。

3)error LNK1104: 无法打开文件 "libcaffe.lib" 问题解决

右键点击左边的 libcaffe,然后点击重新生成。如下图:


然后再重新回到 2),生成解决方案。

4)error C2220: 警告被视为错误 - 没有生成“object”文件 问题解决

到文件夹 caffe-master 搜索 alt_sstream_impl.hpp 文件,用 VS2013 打开这个文件,会提示一个警告(是由于文字格式的原因,没有截图),anyway,点击确定,保存即可。

然后再重新回到 2),生成解决方案。

5)256 error C10831: 无法打开包括文件:“gpu/mxGPUArray.h”: No such file or directory 问题解决

这个问题的原因是我的 MATLAB 是 2017b,最新版的 MATLAB 的这个文件更改了路径了,所以找不到。解决方法就是找到这个文件所在的位置,然后在 CommonSettings.props 中添加这个路径。具体方法如下:

首先在你安装的 MATLAB 文件 toolbox 下搜索 mxGPUArray.h 文件。如下图:



然后右击这个文件,打开文件所在的位置,记下这个位置,例如我的路径是 :

D:\Program Files (x86)\Matlab2017b\toolbox\distcomp\gpu\extern\include\gpu。

然后,打开 CommonSettings.props ,大概在中间偏下的位置找到这段代码,如图:


可以看到,首先,它默认的 MATLAB 按照路径是 C:\Program Files\MATLAB\R2014b。

而我安装的路径是 D:\Program Files (x86)\Matlab2017b\,因此这里要修改。

另外,在 IncludePath 下,还要添加 gpu/mxGPUArray.h 所在的路径。

注意,因为这里找不到的是 gpu/mxGPUArray.h 的路径,而不是 mxGPUArray.h 的路径,因此只需要添加 \toolbox\distcomp\gpu\extern\include\ 即可。

总之,如下图方式修改即可:


修改之后点保存,再重新回到 1),生成解决方案。

这时就没有问题啦!


2.3 修改 caffe 属性

如下图所示进行属性修改:

首先,右击 解决方案“Caffe”(16 个项目) --> 点击 属性;

然后,在弹出的窗口中选择 通用属性 --> 启动项目;

最后,勾选 当前选定内容。


完毕!

3. 测试是否编译成功

在项目左侧,打开 caffe.cpp,然后运行 ctrl+F5 进行编译,如图:


编译结果会出现如下窗口,此时说明编译成功。



最后,感谢如下博客和回答的指导:

https://blog.csdn.net/juewu1993/article/details/53698794

https://www.zhihu.com/question/52727237

https://www.cnblogs.com/kex1n/archive/2011/10/19/2217266.html

https://blog.csdn.net/lqp888888/article/details/78782208

评论 30
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值