チュートリアル3 :Tensorflowで物体検出① – Tensorflow Object Detection APIの導入

チュートリアル3では独自にアノテーションしたデータをSSD(Single Shot Multibox Detector)で学習し、物体検出モデルを構築します。

このページではTensorflow2とTensorflow Object Detection APIを導入し、物体検出のための開発環境を整えます。

Tensorflow2の導入

まずはTensorflowの公式ページに従ってTensorflow2を導入します。python3.5以上が必要条件となっているので注意してください。

https://www.tensorflow.org/install

pipが使える場合にはpipでインストールするのが最もシンプルです。

pip install tensorflow

正しくインストールされたか確認するためには、pythonでTensorflowがimportしてみてください。

python -c "import tensorflow as tf"

エラーがでなければ正常にインストールされています。以上でTensorflow2の導入が完了しました。

Tensorflow Object Detection APIの導入

次にTensorflow Object Detection APIを導入します。

https://github.com/tensorflow/models/tree/master/research/object_detection

Tensorflow Object Detection APIとは物体検出モデルの構築、学習、活用をサポートするためもライブラリです。CenterNet、EfficientDet、SSD、FasterRCNNなどの著名なモデルの実装も含まれており、自分でモデルを構築することなくすぐに学習、活用することができます。

まずはローカルの適当なフォルダにクローンしましょう。

git clone https://github.com/tensorflow/models.git

次にcloneしたフォルダ内に移動してpip installをします。

#cloneしたフォルダ内に移動してprotoc
cd models/research
protoc object_detection/protos/*.proto --python_out=.

# pipが古いと--use-featureのオプションが使えないので予めupgradeします。
pip install --upgrade pip
cp object_detection/packages/tf2/setup.py .
python -m pip install --use-feature=2020-resolver .

インストールには少し時間がかかります。終わったら以下のコマンドでテストを動かしましょう。

python object_detection/builders/model_builder_tf2_test.py

無事テストが動けば導入は完了です。今後はimport object_detectionで必要なモジュールをインポートすることができるようになります。

次に

今回で必要なライブラリの導入が完了しました。次回は学習済みのモデルを使って画像内に写る物体の検出を行います。

参考資料

本ページの内容はTensorflowとTensorflow Object Detection APIの公式ページに沿った内容となっています。詳細に関しては以下のリンクを確認してください。