Windows10系统TensorFlow-gpu平台下运行Fater-RCNN

在Windows10系统下TensorFlow平台已经搭建完成,安装的各种版本:

TensorFlow1.12.0+CUDA9.0+CUDNN7.3.0

在跑demo中遇到了很多问题,趁着数据还在跑的过程中,写下这篇博客。

前提条件:完成TensorFlow平台的搭建,确保TensorFlow和相关依赖安装成功。

1.下载faster rcnn程序包。此版本基于python3.5的,我在系统中安装的是python3.6版本,导致后面会遇到了些问题。下文再描述

链接:https://pan.baidu.com/s/17xjw45CLtGOuMFRA-ezQ5w  提取码:qcw4 
2.安装python相关的依赖库

pip install cython
pip install python-opencv
pip install easydict

如果在安装python-opencv失败的话,可以在网站下载,选择和自己电脑系统匹配的安装包下载http://www.lfd.uci.edu/~gohlke/pythonlibs/,我选择的如图所示的安装包。

Windows10系统TensorFlow-gpu平台下运行Fater-RCNN_第1张图片

使用命令,进行安装。

pip install C:\Users\master\Downloads\opencv_python-3.4.2-cp35-cp35m-win_amd64.whl

3.进入目录E:\Faster-rcnn\Faster-RCNN-TensorFlow-Python3.5-master\data\coco\PythonAPI,执行如下代码。


python setup.py build_ext --inplace
 
python setup.py build_ext install

执行过程中,报错Unable to find vcvarsall.bat.

解决方法安装visual studio 2015 ,安装语言的选择勾上C ++,安装完成后,在VS的安装目录中检测是否含有vcvarsall.bat文件,没有的话,打开VS,新建项目,语言选择C++,VS会让你安装一个工具安装后就OK了。

4.下载VOC2007格式的数据集

下载地址:http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
                  http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
                  http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar

将下载后的压缩包解压到同一个文件下,同时选中三个压缩包,右键解压到当前文件夹。即可得到VOCDevkit文件夹,并将VOCDevkit文件重命名为VOCDevkit2007,然后将该文件夹拷贝到faster-rcnn中的data目录下

Windows10系统TensorFlow-gpu平台下运行Fater-RCNN_第2张图片

5.下载预训练的VGG16模型,

下载地址:http://download.tensorflow.org/models/vgg_16_2016_08_28.tar.gz

下载之后解压,文件重命名为vgg16.ckpt,新建文件夹imagenet_weights,把vgg16.ckpt放到imagenet_weights下,再将imagenet_weights文件夹拷贝到data文件夹下,我的文件目录如下:

Windows10系统TensorFlow-gpu平台下运行Fater-RCNN_第3张图片

6.训练模型。

python train.py

接下来就可以训练模型了,但是训练过程中遇到了很多问题,找不到各种库(例如:matplotlib,scipy,PIL..)的我就不写了 直接pip install安装就可以。

遇到的问题

1.报错:ModuleNotFoundError:No module named 'lib.utils.cython_bbox'

原因:在训练Faster-RCNN的时候,遇到这个问题主要是因为采用的代码是基于python3.5的,而我安装的python环境是3.6的,使用3.6的环境去编译就会出现这个问题。

解决方法,对项目中的setup.py进行修改,在第16行中加上红框中的代码:

Windows10系统TensorFlow-gpu平台下运行Fater-RCNN_第4张图片

我添加的绝对路径。

然后进行编译,编译后,生成一个cython_bbox.cp36-win_amd64文件,将其放在如下所示的文件中。

Windows10系统TensorFlow-gpu平台下运行Fater-RCNN_第5张图片

2.各种路径问题,为了简单起见,我将代码中的路径改为了绝对路径。

3.运行过程中,出现意外终止,界面显示keep_inds = np.append(fg_inds, bg_inds) (Pdb),但是并不报错

解决方法:将proposal_target_layer.py中出现的pdb的地方注释了。

Windows10系统TensorFlow-gpu平台下运行Fater-RCNN_第6张图片

并将运行过程中产生的缓存全部删除,如下文件的缓存全部删除掉。

Windows10系统TensorFlow-gpu平台下运行Fater-RCNN_第7张图片

再进行训练,能够成功训练

Windows10系统TensorFlow-gpu平台下运行Fater-RCNN_第8张图片

目前训练了1/4。

你可能感兴趣的:(深度学习)