MMDetectionで、インスタンスセグメンテーションをやってみる

1.はじめに

 今回ご紹介するのは、物体検出フレームワーク MMDetectionを使った、インスタンスセグメンテーション(画像から物体を検出し、形を推定するタスク)です。

2.MMDetectionとは?

  MMDetectionは、あらかじめ用意されたモジュールを組み合わせることで様々な物体検出のモデルを設計できるフレームワークです。設計内容はconfigファイルに記述し、今回の設計内容は以下の様です。

 config = ‘configs/mask_rcnn/mask_rcnn_r50_caffe_fpn_mstrain-poly_3x_coco.py'

  • モデルタイプ:mask_rcnn
  • バックボーン:r50_caffe(ResNet-50_caffe)
  • ネックモジュール:fpn(Feature Pyramid Networks)
  • その他の設定:mstrain_poly
  • 学習エポック数:3x(36エポック)
  • データセット名:coco

 早速、コードを動かしてみましょう。

3.コード

 コードはGoogle Colabで動かす形にしてGithubに上げてありますので、それに沿って説明して行きます。自分で動かしてみたい方は、この「リンク」をクリックし表示されたノートブックの先頭にある「Colab on Web」ボタンをクリックすると動かせます。

 まず、セットアップを行います。mmcv-fullのインストールに時間が掛かるため、セットアップ全体では20〜30分位です。

 

 サンプル画像のインスタンスセグメンテーションをやってみましょう。自分の画像でやってみたい場合は、demoフォルダーへその画像をアップロードし、img: でその画像を指定して下さい。

 下記で、検出した画像を表示します。

 

 それでは、サンプル動画でインスタンスセグメンテーションをやってみましょう。自分の動画でやってみたい場合は、demoフォルダーへその動画をアップロードし、! python demo/video_demo.py demo/demo2.mp4 demo2.mp4を自分の動画名に置き換えて下さい。

 動画は result.mp4 に保存されます。こんな感じ。

 ダンスする人々のインスタンスセグメンテーションが的確に行われていますね。

 では、また。

(オリジナルgithub)https://github.com/open-mmlab/mmdetection

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

ABOUTこの記事をかいた人

アバター

ディープラーニング・エンジニアを趣味でやってます。E資格ホルダー。 好きなものは、膨大な凡ショットから生まれる奇跡の1枚、右肩上がりのワクワク感、暑い国の新たな価値観、何もしない南の島、コード通りに動くチップ、完璧なハーモニー、仲間とのバンド演奏、数えきれない流れ星。