Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
VPS入門
Search
Satoshi Gachi Fujimoto
November 30, 2022
Technology
0
110
VPS入門
XR Kaigi 2022 HoloLens Meetup の登壇資料です
Satoshi Gachi Fujimoto
November 30, 2022
Tweet
Share
More Decks by Satoshi Gachi Fujimoto
See All by Satoshi Gachi Fujimoto
バスあと何分ミニサイネージ
satoshirobatofujimoto
0
50
高専で制御を、大学でセンシングを学び、次は脳みそ
satoshirobatofujimoto
0
210
画像生成AIを使って勝負しよう
satoshirobatofujimoto
1
77
ガチマナ会 vol.1
satoshirobatofujimoto
0
160
画像生成AIを使って勝負しよう
satoshirobatofujimoto
0
150
画像からプロンプトを考えて最も似ている画像を生成した人が勝ちのゲーム@AIミーティング
satoshirobatofujimoto
0
110
VPS研究者が語る”VPS概論”
satoshirobatofujimoto
0
350
画像からプロンプトを考えて最も似ている画像を生成した人が勝ちのゲーム
satoshirobatofujimoto
0
150
OpenAI 新機能まとめ(Function callingとAdd your data編)
satoshirobatofujimoto
0
200
Other Decks in Technology
See All in Technology
新卒1年目が挑む!生成AI × マルチエージェントで実現する次世代オンボーディング / operation-ai-onboarding
cyberagentdevelopers
PRO
0
100
Kubernetes Summit 2024 Keynote:104 在 GitOps 大規模實踐中的甜蜜與苦澀
yaosiang
0
270
LeSSをはじめよう〜LeSSをはじめるとき、LeSSをはじめてから、知りたかったこと詰め合わせ〜
lycorptech_jp
PRO
2
210
Databricksで構築する初めての複合AIシステム - ML15min
taka_aki
2
1.3k
内製化によるシステムモダナイゼーションの実践
kazokmr
3
530
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
5
49k
Figma Dev Modeで進化するデザインとエンジニアリングの協働 / figma-with-engineering
cyberagentdevelopers
PRO
1
340
Aurora_BlueGreenDeploymentsやってみた
tsukasa_ishimaru
1
120
入門『状態』#kaigionrails / "state" for beginners with Rails
shinkufencer
2
810
omakaseしないための.rubocop.yml のつくりかた / How to Build Your .rubocop.yml to Avoid Omakase #kaigionrails
linkers_tech
3
210
Why and Why not of enabling swap in Kubernetes
hwchiu
0
470
【LT】ソフトウェア産業は進化しているのか? -Javaの想い出とともに- #jjug_ccc
takabow
0
150
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
37
1.8k
A Philosophy of Restraint
colly
203
16k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
22k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2k
For a Future-Friendly Web
brad_frost
174
9.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
9
670
Why You Should Never Use an ORM
jnunemaker
PRO
53
9k
Docker and Python
trallard
40
3k
KATA
mclloyd
29
13k
Side Projects
sachag
452
42k
Fontdeck: Realign not Redesign
paulrobertlloyd
81
5.2k
Writing Fast Ruby
sferik
626
60k
Transcript
株式会社ナレッジコミュニケーション 藤本賢志(がちもとさん) XR Kaigi 2022 VPS入門
自己紹介 藤本賢志(ふじもとさとし) ニックネーム:がちもとさん 株式会社ナレッジコミュニケーション R&D戦略チーム Co-founder KumaMCN 高専で制御を、大学でセンシングを学び、次は脳みそ ARナビや電動車いすの自動運転に関する研究開発 専門は、コンピュータビジョン、画像処理、制御工学
Twitterフォローお願いします! @sotongshi
Society5.0 サイバー空間(仮想世界)とフィジカル空間(現実世界)を高度に融合させたシステムにより、 経済発展と社会的課題の解決を両立する、人間中心の社会を目指す https://www8.cao.go.jp/cstp/society5_0/
Society5.0におけるXRの位置づけ 可視化(AR) 自動化(ロボット) シミュレーション(VR) デジタルツイン センシング フィードバック ・位置情報 ・カメラ映像 ・視線
・環境マップ など ・環境情報 ・予測情報 ・認識結果 など サイバー空間 フィジカル空間
VPS(Visual Positioning System)とは? • 画像から位置を特定するシステムのこと • ARやVRで現実世界に合わせて仮想コンテンツを表示させるために重要な技術 https://learn.microsoft.com/ja-jp/azure/spatial-anchors/overview
AR/VRの主要機能 1. SLAM(カメラの位置推定&トラッキングとマップ作成) 2. 現実世界と仮想世界の位置合わせ 3. 仮想コンテンツの配置と表示
SLAM(カメラの位置推定&トラッキングとマップ作成) • 事前マップなしで自己位置推定とマップ作成を同時に行うこと(ARKitやARCore) ※フォトグラメトリ(SfM/Reconstruction)は、リアルタイムである必要がなく、異なるカメラや時間に撮影した画像群 からでも内部パラメータの推定~カメラ位置とマップを最適化 • ロストした場合、作成したマップから復帰(Relocalization、VPSと同じ原理) SLAM System 1.特徴抽出
2.特徴対応付け 短期間:特徴追跡 長期間:ループクロージャ フロントエンド マップ作成 バックエンド フレーム R,t
現実世界と仮想世界の位置合わせ • VPSなし • アプリ開始位置またはARマーカーが基準座標 • アプリ開始位置から計測して、現実世界に合わ せて表示するのは困難 • 物理的なマーカーが必要、それに合わせて表示
• VPSあり • 事前にSLAMなどでマップ作成が必要 • 事前マップが基準座標 • 事前マップ上にコンテンツを配置 https://youtu.be/pFn11hYZM2E https://youtu.be/udoSz_UBUdc 2007, http://kougaku-navi.net/ARToolKit/
• iPhone 12 Proで簡単にスキャン • All Dataでエクスポートすることで画像群とカメラの位置や内部パラメータを取得 現実空間のスキャン(3D Scanner App)
事前マップから自己位置推定 • 先ほどエクスポートした画像群から特徴を抽出し、画像特徴データベースを構築 • 現在のフレームから特徴を抽出 • 画像特徴データベースに照合し、最も似ている画像を検索します • 2D-3Dの対応付けを行い位置推定(PnP: Perspective
n point) データ ベース フレーム R,t
VPS比較表(2022年8月20日 更新) Spatial Anchors Immersal Pretia Geospatial API マップ作成 セッション内でスキャン
画像アップロード 専用スキャンアプリ Googleがスキャン 座標系 アンカーID マップID マップID グローバルマップ(経度緯度高度) iOS/Android 〇 〇 〇 〇 HoloLens2 〇 〇 × × Reloc API (画像をPOST、自己位置返す) × 〇 × × 屋内 〇 〇 〇 × 屋外 × 〇 〇 ◎(地球規模対応) コンテンツ配置 × × 〇 × Playback API × 〇 〇 〇 備考 ・アンカーを基準にオブジェク トを配置するためマップとの位 置合わせが面倒 ・マップがエクスポートできな いためどの領域を認識できるの か不明 ・アンカー位置の編集が不可能 (削除して再度配置) ・マップを基準にオブジェクトを配 置できる ・マップ作成には画像アップロード するだけ、カメラはなんでもOK、専 用スキャンアプリもある ・Reloc APIがあるためデバイスに依 存しない ・マップを基準にオブジェクト を配置できる ・マップ作成には専用のスキャ ンアプリが必要 ・専用のコンテンツオーサリン グツールやAR Playbackが用意 されている ・Googleがスキャンするため、スキャン する必要がない ・Googleがスキャンできないところでは 使用できない ・Googleがマップを更新するまで認識で きない場所が出てくるかも ・Reloc APIが出たら最強
Spatial Anchorsを用いたナビ作成アプリ「ナレコムVR」 • セッション内でアンカーを配置し、周辺をスキャン • アンカーに対してコンテンツを配置 • アンカーの周辺のみ認識していて、どの領域で位置推定できるのか不明 • アンカーの位置を修正するためには、削除して再度配置する必要がある
https://youtu.be/1R-VGfkI4vA
Immersal x 3D Scanner App • 専用アプリで撮影(3D Scanner Appを使えばスキャンを確認しながら画像取得) •
画像とカメラ情報をImmersalにアップロードし、マップ作成 • ダウンロードしたマップ上にコンテンツを配置 • APIで画像をPOSTすると自己位置推定できる https://twitter.com/sotongshi/status/1431203787796926467
Pretia x ARサイネージ • 専用アプリで3Dスキャン • マップをダウンロードし、コンテンツを配置 • 専用アプリでコンテンツを配置する機能もある (3)
(1)スキャン (2)VRでシミュレーション (3)AR表示 https://twitter.com/sotongshi/status/1492760083503398915
Geospatial API x PLATEAU • Googleが事前にスキャンしている(地球規模対応w つよ • 経度緯度高度の指定だけでコンテンツが置ける •
精度はあまり良くない印象 https://twitter.com/sotongshi/status/1557003609019400194
Gachispatial API • 3D Scanner Appでスキャンし、画像特徴データベースを構築 • 特徴点の抽出と対応付けにはDeep Learningベースの手法(SuperPoint)を利用 •
画像とLiDARの点群の両方を利用したRGB-D SLAM • 画像をサーバーに送信し、自己位置を返すAPIを作成
Gachispatial API x 電動車いすの自動運転 • 事前マップを作成 • 事前マップ上に経路計画 • VPSにより初期位置推定し、自動運転
https://twitter.com/sotongshi/status/1168740395125075968
まとめ • VPSは事前マップから自己位置推定 • VPSのライブラリを表にまとめた • VPS活用して、現実と仮想を融合しよう
告知 https://qiita.com/advent-calendar/2022/hololens 7年目です!
ノーコードでXR体験を作れる「ナレコムVR」 • 横河レンタリース様のHoloLens2レンタル事業にバンドル • 大学生協で販売
ご清聴ありがとうございました