GitHub上有很多基於caffe的深度學習的模型,解決各種各樣的任務,當我們要使用這些模型的時候,這些代碼下載到本地之後,第一步要做的就是編譯代碼中所給的caffe。
語言:Python
下面就具體寫一下編譯的步驟:(在Linux系統中)
1.複製文件夾中的的Makefile.config.example,並命名爲Makefile.config
cp Makefile.config.example Makefile.config
2.修改 Makefile.config裏面的內容
vim Makefile.config
找到以下內容,並按照下面的進行修改(這步是按情況而定的,如果不成功的話,再去搜一搜其他人的方法):
BLAS:= open
BLAS_INCLUDE:= /usr/include
BLAS_LIB := /usr/lib64
把 #WITH_PYTHON_LAYER:= 1的註釋去掉;
把 #USE_PKG_CONFIG:= 1的註釋去掉;
如果只用CPU運行的話,找到 #CPU_ONLY := 1這一行,把註釋取消掉。
3.編譯
make -j8 //根據本機的處理器配置,8是八核處理器的意思
make pycaffe //因爲模型是利用python完成,需編譯caffe
如果出現錯誤:
json_parser_read.hpp:257:264: error: ‘type name’ declared as function returning an array escape
按照下面的進行修改
<caffe root>就是caffe的根路徑。
5.以上幾步都沒有錯,caffe就編譯成功了。
6.多說一步,如果caffe編譯完之後,在運行相關的.py文件的時候,出現報錯:no model named caffe,這種情況一般是沒有把caffe中的和python相關的內容的路徑添加到python的編譯路徑中。
解決辦法:進入到相應的.py文件中,找到 import caffe,在其前面加上以下幾句話(參考自http://blog.csdn.net/striker_v/article/details/51596628)
caffe_root ='/data/home/lisiqi/ssd-master/'#你自己的caffe路徑(這個註釋是中文註釋,注意在代碼的最頂端加上# -*- coding: utf-8 -*-)
import sys
sys.path.insert(0, caffe_root + 'python') #把caffe/python添加到當前環境
改完之後,再運行相關的.py文件,這樣,應該就沒問題了。