KOSMOResearch Preprint

MVLoMa: Multi-View Local Feature Matching
with Any Geometry Foundation Model

Xinyang Lu1,2, Shengzhe Wei1, Sheng Tang1, Weiqi Zhang3, Juntong Fang3, Zesong Li1
1 Kosmo Research 2 School of Astronautics, Harbin Institute of Technology 3 School of Software, Tsinghua University

Given one centre image and its neighbours, MVLoMa matches the centre to every neighbour in a single forward pass, reusing frozen geometry-aware tokens from a multi-view foundation model while keeping an explicit sparse match set for every edge.

A MegaDepth star graph: one centre image at the bottom connected to six neighbour images by coloured sparse correspondences.
58.65 Macro AUC@1° Best among compared methods on 25-view stars (85.41 @5°, 90.99 @10°)
2.20× Faster matching vs. sequential evaluation of the 24 centre–neighbour edges (one A800)
1 pass For all 24 edges Shared centre with bidirectional centre–neighbour cross-attention
4 Frozen geometry encoders DA3, π³, VGGT and VGGT-Ω tested; DA3-Giant performs best

Paper

Abstract

Local feature matching is typically formulated for image pairs, although structure-from-motion and visual localization commonly match one reference image against many retrieved or covisible neighbours. Applying a pairwise matcher independently to these centre–neighbour edges duplicates reference-side computation and prevents the matcher from exploiting complementary multi-view geometric evidence from the remaining observations.

To address these limitations, we introduce MVLoMa, a sparse star-graph matcher that extends LoMa from image pairs to multiple views. MVLoMa first uses a frozen multi-view geometry model to jointly describe all images in a star, then injects the resulting cross-view geometric context into local descriptors. It then matches the centre image to all neighbours in a single forward pass through per-view self-attention and bidirectional centre–neighbour cross-attention. For supervision, we derive positive correspondences only from depth-valid, mutually visible dense warps and explicitly penalize high-confidence matches that violate epipolar geometry.

On 25-view star graphs from HyperSim, ScanNet++, Mip-NeRF 360, and Tanks and Temples, MVLoMa obtains the best macro-average relative-pose AUC among the compared methods at all three thresholds (58.65/85.41/90.99). Its matcher is 2.20× faster than sequential evaluation of the 24 centre–neighbour edges. The same design supports four tested frozen geometry encoders—DA3, π³, VGGT, and VGGT-Ω—with DA3-Giant performing best on all reported encoder-ablation metrics. Controlled ablations further isolate the effects of geometry-aware descriptors, visibility filtering, geometric negative supervision, and joint multi-view inference.

local feature matching multi-view geometry star graph geometry foundation models relative pose estimation

Approach

Method Overview

Overview of MVLoMa. Local features and frozen multi-view geometry features are fused into geometry-aware descriptors; a star-graph matcher then predicts sparse matches for every centre–neighbour edge in one forward pass.
01

Geometry-aware descriptors

A frozen multi-view foundation model encodes the whole star once; its cross-view tokens enrich every local descriptor.

02

Star-graph attention

The centre and all neighbours exchange information through bidirectional cross-attention, while each edge keeps its own sparse matches.

03

Geometric supervision

Positives come only from mutually visible pixels, and confident matches that violate epipolar geometry are penalized.

Evaluation

Results

Relative Pose on 25-View Star Graphs

Benchmark
AUC@
MVLoMa (ours) Baselines
Relative pose AUC on 25-view star graphs
Method HyperSim ScanNet++ Mip-NeRF 360 T&T Average
@1°@5°@10° @1°@5°@10° @1°@5°@10° @1°@5°@10° @1°@5°@10°
Two-view
LightGlue 20.2047.3455.72 22.8461.8374.49 51.2883.4690.02 52.4284.6991.08 36.6969.3377.83
LoMa-L 51.9977.0082.86 37.6875.5785.14 71.6993.2596.50 68.2291.9695.74 57.4084.4490.06
RoMa 45.0664.8269.78 36.8173.8883.70 75.4293.2795.88 66.5690.9995.01 55.9680.7486.09
RoMa v2 52.9380.6586.92 33.0273.3384.58 74.8194.1697.00 67.0691.3295.37 56.9584.8790.97
Multi-view
MV-RoMa (13v) 37.0058.5164.51 35.8071.5781.67 74.4592.9395.61 66.0490.5694.75 53.3278.3984.14
MVLoMa (504) 53.3578.9984.76 38.0374.7284.67 73.9094.0496.97 68.0891.9195.74 58.3484.9190.53
MVLoMa (784) 53.9080.0285.99 38.4475.6885.33 74.2994.0896.97 67.9691.8495.68 58.6585.4190.99

Ablations

Controlled studies of supervision, frozen representation, encoder choice and star size.

GT filtering and geometric negative loss (DA3-G; four-view training; test at 784)
VariantHyperSimMip-NeRF 360
@1°@5°@10°@1°@5°@10°
Full52.8478.4284.3473.8593.9696.92
w/o GT filtering51.9377.7583.7773.6993.8596.83
w/o negative loss51.0476.9683.1972.7293.4296.55

Both components help. Removing the geometric negative loss costs the most at the strict threshold (HyperSim AUC@1° 52.84 → 51.04, vs. 52.84 → 51.93 without GT filtering). Filtering keeps invalid dense warps out of the positives, while the negative term targets confident false matches that survive assignment. DA3-G, four-view training, tested at 784.

Complexity

Efficiency

A star shares the centre-side self-attention, projections and feed-forward networks across all of its edges. With K = 2048 keypoints, d = 512 and L = 9 layers, the theoretical compute ratio is Cpair / Cstar = 70(V−1) / (43V−16) for a star with V views.

Metric
Sequential pairwise (one LoMa-L call per edge) Star (one MVLoMa call per star)

Matcher only: nine LoMa-L layers, 2048 keypoints, one NVIDIA A800, batch size 1; mean of 46 of 50 trials after dropping the two fastest and two slowest.

2.20× Measured speed-up at 25 views 446.96 → 203.09 ms (−54.6%). Larger than the 1.59× compute ratio because the 24 pairwise calls also pay repeated Python/module and kernel-launch overhead.
−37.0% Transformer FLOPs at 25 views 16.235 → 10.234 TFLOPs. Batching pairwise edges cannot remove this: it still repeats the centre-side work for every edge.
979 MiB Peak matcher memory (trade-off) vs. 176 MiB for sequential pairwise evaluation at 25 views.

Transformer Compute and Matcher Runtime

FLOPs count a multiply–add as two operations. Sp. is the pairwise / star ratio. Two-view outputs are identical, an implementation sanity check.

Transformer compute and matcher-only runtime for nine LoMa-L layers
ViewsEdges Theory (TFLOPs) A800 (ms)
PairStarSp. PairStarSp.
210.6760.6761.00×20.9521.180.99×
432.0291.5081.35×57.9837.151.56×
764.0592.7541.47×113.8160.501.88×
13128.1175.2471.55×237.60105.782.25×
252416.23510.2341.59×446.96203.092.20×

Reference

BibTeX

If you find MVLoMa useful, please cite our work.

@misc{lu2026mvlomamultiviewlocalfeature,
      title={MVLoMa: Multi-View Local Feature Matching with Any Geometry Foundation Model},
      author={Xinyang Lu and Shengzhe Wei and Sheng Tang and Weiqi Zhang and Juntong Fang and Zesong Li},
      year={2026},
      eprint={2610.31321},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2610.31321},
}