1. 程式人生 > >[caffe筆記009]:編譯caffe官方github的windows版

[caffe筆記009]:編譯caffe官方github的windows版

注意:caffe官方GitHub的caffe-window分支的編譯

現在caffe的官方GitHub提供windows版本,因其由官方更新,更新相對及時而且可信賴度高。除了官方的window版,還可以使用Microsoft GitHub上的windows版caffe。

1. 預備階段

預備階段需要安裝一些軟體,但是所需要的版本需要根據caffe的需求而決定.
下面截圖來自 https://github.com/BVLC/caffe/tree/windows 的說明文件,可以看到支援VS2013和VS2015,需要安裝CMake3.4以後版本,同時選擇安裝python(只支援2.7和3.5)和matlab,cuda支援7.5或8.0(如果是VS2015只支援8.0)。如果需要cudnn則根據cuda版本而定。

  • 安裝VS2013或者VS2015
  • 安裝cuda並新增環境變數
  • 下載cudnn並拷貝紙cuda安裝路徑下
  • 安裝CMake
  • 安裝python,安裝anaconda或者miniconda
  • 安裝matlab

2. 修改配置檔案並編譯

2.1 配置

caffe-windows的配置檔案是.\scripts\build_win.cmd,可以以文字形式開啟進行修改。

可能需要修改的地方有

:: 14 for VS201, 12 for VS2013
if NOT DEFINED MSVC_VERSION set MSVC_VERSION=14
:: 用VS編譯的話,設為0
if NOT DEFINED
WITH_NINJA set WITH_NINJA=0 :: CPU模式還是GPU模式 if NOT DEFINED CPU_ONLY set CPU_ONLY=0 :: python的版本 if NOT DEFINED PYTHON_VERSION set PYTHON_VERSION=2 :: 生成python介面則置為1 if NOT DEFINED BUILD_PYTHON set BUILD_PYTHON=1 :: 允許python layer則置為1 if NOT DEFINED BUILD_PYTHON_LAYER set BUILD_PYTHON_LAYER=1 :: 生成matlab介面則置為1
if NOT DEFINED BUILD_MATLAB set BUILD_MATLAB=1 :: 為了加快編譯速度,不執行test程式碼 if NOT DEFINED RUN_TESTS set RUN_TESTS=0

2.2 安裝python依賴庫

如果需要編譯python介面的話,需要先在cmd中執行下面指令安裝一些python依賴包。

conda install --yes cmake ninja numpy scipy protobuf==3.1.0 six scikit-image pyyaml pydotplus graphviz

2.3 編譯

  1. 以管理員身份開啟cmd視窗。

  2. 開啟資料夾到caffe-windows路徑下。

  3. 執行scripts\build_win.cmd

  4. 等待編譯完成。

3. 測試matlab介面

如果編譯了matlab藉口,則會在.\matlab\+caffe\private\Release中生成caffe_.mexw64檔案。

將編譯新建的.\build\matlab\Release資料夾下的caffe_expcaffe_.lib檔案拷貝至.\matlab\+caffe\matlab\Release\private當中。

開啟matlab,新增.\matlab路徑當中,執行

caffe.run_test();

如果為報錯則編譯成功。

3. 測試python介面

python介面有兩種使用方式,一種是將.\python中的檔案全拷貝到anaconda安裝路徑的.\lib\site-package\caffe資料夾中,可以在python原始檔中直接

import caffe

比較推薦另一種方式,因為可以允許使用更多版本的caffe而不至於混亂

# 新增所要使用的caffe的路徑到系統路徑
caffe_root = 'F:\caffe-windows\python' 
import sys
sys.path.insert(0, caffe_root)
# 
import caffe

無論採用哪種方式,在執行完import caffe之後可以看看caffe包的路徑是否和自己編譯的caffe的路勁一致,如果成功執行且路徑一致,則說明python介面編譯成功。

相關推薦

[caffe筆記009]編譯caffe官方github的windows

注意:caffe官方GitHub的caffe-window分支的編譯 現在caffe的官方GitHub提供windows版本,因其由官方更新,更新相對及時而且可信賴度高。除了官方的window版,還可以使用Microsoft GitHub上的windows版c

[caffe筆記005]通過程式碼理解faster-RCNN中的RPN

https://blog.csdn.net/happyflyy/article/details/54917514 [caffe筆記005]:通過程式碼理解faster-RCNN中的RPN 注意:整個RPN完全是筆者自己的理解,可能會有一些理解錯誤的地方。 1. RPN簡介 RPN是reg

[caffe筆記002]Caffe原始碼c++除錯

c++除錯caffe 1.1 重新編譯 1.2 在eclipse中構建工程 入口函式 train / Finetune a model程式碼解讀 用solver->Solve()函式 blob類 layer類 net類 7.1 NetState

[caffe筆記001]caffe依賴庫安裝(非root)

[========] 1. caffe介紹 caffe是一個訓練卷積神經網路的工具,其能夠非常好的支援CNN,最新版本整合了RNN。caffe提供python和matlab的藉口,能夠簡單有效地進行程式設計和使用。 2. caffe安裝 2.

