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
Spatial Anchorsを活用した経路探索の検討
Search
shota-yano
April 06, 2020
Technology
1.2k
0
Share
Spatial Anchorsを活用した経路探索の検討
2020/4/6に開催したKumamoto HoloLens ミートアップ vol.6での登壇資料
shota-yano
April 06, 2020
More Decks by shota-yano
See All by shota-yano
M5Stackハンズオン概要
shotayano
0
74
Kumamoto HoloLens ミートアップ v7 / KumamotoHoloLensMeetupv7
shotayano
0
310
PowerAppsハンズオン準備 / 20220527_PowerApps_Preparation
shotayano
0
120
PowerAppsハンズオン / 20220527_PowerApps_Handson
shotayano
1
370
Power Automate Desktop ハンズオン / powerautomatedesktophandson
shotayano
0
190
PowerAutomateDesktopハンズオン準備 / PowerAutomateDesktopSetup
shotayano
0
150
Unityt超入門解説編1 / Unity_introduction_about_getcomponent
shotayano
0
140
HoloLens2ハンズオン(MRTKを触ってみる) / hololens2_and_mrtk_demo_handson
shotayano
1
380
HoloLens2開発環境構築 / dev-env-construction-for-hololens2
shotayano
0
250
Other Decks in Technology
See All in Technology
変化の激しい時代をゴキゲンに生き抜くために 〜ストレスマネジメントのススメ〜
kakehashi
PRO
4
830
20年前の「OSS革命」に学ぶ AI時代の生存戦略
samakada
0
530
GitHub Copilot Dev Days
tomokusaba
0
140
小説執筆のハーネスエンジニアリング
yoshitetsu
0
910
CyberAgent YJC Connect
shimaf4979
1
130
Agents CLI と Gemini Enterprise Agent Platform で マルチエージェント開発が楽しくなる!
kaz1437
0
230
拝啓、あの夏の僕へ〜あなたも知っているApp Runnerの世界〜
news_it_enj
0
210
The 7 pitfalls of AI
ufried
0
180
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
7.9k
FessのAI検索モード:検索システムとLLMへの取り組み
marevol
0
220
Anthropic「Long-running a gents」をGeminiで再現してみた
tkikuchi
0
770
Google Cloud Next '26 の裏でこっそりリリースされたCloud Number Registry & Cloud Hub コスト分析 を試してみた
hikaru1001
0
150
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
200
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
790
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
240
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
780
A Soul's Torment
seathinner
6
2.7k
A better future with KSS
kneath
240
18k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
270
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.4k
How to train your dragon (web standard)
notwaldorf
97
6.6k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
210
Transcript
Spatial Anchorsを活用した 工場内倉庫での経路案内の検討 2020/4/6 KumaMCN 矢野翔大
自己紹介 • 矢野翔大 • KumaMCN • 株式会社KIS • 製造業向けのMESシステム作ってます •
xR全く関係ない仕事です • 最近やったこと: • Dynamics365 Guides + Field Service • StandardShaderを少し StandardShader Dynamics365 Guides @Shota7Y
Spatial Anchorsについて
Spatial Anchorsとは • 現実の空間にデジタル情報を固定する • 空間の特徴点を利用 • ARのマーカーのようなもの • 特徴が一致した場所にデジタル情報を表示
• マルチデバイスでシェアリング可能 • Hololens • Android(ARCore) • iOS(ARKit)
Spatial Anchorsを使ったシナリオ 空間共有 道案内 IoTへの活用
Spatial Anchorsを使ったシナリオ 空間共有 道案内 IoTへの活用 今回はこれに注目
Spatial Anchorsで経路案内にチャレンジ
経路案内をやろうと思ったきっかけ • 仕事で製造業のシステムを開発してる • 製造・流通の現場として工場や物流センターに行くことがある • 工場内は歩ける経路が決まっている • システム保守やピッキング作業で工場や倉庫内を歩き回るのに使えると面白そう ⇒会社で今期の研究開発のネタにしたい
※やりたい人が好きに研究開発していい制度があって丁度良い ※会社がやってない分野でもOK ※実地テストとかは個人より会社としてのほうが都合が良い
事前にやったこと • チュートリアルやる • MRTKのチュートリアルをやる • https://docs.microsoft.com/en-US/windows/mixed-reality/mrlearning-asa-ch1 • 結構きれいにまとまっててめっちゃわかりやすい(個人の意見です) •
基本的なことはこれだけやればだいたい理解できた • 公式ドキュメントとサンプルを見る • https://docs.microsoft.com/ja-jp/azure/spatial-anchors/ • これで近くのアンカーを探すデモが役に立った
今回試したこと • 4つのアンカーを登録 • 2ルート作成 • ルート1:1→2→4 • ルート2:3→2→1 1
2 3 4
ルート1 1 2 3 4 4 2 2 1 ※写真は実際に検索したときのもの
ルート2 1 2 3 4 3 2 2 1 ※写真は実際に検索したときのもの
MRTKのチュートリアルを参考にしました
アンカー登録の仕組み ③登録 ④ID払い出し ②空間特徴点取得 ①アンカー設置 SpatialAnchor
アンカー検索の仕組み ④アンカー設置 ③空間特徴点取得 ①IDで検索 ②データ受信 SpatialAnchor
特定ルートのアンカーを探そうとして躓いた… • NearAnchorCriteriaクラス • ソースアンカー • 距離 • 最大数 ※特定アンカーの近くのアンカーを検索
ルート1のアンカーを取得したい • ソースアンカーはアンカー1 →結果:全アンカー取れた ※アンカー3はいらない…どうすれば? 1 2 3 4
ウェイファインディングについておさらい
ウェイファインディングについておさらい 書いてあることは理解できるけど、 実際どうやるんだろう・・・?
ウェイファインディングについておさらい なるほど!
NearAnchorCriteriaクラスは使えない? • ルート1と2の共通アンカーがある • アンカー1 • アンカー2 1 2 3
4
NearAnchorCriteriaクラスは使えない? • ルート1のアンカーを登録 • アンカー3は登録しない 1 2 3 4
NearAnchorCriteriaクラスは使えない? • アンカー3だけ登録 • この場合他とリンクされない • 経路案内の場合リンクは必須 1 2 3
4
NearAnchorCriteriaクラスは使えない? • アンカー2を取得後3を登録 • アンカー2と3がリンクされる • アンカー2は全部とリンクしてる? • ちゃんと確かめる必要がありそう 1
2 3 4
NearAnchorCriteriaクラスは使えない? • アンカー2を取得後3を登録 • アンカー2と3がリンクされる • アンカー2は全部とリンクしてる? • ちゃんと確かめる必要がありそう 1
2 3 4 後日談というわけではないですが、 ミートアップ後「このリンク」に関する認識は違うことがわかりました。 ※@takabrz1さんに教えていただきました。感謝!
とりあえず今回はIDでアンカーを検索 • アンカーIDをすべて保存 • Table Storageに放り込む • CosmosDB(無料版)でもいい • ルートに必要なIDを配列でもつ
• ルート1:1,2,4のID • ルート2:3,2,1のID ※配列の作り方は次のスライドで • 対象ルートのIDをもとに検索 • 中継点が増えると検索回数も増える 1 2 3 4 ↓Table Storageの中身
マップを作る 1 2 3 4 ID From T0 1 アンカー1
アンカー2 2 アンカー2 アンカー4 3 アンカー3 アンカー2 4 アンカー2 アンカー1 5 アンカー2 アンカー3 ルートに必要なIDの配列を作るために • 繋がってるアンカーをテーブルに入れて整理 • ダイクストラ法で最短の経路を探索 • 出発地点 • 目標地点 • 重みは1 • 検索結果でヒットしたIDを配列に入れる ↓テーブルイメージ
• MRTKのチュートリアルは最初の一歩に最適 • 経路探索には使える • ただし、異なるルートで共通したアンカーをつか場合は注意が必要 • とりあえず経路探索はこの4ステップでやる • 使うアンカーを全部登録する
• アンカーのつながりをFrom/Toで整理する • ダイクストラ法で最短経路を検索し、必要なIDを取得 • 取得したIDをもとにアンカー検索 まとめ
• アンカー増やして複雑な経路にする • QRコード読み取り • 出発地点 • 目標地点 • リストのQRで目的地を検索したい
• 既存運用に載せる場合紙がまだ多い • 多分小さいQRはHololensではまだ読めない? • QRスキャナを別にするか、全部WEBアプリにするか… • 実地テストしてみたい XXX作業リスト 作業番号:abcdef ピッキング品 品目A 数量 ロケーション 10 Location01 品目B 15 Location04 品目C 8 Location07 今後試したい
ありがとうございました (HoloLens2が早く欲しい)