一、安装TensorFlow Object Detection API
# For CPU
pip3 install tensorflow
# For GPU
pip3 install tensorflow-gpu
3、安装依赖包
pip3 install pillow
pip3 install lxml
pip3 install jupyter
pip3 install matplotlib
4、编译 Protobuf 依赖包
Tensorflow Object Detection API使用Protobufs来配置模型和训练参数。在使用框架之前,必须编译 Protobuf 依赖包。
使用方法:在Google的git仓库下载需要的版本:依赖需要Protobuf 2.6,我们只需要它的编解码功能,所以只需要下载win32版本即可。(建议下载protoc3.4,楼主经验,版本低了和高了都会报错)解压后将bin文件夹里面的protoc.exe文件复制到C:\Windows\System32(也可以自己添加环境变量)。打开终端运行到 tensorflow/model/reserch目录,运行命令:
protoc object_detection/protos/*.proto --python_out=.
若运行成功则可以看到object_detection/protos/目录下的所有*.proto都生成了对应的py文件。
5、为依赖包添加环境变量
PYTHONPATH C:\tensorflow\models\research;C:\tensorflow\models\research\slim
测试是否安装成功:输入
python object_detection/builders/model_builder_test.py
按照以上输入会报错找不到object_detection,将model_builder_test.py文件复制到research目录下再运行即可。
如果报错:ImportError: No module named nets
将reserch/slim目录下的BUILD删除,然后运行该文件夹里面的setup.py
python setup.py install
可以参见:
此处
二、运行官方的检测demo
运行 jupyter notebook
运行后浏览器自动启动,显示 Jupyter 界面,进入object_detection文件夹中的object_detection_tutorial.ipynb
点击 Cell 的Run All ,显示检测结果。
可以修改路径检测自己的图像:
同样的可以修改模型:
可直接将MODEL_NAME修改为如下值调用其他模型:
MODEL_NAME = 'ssd_inception_v2_coco_11_06_2017'
MODEL_NAME = 'rfcn_resnet101_coco_11_06_2017'
MODEL_NAME = 'faster_rcnn_resnet101_coco_11_06_2017'
MODEL_NAME = 'faster_rcnn_inception_resnet_v2_atrous_coco_11_06_2017'