基于tensorflow搭建faster rcnn(Windows 10)

前段时间实验室有一些项目,需要用到faster rcnn。虽然网上有很多教程,但由于每个人电脑配置不同,还是踩到了不少坑,在这里记录自己遇到的一些问题,供大家参考。

首先是环境:
1:python 3.5
2:tensorflow库,cython,python-opencv,easydict第三方库
3:VS2015

我主要是参照以下两篇文章进行搭建的:
Windows 下 TensorFlow Faster rcnn 详细安装步骤(一)
Windows 下 TensorFlow 和 Faster rcnn 详细安装步骤(二)
上面两篇博客是我感觉讲的比较详细的,但还是碰到了下面几个问题:

1:由于上述教程提供的faster rcnn是基于tensorflow的,tf模块需要python3.5的支持,若你使用的是其他版本的python,最好还是换成3.5版本的,以免出现不必要的错误。
推荐大家使用Anaconda,该软件可以创建虚拟的python环境,不会对电脑中原有的python环境造成影响,我们利用它创建一个python版本为3.5的虚拟环境,在该环境下安装好对应版本的tensorflow,之后的所有操作均在此环境下进行。

2:faster rcnn需要cython, python-opencv, easydict这些第三方库的依赖,在安装python-opencv库时,可能会报错无法安装,如果在安装python-opencv时失败,提示找不到相关的库,可以换一种安装方式:

在这个网站上http://www.lfd.uci.edu/~gohlke/pythonlibs/ 查找OpenCV,如下图,选择python3.5版本的,且与自己电脑系统匹配的安装包下载。
基于tensorflow搭建faster rcnn(Windows 10)_第1张图片
然后使用命令安装:

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

3:

cd C:\Users\master\Downloads\Faster-RCNN-TensorFlow-Python3.5-master\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,这主要是因为在编译这些文件时,底层用到了C/C++,电脑中如果没有python对应的c++编译器,就会报这个错误,其中一种简单粗暴的解决方法就是安装VS2015,安装的时候注意勾上C++的选项即可。
如果已经安装了VS2015,检查VS安装目录下是否有vcvarsall.bat文件,例如我的路径为:D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC,如果没有此文件,表明安装时是默认安装的,还缺少C++编译文件,这个时候可以打开VS,新建项目,语言选择C++,此时VS会让你安装一个工具,安装后就好了。

4:ModuleNotFoundError: No module named ‘lib.utils.cython_bbox’

这个真是巨坑,因为上述两篇教程中原博主漏了一个编译步骤,导致一些依赖库没装全而报了上述错误。我们可以去下载的faster rcnn的github上看原作者的过程,github链接。需要Go to ./lib/utils and run python setup.py build_ext --inplace,在这个路径下再编译setup.py才行,而博主的教程只写了在coco路径下编译了,但没有在lib/utils下再编译另一个setup.py。

总的来说基于tensorflow的faster rcnn配置还是挺简单的,大家在配置的过程中认真阅读教程,最好选用和原博主版本相同的python和软件,如果在配置过程中还遇到了其他问题,欢迎下方评论区留言评论~

`

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