[Caffe] - No.2 ssd-caffe(1):编译、安装、测试

在这篇文章里面总结一下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 libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
    sudo apt-get install --no-install-recommends libboost-all-dev
    
    sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
    
    sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-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 := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
    LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial       
  • 还有一些在网上查阅到的修改,不知道具体的作用,可作参考:

    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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值