Skip to content

Repository files navigation

AerialMetric: Benchmarking and Adapting UAV Monocular Metric Depth Estimation in the Real World

Project Page Dataset & Weight-PartA

Zhongqiang Song1    Guanying Chen1,✉    Yuqi Zhang2,3    Yin Zou1

Chuanyu Fu1    Zhiyuan Yuan1    Chuan Huang4,2    Shuguang Cui3,2    Xiaochun Cao1


1 Sun Yat-sen University, Shenzhen Campus      2 FNii-Shenzhen      3 SSE, CUHKSZ      4 SIAS, USTC

AerialMetric is a real-world UAV monocular metric depth benchmark covering oblique photogrammetry, controlled aerial variables, in-the-wild UAV videos, and adapted MoGe-2 baselines.

News

  • 2026-07-24: The code repository is now publicly available and includes both inference and benchmark scripts.
  • 🎉 2026-06-18: AerialMetric was accepted to ECCV 2026.

Benchmark Entry Points

cd /path/to/AerialMetric

The repository is organized into three benchmark interfaces:

Directory Purpose
MoGe/ Aerial benchmark for MoGe2 and AerialMetric
Ground_MoGe/ Ground benchmark for MoGe2 and AerialMetric
Depth_Baselines/ Ground benchmark wrappers for UniDepth, DepthPro, and ZoeDepth

Dataset layout requirements are documented in DATA_ORGANIZATION.md.

Datasets & Weights

Pipeline of AerialMetric. Dataset composition of AerialMetric.

Resource Link
Dataset & Weights Kuiee/AerialMetric-ECCV2026

Environment Setup

conda create -n mogefresh3 python=3.10 -y
conda activate mogefresh3
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu124
pip install -r requirements.txt
pip install -e MoGe/

Verify:

python -c "import torch; print(f'PyTorch {torch.__version__}, CUDA: {torch.cuda.is_available()}')"
python -c "from moge.model.v2 import MoGeModel; print('MoGe OK')"

Reproduction

Edit paths in benchmark.sh to match your local setup, then run:

# 4 GPUs in parallel (recommended)
bash benchmark.sh 0,1,2,3

# Single GPU
bash benchmark.sh 0

The script runs all experiments automatically:

Type Experiment Datasets Intrinsics Mask Models
Aerial Scenes 1 Decoupled + Oblique + Wild none load Baseline + MoGe2-Aerial LoRA
Aerial Scenes 2 Decoupled + Oblique (norm) load load Baseline + MoGe2-Aerial LoRA
Ground Scenes 3 Ground ×7 (NYUv2, KITTI, …) no oracle Baseline + MoGe2-Aerial LoRA
Ground Scenes 4 Ground ×7 oracle (GT intrinsics) Baseline + MoGe2-Aerial LoRA

Results are saved to OUTPUT_ROOT (default: /data1/szq/622-freash3) with per-dataset evaluation reports (.txt / .json).

Weights:

Dataset layout: see DATA_ORGANIZATION.md. Ground config: edit Ground_MoGe/configs/eval/ground_metric_benchmarks_local.json.

Quick Demo — Single Image / Video / Folder Inference

# Base model (single image)
python demo_infer.py \
  --input photo.jpg \
  --model vitl \
  --checkpoint /path/to/vitl-normal.pt \
  --output ./demo_output

# Aerial LoRA model (video, every 5th frame)
python demo_infer.py \
  --input video.mp4 \
  --model lora \
  --checkpoint /path/to/Moge2-Aerial.pt \
  --lora_config MoGe/configs/Final_train/config-lora-all.json \
  --output ./demo_output \
  --stride 5

# Full options example
python demo_infer.py \
  --input ./images/ \
  --model lora \
  --checkpoint /path/to/Moge2-Aerial.pt \
  --lora_config MoGe/configs/Final_train/config-lora-all.json \
  --output ./demo_output \
  --resize 1024 \
  --resolution_level 9 \
  --cmap inferno \
  --save_components

CLI Reference

Category Argument Default Description
Required --input Image / video / folder path
--model vitl (base) or lora (LoRA fine-tuned)
--checkpoint Path to .pt checkpoint
LoRA --lora_config LoRA config JSON (required for --model lora)
--lora_rank 96 LoRA rank
Inference --resize 0 Long-edge resize target (0=original). Padded to ×14
--resolution_level 9 MoGe2 quality/speed: 0 (fastest) ~ 9 (best)
--force_projection on Recompute point map from depth for consistency
--apply_mask on Mask invalid depth regions
--fov_x auto Override horizontal FoV (degrees), auto-estimate if omitted
--device cuda cuda / cpu
--fp16 / --no_fp16 on FP16 inference
Output --output ./demo_output Output directory
--save_npy / --no_npy on Save raw .npy depth array
--save_components off Also save standalone _depth_vis.png
Visualization --cmap jet Colormap: jet / inferno / plasma / viridis / turbo
--vmin / --vmax auto Depth range clamp for colormap
--seed 42 Random seed for point picking
--point_margin 20 Edge margin for point sampling
Video --stride 1 Process every N-th frame

Output per frame

File Description
*_depth.npy Raw float32 depth array
*_depth_annotated.png Composite: depth colormap + 2 random point depth markers + colorbar
*_colorbar.png Standalone depth scale bar
*_meta.json Per-frame metadata (see below)

Weights:

Acknowledgments

Models & Tools

  • MoGe-2 (Wang et al., 2025) — the core monocular geometry estimation model used in this work.
  • Gemini and Depth Anything 3 — used to assist in the construction and processing of the AerialMetric-Wild subset.
  • DJI Terra — the primary software used for aerial photogrammetric reconstruction and geometric data processing.
  • UniDepthV2 (Piccinelli et al., 2025) — used to evaluate the cross-architecture generalization of models adapted using AerialMetric.

Oblique:Data Sources

We gratefully acknowledge the following datasets or works for providing raw UAV imagery, scene assets

  • GauU-Scene — large-scale UAV aerial scene dataset.
  • UrbanBIS (Yang et al., SIGGRAPH 2023) — benchmark for fine-grained urban building instance segmentation.
  • UrbanScene3D (Lin et al., ECCV 2022) — large-scale urban scene dataset with high-resolution aerial images.
  • UAVScenes (Wang et al., ICCV 2025) — multi-modal UAV dataset with frame-wise semantic annotations.
  • OpenDroneMap — open-source toolkit for generating maps, point clouds, 3D models, and DEMs from drone images.
  • ArcGIS Drone2Map (ESRI) — create 3D products from drone imagery.

Citation

If you find this work useful, please cite:

@inproceedings{song2026aerialmetric,
  title     = {AerialMetric: Benchmarking and Adapting UAV Monocular Metric Depth Estimation in the Real World},
  author    = {Zhongqiang Song and Guanying Chen and Yuqi Zhang and Yin Zou and Chuanyu Fu and Zhiyuan Yuan and Chuan Huang and Shuguang Cui and Xiaochun Cao},
  booktitle = {European Conference on Computer Vision (ECCV)},
  year      = {2026}
}

Website License

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

About

[ECCV 2026] AerialMetric: Benchmarking and Adapting UAV Monocular Metric Depth Estimation in the Real World

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages