win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2環境配置
阿新 • • 發佈:2019-01-22
我在臺式機和筆記本上分別配置了caffe環境,期間看了網上到目前為止的大部分教程,遇到了很多問題,特別是在windows上配置這個環境,問題更多,現在對整個安裝過程和遇到的問題進行總結。
檢視本機配置:檢視顯示卡型別是否支援NVIDIA GPU,選中計算機-->右鍵屬性 -->裝置管理器 -->顯示介面卡:NVIDIA GeForce GT950
驅動安裝:從 http://www.nvidia.cn/Download/index.aspx?lang=cn 下載合適驅動
首先安裝過程可以參考:https://github.com/Microsoft/caffe 很具體,只要讀懂了它,出現一些錯誤再去找百度問問就沒大問題了。下面是我的安裝過程:
6. 到目前為止,cuda環境配置已經成功。 7. 下載miniconda2-64bit,地址: https://conda.io/miniconda.html ;注意要for all user 並且選擇新增到環境變數。安裝成功後,下載包:①conda install --yes numpy scipy matplotlib
scikit-image pip ②pip install protobuf
8.下載caffe-master,地址:https://github.com/Microsoft/caffe,拷貝\caffe-master\windows目錄下的CommonSettings.props.example,重新命名為CommonSettings.props。
用vs開啟修改如下內容: ①下面內容表示是否支援該功能,支援就寫"true",看上面英文即可明白,我設定的是使用cuDnn,cuda7.5,支援python和matlab。(注意:電腦沒有GPU可以設定CpuOnlyBuild為true,CpuOnlyBuild 和UseCuDNN不能同時為true); ②此處設定cuDnn路徑:如果你的cuDnn是按照步驟3拷貝的,則不用改了。如果你不想拷貝,則需要按照上圖方式改,見<wei : such as>. ③:在下圖設定python和matlab路徑:
這個很簡單吧。路徑在PythonDir和MatlabDir裡修改。預設的是minicuda2和2014b 9. 好了,步驟8完成,既可以編譯caffe.sln工程了。要在release下編譯,首先依次單獨編譯下面三個工程,編譯一下libcaffe看有沒有啥錯誤,然後編譯pycaffe和matcaffe. 這個一定會遇到問題的,只要你是在windows下(找度娘,輕鬆解決,因為多數都會遇到類似問題)。編譯成功。在目錄\caffe- master\Build\x64\Release下出現matcaffe和pycaffe資料夾。下面開始激動人心的,配置python和matlab了。勝利在此一舉,彆著急。
10.python環境:①將pycaffe裡的caffe直接拷貝到\Miniconda2\Lib\site-packages目錄下;or ②設定環境變數 PythonPath : <caffe_root>\Build\x64\Release\pycaffe
11.matlab環境:①將\caffe-master\Build\x64\Release放到系統path下;& ②開啟matlab新增路徑:\caffe-master\Build\x64\Release\matcaffe即可;matlab可能新增路徑完事,需要重啟軟體才好用。
12.檢查環境是否成功配置:①python: import caffe,不說找不到模組就好; ② matlab:輸入 caffe.reset_all();出現下圖內容就ok了。 最後總結一下,步驟9,編譯caffe.sln工程遇到常見問題: ①編譯時會下載NugetPackages,這是最考驗網速的時候了。這是好vs會無響應,放心等待就好。
②出現error C2220: 警告被視為錯誤 - 沒有生成“object”檔案 (..\..\src\caffe\util\math_functions.cpp):這是編碼方式的問題。 因為我們的系統大部分使用的是中文,而math_function.cpp檔案是英文的。找到math_function.cpp檔案vs開啟,再儲存即可 ③無法開啟輸入檔案“libcaffe.lib”:關鍵問題是在alt_sstream_impl.hpp 檔案的編碼上,用的是Linux的編碼,改為windows編碼即可,只要找到檔案alt_sstream_impl.hpp檔案用vs開啟,再保持即可。這個檔案在NugetPackages目錄。 ④出現error:找不到mxGPUArray,主要是由於matlab新版本中gpu資料夾已從\extern\include獨立出來了,該檔案在目錄$(MatlabDir)\toolbox\distcomp\gpu\extern\include下,這個只要修改CommonSettings.props檔案新增該目錄即可,細心的你可能會發現 ,上面第8步的圖片中,我已經添加了這個目錄,請看下圖。
⑤嚴格按照步驟安裝後,還出現問題。重啟軟體,重啟系統。 ⑥在\caffe-master\matlab\demo目錄下,有個classification_demo.m,可以執行試試。 1)未定義與 'char' 型別的輸入引數相對應的函式 'caffe_'。修改路徑:
2)Please download CaffeNet from Model Zoo before you run this demo:下載model的Git網址: https://github.com/BVLC/caffe/tree/master/models/bvlc_reference_caffenet 3)下載和修改後,執行D:\test.m,測試D:\caffe-master\matlab\demo\classification_demo.m 是不是講的太細,導致你安裝太順利,感覺沒有挑戰性啊! hiahia 希望對你有幫助。
PS:最後,建議大家還是儘量用Linux環境。
- 安裝vs2013。① 安裝地址:http://pan.baidu.com/s/1hrO6Kvi ②根據caffe-master的要求要安裝2013版本的vs,比2012編譯快;③vs要在cuda之前安裝,以便於cuda對其進行配置。
- cuDnn:將下載的cuDnn解壓到cuda資料夾,將資料夾內部的三個檔案拷貝到cuda目錄下。若是按預設路徑安裝的cuda則拷貝到:\NVIDIA GPU ComputingToolkit\CUDA\v7.5路徑下。直接拷貝是最直觀的方法,還可以採用另一種方式下面會提到,這樣方便更改cuDnn版本。
- 下面編譯一下,cuda目錄下的所有sample;①為了看看是否正確安裝了cuda,②經常會出現找不到d3dx9.h、d3dx10.h、d3dx11.h,即使我的win10系統DirectX版本已經是11.3了,也會出現這個問題,那麼執行下一步操作5。
- 下載安裝檔案DXSDK_Jun10,地址:http://pan.baidu.com/s/1qYHfhgC①我安裝DXSDK_Jun10 過程中遇到不能下載.Net framework3.5的問題,是因為我關閉了系統更新,開啟更新就可以了。配圖如下。②及時解決了①問題,最後同樣是安裝錯誤介面,這個錯誤沒關係,同樣會在你的安裝目錄下出現Microsoft DirectX SDK (June 2010)資料夾,即可。重新執行步驟4,編譯所有sample。如果嚴格按照以上步驟,且版本都對,不會有其他問題。
6. 到目前為止,cuda環境配置已經成功。 7. 下載miniconda2-64bit,地址:
用vs開啟修改如下內容: ①下面內容表示是否支援該功能,支援就寫"true",看上面英文即可明白,我設定的是使用cuDnn,cuda7.5,支援python和matlab。(注意:電腦沒有GPU可以設定CpuOnlyBuild為true,CpuOnlyBuild 和UseCuDNN不能同時為true); ②此處設定cuDnn路徑:如果你的cuDnn是按照步驟3拷貝的,則不用改了。如果你不想拷貝,則需要按照上圖方式改,見<wei : such as>. ③:在下圖設定python和matlab路徑:
這個很簡單吧。路徑在PythonDir和MatlabDir裡修改。預設的是minicuda2和2014b 9. 好了,步驟8完成,既可以編譯caffe.sln工程了。要在release下編譯,首先依次單獨編譯下面三個工程,編譯一下libcaffe看有沒有啥錯誤,然後編譯pycaffe和matcaffe. 這個一定會遇到問題的,只要你是在windows下(找度娘,輕鬆解決,因為多數都會遇到類似問題)。編譯成功。在目錄\caffe- master\Build\x64\Release下出現matcaffe和pycaffe資料夾。下面開始激動人心的,配置python和matlab了。勝利在此一舉,彆著急。
10.python環境:①將pycaffe裡的caffe直接拷貝到\Miniconda2\Lib\site-packages目錄下;or ②設定環境變數 PythonPath : <caffe_root>\Build\x64\Release\pycaffe
11.matlab環境:①將\caffe-master\Build\x64\Release放到系統path下;& ②開啟matlab新增路徑:\caffe-master\Build\x64\Release\matcaffe即可;matlab可能新增路徑完事,需要重啟軟體才好用。
12.檢查環境是否成功配置:①python: import caffe,不說找不到模組就好; ② matlab:輸入 caffe.reset_all();出現下圖內容就ok了。 最後總結一下,步驟9,編譯caffe.sln工程遇到常見問題: ①編譯時會下載NugetPackages,這是最考驗網速的時候了。這是好vs會無響應,放心等待就好。
②出現error C2220: 警告被視為錯誤 - 沒有生成“object”檔案 (..\..\src\caffe\util\math_functions.cpp):這是編碼方式的問題。 因為我們的系統大部分使用的是中文,而math_function.cpp檔案是英文的。找到math_function.cpp檔案vs開啟,再儲存即可 ③無法開啟輸入檔案“libcaffe.lib”:關鍵問題是在alt_sstream_impl.hpp 檔案的編碼上,用的是Linux的編碼,改為windows編碼即可,只要找到檔案alt_sstream_impl.hpp檔案用vs開啟,再保持即可。這個檔案在NugetPackages目錄。 ④出現error:找不到mxGPUArray,主要是由於matlab新版本中gpu資料夾已從\extern\include獨立出來了,該檔案在目錄$(MatlabDir)\toolbox\distcomp\gpu\extern\include下,這個只要修改CommonSettings.props檔案新增該目錄即可,細心的你可能會發現 ,上面第8步的圖片中,我已經添加了這個目錄,請看下圖。
⑤嚴格按照步驟安裝後,還出現問題。重啟軟體,重啟系統。 ⑥在\caffe-master\matlab\demo目錄下,有個classification_demo.m,可以執行試試。 1)未定義與 'char' 型別的輸入引數相對應的函式 'caffe_'。修改路徑:
2)Please download CaffeNet from Model Zoo before you run this demo:下載model的Git網址: https://github.com/BVLC/caffe/tree/master/models/bvlc_reference_caffenet 3)下載和修改後,執行D:\test.m,測試D:\caffe-master\matlab\demo\classification_demo.m 是不是講的太細,導致你安裝太順利,感覺沒有挑戰性啊! hiahia 希望對你有幫助。
PS:最後,建議大家還是儘量用Linux環境。