日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

ubuntu 系统下的Caffe环境搭建

發布時間:2025/3/11 windows 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ubuntu 系统下的Caffe环境搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文地址:http://blog.csdn.net/hjimce/article/details/48781693

作者:hjimce

對于caffe的系統一般使用linux系統,當然也有windows版本的caffe,不過如果你一開始使用了windows下面的caffe,后面學習的過程中,會經常遇到各種錯誤,網上下載的一些源碼、模型也往往不能快速的跑起來,因為貌似caffe的官方只提供了linux版本,而且caffe在不斷的快速迭代更新中,如果不使用原版的話,后面編譯出現什么問題,自己怎么錯的,自己都不知道。本篇博文主要講解快速搭建caffe環境:

電腦系統:ubuntu 14.04

顯卡:GTX 850

在ubuntu下要完整的搭建caffe,個人感覺最難的一步就是cuda的安裝了,特別是對于雙顯卡的電腦來說,很容易黑屏、無法登陸圖形界面,這個我安裝了n久,都沒裝成功,因為我的電腦筆記本雙顯卡,每次裝完cuda就黑屏,網上的教程一大堆,但都中看不中用,導致我重裝了二三十次的系統,最后才成功。這里為了講caffe的安裝,我們先不使用GPU,進行安裝測試,因為沒有GPU我們依舊可以跑caffe,只是速度比較慢而已。

1、安裝caffe所需要的依賴庫

