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

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

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

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

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

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


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

(二) —— MATLAB 端设置


1. VS2013 端相关配置

上一文我们已经在 VS2013 端做了相关配置。这里再简单回顾和强调一下关于 MATLAB 调用 Caffe 时,在 VS2013 端的设置。主要包括:

1)打开 \caffe-master\windows\ 下的 CommonSettings.props 文件,更改 MatlabSupport,改成 true(即支持 Matlab 接口),如下图;


2)更改matlab的路径,在includepath中增加一个路径,若没有的话,在编译时候会出现如下错误:gpu/mxGPUArray.h" Not Found,如下图:


这两点如果有不理解的地方,可以参考我的博文(一)

3)注意务必用 Release 方式生成解决方案 !

2. MATLAB 端相关配置

2.1 打开 MATLAB,添加 Caffe 路径

主要是添加 \caffe-master\Build\x64\Release\matcaffe\ 这个文件的路径。如下图:


2.2 添加到系统环境变量

即把 \caffe-master\Build\x64\Release\matcaffe\ 添加到系统环境变量中。具体操作如下:


注意!!!保存后,重启matlab,不然测试时会报找不到caffe_mexw64模块的错误。

2.3 .dll 文件复制

很多博文都推荐将 caffe-master\Build\x64\Debug 中所有的 .dll 文件全复制到 caffe-master\matlab\+caffe\private\ 中去,原因是为了防止出现 Undefined variable "caffe" or class "caffe.reset_all" 报错。

我也出现这个错误了,所以建议这么操作一下。

2.4 配置 model 文件

这里 model 文件是指 bvlc_reference_caffenet.caffemodel 文件。这里提供文件的下载链接:

https://download.csdn.net/download/u014546828/10436920

2.5 配置标签文件

这里标签文件是指 synset_words.txt,放在与classification_demo.m同一个文件夹下,即 \caffe-master\matlab\demo\ 下。

这里提供文件的下载链接:

https://download.csdn.net/download/u014546828/10436931


配置完毕。


3. 问题解决

按照上面的方法配置,一般就把问题解决了。当然,本节将列出一些可能出现的问题,有些问题其实前面的步骤以及可以解决这些问题了。可能在你运行代码时,还会出现一些错误。

3.1 Undefined variable "caffe" or class "caffe.reset_all" 问题解决

这个问题主要原因在于 Caffe 的路径没能有效被 MATLAB 链接。只要按照 2.1 、 2.2 还有 2.3 完成路径配置和文件复制,就好了。

3.2 Invalid MEX-file' ..\caffe-master\Build\x64\Release\matcaffe\+caffe\private\caffe_.mexw64': 找不到指定的模块 问题解决

这个问题主要原因在于 Caffe 的路径没能有效被 MATLAB 链接。只要按照 2.1 和 2.2 完成路径配置,就好了。

3.3 错误使用 caffe_ Could not open file Model/xxx.prototxt (或者是 RuntimeError: Could not open file xxx.prototxt) 问题解决

这是因为你的 xxx.prototxt 文件的路径没写清楚,如下图所示:


这样的书写,MATLAB 还找不到根目录,最直接的方法就是补全完整路径,如下图:


注意!!!路径符号要用   /   ,而不要用   \   !

正确:

model= 'F:/1_MyWork/Papers/STS-CNN-master/Model/STS-CNN_SLCOff_iterations_900000.caffemodel';

错误:

model= 'F:\1_MyWork\Papers\STS-CNN-master\Model\STS-CNN_SLCOff_iterations_900000.caffemodel';

3.4 MATLAB 直接错误退出问题

原因在于没有 GPU 的情况下,用了 GPU 调用语句:

caffe.set_mode_gpu(); %GPU加速模式 

在没有 GPU 时,只能用 CPU:

caffe.set_mode_cpu(); %CPU加速模式 



最后感谢如下博文和回答:

https://blog.csdn.net/u011995719/article/details/53994570

https://www.cnblogs.com/njust-ycc/p/5776286.html

https://download.csdn.net/download/xyyhlark01/10293752

https://download.csdn.net/download/cuixing001/9987563

https://blog.csdn.net/dataningwei/article/details/69488453

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值