ロボット研究者の戯言

Ubuntu に TensorFlow Object Detection API をインストール

      2017/08/23

Tensor Flow Object Detection API とは

2017年6月にTensor Flow Object Detection API が発表されました.

今までSSD(Single Shot Multibox Detector)は,公式ではCaffeベースの実装でしたが,このAPIを用いることでTensor Flowでも簡単に使用することができるようになり,改造されたCaffeのための環境構築・実装が煩わしく感じていた人にとってはとてもうれしいニュースです.
※ちなみに有志がSSDをTensorFlowで実装したものはこれまでも存在していましたが,公式ではありませんでした.

しかも,Mobile Net や Inception など畳み込み層のネットワークが複数から選べ,さらにSSDだけでなくRCNNも同様に実装されているため,様々な手法を簡単に実装し,比較することができるようになりました.

今回はとりあえず手元にあるノートPCにインストールして試してみようと思います.

なお,OSはUbuntu16.04を使用しました.

スポンサーリンク



インストール

インストールは以下の手順で行います.
公式ドキュメントを参考にしました)

  1. TensorFlowの依存パッケージをインストール
  2. TensorFlowをインストール
  3. Object Detection APIのビルド

1. TensorFlowの依存パッケージをインストール

以下のパッケージをpipでインストールします

  • Protobuf 2.6
  • Pillow 1.0
  • lxml
  • Jupyter notebook
  • Matplotlib

コマンドは以下の通り.

2. TensorFlowをインストール

以下のコマンドでTensorFlowをインストールします.

今回はGPUの載っていないノートPCなので,CPUバージョンをインストールします.

GPUマシンにインストールされる方は

です.Caffeに比べてインストールが非常に簡単です.

3. Object Detection APIのビルド

まず,APIのソースファイルを任意の場所にcloneします.

次にクローンしたディレクトリに移動し,protocを用いてコンパイルします.

本当にコンパイルしたの?というぐらいあっけなく終わりますが,気にせず次の工程としてslimディレクトリにパスを通します.

これですべてのインストールが完了です.

何度も言いますが,Caffeよりかなり簡単です.

テスト

以下のコマンドでインストールが正常に完了したか,テストができるそうです.

以下のようにOKと出てきたらちゃんとインストールができているっぽいです.

次回は学習済みモデルを用いて物体検出をしてみようと思います.

<2017.08.23更新>
学習済みモデルによる物体検出テストに関する記事を書きました

↓↓↓↓

TensorFlow Object Detection API で学習済みモデルを使って物体検出

 

 

 - Python, TensorFlow, Ubuntu, 機械学習 , , , ,