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.

Accuracy vs. Computational Cost on KITTI

Accuracy (δ<1.25) vs. Computational Cost on KITTI Eigen split. FlexDepth achieves the best trade-off across all model scales.

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

FlexDepth System Overview

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

MethodYear Abs Rel ↓Sq Rel ↓RMSE ↓RMSE log ↓ δ<1.25 ↑δ<1.25² ↑δ<1.25³ ↑ FLOPs(G) ↓
Lightweight (<10 GFLOPs)
Monodepth220190.1150.9034.8630.1930.8770.9590.9818.0
Lite-Mono-Tiny20230.1100.8374.7100.1870.8800.9600.9822.8
Lite-Mono-Small20230.1100.8024.6710.1860.8790.9610.9824.7
Lite-Mono20230.1070.7654.5610.1830.8860.9630.9835.0
PuriLight20260.1060.7474.5360.1820.8900.9640.9847.1
Flex-Nano (Ours)20260.1100.7944.6780.1840.8780.9610.9830.7
Flex-Small (Ours)20260.1040.7134.4580.1790.8900.9640.9832.8
Medium (10–20 GFLOPs)
Lite-Mono-8M20230.1010.7294.4540.1780.8970.9650.98311.2
GeoDepth20250.1000.6944.3810.1760.8970.9660.98411.9
TinyDepth20240.0960.6654.2490.1710.9040.9680.98513.3
Flex-Medium (Ours)20260.0960.6394.2530.1720.9030.9680.98510.0
Flex-Large (Ours)20260.0950.6424.1990.1710.9060.9680.98411.5
Large (>20 GFLOPs)
MonoViT20220.0990.7084.3720.1750.9000.9670.98459.7
FGTO20240.0960.6964.3270.1740.9040.9680.98559.7
DSI-MonoViT20250.0960.7114.3210.1720.9050.9680.98459.7
Self-Distillation20250.0950.6194.1560.1690.9050.9690.98564.5
Flex-X-Large (Ours)20260.0930.6054.1140.1670.9100.9690.98524.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

ModelParams(M)FLOPs(G)RTX 4090V100SD 8 Elite
Flex-Nano1.50.7158377437.6
Flex-Small6.12.8121560618.6
Flex-Medium12.710.05102315.8
Flex-Large15.211.54672165.2
Flex-X-Large32.324.63211303.0

Inference speed across platforms. Flex-Nano achieves real-time performance even on mobile devices (Snapdragon 8 Elite).

Qualitative Results

Cityscapes Comparison

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

KITTI Comparison

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

Cityscapes Extended

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

KITTI Extended

Extended KITTI qualitative results demonstrating robust depth estimation across various driving scenes.

Comparison with Foundation Depth Models (Zero-Shot)

MethodTypeParamsFLOPs(G)ResolutionAbs Rel ↓δ<1.25 ↑
DA2 (ViT-L)Zero-Shot335M19471722×5180.0700.956
DA2 (ViT-S)Zero-Shot25M1371722×5180.0770.944
DA2 (ViT-L)Zero-Shot335M276644×1960.0920.915
DA2 (ViT-S)Zero-Shot25M19644×1960.1100.881
Flex-X-Large (Ours)Self-Supervised32M25640×1920.0630.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.

Original Image
DA2 ViT-L (1722×518)
DA2 ViT-L 518
DA2 ViT-L (644×196)
DA2 ViT-L 644
DA2 ViT-S (1722×518)
DA2 ViT-S 518
DA2 ViT-S (644×196)
DA2 ViT-S 644
Flex-X-Large (Ours)
Flex-X-Large

Video Comparison

Citation  

BibTeX
@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.

Zoomed Comparison
Click outside or press ESC to close