vs2012編譯caffe


一、準備

  需要用到的東西我已經幫大家全部準備好了,有2015年6月5日剛剛從caffe官方master分支fork過來的源代碼:https://www.github.com/happynear/caffe-windows。有我自己親手製作的第三方庫http://pan.baidu.com/s/1sjE5ER7,在源碼的根目錄下建立個3rdparty文件夾,把文件解壓進去就可以了。 
  解壓好之後,要將3rdparty/bin文件夾添加到系統目錄,這樣才能讓程序找到這些第三方庫的dll。 
  然後是Visual Studio 2012,因爲我的第三方庫都是VS2012環境下編譯的,所以用其他版本VS的請自行編譯。 
  最後是CUDA和MKL了,MKL是可選的,大家可以去Intel官方申請,如果不用cpu模式的話其實也無所謂,在第三方庫包中我還提供了openblas的庫文件。

二、編譯

  編譯非常簡單,分爲以下幾步: 
  1、雙擊./src/caffe/proto/extract_proto.bat批處理文件來生成caffe.pb.h 和caffe.pb.cc兩個c++文件,和caffe_pb2.py這個python使用的文件。 
  2、打開./build/MSVC/MainBuilder.sln,打開之後切換編譯模式至Release X64模式。如果打開之後顯示加載失敗,可能你的CUDA版本和我的不一致,我的是CUDA 6.5版,這時就要用記事本打開./build/MSVC/MainBuilder.vcxproj,搜索CUDA 6.5,把這個6.5換成你自己的CUDA版本,就可以正常打開了。 
  3、右鍵點擊左邊的MainCaller項目,選擇屬性,在C/C++選項卡中,把附加包含目錄中的cuda include目錄改成你自己的;在鏈接器選項卡中,把附加庫目錄中的cuda library目錄也改成你自己的。 
  4、點上邊工具欄中的綠色三角編譯吧。編譯大概需要1小時左右,請耐心等待。 
   
  如果要用matlab wrapper來提取特徵、觀察訓練好的權重的話呢,只需要把matcaffe項目裏面的cuda、matlab目錄修改成你自己的,然後編譯,你就能從matlab/+caffe/private文件夾裏面找到一個叫caffe_.mexw64的文件啦。 
  python的wrapper類似,把pycaffe項目裏的目錄改成你自己的,就能在python/caffe文件夾中生成_caffe.pyd的python dll文件。

三、測試

  到 http://pan.baidu.com/s/1mgl9ndu 下載已經轉換好的MNIST的leveldb數據文件,解壓至./examples/mnist文件夾中,然後運行根目錄下的run_mnist.bat即可開始訓練,訓練日誌會保存在./log文件夾中,以INFO開頭,txt格式的日誌文件中。

發佈了17 篇原創文章 · 獲贊 57 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章