程序员人生 网站导航

如何快糙好猛地在Windows下编译CAFFE并使用其matlab接口

栏目:综合技术时间:2015-05-07 09:06:47

1、准备

  需要用到的东西我已帮大家全部准备好了,有3月31日刚刚从caffe官方dev分支fork过来的源代码:https://www.github.com/happynear/caffe-windows。有我自己亲手制作的第3方库 http://pan.baidu.com/s/1qAVPs,在源码的根目录下建立个3rdparty文件夹,把文件解压进去就能够了。
  解压好以后,要将3rdparty/bin文件夹添加到系统目录,这样才能让程序找到这些第3方库的dll。
  然后是Visual Studio 2012,由于我的第3方库都是VS2012环境下编译的,所以用其他版本VS的请自行编译。
  最后是CUDA和MKL了,MKL是可选的,大家可以去Intel官方申请,如果不用cpu模式的话其实也无所谓,在第3方库包中我还提供了openblas的库文件。

2、编译

  编译非常简单,分为以下几步:
  1、双击./src/caffe/proto/extract_proto.bat批处理文件来生成caffe.pb.h 和caffe.pb.cc两个文件。
  2、打开./build/MSVC/MainBuilder.sln,打开以后切换编译模式至Release X64模式。如果打开以后显示加载失败,可能你的CUDA版本和我的不1致,我的是CUDA 6.5版,这时候就要用记事本打开./build/MSVC/MainBuilder.vcxproj,搜索CUDA 6.5,把这个6.5换成你自己的CUDA版本,就能够正常打开了。
  3、右键点击左侧的MainCaller项目,选择属性,在C/C++选项卡中,把附加包括目录中的cuda include目录改成你自己的;在链接器选项卡中,把附加库目录中的cuda library目录也改成你自己的。
  4、点上边工具栏中的绿色3角编译吧。
  
  如果要用matlab wrapper来提取特点、视察训练好的权重的话呢,只需要把matcaffe项目里面的cuda、matlab目录修改成你自己的,然后编译,你就可以从matlab/caffe文件夹里面找到1个叫caffe.mexw64的文件啦。

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