1. 程式人生 > >Ubuntu 18.04 在虛擬環境pyenv下配置python的caffe庫(only CPU)

Ubuntu 18.04 在虛擬環境pyenv下配置python的caffe庫(only CPU)

在進行配置時要先確保使用pyenv與virtualenv搭建單機多版本python多虛擬環境已經搭建好;
1. 首先安裝git工具:

sudo add-apt-repository ppa:git-core/ppa
sudo apt-get update
sudo apt-get install git

2.使用git工具下載caffe的原始碼到本地:

git clone https://github.com/BVLC/caffe.git

3.開始配置caffe:
在下載的caffe原始碼的第一層目錄中,有一個檔案Makefile.config.example。首先進行檔案拷貝:

cp Makefile.config.example Makefile.config

然後對Makefile.config進行修改:
(pyenv虛擬環境下配置caffe的修改)

  #如果使用CUDNN的話,需要改為下面的形式,注意去掉前面的"#"號註釋符
  USE_CUDNN := 1
  #如果是在CPU上進行開發,需要改為下面的形式,注意去掉前面的"#"號註釋符
  CPU_ONLY := 1
  # 根據系統安裝好的OpenCV版本進行設定,注意去掉前面的"#"號註釋符
  OPENCV_VERSION := 3
  # 根據實際的Python環境進行配置
  PYTHON_INCLUDE
:= /home/syl/.pyenv/versions/3.6.0/include/python3.6m \ /home/syl/.pyenv/versions/3.6.0/envs/env360/lib/python3.6/sitepackages/numpy/core/include #根據實際情況修改路徑 PYTHON_LIB:=/home/syl/.pyenv/versions/3.6.0/lib #去掉下面兩項"#"號註釋符,然後根據自己情況修改路徑 PYTHON_LIBRARIES := boost_python3 python3.6m PYTHON_INCLUDE := /home/syl
/.pyenv/versions/3.6.0/include/python3.6m \ /home/syl/.pyenv/versions/3.6.0/envs/env360/lib/python3.6/site-packages/numpy/core/include #為了避免出現找不到hdf5.h的錯誤,還需要修改下面兩項 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/

然後為了進一步解決hdf5.h的錯誤,需要修改makefile檔案:

    LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

4. 安裝一些依賴庫,以避免編譯出錯:


sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler

5 . caffe編譯:
j代表多執行緒編譯

make all -j8
make alltest -j8

6 . 安裝及執行python環境下的caffe還需要安裝一些依賴的python庫
進入pyenv虛擬環境

  pyenv activate env360

然後安裝python的相關庫

  pip3 install numpy
  pip3 install opencv-python
  pip3 install -U scikit-image

7 . 編譯python版本的caffe:

  make pycaffe
  make all
  make test
  make runtest

8.測試Caffe的Python介面,切換到caffe/python檔案目錄下,記錄下來當前路徑,輸入以下命令:

export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH

進入python環境,輸入:

import caffe

9 . 如果沒有報錯,證明安裝成功。
上面的方法,一旦關閉終端或者開啟新終端則失效,如果放到配置檔案中,可以永久有效果,命令操作如下:

#A.把環境變數路徑放到 ~/.bashrc檔案中
sudo echo export PYTHONPATH="~/caffe/python" >> ~/.bashrc
#B.使環境變數生效
source ~/.bashrc