>100 Views
February 18, 26
スライド概要
【大阪-オンライン開催】XRミーティング 2026/02/18(https://osaka-driven-dev.connpass.com/event/382176/)
Galaxy XRでGemini API使ってオブジェクト検出やってみる話。Gemini APIを使い画像をリアルタイムで分析させ物体検知を試してみた話。現実空間に合わせる処理が不十分でプロットは変だったが、かなり柔軟な物体検知システムが作れることが分かった。
ICT業界でソフトウェアエンジニア/アプリケーションアーキテクトを担当。 社内ではXR関連技術に関する啓もう活動や技術支援に従事。 業務の傍ら、XR(特にMixed Reality領域)についての開発技術の調査、開発などを行っています。 また、「大阪駆動開発」コミュニティ所属しており、日々の調査で得た知見はコミュニティを通して情報発信を行っています。
Gemini で物体検知 2026/02 XR ミーティング @takabrz1 Takahiro Miyaura
宮浦 恭弘 (Miyaura Takahiro) Microsoft MVP for Mixed Reality 2018 - 202 5 Microsoft MVP for M365 2025 - 2026 XR は趣味です.AI 系も最近始めました。 大阪駆動開発コミュニティに生息 HoloLens 日本販売してからxR 系技術に取組む 新しい技術や、MRに使えそうな技術を調べる 技術Tips : https://qiita.com/miyaura https://zenn.dev/miyaura 最近興味があって取り組んでいるもの ○ AndroidXR ○ 新しいガジェット( MiRZA,Galaxy XR,etc …) ○ Microsoft Foundry, 生成AI @takabrz1 ※よかったらこれを機にお知り合いになってください
今日はGemini APIで物体検知やってみる 2026/02/18 © 2026 Takahiro Miyaura 3
経緯 先週末に福岡XR ミーティングの一幕 Android XR ってGemini 使っ て簡単に開発できるんですか? やってみよう! ついでだから物体検知ひさしぶりに ・・・ 実際のところ・・・ OSレベルはGemini を柔軟に使える ○ 自作アプリ関係なくオーバーレイでGemini 使える ○ 実装はAPI をゴリゴリ実装 (今のところ。SDK でやってほしい) 2026/02/18 © 2026 Takahiro Miyaura 4
デモ 2026/02/18 © 2026 Takahiro Miyaura 5
BidiGenerateContent(Live API)で物体検知 2026/02/18 © 2026 Takahiro Miyaura 6
簡単なアーキテクチャ図 Unity アプリ Gemini GRBカメラ 画像 + プロンプト フレーム API generateContent (REST) ( 座標 + ラベル) Microphone ディスプレイ 音声 BoundingBoxScanner 画像キャプチャ / 座標変換 空間配置 / トラッキング 映像/音声ストリーム ( 座標 + ラベル) Transform BidiGenerateContent (WebSocket) 現実空間に Bounding Box 描画 2026/02/18 © 2026 Takahiro Miyaura 7
シーケンス図 開始シーケンス WebSocket 接続をする ○ Function Calling 2026/02/18 © 2026 Takahiro Miyaura ができるように設定 8
シーケンス図 ライブストリーミングで処理 映像については1FPS で処理 ○ バッファリングされている画像に対する問い合わせを行う 例:時計はどこ? ○ 今回は定期的に物体検出を強制している 2026/02/18 © 2026 Takahiro Miyaura 9
参考
画像から物体を検出する時はプロンプト次第で2D,3Dに切替える
○ 2Dのプロンプト例
Detect all objects in this image.
For each detected object, return the bounding box coordinates
as [ ymin , xmin , ymax , xmax ] where each value is normalized
to a 0 - 1000 scale, and provide a label.
Return ONLY a JSON array with no other text:
[{"label": "
object_name ", " box_2d ": [ ymin , xmin , ymax , xmax ]}]
○ 3Dプロンプト例
Detect all objects in this image.
For each detected object, return the 3D bounding box.
Return ONLY a JSON array with no other text:
[{"label": "
object_name ", " box_3d ": [ center_x , center_y
center_z , x_size , y_size , z_size , roll, pitch, yaw]}]
2026/02/18
© 2026 Takahiro Miyaura
,
10
現実空間に描画 盛大に失敗しています(笑) もう少しやり方を 整理して解決したい サイズ感はあってる ○ 送った時の画像の撮影位置の同期がうまくいってない ○ パススルーではなくRGBからとってるのが画角が違う? ※パススルー映像を撮る手段がわからん。あった気がする んだけど。。。 2026/02/18 © 2026 Takahiro Miyaura 11
まとめ 2026/02/18 © 2026 Takahiro Miyaura 12
Galaxy XRで Gemini API使ってオブジェクト検出やってみる Android XR とは言え、自作アプリでは要実装 ○ Gemini API つかった物体検知 ○ Rest,WebSocket いずれも利用可能 ○ Prompt 指定で2D,3D のBounding Box を制御できる ○ 文章とセットで分析するため柔軟性が高い ○ 事前学習していなくてもかなりの物体をラベリングできる ○ 色々な遊び方も含めて様々なことができそう ○ 現実空間との位置合わせはやっぱり苦労する(笑) 2026/02/18 © 2026 Takahiro Miyaura 13
大阪駆動開発 関西を中心に、IT系のおもしろそうなことを 楽しんでやるコミュニティ