No.2 ssd-caffe(1):編譯、安裝、測試
阿新 • • 發佈:2018-12-26
在這篇文章裡面總結一下ssd-caffe
的安裝使用,測試以及如何使用自己的測試樣本,CUDA和OpenCV的安裝在這裡不再介紹,實驗環境Ubuntu16.04
1 . 安裝並測試ssd-caffe
1.1 從git官網克隆ssd-caffe
git clone https://github.com/weiliu89/caffe.git
cd caffe
git checkout ssd
1.2 編譯安裝caffe
caffe的編譯安裝建議參考caffe官網
安裝所有依賴:
sudo apt-get install libprotobuf-dev libleveldb-dev
如果編譯過程提示BLAS無法使用可以安裝OpenBLAS
複製並修改
Makefile.config
cp Makefile.config.example Makefile.config gedit Makefile.config
修改內容
USE_CUDNN := 1 #使用cudnn加速,沒有cudnn或者CPU執行則註釋掉 OPENCV_VERSION := 3 #opencv版本 WITH_PYTHON_LAYER := 1 #使用python介面 將 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib 修改為: INCLUDE_DIRS
還有一些在網上查閱到的修改,不知道具體的作用,可作參考:
caffe根目錄下的
Makefile
將: NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS) 更改: NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS) 將: LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5 更改: LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
更改
/usr/local/cuda/include/host_config.h
將 #error-- unsupported GNU version! gcc versions later than 4.9 are not supported! 改為 //#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
編譯測試ssd
# Make sure to include $CAFFE_ROOT/python to your PYTHONPATH. make -j8 make py make test -j8 # (Optional) make runtest -j8
在
make py
的時候可能會出現提示如下錯誤python/caffe/_caffe.cpp:47:31: fatal error: numpy/arrayobject.h: 沒有那個檔案或目錄 compilation terminated. Makefile:681: recipe for target 'python/caffe/_caffe.so' failed make: *** [python/caffe/_caffe.so] Error 1
遇到上面情況安裝python-numpy即可
sudo apt-get install python-numpy
如果
runtest
無法編譯,嘗試新增sudo
,可能你在cuda的安裝過程中有些檔案的許可權遇到了問題新增PYTHONPATH
gedit ~/.bashrc
在尾部新增如下內容export PYTHONPATH=/home/YOUR_NAME/caffe/python:$PYTHONPATH
測試ssd
可以直接測試以下兩個命令,無需下載資料集:
python examples/ssd/ssd_pascal_webcam.py #需攝像頭 python examples/ssd/ssd_pascal_video.py