FastMVS

GPU-Accelerated Multi-View Stereo Pipeline

FastMVS delivers dense point cloud reconstruction from large-scale oblique aerial photography and UAV surveys at minute-level throughput on a single NVIDIA GPU — up to 44× faster than COLMAP PatchMatch on production datasets.

44 min
full pipeline · 3,930 aerial images
→ 77M point cloud
>44×
faster than COLMAP PatchMatch
(full pipeline, 3,930 images)
0.68 s
per image · production UAV survey
single NVIDIA GPU

Overview

FastMVS is a closed-source, commercially distributed GPU-accelerated MVS pipeline based on the Semi-Global Matching (SGM) algorithm. It takes a COLMAP workspace as input (compatible with COLMAP and other SfM tools that export COLMAP-format workspaces) and outputs dense block point clouds ready for downstream meshing and georeferencing.

Designed for production aerial photogrammetry workflows where throughput matters: from undistorted images to a full point cloud, FastMVS processes over 3,900 aerial images in under 45 minutes on a single RTX 5090 D — tasks that would take COLMAP over 33 hours.

Step 1 · GPU
Depth Generation
CUDA-accelerated SGM stereo matching, generates per-pair depth maps
Step 2 · CPU
Depth Fusion
Geometric consistency filtering and per-reference depth fusion
Step 3 · CPU
Point Cloud Generation
Multi-view fusion into dense block point clouds

Results

Dense point cloud reconstructed from a 3,930-image DJI-Nadir UAV survey in 44 minutes on a single RTX 5090 D.

FastMVS dense point cloud — 3,930-image UAV survey overview
Overview — 77M-point cloud covering the full survey area (3,930 images, 44.6 min). Rendered in CloudCompare.
FastMVS dense point cloud — building detail
Detail — building rooftops, tree canopies, and street-level structures are sharply resolved.

Benchmarks

Speed — FastMVS vs COLMAP PatchMatch

Same machine (RTX 5090 D), same COLMAP workspace, same image resolution. Production datasets are proprietary UAV surveys: Block A is a 5-camera oblique aerial survey; Block B is a single-lens DJI UAV survey over a larger area.

Scenario Images FastMVS (full pipeline) COLMAP PatchMatch Speedup
Oblique-5Cam UAV survey 1,535 28.4 min >13 h (est.) >27×
DJI-Nadir UAV survey 3,930 44.6 min >33 h (est.) >44×
ISPRS 8K aerial block 1,260 ~35 min (est.)

* COLMAP full pipeline estimate includes photometric pass, geometric consistency, and stereo fusion. Dense matching stage alone: FastMVS Step 1 (22.5 min) vs COLMAP photometric pass (6 h 28 min) = 17.3× on Block A.

FastMVS vs COLMAP on 1,535-image UAV dataset
FastMVS vs COLMAP PatchMatch on the 1,535-image UAV oblique dataset. COLMAP's photometric pass alone takes 6 h 28 min; FastMVS completes the full pipeline in 28.4 min.

Speed — All Datasets

Dataset Images Resolution Full Pipeline Per Image
ETH3D (mean, 13 scenes) 15–76 ~2K ~17 s 0.49 s/img
DTU (mean, 22 scans) 49 ~1.6K ~10 s 0.20 s/img
Oblique-5Cam UAV survey 1,535 ~2.7K 28.4 min 1.11 s/img
DJI-Nadir UAV survey 3,930 ~2.7K 44.6 min 0.68 s/img
FastMVS scaling across datasets
FastMVS total pipeline time (bars) and per-image speed (line) across all datasets — from academic benchmarks to production-scale UAV surveys with 3,930 images.

Accuracy

ETH3D Training Set · F-score @ 2 cm

MetricValue
F-score0.343
Precision0.852
Recall0.234
ETH3D per-scene breakdown
Per-scene precision, recall, and F-score on ETH3D (13 scenes).

DTU Dataset · Overall @ 2 mm (22 scans)

MetricValue
Overall0.55 mm
Accuracy0.46 mm
Completeness0.64 mm
DTU per-scan accuracy
Per-scan accuracy, completeness, and overall on DTU (22 scans).

All benchmarks on the same machine: Intel Core Ultra 7 270K Plus, 30 GiB RAM, NVIDIA RTX 5090 D 24 GB, CUDA 12.8. FastMVS uses dataset-provided camera poses — no separate SfM step. FastMVS is designed for UAV surveys with high image overlap and forward/oblique flight patterns. Academic benchmarks (ETH3D, DTU) use diverse studio capture patterns that differ from typical UAV workflows — precision remains high, but completeness is lower than on production aerial datasets.

Quick Start

Requirements

Install — Ubuntu

# Ubuntu 22.04
sudo apt install ./fastmvs_0.1.3-1.ubuntu22.04_amd64.deb

# Ubuntu 24.04
sudo apt install ./fastmvs_0.1.3-1.ubuntu24.04_amd64.deb

# fast_mvs is installed to /usr/bin and ready to run

Install — Windows

# Extract the zip, then add the bin directory to PATH
# Or run fast_mvs.exe directly from the extracted folder

Run

fast_mvs \
  -i /path/to/colmap_workspace \
  -o /path/to/output \
  -s 0.5 \
  --mode balanced

Key Parameters

ParameterDescriptionDefault
-iCOLMAP project root directory
-oOutput directory
--sparseSparse model directory (optional; auto-detects sparse/0 or sparse/)auto
--imagesImages directory (optional; auto-detected if not set)auto
-sImage scale factor — 0.5 recommended for aerial surveys0.5
--stepsPipeline steps to run: all or subset e.g. 1,2,3all
--gpu-workersParallel Step 1 processes; 0 = auto based on VRAM, 1 = serial0
--modeFusion mode (see below)balanced

Fusion Mode (--mode)

ModeDescription
strictHigher precision — fewer but more accurate points. Recommended when noise tolerance is low.
balancedDefault — good trade-off between precision and completeness. Suitable for most UAV surveys.
relaxedHigher recall — denser, more complete point cloud. Recommended for scenes with large coverage requirements.

Download

Latest release: v0.1.3  ·  release notes

All releases: github.com/fastmvs/fastmvs.github.io/releases

FastMVS is proprietary software. Source code is not publicly available. For early access or licensing inquiries, contact fastmvs0909@gmail.com.

Citation

If you use FastMVS in your research or production work, please cite:

@software{fastmvs2026,
  title   = {FastMVS: GPU-Accelerated Multi-View Stereo Pipeline},
  author  = {FastMVS Team},
  year    = {2026},
  url     = {https://fastmvs.github.io}
}