Ubuntu 16.04+CUDA8+CUDNN v5配置faster rcnn

在Ubuntu 16.04下配置 py-faster-rcnn

折腾了2天,终于在服务器上配置完成了faster rcnn,记录一下自己配置的过程和踩的坑


硬件环境:

E5 2630v3

nvidia TItanX 12G


系统环境:

Ubuntu 16.04 LTS

opencv 3.1.0

cuda 8.0

cudnn 5.0

python 2.7 ##(非常重要,如果使用python3.5,在最后运行demo时会出现 ImportError: dynamic module does not define init function (pyinit__caffe) 错误)


配置过程

0、默认已经配置过caffe,如果没有,网上教程有许多,这一步包含了安装显卡驱动及CUDA、CUDNN等。

必须安装:

pip install cython    
pip install easydict    
sudo apt-get install python-opencv   


1、git下载代码

git clone --recursive https://github.com/rbgirshick/py-faster-rcnn  

2、与caffe主分支合并

由于py-faster-rcnn代码较为老旧,默认CUDNN版本支持4.0,故需要和caffe主分支合并以支持CUDNN5.0,否则编译时会报错 

make: *** [.build_release/src/caffe/common.o] Error 1  


解决方法:

cd caffe-fast-rcnn    
git remote add caffe https://github.com/BVLC/caffe.git    
git fetch caffe    
git merge -X theirs caffe/master    

并注释掉 include/caffe/layers/python_layer.hpp文件里的self_.attr(“phase”) = static_cast(this->phase_)行


3、编译lib目录
cd lib  
make -j8

4、修改Makefile.config
进入py-faster-rcnn/caffe-fast-rcnn
执行
cp Makefile.config.example Makefile.config  
打开Makefile.config进行修改
#使用CUDNN  
USE_CUDNN := 1  
  
#使用OPENCV3  
OPENCV_VERSION := 3  
  
#使用PYTHON_LAYER  
WITH_PYTHON_LAYER := 1  
  
#由于使用Ubuntu16.04,对于hdf5的支持有变化,故在这两行后面添加相关代码  
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/hdf5/serial  

5、保存并编译
cd caffe-fast-rcnn  
make -j16 && make pycaffe  

6、测试demo

在py-faster-rcnn目录下,下载demo预训练权值
./data/scripts/fetch_faster_rcnn_models.sh  

在py-faster-rcnn/tools目录下,运行demo.py
./demo.py  

效果如图:


参考:





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值