Windows下編譯Caffe並編譯Matlab介面

查志強發表於2015-07-29

【原文:http://www.th7.cn/system/win/201504/102914.shtml

0.介紹:

Caffe是一個深度學習的框架,本人做本科畢設(外加老闆的工作)需要,在windows下編譯Caffe。

實際上Linux下會更舒服,由於我的Linux下安裝不了CUDA- -只能用CPU跑,很慢,於是決定在windows環境下配置caffe及其matlab介面


1.系統環境:

Windows 64bit

VS2012

MATLAB2013A

CUDA6.5


2.安裝CUDA:

官網的CUDA已經是7.0了,為了儘可能減少出現的問題,我們就跟作者大大同步,用cuda6.5.

資源我已經分享在我的百度網盤http://pan.baidu.com/s/1ntsXl3N,下載安裝即可


3.進行配置:

我們的目的很清楚:快速,少出問題。基於這個目的,我這裡提供最傻瓜式的過程1.去http://download.csdn.net/detail/yangkequn/8108035下載,這個Caffe裡面有很多的lib,是已經編譯好了的Caffe2.去https://github.com/niuzhiheng/caffe下載原作者的Caffe為什麼要下載兩個Caffe工程呢?因為1中的Caffe雖然是編號的,有各種lib和include的,但是沒有%caffe_path/caffe/build/MSVCmex這個工程,這個工程用來編譯Matlab介面的。所以,下載2的caffe就是要這個工程檔案。3.將MSVCmex這個工程複製到1中的caffe/build裡面,用VS2012開啟工程,直接執行發現不能編譯。修改如下用editplus開啟matcaffe.vcxproj中,把裡面所有的cuda6.0改成cuda6.5,之後把其中所有的C:/programme/matlab改為你自己的matlab地址。儲存。

4.操作:

編譯好之後得到mex檔案,這是類似於C++工程的dll檔案,是matlab的動態連結庫(姑且這麼理解),進入matlab2013a,cd到caffe/matlab/caffe,輸入im = imread('peppers.png');
[scores, maxlabel] = matcaffe_demo(im,1);
如果提示錯誤,可能是在examples/imagent沒有訓練集檔案caffe_reference_imagenet_model,網上有相關檔案,不再多說。至於python介面編譯我認為與此原理類似,使用這個工程改路徑,可能最終生成dll改為pyd然後import caffe。還沒有試,僅提供這種思路。

相關文章