moxt

Just another Blog site

GoogleのObject Detection APIのチュートリアルをやってみる

   

チュートリアル動かしただけのクソメモですわ。

GoogleがTersorFlowで物体検出するためのAPI(ってほどキレイに整備されてる感じしないけど)を公開してた。

https://research.googleblog.com/2017/06/supercharge-your-computer-vision-models.html

チュートリアルのjupyterではSSDというアルゴリズムを動かしていた。
既にKerasやCaffeなんかでの実装も公開されてる。

ディープラーニングな物体検出の歴史(ってもここ数年の話だけど)については下記を見るとよさげ。

http://tech-blog.abeja.asia/entry/object-detection-summary

SSDは精度、処理速度ともにイイカンジなアルゴリズムっぽいですね。
スゴい。

基本的には必要なライブラリインストールして、チュートリアルのjupyter notebook立ち上げてrun allしたら終わり。
当方、にわかDockerファンなのでDockerでやった。

まず、ソースコードとってきて…

次のようなDockerfileを用意する。

で、buildしてrunですわ。

これでjupyter notebookが立ち上がるはず。

object_detection_tutorial.ipynbを開いてrun allしてしばらく待つと…

かわいいビーグルちゃん

あら、かわいい。

ちゃんとビーグル氏が検出されてますね。

test_imagesってフォルダがあるので好きな画像入れて物体検出させてみましょう。

こんな画像で試してみると…

image6

物体検出例

ちょいちょい間違いはありますが、なかなかいいかんじですね。

このチュートリアルの内容はTensorFlowで作成済みのモデルを使って物体検出させてるだけです。
画像を配列化したり、検出した物体にラベル名を付与したりするヘルパーコードを定義したり、読み込んだりしているため、パッと見は煩雑な感じですがやってることは超シンプル。

『物体検出してXXXしたい』っていう要求もTensorFlowとモデルを用意すれば即対応可能です。

ただ、作成済みのモデルは検出できる物体の種類が決まってます。
なので、独自の物体検出(例えば…こんにゃくゼリーを検出したい、とか)をしたい場合はデータセット作って学習させる必要があります。
その辺の学習周りをわりとスムーズに実現できるようなAPI(?)もあるっぽいです。

独自データセットの学習やってみたい。

 - ディープラーニング

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

  関連記事

no image
ディープラーニングフレームワークCaffeをGPUなEC2上でサクッと動かせるようにしたい

MacのGPUだとCUDAが動かないらしく、Caffe+GPUが実践できない。 CPUだと学習に時間がかかるためGPUをつんだコンピュータで高速に学習させたい。 …

deepdreamしてみたい

http://amagitakayosi.hatenablog.com/entry/2015/07/03/143913 「だれか試して」と書いてあったので便乗。 …

no image
PythonとOpenCVで線画を抽出してみる

chainerで線画着色をwebサービスにして公開してみた – …

MacでKerasを使えるようにする

KerasはTheanoやTensorFlowを楽に使うためのライブラリ。 1年前くらいはCaffe使ってたけど、やっぱり使いにくい。 …

とりあえずディープラーニングしてみたいならErsatzという選択肢があるよ

Contents1 はじめに2 …

ディープラーニングで本田翼を見分けたい。初歩編

佐村河内守のアレの焼き増し。 ショートボブ4姉妹の画像群を学習させて本田翼を本田翼と正しく分類できたらバンザイですね、ってヤツ。 …

画風を変換するアルゴリズムの別実装neural-styleを動かしてみる

画風を変換するアルゴリズム | …

no image
『Caffeで手軽に画像分類』が手軽にできない。

バズワードと化したディープラーニングをやってみたい。 そんな軽い気持ちでググると下の記事が出てくる。 …