天天看点

Windows10下配置caffe及matlab接口编译(CPU)

这段时间编译配置caffe的matlab接口,按照网上给的五花八门的教程,愣是两天没配置好,最终算是功夫不负有心人吧,在踩了无数个坑之后,还是编译成功了,现在把编译过程记录下来备忘,同时也分享给你们,希望你们一次成功。

首先准备好所有东西:

我的机子Windows10,matlab2020a,VS2013旗舰版,不需要Cuda

Caffe:链接:https://pan.baidu.com/s/1iTKJnh2l81p7TnVms2qLoQ  提取码:uyra 

VS2013旗舰版网址: http://download.microsoft.com/download/B/1/9/B1932B8C-1046-4773-A1DD-4AB5C0978637/vs2013.2_ult_chs.iso

R2020a:链接:https://pan.baidu.com/s/1R6-vaLBG84he9MeC_0tMOA  提取码:l6qp ,失效联系我要。

第一步:下载caffe-master,解压到任何地方都可以,在caffe-master\windows下找到CommonSettings.props.example,复制一份并重命名为CommonSettings.props,打开CommonSettings.props编辑,第一个红框true表示只使用cpu,第二个红框false表示不使用cuda,第三个红框表示不用python接口,第四个红框表示使用matlab接口

Windows10下配置caffe及matlab接口编译(CPU)

然后,找到19-29行,把27行的false改为true,按下图注释掉28行,不然后面会报错(坑1)

Windows10下配置caffe及matlab接口编译(CPU)

然后,找到52-56行,52行后面写true,53行填写自己matlab安装路径,54行不动

注意,我这里55行也不动,但是需要执行一个操作,就是把F:\software\R2020a\toolbox\parallel\gpu\extern\include\gpu下的mxGPUArray.h文件复制到F:\software\R2020a\extern\include\gpu文件夹下,这是为了防止出现无法打开包括文件: “gpu/mxGPUArray.h”的错误(坑2)

Windows10下配置caffe及matlab接口编译(CPU)

其他的都不要改,然后保存

第二步:使用VS2013打开E:\fusion\caffe-master\windows下的Caffe.sln

项目→属性→C/C++→常规→将警告视为错误 设置为否

Windows10下配置caffe及matlab接口编译(CPU)

生成-配置管理器把debug改成release

Windows10下配置caffe及matlab接口编译(CPU)

直接生成-重新生成解决方案

Windows10下配置caffe及matlab接口编译(CPU)

中间会遇到错误:

\NugetPackages\boost.1.59.0.0\lib\native\include\boost/format/alt_sstream_impl.hpp :

error C2220: 警告被视为错误 - 没有生成“object”文件 (..\..\src\caffe\util\math_functions.cpp)

双击这个错误,会弹出这个.cpp的文件,不用管,直接保存,再次 生成-重新生成解决方案。

第一次配置会显示正在还原nuget程序包,这个过程很慢,我大概等了40分钟,当时我在看《大秦赋》^_^,直接看了一集差不多还原好了,然后就会在caffe-master同级目录下生成一个NugetPackages的文件夹,里面是16个文件夹

Windows10下配置caffe及matlab接口编译(CPU)
Windows10下配置caffe及matlab接口编译(CPU)

完事解决方案生成成功会显示生成成功63个,失败0个,跳过0个

此时,E:\fusion\caffe-master目录下会多了一个Build的文件夹

Windows10下配置caffe及matlab接口编译(CPU)

找到E:\fusion\caffe-master\Build\x64\Release\matcaffe\+caffe\private,如果有下面这些东西,那你就离成功不远了

Windows10下配置caffe及matlab接口编译(CPU)

第三步:右击解决方案--属性--通用属性--启动项目--当前选定内容--保存

Windows10下配置caffe及matlab接口编译(CPU)

选中caffe,调试-开始执行,如果弹出下面内容,表示caffe安装成功

Windows10下配置caffe及matlab接口编译(CPU)

第四步:把caffe接入matlab   

打开E:\fusion\caffe-master\Build\x64\Release,把E:\fusion\caffe-master\Build\x64\Release加入系统环境变量,此电脑-属性-高级系统设置-环境变量-系统变量-path

把E:\fusion\caffe-master\Build\x64\Release\matcaffe以及matcaffe下的子文件夹添加到matlab的路径中

Windows10下配置caffe及matlab接口编译(CPU)
Windows10下配置caffe及matlab接口编译(CPU)

重启matlab

在命令行执行caffe.reset_all()会显示Cleared 0 solvers and 0 stand-alone nets

注意,这里可能会显示未定义变量caffe.reset_all,我当时就是配置好上面所述一切,并重启matlab,卡在了这一步

重点来了,我重启了电脑,并以管理员运行matlab,再次执行 caffe.reset_all()

美好的结果出现了

Windows10下配置caffe及matlab接口编译(CPU)

大功告成!

继续阅读