docs/en/datasets/depth/nyu-depth-v2.md
NYU Depth V2 is the standard indoor benchmark for monocular depth estimation. It consists of RGB-D video sequences of a wide variety of indoor scenes recorded with a Microsoft Kinect v1. It is the primary benchmark used to report YOLO26-Depth accuracy.
Explore NYU Depth V2 on Ultralytics Platform to preview its RGB-depth pairs, inspect dataset statistics, and clone it for training.
NYU Depth V2 is the primary zero-shot evaluation benchmark for the YOLO26-Depth family, and the headline metrics on the depth task page are reported on it. The published YOLO26-Depth models are not trained on NYU; although the dataset includes a train split, it is left unused and only held-out test results are reported.
Evaluation uses multi-scale and horizontal-flip test-time augmentation (TTA), followed by log-least-squares scale alignment between the predicted and ground-truth depth maps before metrics are computed.
The table below reports the delta1 accuracy (percentage of pixels within a 1.25× threshold, higher is better) on the NYU Depth V2 Eigen test split by model size.
| Model | delta1 |
|---|---|
| YOLO26n-depth | 0.882 |
| YOLO26s-depth | 0.855 |
| YOLO26m-depth | 0.919 |
| YOLO26l-depth | 0.927 |
| YOLO26x-depth | 0.923 |
A YAML file is used to define the dataset configuration. It contains information about the dataset's paths, classes, and other relevant information.
!!! example "ultralytics/cfg/datasets/nyu-depth.yaml"
```yaml
--8<-- "ultralytics/cfg/datasets/nyu-depth.yaml"
```
To evaluate a YOLO26-Depth model on the NYU Depth V2 benchmark, you can use the following code snippets. For a comprehensive list of available arguments, refer to the model Validation page.
!!! example "Validation Example"
=== "Python"
```python
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26x-depth.pt") # load a pretrained depth model
# Evaluate on the NYU Depth V2 benchmark
results = model.val(data="nyu-depth.yaml")
```
=== "CLI"
```bash
# Evaluate a pretrained *.pt model
yolo depth val data=nyu-depth.yaml model=yolo26x-depth.pt
```
The YOLO26 depth family is evaluated zero-shot on the NYU Depth V2 benchmark. These models auto-download from the latest Ultralytics release, for example YOLO26x-depth from v8.4.0, and span a range of sizes (yolo26n/s/m/l/x-depth) for different accuracy and resource requirements.
If you use the NYU Depth V2 dataset in your research or development work, please cite the following paper:
!!! quote ""
=== "BibTeX"
```bibtex
@inproceedings{silberman2012indoor,
title={Indoor Segmentation and Support Inference from RGBD Images},
author={Silberman, Nathan and Hoiem, Derek and Kohli, Pushmeet and Fergus, Rob},
booktitle={Proceedings of the European Conference on Computer Vision (ECCV)},
year={2012}
}
```
We would like to acknowledge the authors for creating and maintaining this valuable resource for the computer vision community.
NYU Depth V2 is the standard indoor monocular depth benchmark, with Kinect v1 RGB-D captures of homes, offices, and classrooms up to roughly 10 m and a widely used 654-image Eigen test split. The headline YOLO26-Depth metrics on the Depth Estimation task page are reported on it.
No. The released models are evaluated zero-shot, so the NYU training split is left unused and only held-out test results are reported. The published numbers use multi-scale and flip test-time augmentation followed by log-least-squares scale alignment.
Run yolo depth val data=nyu-depth.yaml model=yolo26x-depth.pt, or use the Python example in the Usage section. The built-in validator uses single-scale inference with median alignment, so its scores are lower than the TTA numbers in Results; see the task page for the reproducible values.
Explore NYU Depth V2 on Ultralytics Platform to preview RGB-depth pairs, inspect dataset statistics, and clone the dataset for cloud training.