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
PromptDA (Depth Anything) を用いた深度推定や点群生成について
Search
Kenta Itakura
July 30, 2025
Technology
0
120
PromptDA (Depth Anything) を用いた深度推定や点群生成について
Kenta Itakura
July 30, 2025
Tweet
Share
More Decks by Kenta Itakura
See All by Kenta Itakura
3次元点群からメッシュモデルを作成: ボールピボット法について
kentaitakura
0
26
3D Gaussian Splatting (3DGS)のモデルを Cesiumの地球の上で可視化する方法
kentaitakura
0
330
主成分分析やRANSACを利用した点群からの円柱フィッティングの方法
kentaitakura
0
240
ImVisionLabs株式会社: 産業技術総合研究所様との取り組み
kentaitakura
0
160
ImVisionLabs株式会社:ゼンリンデータコム様との取り組み
kentaitakura
0
79
ImVisionLabs株式会社: 中日本航空様との取り組み
kentaitakura
0
100
全方位カメラやPostshotを利用した3D Gaussian Splattingの実行方法の例
kentaitakura
0
990
ImVisionLabs株式会社: 東京電力HD様との取り組み
kentaitakura
0
130
3次元点群の地表面抽出の方法であるCSF (Cloth Simulation Filter) について
kentaitakura
2
1.1k
Other Decks in Technology
See All in Technology
形式手法特論:位相空間としての並行プログラミング #kernelvm / Kernel VM Study Tokyo 18th
ytaka23
3
1.5k
Amazon Q Developerを活用したアーキテクチャのリファクタリング
k1nakayama
2
220
Amazon Q と『音楽』-ゲーム音楽もAmazonQで作成してみた感想-
senseofunity129
0
170
Mackerel in さくらのクラウド
cubicdaiya
1
130
Agent Development Kitで始める生成 AI エージェント実践開発
danishi
0
160
ウォンテッドリーのアラート設計と Datadog 移行での知見
donkomura
0
130
Amazon Inspector コードセキュリティで手軽に実現するシフトレフト
maimyyym
0
140
AIに目を奪われすぎて、周りの困っている人間が見えなくなっていませんか?
cap120
1
700
Telemetry APIから学ぶGoogle Cloud ObservabilityとOpenTelemetryの現在 / getting-started-telemetry-api-with-google-cloud
k6s4i53rx
0
160
2025新卒研修・Webアプリケーションセキュリティ #弁護士ドットコム
bengo4com
2
8.1k
いかにして命令の入れ替わりについて心配するのをやめ、メモリモデルを愛するようになったか(改)
nullpo_head
7
2.7k
o11yツールを乗り換えた話
tak0x00
2
1.6k
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
460
Raft: Consensus for Rubyists
vanstee
140
7.1k
Being A Developer After 40
akosma
90
590k
Code Review Best Practice
trishagee
69
19k
Become a Pro
speakerdeck
PRO
29
5.5k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Building Applications with DynamoDB
mza
96
6.6k
Six Lessons from altMBA
skipperchong
28
4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
20k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Transcript
PromptDA (Depth Anything) を用いた 深度推定や点群生成について ImVisionLabs株式会社代表取締役 板倉健太 博士(農学)
Depth Anythingについて バックパック型スキャナー iPhone12 LiDAR Depth Anything では、特殊なセンサーを用いずに、画像から物体の深度(距離)を推定可能
視覚情報(画像)のみを利用して高精度な深度マップを生成できる [動画] Yang, L et al. (2024). Depth anything: Unleashing the power of large-scale unlabeled data. CVPR.
Depth Anythingの特徴 バックパック型スキャナー iPhone12 LiDAR Depth Anything は、RGB画像を入力とし、視覚的な特徴量に基づいてピクセルごとの深度 (距離)を予測
以下の出力された深度マップでは、距離が近いほど赤く、遠いほど青く表示される。 [動画] これにより、LiDARやRGB-Dカメラを用いずに、画像1枚から深度を推定できる。
Depth Anythingを用いた動画生成 Depth Anything動画に適用することで、動画の深度情報を抽出することも可能である。 • 色は推定された相対的な距離を表し、近い物体は暖色系、遠い物体は寒色系で示されている • 手前のポール状の物体と電車の前後関係もうまく表現できているように見える
Depth Anythingの限界とPromptDAの必要性 バックパック型スキャナー Depth Anythingで出力されるのは相対的な深度であり、実際の距離(例:1.5m)は明らかでない PromptDA (DepthAnything) について
• iPhone LiDARなどで取得した低解像度な深度を「プロンプト」として入力することで 実スケールの深度マップが得られる • 画像のRGB情報と深度が合わせて取得されるため、点群や3D再構築に利用可能 画像出典: PromptDAのプロジェクトページ https://promptda.github.io/
補足: iPhoneに搭載されているLiDARセンサー バックパック型スキャナー 2020年発売のiPad Pro、iPhone 12 Proシリーズ以降にLiDARスキャナーが搭載されている LiDAR(Light
Detection and Ranging)はレーザー光で物体までの距離を計測する技術で、 AR体験やカメラのオートフォーカス、3Dスキャンなどに利用される iPadやiPhoneのアプリケーションを通じて点群データの取得や3Dモデル化が可能 LiDAR
PromptDAの構成 バックパック型スキャナー PromptDAは以下の3要素から構成される: 1. RGB画像: 通常のカメラで撮影された視覚情報 2. 初期深度マップ(prompt): Stray
Scanner などによって推定された粗い深度情報 3. 深度推論モデル: Depth Anything を拡張したモデルで、RGBとpromptの両方を入力として 高精度な深度を出力 動画: Stray Scannerでの撮影の様子 Stray Scanner: LiDARを利用して得られた 深度画像(動画)を録画できるアプリ
点群生成の仕組み バックパック型スキャナー 3次元の点群を作るためには、実世界のx,y,z座標を得る必要がある。 そのために、PromptDAではカメラの内部パラメーターを利用して、画像上の点(画像 座標)から3次元座標(カメラ座標)を復元する。 カメラの内部パラメーターKは以下の式で表される 𝑓𝑥 , 𝑓𝑦 はそれぞれx,y軸方向の焦点距離(単位:ピクセル)
𝑎𝑥 , 𝑎𝑦 はカメラ座標からみた画像中心の位置
点群生成の仕組み バックパック型スキャナー まずカメラ座標と画像座標の関係性を考える。 カメラ座標上において、右図のように複数点を考える。 また、オレンジ色の部分は画像平面である。 画像平面にカメラ座標上の点を集めることを考える。
本スライドの図は以下のページを参考に作成しました: https://mem-archive.com/2018/02/21/post-157/
点群生成の仕組み バックパック型スキャナー 画像平面は、カメラ座標の中心から𝑧𝑎 方向に焦点距離 𝑓だけ離れた位置にあるため、カメラ 座標の 中心から見て、 倍だけすると図のように各点は画像座標上にある状況となる 𝑓/それぞれの点の𝑧𝑎
方向の距離 本スライドの図は以下のページを参考に作成しました: https://mem-archive.com/2018/02/21/post-157/
点群生成の仕組み バックパック型スキャナー 最後に、画像座標とカメラ座標での原点のずれ(オフセット)を解消する。 オフセットは 𝑎𝑥 , 𝑎𝑦 であるため、図のようになる。
本スライドの図は以下のページを参考に作成しました: https://mem-archive.com/2018/02/21/post-157/
点群生成の仕組み バックパック型スキャナー このそれぞれの点が、画像座標上の点 𝑢, 𝑣 と対応する。 すなわち、 が成り立つ。 また、以下のようにすることで、カメラ座標を計算でき、点群に変換することができる。
点群生成の仕組み バックパック型スキャナー 得られた深度情報を踏まえると、 画像座標上の点 𝑢, 𝑣 に対して、3次元座標上の点 𝑋𝑎 , 𝑌𝑎
, 𝑍𝑎 は、 となる。これが3次元座標となり、 これと各点のRGB情報をもとに計算を繰り返すことで、点群が作られる
点群生成の仕組み: 補足 バックパック型スキャナー カメラの内部パラメータ行列Kの逆行列は以下の通り MATLABのSymbolic Math Toolboxにて 計算した結果
PromptDAによる深度マップの作成例 バックパック型スキャナー 左が入力の画像であり、同時に粗い深度情報も取得している PromptDAにより、右の高解像度な深度マップを生成した 赤枠の本物のしっぽとしっぽの影も区別されていることがわかる
PromptDAを用いた点群生成例 バックパック型スキャナー 階段本体はノイズの影響を受けることなく、一直線に安定して描画されている。 のぼり口などのマークも、点の集まり(点群)として正確に反映されている。
PromptDAを用いた点群生成例 バックパック型スキャナー PromptDAを用いて取得した深度情報から、猫の動きを点群として再構成した。 猫は左下方向に移動しており、フレームからやや見切れているが、全体の動きや形 状、動いている様子が点群として記録されている
PromptDAの有無による点群生成精度の比較 バックパック型スキャナー 画像を斜めから見ると、PromptDAを適用した場合には階段の段差構造が明確に再構 成されている。 PromptDAを利用しない場合は段差が連続して滑らかにつながり、階段構造が曖昧
PromptDAを用いた点群生成例 バックパック型スキャナー PromptDAにより取得した深度画像を点群に変換した時の結果 斜めから観察すると、奥行きや段差の構造が再現されていることがわかる
PromptDAの有無による点群生成精度の比較 バックパック型スキャナー iPhoneにより取得した深度画像をベースに点群にした場合(左)とPromptDAにより高 解像度にした結果(右)を示す PromptDAにより深度情報が正確に得られるため、コーンの奥行きやポールとの繋が りが正しく点群として表現されている
まとめ バックパック型スキャナー Depth AnythingはRGB画像のみから相対的な深度を推定できる PromptDA (Depth Anything) は粗い深度情報をプロンプトとして入力し、実スケールかつ高精
度な深度マップを生成し、点群化を可能にする PromptDAを適用することで階段や奥行き構造をうまく再現することができた