Windows下使用Tensorflow_ObjectDetection_API

问题背景:就是试试Google大佬公开的API。
(突然发现草稿箱里还有一年前没发出去的文章。。。)


本文参考链接:
1.https://blog.csdn.net/RobinTomps/article/details/78115628?locationNum=5&fps=1#commentsedit
2.https://www.jianshu.com/p/21bae50b6e0d
3.https://blog.csdn.net/zlase/article/details/78734138
4.https://blog.csdn.net/weixin_35654926/article/details/75578324

#一、安装配置好Anaconda及tensorflow
这个在前面的博文有说的啦,就不赘述。
我的Python是3.5,tensorflow是1.3的。



#二、安装相关库
需要安装的库有:pillow, jupyter, matplotlib, lxml。没有版本要求。
你可以conda install,也可以在navigator里装,我选后者~



#三、下载TensorFlow-master源码
链接是 https://github.com/tensorflow/models
(注:最好不要在C盘下使用,可能存在各种权限问题)



#四、编译Protobuf,生成py文件
这里有一丢丢麻烦。
首先,下载protoc-3.4.0-win32.zip ,官方链接是:
https://github.com/google/protobuf/releases
但我没用3.5的,因为新版本往往都有问题哈哈哈
下载好后,解压,随意放到一个目录下。把bin文件夹所在目录加入到环境变量PATH中。

然后,打开CMD,输入protoc,提示“missing input file”,可以进行下一步,否则检查以上步骤。

接着,用cd进入到你下载的tensorflow-master源码文件夹model_master中的research文件夹下,执行命令

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

生成py文件:
Windows下使用Tensorflow_ObjectDetection_API_第1张图片
编译成功!
然后执行命令:

python object_detection/builders/model_builder_test.py  

这时,我就遇到了2个问题。
1)no module named "google"
解决办法:下载protobuf库,也是3.4.0版本的。
这个搞定了,又碰到一个问题。
2)no module named "object_detection"
解决办法:在你所在的环境下,也就是Anaconda\env中,找到你用的环境,然后在lib\site-packages 这个文件夹目录下,写一个tensorflow_model.pth文件,内容如下:
这里写图片描述
保存一下就好啦。
再重新执行一下上面的命令。下图是我操作过程中的截图。
Windows下使用Tensorflow_ObjectDetection_API_第2张图片



#五、测试API

cd进入model_master文件夹下,输入命令:

jupyter-notebook

会打开你的浏览器,出现一个页面。
在这个页面中,顺着research\object_detection找到里边的object_detection_tutorial.ipynb,运行。就会出现另外一个界面:
Windows下使用Tensorflow_ObjectDetection_API_第3张图片
按图片上“下箭头”右边的按键,程序就一步步往下执行。运行到最低端的时候,等待一会,就会出现运行结果,如下所示:
Windows下使用Tensorflow_ObjectDetection_API_第4张图片
测试成功~~

后面,再讲讲怎么换模型、换数据集、换测试图片啥的。

你可能感兴趣的:(CV)