tensorflow/model
github地址:https://github.com/tensorflow/models/tree/master/
tensorflow/model是tensorflow相关的一个库,其中包括一些tensorflow官方教程包含的一些demo和官方博客的一些代码片段,但更重要的有许多各个方向训练过的模型,可以通过下载这些模型,然后利用这个库用自己的数据集来快速的微调(finetune)这些模型。
object detection 环境搭建(翻译)
github地址:https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/installation.md
windows下的环境搭建
在官方安装教程中,只提供了linux和MACOS的安装教程,如果想在windows上跑,一是参考教程,寻找windows上类似的命令,二是在youtube上有在window10上从搭建环境到训练一个扑克牌检测的全过程的视频
视频地址:[https://www.youtube.com/watch?v=Rgpfk6eYxJA]
(https://www.youtube.com/watch?v=Rgpfk6eYxJA)
gitbub上的对应文本教程地址:
https://github.com/EdjeElectronics/TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windows-10
git克隆tensorflow/models库
git clone https://github.com/tensorflow/models.git
tensorflow目标检测api的依赖库:
- Protobuf 3.0.0
- Python-tk
- Pillow 1.0
- lxml
- tf Slim (which is included in the “tensorflow/models/research/” checkout)
- Jupyter notebook
- Matplotlib
- Tensorflow (>=1.12.0)
- Cython
- contextlib2
- cocoapi
安装tensorflow
pip install tensorflow #没有gpu
pip install tensorflow-gpu #有gpu
安装别的依赖库
在unbuntu 16.04上可以用apt-get安装:
sudo apt-get install protobuf-compiler python-pil python-lxml python-tk
pip install --user Cython
pip install --user contextlib2
pip install --user jupyter
pip install --user matplotlib
当然,也可以用pip安装:
pip install --user Cython
pip install --user contextlib2
pip install --user pillow
pip install --user lxml
pip install --user jupyter
pip install --user matplotlib
注意:有的时候"sudo apt-get install protobuf-compiler"会安装Protobuf 3.几的版本,而有的用户在使用3.5时会遇到问题。如果你就是这样的,你可以试试下面的手动安装。
coco api安装
如果你想用COCO的检测评估指标,下载cocoapi,并将其拷贝到 tensorflow/models/research directory目录下,
git clone https://github.com/cocodataset/cocoapi.git
cd cocoapi/PythonAPI
make
cp -r pycocotools <你放tensorflow/model的路径>/models/research/
默认的参数基于那些在Pascal VOC评估中使用的那些参数
如果你想要使用COCO目标检测参数,在config文件中的"eval_config"中增加metrics_set: "coco_detection_metrics"
,如果想要使用COCO的实例分割参数,在配置文件中的"eval_config"中增加metrics_set: "coco_mask_metrics"
Protobufs编译
Tensorflow 目标检测API用Protobufs来配置模型和训练参数。在框架可以用之前,Protobufs库必须被编译。下面的操作必须在tensorflow/models/research目录下做。
# From tensorflow/models/research/
protoc object_detection/protos/*.proto --python_out=.
如果编译时报错,可能你用了一个不匹配的Protobufs编译器,如果是这样的话,用用下面的手动安装方法吧
手动安装Protobufs编译器
如果你是linux用户:
下载protoc的3.0release版本,然后解压这个文件。
# From tensorflow/models/research/
wget -O protobuf.zip https://github.com/google/protobuf/releases/download/v3.0.0/protoc-3.0.0-linux-x86_64.zip
unzip protobuf.zip
重新编译一次,但是用下载的这个版本
如果你是MacOS用户:
如果你有homebrew,你可以用
brew install protobuf
来安装protobuf或者用
curl -OL https://github.com/google/protobuf/releases/download/v3.3.0/$PROTOC_ZIP
sudo unzip -o $PROTOC_ZIP -d /usr/local bin/protoc
rm -f $PROTOC_ZIP
来安装。
然后再跑一次编译过程:
# From tensorflow/models/research/
protoc object_detection/protos/*.proto --python_out=.
设置 PYTHONPATH环境变量
# From tensorflow/models/research/
export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim
测试有没有安装好
python object_detection/builders/model_builder_test.py
打印ok则说明安装好了