win10中安装TensorFlow Objection Detection API

概要

该博客主要记录了TensorFlow Object Detection API的安装流程。默认读者已经安装好了TensorFlow,若未安装好TensorFlow,请移步博主的另一篇博客:Win10环境下安装TensorFlow-GPU1.11.0+cuda9.0+cudnn7.1.4


1 下载TensorFlow Object Detection API

到如下网址下载TensorFlow Object Detection API的文件夹:https://github.com/tensorflow/models (内涵模型各模块的简介,建议使用Chrome浏览器下载 ,下载文档文件名字为:models-master.zip )
之后对该压缩包进行解压,放在你喜欢的路径下。文件夹最好不要放每个盘中的Program Files (x86)子目录下,放到这个路径下会给后面可能的报错解决方案带来麻烦,同时尽量路径中不要出现英文。因此保险起见,尽量放到出系统盘(C盘)之外的磁盘的根目录下,把解压后的文件夹改成models,我的解压路径为:D:\models。之后添加如下3个路径带到Path环境变量:

D:\models\research
D:\models\research\slim
D:\models\research\object_detection

2 安装protocol buffer

在如下网址下载protocol buffer3.4版本。记住是3.4版本,博主亲自试验过,当前最新版3.6报错。网址为:https://github.com/google/protobuf/releases 。下载的文件夹为:protoc-3.4.0-win32.zip。下载完成之后,在你自己电脑的annaconda文件夹的Lib文件夹下创建一个文件夹为protoc34,有的人安装tensorflow时是为tensorflow专门开辟了一个命名空间,若是这样把protoc34文件夹创建到tensorflow所属文件夹中的Lib文件夹下。之后把压缩包中的bin和include的文件夹解压到这个protoc34文件夹。之后把protoc34中bin文件夹加入Path环境变量。不过这个protoc34你放在哪里都一样,自己喜欢那里就放哪里。


3 编译与测试

之后进行编译,进入你下载下来的models文件夹的research文件,之后输入命令:

C:\Users\DPW\Anaconda3\Lib\protoc34\bin\protoc object_detection/protos/*.proto --python_out=.

win10中安装TensorFlow Objection Detection API
注意,cmd必须先进入一定要在你自己model的research文件夹,而且protoc必须加上是你自己的路径。命令输入后没报错就是成功了。若碰见No module named object_detection的错误,请在你tensorflow安装目录下的Lib\site-packages文件夹下建立一个txt文件,命名随意。之后把如下三个路径添加进去:

D:\models\research
D:\models\research\slim
D:\models\research\object_detection

注意必须换成你自己的models文件夹下的路径。上面是我的路径。 之后把这个txt文件改成一个.pth文件,具体在我的电脑里设置能看见扩展名,后把.txt换成.pth。
之后还是model的research文件夹下运行测试程序,在代码如下:

python D:\models\research\object_detection\builders\model_builder_test.py

这里最好用py文件的绝对路径。等待一会若出现如下信息表示安装成功。
win10中安装TensorFlow Objection Detection API
如果出现了 No module named nets错误,按如下进行。首先从cmd进入models/research/slim文件夹,将bulid文件一道别的文件夹。
win10中安装TensorFlow Objection Detection API
之后一次输入如下命令即可,nets错误就没了:

python setup.py build
python setup.py install