Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
WebRTC Meetup #16
RICOH Rで お手軽 物体トラッキング
自己紹介
ばば あつし
仕事
インフォコム西日本
社内でWebRTC配信等 PG作成や調査
プライベート
趣味は旅行・音楽鑑賞・ガジェット等
今治地方観光協会 クリエイティブ・コモンズ・ライセンス(表示4.0 国際)
https://creat...
最近、スマホの電動スタビライザーでよくある
アクティブトラッキングってご存知ですか?
スマホに写った映像から対象を
タッチ操作で追跡するので以外に便利
360度カメラならHW無しで同様にトラッキング
できるんじゃ?
と思い調べてみることに
”物体認識はOpenCVとか機械学習系が主
顔認識とか手認識はよくあるけど、
選択した物体を追跡する方法は?”
★ 機械学習
• Yolo v2
• FAST R-CNN
• SSD
• OpenPose
• 他色々
WebRTCで使うなら、tnohoさんのpyrtcconductorがGood!!
https://www.slideshare.net/...
★ 画像処理ライブラリ
• OpenCV
• Dlib
色相追跡・LBP/HAAR-like/HOG Cascade識別器・フィルターを使う方法等
様々なアルゴリズムを使用出来る。
(Cascade識別器→Face/Hand/Head用などがあ...
★ Javascript
• ccvjs
• clmtrackr
• trackingjs
• headtrackr
• js-objectdetect
JSでも色相追跡・HAAR-like Cascade識別器が使える。
お手軽ということで、...
とあるサンプルを見つける
❖ VOTT(Visual Object Tagging Tool)
❖ 動画から対象物をCam-Shiftで追跡し複数の学習データを作ることができる
。ツールと連携してCNTKやYolo Format Object ...
ソース解析すると内部ではheadtrackrを使ってました!
VOTTを参考に今回は一番 お手軽な
Jsで実装することに
camshift.Trackerの基本的な使い方
トラッキングできたポジションの中心位置と幅・高さが取得できる
※傾きの取得も可能
currentPos.x
currentPos.y
currentPos.width
currentPos.he...
構成
1920x1080
30 fps
RICOH-R
GetUserMedia
<Video>
<Video>
VideoTexture
Canvas(GL)
Canvas(2D)
Camshift.tracker
WebRTC
Equire...
RICOH-Rのスペック
USB映
像出力
UVC H.264 30fps Full HDモード 1920 x 1080
Equirectangular Projection Format
特徴
Equirectangular形式にリアルタイム...
デモ
CamShift
❖ 特定の物体の特徴を検出・認識するものではありませ
ん。
❖ 選択された部分の輝度(色)を元にターゲットの領域
を決定し追跡します。
❖ ターゲットの大きさ/傾きの変化にも対応している。
実際に使ってみた感想
❖ トラッキングのスピードは意外と早い
❖ 対象物が黒いや色が均一ものは苦手(ターゲットとし
て設定不可)
❖ 動きが速すぎる・形の変化が激しい場合はターゲット
が変化してしまって追跡できない。
余談
❖ headtrackr本家のブログにサンプルもありました
❖ https://www.auduno.com/headtrackr/examples/camshift.html
❖ ご参考まで
End
Upcoming SlideShare
Loading in …5
×

RICOH Rでお手軽 物体トラッキング

822 views

Published on

WebRTC Meetup Tokyo/Osaka #16

Published in: Technology
  • Be the first to comment

RICOH Rでお手軽 物体トラッキング

  1. 1. WebRTC Meetup #16 RICOH Rで お手軽 物体トラッキング
  2. 2. 自己紹介 ばば あつし 仕事 インフォコム西日本 社内でWebRTC配信等 PG作成や調査 プライベート 趣味は旅行・音楽鑑賞・ガジェット等 今治地方観光協会 クリエイティブ・コモンズ・ライセンス(表示4.0 国際) https://creativecommons.org/licenses/by/4.0/
  3. 3. 最近、スマホの電動スタビライザーでよくある アクティブトラッキングってご存知ですか? スマホに写った映像から対象を タッチ操作で追跡するので以外に便利
  4. 4. 360度カメラならHW無しで同様にトラッキング できるんじゃ? と思い調べてみることに
  5. 5. ”物体認識はOpenCVとか機械学習系が主 顔認識とか手認識はよくあるけど、 選択した物体を追跡する方法は?”
  6. 6. ★ 機械学習 • Yolo v2 • FAST R-CNN • SSD • OpenPose • 他色々 WebRTCで使うなら、tnohoさんのpyrtcconductorがGood!! https://www.slideshare.net/tnoho/webrtc-76814721 学習済モデルを使うので、トラッキングの対象がデータ にない場合は自分で学習させたモデルが必要
  7. 7. ★ 画像処理ライブラリ • OpenCV • Dlib 色相追跡・LBP/HAAR-like/HOG Cascade識別器・フィルターを使う方法等 様々なアルゴリズムを使用出来る。 (Cascade識別器→Face/Hand/Head用などがある 複数の画像があれば独自で作成も可能)
  8. 8. ★ Javascript • ccvjs • clmtrackr • trackingjs • headtrackr • js-objectdetect JSでも色相追跡・HAAR-like Cascade識別器が使える。 お手軽ということで、今回はこれを採用。 検出の精度は 機械学習 > 画像処理ライブラリ > JS
  9. 9. とあるサンプルを見つける ❖ VOTT(Visual Object Tagging Tool) ❖ 動画から対象物をCam-Shiftで追跡し複数の学習データを作ることができる 。ツールと連携してCNTKやYolo Format Object Detection Modelを作成する Electronアプリ ❖ https://github.com/CatalystCode/VoTT
  10. 10. ソース解析すると内部ではheadtrackrを使ってました! VOTTを参考に今回は一番 お手軽な Jsで実装することに
  11. 11. camshift.Trackerの基本的な使い方 トラッキングできたポジションの中心位置と幅・高さが取得できる ※傾きの取得も可能 currentPos.x currentPos.y currentPos.width currentPos.height var cstracker = new headtrackr.camshift.Tracker( { calcAngles: false } ); cstracker.initTracker(canvasElement, new headtrackr.camshift.Rectangle(x, y, w, h)); cstracker.track(canvasElement); var currentPos = cstracker.getTrackObj();
  12. 12. 構成 1920x1080 30 fps RICOH-R GetUserMedia <Video> <Video> VideoTexture Canvas(GL) Canvas(2D) Camshift.tracker WebRTC Equirectangular形式 Equirectangular形式 球体にテクスチャ貼付け 映像をテクスチャとして取得 2D-Contextのcanvasに貼付け トラッキング&位置補正 映像は未加工のまま送信 視聴側配信側 UVC取得
  13. 13. RICOH-Rのスペック USB映 像出力 UVC H.264 30fps Full HDモード 1920 x 1080 Equirectangular Projection Format 特徴 Equirectangular形式にリアルタイムスティッチング Theta-Sとくらべて低遅延 ヒートシンク付ボディで24時間連続稼動可能に (Theta-Sでは25分)
  14. 14. デモ
  15. 15. CamShift ❖ 特定の物体の特徴を検出・認識するものではありませ ん。 ❖ 選択された部分の輝度(色)を元にターゲットの領域 を決定し追跡します。 ❖ ターゲットの大きさ/傾きの変化にも対応している。
  16. 16. 実際に使ってみた感想 ❖ トラッキングのスピードは意外と早い ❖ 対象物が黒いや色が均一ものは苦手(ターゲットとし て設定不可) ❖ 動きが速すぎる・形の変化が激しい場合はターゲット が変化してしまって追跡できない。
  17. 17. 余談 ❖ headtrackr本家のブログにサンプルもありました ❖ https://www.auduno.com/headtrackr/examples/camshift.html ❖ ご参考まで
  18. 18. End

×