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.

HoloLensとさまざまなデバイス連携ドドンドーン

2,040 views

Published on

仙台IT文化祭登壇資料です。 #sendaiitfes #s292035

Published in: Technology
  • Be the first to comment

HoloLensとさまざまなデバイス連携ドドンドーン

  1. 1. HoloLensと さまざまなデバイス連携 ドドンドーン 前本 知志(Microsoft MVP for Windows Development) 株式会社ホロラボ 一般社団法人T.M.C.N 株式会社システムフレンド #sendaiitfes #292035
  2. 2. ・KINECTやHoloLens等のセンサーデバイスを使ったアプリ (イベントコンテンツ、画像処理、画像認識、医療系) ARアプリ、VRアプリ、MixedRealityアプリなどを作っています。 http://www.systemfriend.co.jp/kinect_nui https://youtu.be/ZSXwhj8HqkE ・株式会社ホロラボ Co-founder(共同創設者) http://hololab.co.jp/ ・TMCN (Tokyo MotionControl Network) Co-founder(共同創設者) https://www.facebook.com/TokyoMotioncontrolNetwork ・著書「Intel RealSense SDK センサープログラミング」 https://www.shoeisha.co.jp/book/detail/9784798139630 ・Microsoft MVP for Windows Development https://mvp.microsoft.com/ja-jp/PublicProfile/5002154?fullName=Satoshi%20%20Maemoto 前本 知志 1 http://satoshi-maemoto.hatenablog.com/
  3. 3. 属性関連図 2 株式会社 システムフレンド 取締られ役 取締役 兼任 株式会社ホロラボ Co-fouder (共同創設者) 一般社団法人T.M.C.N Co-fouder (共同創設者) Microsoft MVP Windows Development (Windows Mixed Reality) 前本 知志 US Microsoft Corp. パートナー AR・MR・VR開発 センサー&デバイスコミュニティ HoloLens専門
  4. 4. https://www.facebook.com/TokyoMotioncontrolNetwork
  5. 5. 数年前から KINECT と Unityで いろいろ作ってきました
  6. 6. ダンス系コンテンツ  アキバで学べるパーティAKIPARTY vol.3 ~くりすますだお☆~
  7. 7. オタ芸とめっちゃ合う (横浜 岩崎学園ISCプログラミングコンテスト) https://youtu.be/ivL6ZxukTlo
  8. 8. http://www.systemfriend.co.jp/charamirror
  9. 9. ユニティちゃんと踊れる! 抱っこだってできる!(オクルージョンしてる) 2015/08/28 CEDEC 2015 https://youtu.be/ZSXwhj8HqkE
  10. 10. KINECTを使った MixedReality 実現に必要となった考え方
  11. 11. 現実世界と仮想世界の 座標系を合わせる  KINECTの3D骨格情報を取得(メートル座標系)  Unity座標系と対応させる (1Unity=1メートル設定で考える) X Y Z 1メートル ↓ 1Unity
  12. 12. 現実世界と仮想世界の カメラ位置と方向をシンクロさせる  KINECTのリアル設置位置とUnity内のカメラ位置、角度、視野を 合わせる  KINECTの場合SDKのCoodinateMapperを駆使しリアルカメラ映 像とCGのシンクロを取る <三種の神器> • メジャー • 養生テープ • 三角関数
  13. 13. たのしいことになったw https://youtu.be/M8e9mCI-u80
  14. 14. さらに… リアルとバーチャルの重なりを考慮する KINECTのDepthとCGのZバッファをGPUで高速に 比較し物体の前後関係を判定し表示する
  15. 15. GPUでの処理 – UnityでShaderを書く 基本的にはこんなに簡単 if (KINECTのDepth値<CGのZバッファ値) { return KINECTのColor; } else { return CGのピクセル; }
  16. 16. 現実空間とCGのMix -> MixedReality https://youtu.be/YxCGnmfChKk
  17. 17. 異なる世界をMixするには モノサシと基準を一致させる 超重要!
  18. 18. では世界の覗くカメラが 複数になったら 一体何がおこるんです?
  19. 19. 通常のコンテンツ
  20. 20. O 各デバイスで固有の仮想空間が作られ るデバイスローカルワールド。 各世界同士の関連はない。 O O
  21. 21. 単一の世界をシェアするには
  22. 22. O P1 P2 P3 世界の絶対中心Oを定義し、 そこを中心とした基準座標系を定義する。 各デバイスは自分が世界のどこにいてどこを見つ めているかがわかっている。 めざすもの
  23. 23. O O O 課題 デバイスはそれぞれが原点Oとなってそれぞれの座標 系で世界を見つめてしまう。 →現実空間と位置が合わせられない
  24. 24. まずは 基準座標系を定義する
  25. 25. O 床面に原点Oを定義する。 Oから赤マーク方向のベクトルが 世界の前方と決める。 これで「おれワールド」が定義され た。 青マーク、緑マークは後述するカメラ位置逆計 算のための補助マーカーである。
  26. 26. ところでなぜこれを始めたか  ひとつの対象物を複数のKINECTでスキャンしなければならない 仕事が舞い込んだ  デモの時は会議室に機材を持ち込んで短時間で設営・稼働させる 必要があった  KINECT位置を完全固定できるリグを作る時間もお金もないw  じゃあ、適当にKINECTを配置してもキャリブレーションがとれる仕組みを 勝手に作ろう
  27. 27. ところでなぜこれを始めたか ということで、2016年のGW中にプロトが完成し、以後ブラッシュアップが続いています。 今はオブジェクト同期のためのカスタマイズが容易な通信フレームワークの追加、 KINECTに加えHoloLensやTangoとのシェアリング、Spectator View対応も実施中、 MicrosoftのSharingより現状優れた点が多いということで導入が進んでいます。
  28. 28. Depthセンサーの キャリブレーション
  29. 29. O KINECTのカメラ映像からKINECTが原 点Oに対し3次元的にどの位置に配置 され、どこを注視しているのかを逆 計算する。 ※これはGPSの測位計算と似てる計算方法み たいです。 算出にはカメラから最低3点への距離情報が 必要です。 O http://www.systemfriend.co.jp/node/708 https://youtu.be/WY2PDLq2dzo
  30. 30. X X X カメラと点の距離を半径とした3球の交点を求めるとそれがカメラの位置となる
  31. 31. X X X カメラ回転は3点でできる面の法線ベクトルNをもとに算出する。 つまり、リアル映像から求まる法線Nrと、 Unity内バーチャルカメラから見たVR空間内の法線Nvが一致するような Quaternionを求めればよい(結構大変だったw N
  32. 32. P1 複数のKINECTそれぞれのおれワールド原点Oに対する 相対設置位置、注視方向を計算から求めることができた! O P2 P3
  33. 33. Depthセンサーであれば大丈夫  RealSenseでもうごいています
  34. 34. (demo)
  35. 35. まとめてドドンドーン!
  36. 36. AR・VR・MRデバイスに関わらず、 “マルチデバイス”で 現実世界と重ねあわされた世界 を同時に体験するために必要な考え方
  37. 37. 要はこういうのが作れる https://www.youtube.com/watch?v=fnguCJ1Sago
  38. 38. 他のデバイスを 世界に参加させる
  39. 39. P1 参加デバイスに共通世界の中心と向きのベクトルを教えてあげる。 各デバイスは世界の中心の見え方から自分の位置を逆計算しつつ コンテンツを表示する。 O
  40. 40. HoloLensの場合 世界の中心点と世界の向きを定義するARマーカーを Vuforiaで認識し世界にJoinする。
  41. 41. Google Tangoの場合 世界の中心点と世界の向きを定義するマーカーをタップして世界にJoinする。 (VuforiaとTango Cameraが同時に使えなかったので教えてエロい人!)
  42. 42. その他のデバイス  HTC VIVEやOculusのようなポジショントラックでき るコントローラーがあるデバイスは世界中心にコン トローラーを置いてキャリブレーションできる  スマホはARマーカーを認識してExtended Trackingを 有効にすれば誤差は生じるがキャリブレーション可 能  ARKitはSLAM能力すごいのですんなり入れそう
  43. 43. 自分が中心だったデバイスが、 ひとつの世界を覗く覗き窓に 役割を変えた
  44. 44. (demo)
  45. 45. https://youtu.be/kfslVIxSV-k
  46. 46. https://youtu.be/O9F4Pi1R6xE
  47. 47. https://youtu.be/Fm8khHTCp24
  48. 48. https://youtu.be/U1j-QoSQllM
  49. 49. 10/27-29 デジタルコンテンツEXPO 大日本印刷ブース 「AR/VR/MRを活用した体感型デジタルショールーム」 48 https://www.dcexpo.jp/18218 https://youtu.be/TNi9cK-YfJY
  50. 50.  AR,VR,MRの違いはあれど仮想空間または現実世界 に仮想世界を重ね合わせてみることに違いはない  現実世界はたった一つしかないのだから、そこを基 準に仮想世界を作り重ね、デバイスは世界をのぞく のぞき窓になればよい  基準作りと位置トラック(キャリブレーション)が 大切  各のぞき窓が世界をどのように眺めているかが判断 できれば一つのものを様々なデバイスから同時に見 たり、操作ができる まとめ
  51. 51. 仙台IT文化祭を支えてくださっている スポンサー様/後援コミュニティのご紹介 仙台IT文化祭2017 http://2017.sendaiitfes.org/ #sendaiitfes 50
  52. 52. プラチナスポンサー ゴールドスポンサー 仙台IT文化祭2017 http://2017.sendaiitfes.org/ #sendaiitfes 51
  53. 53. Tシャツスポンサー シルバースポンサー 仙台IT文化祭2017 http://2017.sendaiitfes.org/ #sendaiitfes 52
  54. 54. スタンプラリースポンサー ロゴスポンサー 仙台IT文化祭2017 http://2017.sendaiitfes.org/ #sendaiitfes 53
  55. 55. グッズスポンサー メディアスポンサー 仙台IT文化祭2017 http://2017.sendaiitfes.org/ #sendaiitfes 54
  56. 56. 個人/団体スポンサー オフィシャルコミュニティ 仙台IT文化祭2017 http://2017.sendaiitfes.org/ #sendaiitfes 55

×