Skip to content

Depth Anything V2 — Windowsローカル静止画深度推定

Depth Anything V2 — Windowsローカル静止画深度推定

Depth Anything V2 は、単眼深度推定向けのモデルとして検証されました。公式リポジトリは DepthAnything/Depth-Anything-V2 です。

セットアップ手順

モデル重みを読み込む前に、配布元とライセンスを確認してください。

bash
git clone https://github.com/DepthAnything/Depth-Anything-V2.git
cd Depth-Anything-V2
pip install -r requirements.txt

学習済みモデルは、リポジトリ直下に checkpoints フォルダを作成し、その中に配置します。

モデル指定

Depth Anything V2のコード例では、モデルサイズごとに encoder を切り替えます。

モデルencoder指定
Smallvits
Basevitb
Largevitl
Giantvitg

最初の検証ではBaseモデルが使用されました。

Pythonコード上の基本処理

入力画像は cv2.imread() で読み込み、model.infer_image(raw_img) で深度推定を行います。コードコメント上では、戻り値は HxW raw depth map in numpy とされています。

画像出力コマンド

run_depth.py はエラーを出さないものの、検証時には画像出力まで確認できなかったため、実際の出力確認では公式の run.py を使用しています。

作業フォルダに inputsoutputs を作成し、inputs に推定対象画像を配置します。

Baseモデルでグレースケール深度画像を出す例です。

bash
python run.py --encoder vitb --img-path inputs --outdir outputs/vitb/gray --pred-only --grayscale

--encoder vitboutputs/vitb/gray は、使用するモデルに合わせて変更します。

CUDA / xFormers / Tritonまわりの注意点

Depth Anything V2のWindowsローカル検証では、CUDA・xFormers・Triton関連で複数の問題が発生しました。

発生した事象内容対応
xFormers not available初回実行時に表示xFormers導入を試行
torch不整合xFormers導入時にtorchが2.6.0へ上がり、torchaudio 2.5.1 / torchvision 0.20.1と不整合torch 2.5.1系へ戻す
長いパスエラーWindowsの長いパスが無効で一時ファイルパスが長すぎたLongPathsEnabled を有効化
CUDA未対応エラーxFormers導入後、CUDAが動いていない旨のエラーCUDA / PyTorch / xFormersの対応版を再構成
Triton警告A matching Triton is not available, some optimizations will not be enabledWindows対応ビルドの利用を検討。配布元の信頼性確認が必要

Windowsの長いパス対応は、管理者権限のPowerShellで以下を実行して有効化しました。

powershell
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled" -Value 1

確認コマンドです。

powershell
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled"

xFormers 0.0.28は、通常のインストールでtorchが見つからないエラーが出たため、以下でインストールに成功しています。

bash
pip install --no-build-isolation xformers==0.0.28

CUDA 12.6ではTritonの対応問題が残ったため、最終的にCUDA 12.4へ落として検証されました。CUDA 12.4対応のPyTorchは以下で導入しています。

bash
pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 --index-url https://download.pytorch.org/whl/cu124

CUDA 12.4対応のxFormersは以下です。

bash
pip3 install -U xformers --index-url https://download.pytorch.org/whl/cu124

Windows用Tritonは公式サポート状況に注意が必要です。非公式ビルドを利用する場合は、配布元、ハッシュ、依存関係を確認したうえで、検証用環境に限定してください。

Depth Anything V2のLKGレビュー

Depth Anything V2は、LKG表示に対して有用な候補として検証されています。

Depth Anything V2の出力例:人物画像

レビューでは、全体的に立体感は付きやすくなった一方で、細部の奥行き品質には調整余地があるとされています。

観点記録された評価
網部分他モデルと同様に苦手で、細部構造が崩れやすい
Hugging Face版との比較ローカルBaseモデルの方が網部分の破綻がやや少ない
ハト画像被写体にフォーカスを当てた場合、Hugging Face版との差は大きくなかった
奥側フォーカスローカルBaseモデルの方がやや立体感がある
額・胸・頭・顔額や胸の遠近感、頭の丸み、顔の立体感の解像度が良い
手の部分奥行きの変化が間延びして見える例がある

Depth Anything V2の出力例:バスケ画像

Small / Base / Large 比較

モデル比較では、モデルサイズが大きくなるにつれて処理時間が長くなりました。ただし、処理時間はスマートフォンのストップウォッチによる手計測で、GPU、VRAM、入力解像度、正確な実行条件が記録されていません。以下は厳密なベンチマークではなく、参考値です。

モデル参考処理時間計測条件レビュー
Small3.4秒単一静止画。入力解像度、GPU、VRAMは記録なしバスケ写真では網の表現がSmallの方がきれいに見える例があった
Base3.8秒単一静止画。入力解像度、GPU、VRAMは記録なし初期検証で使用
Large7.4秒単一静止画。入力解像度、GPU、VRAMは記録なしSmallよりきれいな場合が多い。ただし人物では顔の凹凸が強調されすぎる可能性がある

モデル間の差は画像によって異なり、強い立体感を優先するか、自然な見え方を優先するかで選定が変わります。



← ローカル深度推定 Windows — Depth Anything V2 / Video Depth Anything / Apple Depth Pro / MoGe 検証ガイド 概要に戻る