Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Research modeで取得した深度(Depth)データを可視化する / Depth data visualization for Hololens RS4 Research mode

Research modeで取得した深度(Depth)データを可視化する / Depth data visualization for Hololens RS4 Research mode

02c47acb1dcec7e7c7fa1e9f94c14abb?s=128

sotanmochi

April 17, 2018
Tweet

Transcript

  1. Research modeで取得した 深度(Depth)データを可視化する 2018/04/17 Soichiro Sugimoto sotan(@sotanmochi)

  2. 自己紹介 氏名:杉本 宗一郎 所属:TIS株式会社・戦略技術センター 最近作っているもの(個人): ユニティちゃんと鬼ごっこするアプリ (コンテスト応募に向けて最終調整中) 2018/04/17 2

  3. C++のサンプル(HoloLensForCV/Streamer)を動かしてみた 2018/04/17 3 深度(Depth)センサーで取得したデータを可視化してみたが,ほとんど見えない. なぜか全体的に暗い. ※ スライド用に画像の明るさを+40%にしている 近距離深度 (ShortThrowToFDepth) 遠距離深度

    (LongThrowToFDepth) https://github.com/Microsoft/HoloLensForCV/tree/feature/api_updates
  4. C++のサンプル(HoloLensForCV/Streamer)を動かしてみた 2018/04/17 4 テクスチャのフォーマットを変えてみたら,全体的に明るくなった. 深度に差分はあるはずだが,違いが分からない. 近距離深度 (ShortThrowToFDepth) 遠距離深度 (LongThrowToFDepth) https://github.com/Microsoft/HoloLensForCV/tree/feature/api_updates

  5. C#のサンプル(Windows-universal-sample/CameraFrames)を動かしてみた 2018/04/17 5 深度の差が見えない.全然分からない. ※ スライド用に画像の明るさを+40%にしている 近距離深度 (ShortThrowToFDepth) https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/CameraFrames

  6. 深度(Depth)データを分かりやすく可視化してみた 2018/04/17 6 近距離深度 (ShortThrowToFDepth) 遠距離深度 (LongThrowToFDepth)

  7. 深度(Depth)データを分かりやすく可視化してみた 2018/04/17 7 デモ動画 https://www.youtube.com/watch?v=Yl_hut20K5A

  8. 深度(Depth)をHSV形式で色に変換して可視化する 2018/04/17 8 画像出典・参考: Wikipedia「色相」 https://ja.wikipedia.org/wiki/%E8%89%B2%E7%9B%B8 Wikipedia「HSV色空間」 https://ja.wikipedia.org/wiki/HSV%E8%89%B2%E7%A9%BA%E9%96%93 1. 深度値を色相(Hue)に変換する.(SとVの値は基本的に1.0に固定)

    深度(Depth): 0m 0.84m 1.68m 3.36m 4.2m 色相(Hue) : 0° 60° 120° 240° 300°
  9. 深度(Depth)をHSV形式で色に変換して可視化する 2018/04/17 9 2. HSV(0.0~1.0)をRGB(0.0~1.0)に変換する. Alpha(8bit) R(8bit) G(8bit) B(8bit) 3.

    RGB(0.0~1.0)の値をピクセルデータに変換して配列に書き込む. 0 ~ 255 0 ~ 255 0 ~ 255 0 ~ 255 参考: t-pot『HSV変換』 http://t-pot.com/program/112_HSV/index.html Wikipedia「HSV色空間」 https://ja.wikipedia.org/wiki/HSV%E8%89%B2%E7%A9%BA%E9%96%93 変換の計算式は省略.
  10. 可視化するために試行錯誤して分かったこと 2018/04/17 10 下記の値から計算した深度値の有効範囲は 0.001 ~ 65.535mだが, 実際の有効範囲より大きすぎるため,可視化にはあまり使えない. DepthMediaFrame.DepthFormat.DepthScaleInMeters: 0.001

    DepthMediaFrame.MinReliableDepth: 1 DepthMediaFrame.MaxReliableDepth: 65535 MinReliableDepthとMaxReliableDepthは固定値であり,実行時の 変化は特にない.
  11. 可視化するために試行錯誤して分かったこと 2018/04/17 11 深度情報のフォーマット: - 16bit 符号なし整数 (0 ~ 65535)

    - 単位: ミリメートル (mm) 深度値の有効範囲(検証結果から推定): - 近距離(ShortThrowToFDepth):0.156 ~ 0.95 m - 遠距離(LongThrowToFDepth) : 0.95 ~ 3.52 m 有効範囲外の深度値を持つピクセルには最大深度値(?)として 4.091~4.095 m が設定される.
  12. 有効範囲外に入った時の変化(近距離深度) 2018/04/17 12 Before

  13. 有効範囲外に入った時の変化(近距離深度) 2018/04/17 13 After

  14. 有効範囲外に入った時の変化(遠距離深度) 2018/04/17 14 Before

  15. 有効範囲外に入った時の変化(遠距離深度) 2018/04/17 15 After

  16. まとめ • Research modeで取得した深度情報を分かりやすく可視化できた • 明暗の違いよりも色の違いの方が識別しやすい • 深度情報の形式と値の有効範囲が分かった • 深度値の有効範囲については追加検証した方が良いかもしれない

    (or 公式情報を待つ) 2018/04/17 16
  17. ありがとうございました