Caffe-Windows + Anaconda3編譯Caffe的python接口

一:目的

Caffe-Windows編譯python接口;

網上找了很多資料,基本上都是用Anaconda2進行編譯的,但是個人電腦中裝的是Anaconda3,故這裏採用Anaconda3進行編譯並做下記錄。

二:編譯過程

1. 思路

個人電腦裏裝了python27,python36和Anaconda3,而Caffe-Windows編譯python接口基本上都是基於python27做的,嘗試直接用Anaconda3做也出現了錯誤,因此還是選擇用Python27的環境進行編譯。

主要有兩個思路,一是直接用python27進行編譯,也是可行的,但是在caffe-windows\python\requirements.txt文件中,可以看出需要的python包挺多的,一個個安裝較爲繁瑣。第二個想法是在Anaconda3中建立一個python27的環境,所需的包直接用Anaconda3進行下載,相對來說方便一點,這裏主要選擇了第二個思路。





2. 在Anaconda3中建立一個python27的環境

(1) 在開始菜單中找到Anaconda3-Anaconda Prompt,打開Anaconda Prompt,輸入以下命令

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
conda config --remove channels defaults 
#從清華鏡像加載,不然總是從官網下載超時。
然後添加python2.7;
conda create -n py27 python=2.7

添加完成後,打開Anaconda3,在Enviroments中可以看出已經有python27的環境了


(2) 將python27環境添加進環境變量




3. 編譯python接口

(1) 修改E:\Caffe\using\caffe-windows\windows\CommonSettings.props文件


首先需要將PythonSupport設置爲true,其次應當將Pythondir設置爲剛纔的py27路徑

(2) 打開caffe-windows\windows\Caffe.sln,設置爲x64 release,編譯pycaff


(3) 編譯成功後,在caffe-windows\Build\x64\Release目錄下會生成pycaffe目錄


將這個文件夾直接拷貝進Anaconda3\envs\py27\Lib\site-packages


4. 測試

(1) 打開命令行,cd進Anaconda3\envs\py27目錄,因爲python.exe與之前的版本重複了,這裏我將其重命名了爲python1.exe,輸入python1(其實由於我們已經將其添加進了環境變量,不用cd進該目錄,直接輸入python1即可)即可打開py27交互命令行。


(2) 輸入import caffe,如果能成功,就證明編譯成功了。


此時可能出現一些問題,大多說是說ImportError,如ImportError: No module named google.protobuf.internal ,一般是因爲缺少caffe-windows\python\requirements.txt文件中提到的包,此時可以進入Anaconda3\Enviroment\py27下進行下載,再重新編譯並重覆上述操作即可!

finished! enjoy!



參考:

win下anaconda裝python2.7和3.5以及jupyter共存

【caffe-Windows】微軟官方caffe之 Python接口配置及圖片生成實例




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章