转自:http://blog.csdn.net/wonengguwozai/article/details/51591611
在运行功能为MATLAB生产mat格式数据的文件中,运行时提示:
Undefined variable ‘caffe’,两个解决方案:
1) 可能matcaffe接口编译没有成功或者是有问题:
对此,进行了matcaffe接口测试,可以正常,但是相应的在caffe-master下bulid(所有编译caffe中编译好的一般都放在这里)下
2)可能是MATLAB在调用caffe是路径没有指定,导致函数找不到的问题,相应的在MATLAB中的运行文件中添加如下代码(这个代码在caffe-master/matlab/demo/classification中,):
ifexist(‘matlab/+caffe’,’dir’)
addpath(‘matlab’);
else
error(‘please run this demo from caffe/matlan/demo’);
end
注意里面的路径要根据实际需要修改。可以跑通了。
对于路径问题,下面有必要总结下matlab搜索路径顺序 以及如何设置matlab工作路径问题:
搜索顺序的问题:
如果在命令提示符“>>”后输入符号 xt,或程序语句中有一个符号 xt,那么, MATLAB
将试图按下列次序去搜索和识别:
(1) 在 MATLAB 内存中进行检查搜索,看 xt 是否为工作空间窗口的变量或特殊常量,
如果是,则将其当成变量或特殊常量来处理,不再往下展开搜索识别;
(2) 上一步否定后,检查 xt 是否为 MATLAB 的内部函数,若肯定,则调用 xt 这个内
部函数;
(3) 上一步否定后,继续在当前目录中搜索是否有名为“xt.m”或“xt.mex”的文件存
在,若肯定,则将 xt 作为文件调用;
(4) 上一步否定后,继续在 MATLAB搜索路径的所有目录中搜索是否有名为“xt.m”
或“xt.mex”的文件存在,若肯定,则将 xt 作为文件调用;
(5) 上述 4 步全走完后,仍未发现 xt 这一符号的出处,则 MATLAB 发出错误信息。
必须指出的是,这种搜索是以花费更多执行时间为代价的。
1
查看搜索路径:path
在命令窗口中输入path,就能查看matlab的搜索路径(比如,输入一条代码,程序会在这些目录中依次搜索是否为变量,是否为函数,M文件等)。
2
当前工作目录:cd
输入命令cd,可以查看当前工作目录。
3
修改工作路径:userpath('F:\matlab\work')
路径可以自己定义。
像以前版本一样,设置路径为安装目录下work文件夹。
4
保存路径修改:savepath
改完默认路径后需要保存一下。
重启软件,就能看到路径已修改。
5
也可以用工具操作:pathtool
在命令窗口中输入pathtool,打开工具。
在修改完成后,要保存。