Ubuntu15.04 Fast-RCNN配置 cuda7.0

时间:2021-07-26 04:06:31

这两天看了一下RCNN和Fast-RCNN,虽然Faster-RCNN也出来了,但是还是想先研究一下Fast-RCNN,废话不多说,先配置好,这次的配置比较简单,当然前期的依赖项得先装好,我是之前配置好caffe了,所以很多依赖项已经安装了,因此也建议先配置caffe再配置Fast-RCNN。caffe配置具体请看这篇博客:http://blog.csdn.net/lxh19920114/article/details/49871891

第一步,先下载Fast-RCNN,可以选择手动下载,也可以使用下面的命令直接搞定:

git clone --recursive https://github.com/rbgirshick/fast-rcnn.git
当然,想使用git命令,还需要先安装git:

sudo apt-get install git

安装完后,cd进你要存放Fast-RCNN的目录下面,使用上述的git命令。

注意:--recursive选项一定要加 ,不加这个命令就只能下载一个Fast-RCNN,而Fast-RCNN是需要caffe支持的,因此只有加了这个选项才会自动的将Fast-RCNN所需要的caffe版本下载下来。如果是手动下载的话,需要进https://github.com/rbgirshick/fast-rcnn下载Fast-RCNN,进https://github.com/rbgirshick/caffe-fast-rcnn/tree/fast-rcnn下载caffe。千万注意!!!!其他版本的caffe可能并不会支持这里的Fast-RCNN。

下载好并解压之后,会有如下的文件:

Ubuntu15.04 Fast-RCNN配置 cuda7.0

其中caffe-fast-rcnn文件夹就是存放下载的caffe的地方,只需把下载下来的caffe提取到这个文件夹下面就行,解压好后应该是以下内容,当然有些文件是编译之后才会生成的。

Ubuntu15.04 Fast-RCNN配置 cuda7.0

接下来就需要编译了,先cd进fast-rcnn/lib目录进行编译:

Ubuntu15.04 Fast-RCNN配置 cuda7.0

编译完成之后lib文件夹下应该有如下文件:

Ubuntu15.04 Fast-RCNN配置 cuda7.0

接下来就需要去编译caffe了,请确定已经按照这篇博客http://blog.csdn.net/lxh19920114/article/details/49871891配置好caffe所需要的依赖项,不然编译不会通过

先cd进caffe-fast-rcnn文件夹,执行以下命令创建Makefile.config

cp Makefile.config.example Makefile.config

接下来配置Makefile.config文件(仅列出修改部分)

a. 启用CUDNN,去掉"#"

USE_CUDNN := 1

b. 配置一些引用文件(增加部分主要是解决新版本下,HDF5的路径问题)

INCLUDE_DIRS := $(PYTHON_INCLUDE)/usr/local/include /usr/lib/x86_64-linux-gnu/hdf5/serial/include

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib/usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial

c. 启用Intel Parallel Studio XE 2016

BLAS := mkl

d. 配置路径,实现caffePythonMatlab接口的支持

PYTHON_LIB := /usr/local/lib

MATLAB_DIR := /usr/local/MATLAB/R2014a

e. 启用Python_Layer,去掉"#",这一步很关键!!!!!

WITH_PYTHON_LAYER := 1

和上一篇博客不一样的是fast-rcnn使用的caffe版本并没有OPENCV_VERSION =3这一选项,因此我们需要去改一下Makefile文件。

Ubuntu15.04 Fast-RCNN配置 cuda7.0

红色框选中的内容(opencv_imgcodecs)是需要添加的,这是opencv3.0才有的,很多基本函数比如imshow函数都在这里面。

添加完之后就保存。

然后再编译

make -j8 && make pycaffe
等待编译成功吧。

完成之后应该就是下面的信息,只要不报错就行。

Ubuntu15.04 Fast-RCNN配置 cuda7.0

接下来就需要下载模型了cd进faster-rcnn根目录下,执行

./data/scripts/fetch_fast_rcnn_models.sh
然后等吧,模型有900M+,因此还是要等一会的。

完成之后,需要安装easydict,直接装是不行的,需要先安装pip命令

sudo apt-get install python-pip

安装完成之后安装easydict:

sudo pip install easydict

这也安装好了就可以运行demo了。不过默认的VGG16模型需要至少3G的显存,所以如果显存不够的话需要换成caffenet。

直接再tools文件夹下改demo.py就行

Ubuntu15.04 Fast-RCNN配置 cuda7.0

将红框框中的部分中,vgg16改为caffenet就行。

然后在fast-rcnn根目录下运行

./tools/demo.py
运行结果有三幅图,这里只贴出一幅,如果你也能够看到这些结果就说明配置成功了。