Make3D深度データセット#
Make3Dは、単眼深度推定向けの定番の屋外ベンチマークです。カスタム3Dレーザースキャナーで取得した深度のグラウンドトゥルースと、キャンパスシーンの画像が含まれており、分布外データへの汎化性能を調べるために広く使用されています。
主な機能#
- カスタム3Dレーザースキャナーで取得した深度のグラウンドトゥルースです。
- 実世界の屋外キャンパスシーンを対象としています。
- 深度範囲は約70 mまでです。
- 標準テストセットの134枚の画像を使用して評価します。
- 分布外データへの汎化性能を評価する定番のベンチマークです。
YOLO26-Depthにおける役割#
Make3DはYOLO26-Depthファミリーのゼロショット評価ベンチマークであり、公開済みモデルはMake3Dでトレーニングされていません。分布外の屋外データセットであるため、すべてのモデルにとって最も難しいベンチマークです。このデータセットではdelta1の絶対値が全体的に低くなりますが、これは想定どおりです。
評価では、マルチスケールと水平反転のテスト時拡張(TTA)を使用します。その後、メトリクスの計算前に、予測深度マップとグラウンドトゥルース深度マップの間で対数最小二乗によるスケール調整を行います。
結果#
以下の表は、モデルサイズ別にMake3Dテストセットでのdelta1精度(閾値1.25×以内に収まるピクセルの割合、値が大きいほど良好です)を示しています。
| モデル | delta1 |
|---|---|
| YOLO26n-depth | 0.307 |
| YOLO26s-depth | 0.311 |
| YOLO26m-depth | 0.293 |
| YOLO26l-depth | 0.297 |
| YOLO26x-depth | 0.299 |
評価#
Make3Dには、同梱のデータセットYAMLはありません。専用の評価スクリプトでMake3Dの画像とレーザースキャナーによる深度のグラウンドトゥルースを読み込み、標準的なTTAと対数最小二乗スケールアライメントを適用して深度メトリクスを出力します。
使用方法#
Make3Dは外部ベンチマークであるため、通常はpredictを使用して画像に対するモデルの推論を行います。使用可能な引数の一覧については、モデルの予測ページをご覧ください。
from ultralytics import YOLO
# モデルを読み込む
model = YOLO("yolo26x-depth.pt") # 事前学習済み深度モデルを読み込みます
# Make3D画像の深度を予測します
results = model.predict("path/to/make3d/images")事前学習済みモデル#
YOLO26深度ファミリーはMake3Dベンチマークでゼロショット評価されます。これらのモデルは、初回使用時にUltralyticsのv8.4.0アセットリリースから自動ダウンロードされます。たとえばYOLO26x-depthなどがあり、精度とリソース要件に応じてさまざまなサイズ(yolo26n/s/m/l/x-depth)が用意されています。
引用と謝辞#
研究または開発でMake3Dデータセットを使用する場合は、以下の論文を引用してください。
@article{saxena2009make3d,
title={Make3D: Learning 3D Scene Structure from a Single Still Image},
author={Saxena, Ashutosh and Sun, Min and Ng, Andrew Y.},
journal={IEEE Transactions on Pattern Analysis and Machine Intelligence (TPAMI)},
year={2009}
}コンピュータビジョンコミュニティにとって価値あるこのリソースを作成し、維持している著者の皆様に感謝いたします。
よくある質問#
Make3Dは、カスタムレーザースキャナーで深度を約70 mまで測定したキャンパス画像134枚からなる、ゼロショットの分布外屋外ベンチマークです。公開済みのYOLO26-DepthモデルはMake3Dでトレーニングされていないため、未知の屋外シーンに対する汎化性能を測定できます。
シーンや深度の統計がトレーニングデータと大きく異なるため、Make3Dはすべてのモデルにとって5つの評価ベンチマークの中で最も難しいものです。このデータセットではdelta1の絶対値が約0.3になることが想定されるため、モデル間の相対比較が重要です。