TensorFlow Object Detection API
这个API的目的是创建一个能够在单个图像中定位和识别多个对象的精确机器学习模型。该API是在tensorflow上构造的开源框架,易于构建、训练和部署目标检测模型。
条件
Window7
Anaconda3 安装
这里Anaconda下载安装就好。
安装完以后,打开Anaconda Prompt,输入清华的仓库镜像,更新包更快:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
推荐第一行命令输入两次,以便把这个镜像地址放在首位。
- 安装TensorFlow
继续打开Anaconda Prompt,输入:
conda create -n tensorflow python=3.6
来创建python的环境。
继续在Anaconda Prompt输入:
activate tensorflow
激活环境,然后输入命令
pip install tensorflow
- PyCharm配置
要在pycharm下使用tensorflow,要设置好pycharm下解释器interpreter的路径,这里也就是tensorflow的路径。
如果是虚拟的env,或anaconda的env,那就在interpreter路径里添加对应Python。
如果当前路径里没有解释器没有这个,就点击右侧add local在电脑里找。
anaconda3—>envs—>tensorflow—->python2.7(或者Python3.6,用哪个选哪个)
安装Object Detection API
- 打开Anaconda Prompt
activate tensorflow
- 安装pillow, jupyter, matplotlib, lxml,通过conda install XXX 完成安装
- 下载tensorflow/models: https://github.com/tensorflow/models.git
- 下载Protobuf,在链接https://github.com/google/protobuf/releases 中找到合适的版本下载,解压后将bin文件夹中的“protoc.exe”放到C:\Windows,或者添加环境变量。调用cmd,输入protoc发现提示missing input file,证明已经可以使用了。
- 编译Protobuf文件:路径转到-> \models\research\object_detection, 输入:protoc *.proto –python_out=.
不报错即可。
可以看到object_detection/protos/目录下的所有*.proto都生成了对应的py文件。
- 添加环境变量PYTHONPATH
两个:
-> \models\research
-> \models\research\slim
测试Object Detection API
用PyCharm直接运行
在->models\research\object_detection文件夹下新建 ‘object_detection_tutorial.py’,内容如下,直接运行即可。
import numpy as np
import os
import six.moves.urllib as