TL;DR: FlexDepth is a scale-driven family of self-supervised monocular depth models that achieves SOTA across arbitrary scales with minimal computational overhead. Our smallest model, Flex-Nano, requires only 0.7 GFLOPs and achieves 37.6 FPS on mobile platforms.
Abstract
Self-Supervised Monocular Depth Estimation (MDE) has garnered attention in recent years due to its independence from ground truth. However, most existing models are limited to a single scale and exhibit considerable performance degradation in complex driving environments. Networks specifically designed to handle dynamic traffic participants tend to be overly complex, hindering their deployment on resource-constrained automotive edge devices. To address these limitations and move towards robust driving perception, we propose FlexDepth, a scale-driven and flexible family of self-supervised MDE models tailored for challenging road scenarios. FlexDepth employs a two-stage static-dynamic decoupled training strategy, enabling the independent assessment of confidence for both static backgrounds and dynamic road objects. Furthermore, it introduces a meticulously designed Scale-Driven Decoder (SDD) to dynamically select components based on scale size, facilitating efficient feature fusion and the output of high-precision depth maps. Extensive experiments on standard driving benchmarks demonstrate that without any auxiliary information, our model achieves state-of-the-art performance across arbitrary scales with minimal computational overhead. Our smallest model, Flex-Nano, requires only 0.7 GFLOPs and achieves 37.6 FPS on mobile platforms, ensuring reliable real-time perception while maintaining excellent zero-shot generalization.
Method
Overview of the FlexDepth architecture. The training process is structured into two stages: Stage 1 jointly optimizes the Depth Network and PoseNet; Stage 2 introduces the static-dynamic decoupled mask for dynamic scene refinement.
Scale-Driven Decoder
A novel decoder that adaptively selects its constituent components (Post-Convolution, Upsampling, Prediction Head) based on model scale, enabling efficient feature fusion and high-precision depth output across Nano to X-Large variants.
Static-Dynamic Decoupled Training
A two-stage training strategy that independently assesses confidence for static backgrounds and dynamic objects via an adaptive thresholding mechanism, achieving superior robustness in dynamic driving scenes without extra inference overhead.
Flexible Model Family
Five model scales (Nano, Small, Medium, Large, X-Large) covering 0.7 to 24.6 GFLOPs. Flex-Nano achieves 37.6 FPS on mobile platforms, while Flex-X-Large sets new SOTA on KITTI and Cityscapes benchmarks.
Post-Convolution Design
We remove the pre-convolution stage entirely and redesign the post-convolution with two Bottleneck variants: High-Efficiency Bottleneck (HEB) for small models prioritizing gradient flow richness, and High-Performance Bottleneck (HPB) for large models capturing finer-grained local features via CSP structure.
Dynamic Upsampling
Instead of content-agnostic bilinear interpolation that causes blurred boundaries, we predict upsampling offsets adaptively based on semantic content. This enables non-uniform upsampling that generates sharper and more accurate structural boundaries.
Adaptive Masking with MuPredictor
The static-dynamic decoupled mask employs an adaptive thresholding function that dynamically adjusts sensitivity based on feature evolution between early and late training stages, ensuring only stable static pixels contribute to confidence evaluation.
Results
KITTI Eigen Split
| Method | Year | Abs Rel ↓ | Sq Rel ↓ | RMSE ↓ | RMSE log ↓ | δ<1.25 ↑ | δ<1.25² ↑ | δ<1.25³ ↑ | FLOPs(G) ↓ |
|---|---|---|---|---|---|---|---|---|---|
| Lightweight (<10 GFLOPs) | |||||||||
| Monodepth2 | 2019 | 0.115 | 0.903 | 4.863 | 0.193 | 0.877 | 0.959 | 0.981 | 8.0 |
| Lite-Mono-Tiny | 2023 | 0.110 | 0.837 | 4.710 | 0.187 | 0.880 | 0.960 | 0.982 | 2.8 |
| Lite-Mono-Small | 2023 | 0.110 | 0.802 | 4.671 | 0.186 | 0.879 | 0.961 | 0.982 | 4.7 |
| Lite-Mono | 2023 | 0.107 | 0.765 | 4.561 | 0.183 | 0.886 | 0.963 | 0.983 | 5.0 |
| PuriLight | 2026 | 0.106 | 0.747 | 4.536 | 0.182 | 0.890 | 0.964 | 0.984 | 7.1 |
| Flex-Nano (Ours) | 2026 | 0.110 | 0.794 | 4.678 | 0.184 | 0.878 | 0.961 | 0.983 | 0.7 |
| Flex-Small (Ours) | 2026 | 0.104 | 0.713 | 4.458 | 0.179 | 0.890 | 0.964 | 0.983 | 2.8 |
| Medium (10–20 GFLOPs) | |||||||||
| Lite-Mono-8M | 2023 | 0.101 | 0.729 | 4.454 | 0.178 | 0.897 | 0.965 | 0.983 | 11.2 |
| GeoDepth | 2025 | 0.100 | 0.694 | 4.381 | 0.176 | 0.897 | 0.966 | 0.984 | 11.9 |
| TinyDepth | 2024 | 0.096 | 0.665 | 4.249 | 0.171 | 0.904 | 0.968 | 0.985 | 13.3 |
| Flex-Medium (Ours) | 2026 | 0.096 | 0.639 | 4.253 | 0.172 | 0.903 | 0.968 | 0.985 | 10.0 |
| Flex-Large (Ours) | 2026 | 0.095 | 0.642 | 4.199 | 0.171 | 0.906 | 0.968 | 0.984 | 11.5 |
| Large (>20 GFLOPs) | |||||||||
| MonoViT | 2022 | 0.099 | 0.708 | 4.372 | 0.175 | 0.900 | 0.967 | 0.984 | 59.7 |
| FGTO† | 2024 | 0.096 | 0.696 | 4.327 | 0.174 | 0.904 | 0.968 | 0.985 | 59.7 |
| DSI-MonoViT | 2025 | 0.096 | 0.711 | 4.321 | 0.172 | 0.905 | 0.968 | 0.984 | 59.7 |
| Self-Distillation | 2025 | 0.095 | 0.619 | 4.156 | 0.169 | 0.905 | 0.969 | 0.985 | 64.5 |
| Flex-X-Large (Ours) | 2026 | 0.093 | 0.605 | 4.114 | 0.167 | 0.910 | 0.969 | 0.985 | 24.6 |
Quantitative results on KITTI Eigen split (640×192). Flex-X-Large achieves SOTA with only 24.6G FLOPs — 2.4× fewer than the next best method.
Efficiency & Speed
| Model | Params(M) | FLOPs(G) | RTX 4090 | V100 | SD 8 Elite |
|---|---|---|---|---|---|
| Flex-Nano | 1.5 | 0.7 | 1583 | 774 | 37.6 |
| Flex-Small | 6.1 | 2.8 | 1215 | 606 | 18.6 |
| Flex-Medium | 12.7 | 10.0 | 510 | 231 | 5.8 |
| Flex-Large | 15.2 | 11.5 | 467 | 216 | 5.2 |
| Flex-X-Large | 32.3 | 24.6 | 321 | 130 | 3.0 |
Inference speed across platforms. Flex-Nano achieves real-time performance even on mobile devices (Snapdragon 8 Elite).
Qualitative Results

