部署Faster-RCNN TensorFlow版本

创建Anaconda环境

首先利用Anaconda创建并配置一个独立的Python环境,在此我的环境名字为tf-faster-rcnn

Conda命令创建新环境

打开终端,通过conda命令创建名为tf-faster-rcnn的新环境,同时指定python版本为3.6:

su@Laptop-su:~$ conda create -n tf-faster-rcnn python=3.6

若想删除conda环境,可采用下面命令:

su@Laptop-su:~$ conda remove -n tf-faster-rcnn --all

Conda安装所需包

在终端内使用下面命令进入tf-faster-rcnn环境:

su@Laptop-su:~$ source activate tf-faster-rcnn

可以通过下面指令确认自己所在的环境位置:

(tf-faster-rcnn) su@Laptop-su:~$ conda env list

若要退出tf-faster-rcnn环境,返回默认环境,使用下面命令:

(tf-faster-rcnn) su@Laptop-su:~$ source deactivate

tf-faster-rcnn环境下,使用conda命令逐一安装所需包:
1.tensorflow-gpu

(tf-faster-rcnn) su@Laptop-su:~$ conda install tensorflow-gpu

会自动将最新版本的tensorflow-gpu版本以及其依赖的包比如cudatoolkitcudnnscipyscikit-learnnumpy安装完毕,我安装时如果不指定版本自动安装会安装tensorflow-gpu=1.12cudatoolkit=9.2cudnn=7.2.1,注意cuda的版本是要跟你的N卡驱动匹配的,看下图
在这里插入图片描述
我的N卡驱动版本是390.77,并且不想升级显卡驱动,因此CUDA最高可选择9.1,我决定先安装CUDA9.0
可以通过下面命令安装指定版本的包:

(tf-faster-rcnn) su@Laptop-su:~$ conda install cudatoolkit=9.0

再安装tensorflow,会自动将匹配CUDA9.0cudnn版本附带安装完毕

(tf-faster-rcnn) su@Laptop-su:~$ conda install tensorflow-gpu

这样安装完成后,我的环境里是tensorflow-gpu=1.12cudatoolkit=9.0cudnn=7.1.2

2.py-opencv

(tf-faster-rcnn) su@Laptop-su:~$ conda install py-opencv

我安装时自动安装的是py-opencv=3.4.2
3.matplotlib

(tf-faster-rcnn) su@Laptop-su:~$ conda install matplotlib

4.cython

(tf-faster-rcnn) su@Laptop-su:~$ conda install cython

5.pillow

(tf-faster-rcnn) su@Laptop-su:~$ conda install pillow

6.pyyaml

(tf-faster-rcnn) su@Laptop-su:~$ conda install pyyaml

7.easydict
conda库中不提供easydict的安装,需要使用pip命令进行安装:

(tf-faster-rcnn) su@Laptop-su:~$ pip install easydict

我安装时,自动安装的是easydict=1.9

gcc降级

我们要gittf-faster-rcnn不支持6以上版本的gcc,因此要对gcc进行降级或者改变不同版本的优先级.

  1. 查看gcc版本
    在终端中输入如下命令:
su@Laptop-su:~$ gcc -v

会显示gcc version
在此我的gcc版本为7

  1. 查看安装有哪些版本的gcc
    在终端中输入如下命令:
su@Laptop-su:~$ ls /usr/bin/gcc*

如果没有需要的版本,则需要进行第3步安装指定版本

  1. 安装指定版本gcc
    以安装gcc5为例,在终端中输入如下命令:
su@Laptop-su:~$ sudo apt-get install gcc-5 g++-5
  1. 配置gcc优先级
    在终端中输入如下命令调整优先级,数值越低优先级越高:
su@Laptop-su:~$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 50 
su@Laptop-su:~$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 40

输入如下命令,确认配置:

su@Laptop-su:~$ sudo update-alternatives --config gcc

同样也要设置一下g++的:

su@Laptop-su:~$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 50
su@Laptop-su:~$ sudo update-alternatives --install /usr/bin/g++ gc++/usr/bin/g++-5 40

如果想删除可选项的话可以键入以下指令:

su@Laptop-su:~$ sudo update-alternatives --remove gcc /usr/bin/gcc-7
  1. 检查当前gcc版本
    在终端中输入如下命令:
su@Laptop-su:~$ gcc -v

显示如下:

下载tf-faster-rcnn和数据集

克隆代码

在想要下载的位置下通过终端输入下列命令:

su@Laptop-su:~/GitHub$  git clone https://github.com/endernewton/tf-faster-rcnn.git

根据你的显卡更新setup脚本中的arch参数

修改tf-faster-rcnn/lib/setup.py中第130行的arch参数
比如我的显卡是1070,算力是6.1,所以是sm_61
你显卡的算力可以查询下面网址:
https://developer.nvidia.com/cuda-gpus#collapseOne

编译Cython

tf-faster-rcnn/lib路径下,在tf-faster-rcnn环境下输入终端命令:

# 清除之前编译结果
(tf-faster-rcnn) su@Laptop-su:~/GitHub/tf-faster-rcnn/lib$  make clean
# 编译
(tf-faster-rcnn) su@Laptop-su:~/GitHub/tf-faster-rcnn/lib$  make

安装COCO API

这是为了使用COCO数据库

(tf-faster-rcnn) su@Laptop-su:~/GitHub/tf-faster-rcnn$ cd data
# 下载COCO API
(tf-faster-rcnn) su@Laptop-su:~/GitHub/tf-faster-rcnn/data$ git clone https://github.com/pdollar/coco.git
(tf-faster-rcnn) su@Laptop-su:~/GitHub/tf-faster-rcnn/data$ cd coco/PythonAPI
(tf-faster-rcnn) su@Laptop-su:~/GitHub/tf-faster-rcnn/data/coco/PythonAPI$ make
(tf-faster-rcnn) su@Laptop-su:~/GitHub/tf-faster-rcnn/data/coco/PythonAPI$ cd ../../..

下载PASCAL VOC数据集

  1. 下载训练集,验证集,测试集以及VOCdevkit
    在想要存放数据集的位置打开终端,输入下列命令:
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC$ wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC$ wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC$ wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar
  1. 将所有压缩包解压到一个名为VOCdevkit的文件夹中
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC$ tar xvf VOCtrainval_06-Nov-2007.tar
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC$ tar xvf VOCtest_06-Nov-2007.tar
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC$ tar xvf VOCdevkit_08-Jun-2007.tar
  1. VOCdevkit文件夹应由如下构成
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC/VOCdevkit$   # development kit
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC/VOCdevkit/VOCdevkit/VOCcode$  # VOC utility code
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC/VOCdevkit/VOCdevkit/VOC2007$  # image sets, annotations, etc.
  1. 创建数据集的软连接
su@Laptop-su:/media/su/学习/数据集/样本库/PASCAL VOC/VOCdevkit$ cd ~/GitHub/tf-faster-rcnn/data
su@
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值