Tensorflow object_detection API 目标检测环境搭建

由于本人是一个新鸟才疏学浅,在学习过程遇到很多问题,写本博客的目的一是为了记录一下自己的学习历程,另外一个是想给遇到同样问题的童鞋提供一个思路。

一、安装tensorflow

建议直接安装Anaconda3,里面包含了python3.6和各种tensorflow所需要的依赖库,比如numpy、lxml等库就不需要自己再手动安装了,因为本来就是一个新鸟,尽量打包可以完成的事情就不要为难自己了。

Anaconda3的官网:https://www.anaconda.com/download/

tensorflow的安装可以参照tensorflow中文社区文档:tensorflow安装教程

tensorflow下载地址:TensorFlow下载页

二、安装Object Detection API

tensorflow object_detection API 的安装可以参考github上面的安装教程.

object_detection的地址为:tensorflow/models直接下载到本地进行解压。

三、安装protobuf

打开anaconda3的anaconda Prompt在里面输入conda install protobuf=3.4,切记一定要安装3.4的版本不要安装protoc3.5版本,不然会出现下面的错误:

Tensorflow object_detection API 目标检测环境搭建

找不到object_detection文件夹。具体原因见这里:https://github.com/tensorflow/models/issues/2930

protobuf 3.4.0下载地址:https://github.com/google/protobuf/releases/tag/v3.4.0

将protoc-3.4.0-win32.tar.gz进行解压,将bin里面的protoc.exe拷到models-master\research中,然后按住shift键,右击鼠标右键:点击在此处打开命令窗口,在里面输入:protoc --python_out=. object_detection/protos/*.proto

停顿一到两秒出现如下结果:

Tensorflow object_detection API 目标检测环境搭建

就说明protoc已经配置好。

四、测试API

1、在命令行内输入:如下内容

protoc object_detection/protos/*.proto --python_out=.

如果这里没有报错说明你上面配置完好;

2、安装tensorflow model以及slim

首先在命令行内执行:python setup.py install 

只需等待几秒就可以安装成功。

这时候如果你执行:python object_detection/builders/model_builder_test.py将会报错:

ImportError:No module named nets

这时候就说明你的slim还没有安装,进入到slim文件下:同样执行

python setup.py install

就会出现如下情况:

Tensorflow object_detection API 目标检测环境搭建

说明你slim已经安装成功,这时候需要把model和slim都配置到path立马;在path原有配置情况下添加:

G:\models\models-master\research;G:\models\models-master\research\slim保存,这样model和slim的环境变量就配置好了。

3、回到research目录下执行如下命令:

Python object_detection/builders/model_builder_test.py

Tensorflow object_detection API 目标检测环境搭建

恭喜你测试成功。

4、通过jupyter_notebook查看训练结果

这里建议使用IE浏览器且是最新版本,我这里使用的是IE11,如果浏览器版本太低的话,将会加

载不出来了;

执行命令:jupyter_notebook

最新版本已经换成:jupyter notebook

效果如下:

Tensorflow object_detection API 目标检测环境搭建

然后找到object_detection文件下的object_detection_tutorial.ipynb在浏览器中自动生成如下内容:

Tensorflow object_detection API 目标检测环境搭建

找到cell然后运行Run All,如果你的网速够快电脑性能够好,顺利的情况下将会出现正常的结果,由于博主电脑接近报废的情况,运行较慢,等以后有时间再把这张运行效果图补回来。

后续内容将会是使用obect_detection API检测自己的图片,如果有需要的朋友可以持续关注。

特意补图的:

Tensorflow object_detection API 目标检测环境搭建

Tensorflow object_detection API 目标检测环境搭建