[caffe筆記008]使用matlab除錯caffe中新加的層

寫在前面: caffe的底層是c++實現的,所以當自己新增層時自然可以用除錯c++的方法進行除錯。一方面除錯c++需要偵錯程式,另一方面c++除錯的時候觀測矩陣或者向量的資料不是很方便。由於caffe有比較好的matlab介面,採用matlab進行輔助

【D3D11遊戲編程】學習筆記編譯Effect的方法

編譯工具 學習筆記 事先 end 應用程序 geb ade ive 文件名   在D3D11應用程序中,對於寫好的Effect程序進行編譯有如下幾種常見方法:    1. 在運行期編譯    用這種方法,我們只管寫好Effect代碼即可,不用關心其編譯問題,而是在C++程序

【9】Caffe學習系列執行caffe自帶的兩個簡單例子

為了程式的簡潔,在caffe中是不帶練習資料的,因此需要自己去下載。但在caffe根目錄下的data資料夾裡,作者已經為我們編寫好了下載資料的指令碼檔案,我們只需要聯網,執行這些指令碼檔案就行了。 注意:在caffe中執行所有程式,都必須在根目錄下進行,即/caffe,否則會出錯,因為指令碼檔案

LeetCode刷題筆記-009palindrome number(迴文數)

題目描述: Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward. Exa

LeetCode刷題筆記-009palindrome number(迴文數)

題目描述: Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward. Exa

zynq學習筆記編譯linux核心

cd ~/build git clone https://github.com/Xilinx/linux-xlnx.git//獲取原始碼 cd linux-xlnx git checkout xilinx-v2015.2//改版本與網上大多數教程匹配 make distcl

Python讀書筆記009文字統計

文字檔案的統計資料:>>> len(s) 46 >>> s.split() ['A', 'long', 'time', 'ago,', 'in', 'a', 'galaxy', 'far,', 'far', 'away...'] >&

Elam的caffe筆記之配置篇(六)Centos6.5下編譯caffecaffe的python3.6介面

Elam的caffe筆記之配置篇(六):Centos6.5下編譯caffe及caffe的python3.6介面 配置要求: 系統:centos6.5 目標:基於CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6介面的caffe框架 綜合來說,caf

Elam的caffe筆記之配置篇(二)CentOS6.5編譯安裝NVIDIA驅動

Elam的caffe筆記之配置篇(二):CentOS6.5編譯安裝NVIDIA驅動 配置要求: 系統:centos6.5 目標:基於CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6介面的caffe框架 編譯安裝過程 顯示卡型號:NVS

Elam的caffe筆記之配置篇(一)CentOS6.5編譯安裝gcc4.8.2

Elam的caffe筆記之配置篇(一):CentOS6.5編譯安裝gcc4.8.2 配置要求: 系統:centos6.5 目標:基於CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6介面的caffe框架 任何對linux處於入門級別的小白都應

編譯caffe報錯Unsupported gpu architecture'compute_20' 解決方法

人工智慧/機器學習/深度學習交流QQ群:116270156 錯誤提示 Unsupported gpu architecture’compute_20’ 解決方法: 將Makefile.config裡面 CUDA_ARCH := -gencode arch=

Elam的caffe筆記之配置篇(五)Centos6.5配置opencv3.1.0

Elam的caffe筆記之配置篇(五):Centos6.5配置opencv3.1.0 配置要求: 系統:centos6.5 目標:基於CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6介面的caffe框架 1.下載opencv-3.1.0.t

Elam的caffe筆記之配置篇(四)Centos6.5下配置anaconda3

Elam的caffe筆記之配置篇(四):Centos6.5下配置anaconda3 配置要求: 系統:centos6.5 目標:基於CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6介面的caffe框架 放棄了相容性最好的2.7版本,準備配置

Elam的caffe筆記之配置篇(三)Centos 6.5下裝CUDA8.0 和cudnnv5.1

Elam的caffe筆記之配置篇(三):Centos 6.5下裝CUDA8.0 和cudnnv5.1 配置要求: 系統:centos6.5 目標:基於CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6介面的caffe框架 寫在前面,本文是在C

Elam的caffe筆記之配置篇基於CentOS6.5 python3.6 CUDA8.0 cudnnv5.1 opencv3.1 下的caffe配置

Elam的caffe筆記之配置篇:基於CentOS6.5 python3.6 CUDA8.0 cudnnv5.1 opencv3.1 下的caffe配置 作為一個完完全全的linux小白,平時連cmd開啟資料夾都要百度的人,面對單獨配置caffe這個棘手任務,第一反應就是搜教程。

Caffe學習筆記1linux下建立自己的資料庫訓練和測試caffe中已有網路

本文是基於薛開宇 《學習筆記3:基於自己的資料訓練和測試“caffeNet”》基礎上,從頭到尾把實驗跑了一遍~對該文中不清楚的地方做了更正和說明。 主要工作如下: 1、下載圖片建立資料庫 2、將圖片轉化為256*256的lmdb格式 3、計算影象均值 4、定義網路修改部分引