Win10使用TensorFlow调用object_detection API

来源:互联网 发布:道路施工常用数据手册 编辑:程序博客网 时间:2024/06/04 19:23

欢迎转载,转载请注明出处。

        在做物体识别模块,本想自己设计网络,后来还是觉得直接用TF的API赶紧做完就完事了。

Part 0:参考文献

        [1]https://www.ctolib.com/topics-125488.html

        [2]http://blog.csdn.net/c20081052/article/details/77608954?locationNum=4&fps=1

Part 1:软件

        Windows10系统

        TensorFlow r1.4

        Anaconda 3.5

Part 2:安装object_detection API

        1.配置好TensorFlow

        2.下载好TensorFlow模型源码:https://github.com/tensorflow/models

           尽量不要在C盘下使用,research文件夹下为各个模块接口。

           之后在环境变量中增加三条变量:

           F:\TensorFlow_Supporting\models-master

           F:\TensorFlow_Supporting\models-master\research

           F:\TensorFlow_Supporting\models-master\research\slim

        3.通过pip安装:pillow  jupyter  matplotlib  lxml

pip install pillow
           通常情况下,在安装好Anaconda后,这些都是自动安装成功的。
        4.下载Protobuf

           下载地址:https://github.com/google/protobuf/releases

           选择 protoc-3.4.0-win32.zip 版本进行下载。

           解压后在bin文件夹中可以找到一个: protoc.exe

           将这个文件夹加入到环境变量中:F:\TensorFlow_Supporting\bin

           之后在CMD(管理员)中通过cd找到这个文件夹,运行一下 protoc.exe ,但是会报错说需要输入文件。

           退出这个文件夹,cd找到model-master中的research目录下,执行:

protoc object_detection/protos/*.proto --python_out=.
           之后会在protos文件夹中生成一大堆.proto文档,如下图所示:


           之后在Research文件夹下,输入:

python object_detection/builders/model_builder_test.py
           输入这个,等待10几秒之后会出现

           注意:如果出现  ImportError: No module named 'object_detection' 这种问题

                      在   F:\Anaconda\Lib\site-packages  这个文件夹目录下,写一个.pth文件,内容为两条路径


           至此,object_detection API搭建完成。

Part 3:例程测试API

        在CMD中找到models-master文件夹下,路径为:F:\TensorFlow_Supporting\models-master

        在该文件夹下输入: jupyter-notebook

        来调用jupyter-notebook环境,之后会在浏览器中出现


        顺着research\object_detection找到里边的object_detection_tutorial.ipynb,运行。就会出现另外一个界面:


        按【shift】+【enter】一步一步的向下运行,运行到最低端的时候,等待20s,就会出现运行结果,如下所示:


        这就是识别出来的效果图。如果想更换,在object_tetection文件夹中的【test_images】文件夹中可以更改图片,或者在源代码中修改图像存储的路径,一样可以修改图像存储的位置。

        如何使用object_detection API实现物体检测的例程就这些。

        如果想训练属于自己的库,还需要自己做数据集,这些暂时还没弄,慢慢更新吧......










原创粉丝点击