tf-faster-rcnn代码学习.目标检测(Tensorflow版Faster R-CNN)

电脑配置

系统:Ubuntu 16.04
GPU型号:RTX-2070

代码来源

我这里采用的Tensorflow版本的Faster R-CNN来训练自己的数据集.

tf-faster-rcnn代码链接
按照链接中的方式,install 好自己的工程.

环境配置

将自己的环境存成yaml文件,用于移植环境到另一台电脑。
终端进入自己的环境,执行指令

conda env export > environment.yaml  
environment.yaml 为生成的yaml文件名

在另一台电脑安装环境需要终端执行代码:

conda env create -f environment.yaml

此处需要注意的是,网友说这只是将conda安装的包移植过来了,pip安装的需要重新安装,这点未考究,不确定。

此处踩坑:
刚开始运用的环境是之前比赛用的环境,
主要配置如下

  - cudatoolkit=8.0=3
  - cudnn=6.0.21=cuda8.0_0
  - py-opencv=3.4.2=py36hb342d67_1
  - python=3.6.8=h0371630_0
  - tensorflow-gpu=1.4.1=0
  - tensorflow-gpu-base=1.4.1=py36ha7e2fe3_0
  - tensorflow-tensorboard=0.4.0=py36hf484d3e_0

但是,上边的配置试用于显卡为1080,1070等型号
我是RTX 2070,应该是不支持cuda=8.0的 这就导致运行demo.py时,只能运用cpu来做nms操作。运用GPU版的nms会报错。这样一来,一是运用模型测试的时候cpu运行会很慢。二来可能会影响模型效果
另外: tensorflow各个版本的CUDA以及Cudnn版本对应关系

最后采用的环境配置如下:

#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                        main    defaults
_tflow_select             2.1.0                       gpu    defaults
absl-py                   0.8.1                    py36_0    defaults
astor                     0.8.0                    py36_0    defaults
blas                      1.0                         mkl    defaults
c-ares                    1.15.0            h7b6447c_1001    defaults
ca-certificates           2019.11.27                    0    defaults
certifi                   2019.11.28               py36_0    defaults
cudatoolkit               10.0.130                      0    defaults
cudnn                     7.6.4                cuda10.0_0    defaults
cupti                     10.0.130                      0    defaults
cycler                    0.10.0                   pypi_0    pypi
cython                    0.29.14          py36he6710b0_0    defaults
easydict                  1.9                      pypi_0    pypi
gast                      0.3.2                      py_0    defaults
grpcio                    1.14.1           py36h9ba97e2_0    defaults
h5py                      2.9.0            py36h7918eee_0    defaults
hdf5                      1.10.4               hb1b8bf9_0    defaults
intel-openmp              2019.4                      243    defaults
keras-applications        1.0.8                      py_0    defaults
keras-preprocessing       1.1.0                      py_1    defaults
kiwisolver                1.1.0                    pypi_0    pypi
libgcc-ng                 9.1.0                hdf63c60_0    defaults
libgfortran-ng            7.3.0                hdf63c60_0    defaults
libprotobuf               3.11.2               hd408876_0    defaults
libstdcxx-ng              9.1.0                hdf63c60_0    defaults
markdown                  3.1.1                    py36_0    defaults
matplotlib                3.1.2                    pypi_0    pypi
mkl                       2019.4                      243    defaults
mkl-service               2.3.0            py36he904b0f_0    defaults
mkl_fft                   1.0.15           py36ha843d7b_0    defaults
mkl_random                1.1.0            py36hd6b4f25_0    defaults
mock                      3.0.5                    py36_0    defaults
numpy                     1.17.4           py36hc1035e2_0    defaults
numpy-base                1.17.4           py36hde5b4d6_0    defaults
opencv-python             4.1.2.30                 pypi_0    pypi
openssl                   1.0.2t               h7b6447c_1    defaults
pillow                    6.2.1                    pypi_0    pypi
pip                       19.3.1                   py36_0    defaults
protobuf                  3.11.2           py36he6710b0_0    defaults
pyparsing                 2.4.5                    pypi_0    pypi
python                    3.6.0                         0    defaults
python-dateutil           2.8.1                    pypi_0    pypi
readline                  6.2                           2    defaults
scipy                     1.3.2            py36h7c811a0_0    defaults
setuptools                42.0.2                   py36_0    defaults
six                       1.13.0                   py36_0    defaults
sqlite                    3.13.0                        0    defaults
tensorboard               1.13.1           py36hf484d3e_0    defaults
tensorflow                1.13.1          gpu_py36h3991807_0    defaults
tensorflow-base           1.13.1          gpu_py36h8d69cac_0    defaults
tensorflow-estimator      1.13.0                     py_0    defaults
tensorflow-gpu            1.13.1               h0d30ee6_0    defaults
termcolor                 1.1.0                    py36_1    defaults
tk                        8.5.18                        0    defaults
werkzeug                  0.16.0                     py_0    defaults
wheel                     0.33.6                   py36_0    defaults
xz                        5.2.4                h14c3975_4    defaults
zlib                      1.2.11               h7b6447c_3    defaults

demo测试

按照代码链接工程中的README
修改setup.py 文件中的arch=61(按照自己显卡情况来)
执行完

make clean
make
cd ..

以及:

cd data
git clone https://github.com/pdollar/coco.git
cd coco/PythonAPI
make
cd ../../..

准备date以及pre-trained models
date:按照此链接格式准备数据集

下载预训练模型

# Resnet101 for voc pre-trained on 07+12 set
./data/scripts/fetch_faster_rcnn_models.sh

建立模型与文件夹的软链接

NET=res101
TRAIN_IMDB=voc_2007_trainval+voc_2012_trainval
mkdir -p output/${
   NET}/${
   TRAIN_IMDB}
cd output/${
   NET}/${
   TRAIN_IMDB}
ln -s ../../../data/voc_2007_trainval+voc_2012_trainval ./default
cd ../../..

此步未做会报以下错误

Traceback (most recent call last):
  File "./tools/demo.py", line 126, in <module>
    'our server and place them properly?'
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值