Make3D 深度数据集#
Make3D 是一个经典的户外单目深度估计基准,包含校园场景图像及其配套的深度真值。这些深度真值由定制的 3D 激光扫描仪采集,数据集广泛用于检验分布外泛化能力。
主要特性#
- 由定制的 3D 激光扫描仪采集的深度真值。
- 涵盖真实的户外校园场景。
- 深度范围最高约为 70 m。
- 使用包含 134 张图像的标准测试集进行评估。
- 经典的分布外泛化基准。
在 YOLO26-Depth 中的作用#
Make3D 是 YOLO26-Depth 系列的零样本评估基准;已发布的模型未在该数据集上进行训练。作为一个分布外户外数据集,它是所有模型中最具挑战性的基准,并且所有模型的绝对 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
# Load a model
model = YOLO("yolo26x-depth.pt") # load a pretrained depth model
# Predict depth on Make3D images
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 是一个零样本、分布外室外基准测试,包含 134 张校园图像,带有可达约 70 米的自定义激光扫描仪深度。发布的 YOLO26-Depth 模型未在 Make3D 上进行训练,因此它衡量了 YOLO26-Depth 模型对不熟悉室外场景的泛化能力。
对于每个模型而言,Make3D 是五个评估基准中最难的一个,因为 Make3D 的场景和深度统计数据与训练数据差异很大。该数据集的绝对 delta1 值在 0.3 左右是正常的,模型之间的相对比较才是关键所在。
没有。Make3D 使用专用脚本进行评估,该脚本采用多尺度和翻转测试时数据增强以及对数最小二乘尺度对齐。要在 Make3D 图像上运行模型,请使用predict mode(如Usage部分所示)。