一、安裝 Tensorflow Object Detection API
1、新建Tensorflow文件夾,在 https://github.com/tensorflow/models 下載models,放在Tensorflow目錄下。
附:從 https://github.com/tensorflow/models 進 object_detection 有Tensorflow Object Detection API 的詳細介紹。
2、安裝Tensorflow
# For CPU
pip install tensorflow
# For GPU
pip install tensorflow-gpu
3、安裝各種依賴包(Ubuntu 14.04)
sudo pip install pillow
sudo pip install lxml
sudo pip install jupyter
sudo pip install matplotlib
4、編譯 Protobuf 依賴包
Tensorflow Object Detection API使用Protobufs來配置模型和訓練參數。在使用框架之前,必須編譯 Protobuf 依賴包。在 tensorflow/model目錄運行命令:
# From tensorflow/models/
protoc object_detection/protos/*.proto --python_out=.
附:報錯:
object_detection/protos/anchor_generator.proto:11:3: Expected "required", "optio nal", or "repeated".
object_detection/protos/anchor_generator.proto:11:32: Missing field number.
解決方法:升級 protoc 的版本
新建 protoc_3.3 文件夾,放在 tensorflow 目錄下,下載 protoc-3.3.0 並解壓。
tensorflow/protoc_3.3$ wget wget https://github.com/google/protobuf/releases/download/v3.3.0/protoc-3.3.0-linux-x86_64.zip
tensorflow/protoc_3.3$ chmod 775 protoc-3.3.0-linux-x86_64.zip
tensorflow/protoc_3.3$ unzip protoc-3.3.0-linux-x86_64.zip
tensorflow/protoc_3.3$ cd ../models/
tensorflow/models$ /home/anngic/tensorflow/protoc_3.3/bin/protoc object_detection/protos/*.proto --python_out=.
5、爲依賴包添加環境變量
需要把 tensorflow/models/ 和 slim 文件夾加入到 PYTHONPATH 。
# From tensorflow/models/
export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim
注:這行命令需要打開新的終端運行,或者直接手動添加到 ~/.bashrc 文件。
6.檢測
用以下命令檢測Tensorflow Object Detection API 是否正確安裝。
# From tensorflow/models/
python object_detection/builders/model_builder_test.py
二、運行 Jupyter notebook demo
# From tensorflow/models/
$ Jupyter notebook
運行後瀏覽器自動啓動,顯示 Jupyter 界面,進入object_detection文件夾中的object_detection_tutorial.ipynb
點擊 Cell 的Run All ,顯示檢測結果。
TensorFlow Object Detection API中提供了五種可直接調用的模型。
可修改文件路徑以及模型,檢測自己的圖片:
顯示檢測結果: