LoginSignup
2
3

More than 5 years have passed since last update.

FCNというSemanticSegmentationで遊んでみた

Posted at

やりたいこと

最近、FCNというSemantic Segmentationを手軽に試せたので、遊んでみました。
そして、速度評価も行おうと思って、ちょっとしたラッパー(?)を作ってみた。

環境

  1. Ubuntu 16.04.4 LTS
  2. python 3(.7.0)
  3. GPU : GeForce GTX 1070(メモリ: 8G)
  4. カメラ付き PC(外付けでも大丈夫なはず)

FCNの実行

まずは下記のページを見て、インストールおよび実行

実行するとモデルもダウンロードしてくれた上で、結果を出力してくれる
簡単、簡単!

FCNラッパーの作成

githubのページ見ると、精度についてはまとめられているが、速度についてはなんも書いてない
(論文には書いているかもしれないが...)
あと、カメラからダイレクトに結果出力できたほうが楽しいし、速度も測れるのでやってみよう!

というので作ってみたのが以下

  1. pipで必要モジュールをインストール
  2. configファイルにて、正しいモデルファイルのパスを設定
  3. 01run_fcn_wrapper.sh を実行

で、カメラがついていれば、動作するはず.

上記の環境では約3FPSでした。
また、GPUのメモリは2Gを少し超えるくらい(2061MiB)でした。
画像の出力結果は、イスとか人をちゃんと認識してくれていたので、githubに書いてあるように精度はけっこうよさげ。

FCNの実装の流れとラッパーでの変更点

fcn_infer.pyの流れとどこを変えたのかを少しだけ

fcn_iner.pyの大まかな流れ
1. モデルをロード
2. skimageでファイル読み込み
3. inference
4. 画像保存

変更点は2と4で、2はcv2の機能でキャプチャした画像を3のインプットに変更
4は保存ではなくこれまたcv2の機能で、画面出力というように変更しました。

所感

darknet YOLOとかだと10FPS超えするので、ちょっと速度的には物足りない気をしてしまったが、
こんだけの精度で3FPSなら、けっこうすごいよなあ
中身をもう少し詳しく見てチューニングしたら早くなるかもなんで、時間があって興味が出たらやってみよう

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3