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

今なら、継続入会で月額会員費が1ヶ月分無料!

【超高速】Single Shot Multi-box DetectionをMacで試す【物体検出】
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

【超高速】Single Shot Multi-box DetectionをMacで試す【物体検出】

2016-10-14 09:36

     FasterRNNは遅すぎることが問題だった。darknetによるYOLOはなかなか良かった。
     しかし最近はもっと高速かつ高精度な物体位置検出手法があるらしい。それがSSDこと、Single Shot Multi-box Detectionだ!!

    586171fcbe14811027834f37f24c9574351d1a3e
    https://github.com/weiliu89/caffe/tree/ssd

     まあ細かいことはどうでもいいが、重要なのは精度がそこそこ高くてかつ高速な位置検出ができるということだ。それ以外のことは基本的にどうでもいいのだ。詳しいことが知りたい人は論文を参照のこと


     さて、このSSDですが、ウェイ・リューさんという人が作った実装は相変わらずCaffe魔改造実装なので基本的にはすぐには動かない。面倒くさい。どうしてこんなことになっているのか。

     とはいえ、まあ愚痴っても仕方がないので動かす方法を探す。できればCaffeのインストールは避けたい。Macで上手く言ったためしがない。いや、正確に言うと上手く行ったことがあるんだけど再現性が低い。魔改造されたCaffeならなおさらである。


     すると、魔改造したmxnetなら動かした人がいるらしい。
     しかも、インファレンス用の独立したCPPコードもある。
     まさにいたれりつくせり!


     よっしゃ行くぜ
     ひとまずmxnetをMacBookAirにインストールする。

     しかししみじみ、すごい時代になったものだ。
     なんとなく持ち歩けるサイズかつ薄さのノートマシンにいきなり深層学習フレームワークをインストールできるんだもんな。


     手順としてはhttps://github.com/zhreshold/mxnet-ssdに書いてある通りなんだけど、少し躓いたところがあったのでメモ。
    git clone --recursive https://github.com/zhreshold/mxnet-ssd.git
    cd mxnet-ssd/mxnet
    cp make/config.mk ./config.mk

     で、このままmakeするとしくじった。
     OpenCVがないからだ。

     そこでconfig.mkをいじる。

    6433b100bb7489008e1e287d0efb55364bba59b8

     USE_OPENCVを0に。簡単ですね。

     さあさあお待ちかね、実行しますよ!
     実行がまた泣けるほど簡単。
    $ cd ..$ python demo.py  

     とやると、CUDAがないといって怒られて凹む。
     どうもオプションが必要らしい。

    $ cd ..$ python demo.py  --cpu
     
     で、無事動作した!やったぜ!ヽ(^o^)丿

     しかも、複数の画像を同時に指定できる。


    $ cd ..$ python demo.py  --cpu --images 1.jpg,2.png,3.png
     
     こんな感じ

    270358ed8ea2c8244c24a9b81390302bd81a8403

     やったねー
     ちなみに魚眼イメージでもなんとなく認識して驚いた。

    c1882fdaf1b2a882b3e055dff6060b70c026fdfa

    ほいじゃーねー
    チャンネル会員ならもっと楽しめる!
    • 会員限定の新着記事が読み放題!※1
    • 動画や生放送などの追加コンテンツが見放題!※2
      • ※1、入会月以降の記事が対象になります。
      • ※2、チャンネルによって、見放題になるコンテンツは異なります。
    ブログイメージ
    電脳ヒッチハイクガイド
    更新頻度: 毎週月曜日
    最終更新日:
    チャンネル月額: ¥1,080 (税込)

    チャンネルに入会して購読

    コメントを書く
    コメントをするには、
    ログインして下さい。