命令:

  • sudo apt-get install libatlas-base-dev

  • sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev

  • sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler

  • 這些庫要安裝挺久的,請耐心等待。

    2、下載caffe。

    到github上下載caffe:https://github.com/BVLC/caffe。下載完成后,解壓caffe源碼包。解壓后,我們打開文件,可以看到caffe的源碼包如下:

    3、配置Make.config 文件。caffe文件解壓后,文件夾下面有一個Makefile.config.example文件,我們需要對這個文件進行重命名為:Make.config ?。也就是去掉后綴example。然后我們打開這個文件,可以看到如下內容:

    然后我們把:#CPU_ONLY:=1,那一行的注釋符號去掉:CPU_ONLY:=1。這是因為我們沒有安裝CUDA,還不能使用gpu,所以我們把配置改為只使用cpu。

    4、編譯caffe。

    方案一:

    (1)在完成Make.config配置后,我們輸入命令:

    make all

    進行caffe源碼編譯.這一步有可能遇到如下錯誤:

    caffe/proto/caffe.pb.h: No such file or directory

    如果出現這個錯誤,那么輸入命令:

  • protoc src/caffe/proto/caffe.proto --cpp_out=.

  • mkdir include/caffe/proto

  • mv src/caffe/proto/caffe.pb.h include/caffe/proto

  • 然后在進行make all 就可以了

    (2)編譯完成后,在安裝python接口,輸入命令:

    make pycaffe

    這個如果不使用python接口,調用caffe模型的話也可以不用安裝,不過建議還是搞一下,就一句話的事。完事后,我們會發現caffe源碼目錄下,多了一個build文件,這個文件下面有個tools,打開這個文件夾:

    這個文件夾下面的工具可是個好東西啊,以后我們會經常用到這些可執行文件,最常用的就是可執行文件:caffe,我們只要調用這個工具,就可以進行訓練。

    (3)接著編譯test文件夾下面的源碼。命令如下:

  • make test

  • make runtest

  • 采用這種方案一般沒問題,不過我在使用c++調用的時候,會使用到鏈接庫:libcaffe.so.1.0.0-rc3,這種方法編譯后沒有生成這個文件;經過google查找,發現采用cmake編譯,才會生成libcaffe.so文件

    方案二:直接采用cmake:

  • mkdir build

  • cd build

  • cmake ..

  • make all -j8

  • 5、測試階段

    安裝完了,自然要測試一下能不能用咯。首先cd到caffe目錄,然后輸入命令:

  • sh data/mnist/get_mnist.sh

  • sh examples/mnist/create_mnist.sh

  • vim examples/mnist/lenet_solver.prototxt

  • 把lenet_solver.prototxt里面的solver_mode 改為 CPU。因為我們還沒裝GPU,暫時只使用CPU就好了。

    然后我們運行腳本:

    ./examples/mnist/train_lenet.sh

    這個時候,如果成功的話,就會開始跑起來:

    說明:如果在使用caffe、或者編譯安裝caffe過程中,出現如下錯誤:

  • CXX/LD -o .build_release/tools/convert_imageset.bin

  • .build_release/lib/libcaffe.so: undefined reference tocv::imread(cv::String const&, int)'.build_release/lib/libcaffe.so: undefined reference tocv::imencode(cv::String const&, cv::_InputArray const&, std::vector >&, std::vector > const&)'

  • 那么請修改上面的Makefile文件(不是Makefile.config):

  • LIBRARIES += glog gflags protobuf leveldb snappy \

  • lmdb boost_system hdf5_hl hdf5 m \

  • opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs

  • 也就是在libraries后面,加上opencv的相關庫文件。

    接著就開始caffe搞起吧,推薦個caffe模型網站:https://github.com/BVLC/caffe/wiki/Model-Zoo。本來個人不是很喜歡caffe的,就是因為這個網站吸引了我,這個網站可以搞到好多caffe模型、源碼,非常適合于我們學習。

    二、在Eclipse中使用編譯調試caffe

    1、首先就是安裝Eclipse,然后安裝c++開發插件,這個可以百度搜一下,eclipse下面怎么進行c++開發。

    2.導入caffe makefile工程到eclipse (由于是英文版,下面描述也用英文,省的翻譯,方便大家調試)
    (1)File→New→Project→C/C++ →Makefile Project with Existing Code.
    (2)Create a new Makefile Project from existing code
    Projectname:?caffe-master
    Existing code location:/home/user/caffe-workspace/caffe-master
    Language:?choose C and C++
    Toolchain:choose Linux GCC
    (3)Then click on caffe-master in Project Explorer (set Window→Open ?Perspective → C/C++).

    (4)Now go File → Properties → Run/Debug settings.Click ?New.., and choose C/C++ application
    (5)Fill launch configurationproperties
    · ? ? ? ?Arguments:
    fill ? train –solver=examples/mnist/lenet_solver.prototxt
    and change working directory from default to /home/user/caffe-workspace/caffe-master(change to your own directory)

    (6)Now you can use debug caffe code: Run-> Debug

    三、C++函數調用相關路徑,makefile

  • CC=g++

  • CXXFLAGS = -O2 -Wall -D__STDC_CONSTANT_MACROS

  • INCLUDE = -I/usr/local/cuda/include -I. -I/usr/local/cuda/include -I/home/hjimce/caffe/include/ -I/home/hjimce/caffe/src/

  • LIBRARY = -L/usr/local/x86_64-linux-gnu/ -lprotobuf \

  • -L/usr/lib/x86_64-linux-gnu/ -lglog \

  • -L/usr/local/cuda/lib64/ -lcudart -lcublas -lcurand \

  • -L/usr/local/lib/ -lm -lpthread -lavutil -lavformat -lavcodec -lswscale -lopencv_core -lopencv_imgproc -lopencv_highgui \

  • -L/usr/lib/python2.7/config-x86_64-linux-gnu/ -lpython2.7 \

  • -L/sur/lib32/ -lrt \

  • -L../../caffe/build/lib/ -lcaffe

  • all:

  • $(CC) $(INCLUDE) $(OBJS) testcpp.cpp -o exercise $(LIBRARY)

  • windows下的caffe環境搭建

    最近在ubuntu搞了一個月的caffe,總感覺很不爽,因為ubuntn下面的c++集成開發工具,eclipse用起來沒有vs爽,因為對caffe的函數名不是很熟悉,所以需要借助vs的c++助手。然后前一個月大部分也是調用pycaffe,但是最近感覺需要對caffe的c++函數比較熟悉,才能把自己的能力進一步提高,于是就開始搞起了windows 下的caffe,借助vs的強大功能,快速學習caffe。一開始采用vs2012,最后各種錯誤,最后改成vs2013很容易就編譯成功了。

    最后推薦一個windows下caffe安裝網站:http://thirdeyesqueegee.com/deepdream/2015/07/13/running-deep-dream-on-windows-with-full-cuda-acceleration/? ? 這個包含了python的集成開發環境anaconda,caffe的全套功能。

    ************作者:hjimce ? 時間:2015.10.10 ?聯系QQ:1393852684 ?原創文章,轉載請保留原文地址、作者等信息***************

    附錄:在使用pycaffe遇到如下錯誤

  • raise ValueError('Mean shape incompatible with input shape.')

  • ValueError: Mean shape incompatible with input shape.

  • 那么把??./python/caffe/io.py文件夾下面的代碼:

  • if ms != self.inputs[in_][1:]:

  • raise ValueError('Mean shape incompatible with input shape.')

  • 改成:

  • if ms != self.inputs[in_][1:]:

  • print(self.inputs[in_])

  • in_shape = self.inputs[in_][1:]

  • m_min, m_max = mean.min(), mean.max()

  • normal_mean = (mean - m_min) / (m_max - m_min)

  • mean = resize_image(normal_mean.transpose((1,2,0)),

  • in_shape[1:]).transpose((2,0,1)) * \

  • (m_max - m_min) + m_min

  • #raise ValueError('Mean shape incompatible with input shape.')

  • 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的ubuntu 系统下的Caffe环境搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。