Cityscapes: FlexDepth produces sharper boundaries and more robust depth in dynamic regions compared to DSI and ProDepth.

KITTI: FlexDepth preserves fine-grained details and object contours, outperforming Monodepth2, MonoViT, and Lite-Mono.

Extended Cityscapes qualitative results showing consistent superiority across diverse dynamic scenarios.

Extended KITTI qualitative results demonstrating robust depth estimation across various driving scenes.
Comparison with Foundation Depth Models (Zero-Shot)
| Method | Type | Params | FLOPs(G) | Resolution | Abs Rel ↓ | δ<1.25 ↑ |
|---|---|---|---|---|---|---|
| DA2 (ViT-L) | Zero-Shot | 335M | 1947 | 1722×518 | 0.070 | 0.956 |
| DA2 (ViT-S) | Zero-Shot | 25M | 137 | 1722×518 | 0.077 | 0.944 |
| DA2 (ViT-L) | Zero-Shot | 335M | 276 | 644×196 | 0.092 | 0.915 |
| DA2 (ViT-S) | Zero-Shot | 25M | 19 | 644×196 | 0.110 | 0.881 |
| Flex-X-Large (Ours) | Self-Supervised | 32M | 25 | 640×192 | 0.063 | 0.952 |
Comparison with Depth Anything V2 on KITTI Eigen split. Flex-X-Large achieves superior Abs Rel (0.063 vs. 0.070) with 78× fewer FLOPs and 10× fewer parameters than DA2 ViT-L at highest resolution.
Zoomed Comparison with Depth Anything V2 (Zero-Shot)
Click on a scene, then click the original image or any depth map to view the zoomed comparison in fullscreen. DA2 results are from its zero-shot setting; Flex-X-Large is self-supervised. Red boxes indicate magnified regions.
Video Comparison
Citation
@misc{zhu2026robustdrivingperceptionflexible,
title={Towards Robust Driving Perception: A Flexible Scale-Driven Family for Self-Supervised Monocular Depth Estimation},
author={Zhaowen Zhu and Li Zhang and Yujie Chen and Tian Zhang and Yingjie Wang and Mingxia Zhan},
year={2026},
eprint={2607.00736},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2607.00736}
}
Acknowledgment
This work is supported by the National Natural Science Foundation of China under Grant 62332016.
This website is built based on the Depth Anything 3 project page template. We thank the DA3 authors for making their template available.