Chalmers University of Technology; Linköping University; University of Amsterdam; Lund University
David Nordström*, Johan Edstedt*, Georg Bökman, Jonathan Astermark, Anders Heyden, Viktor Larsson, Mårten Wadenbäck, Michael Felsberg, Fredrik Kahl
Categorization of the 1,000 HardMatch pairs.
HardMatch is an extremely difficult image matching benchmark featuring 1,000 hand annotated image pairs. The benchmark is released as part of the LoMa paper.
- [June 27, 2026] Initial dataset release following ECCV 2026 acceptance.
from hardmatch import HardMatchBenchmark
matcher = YourFancyMatcher()
result = HardMatchBenchmark().benchmark(matcher)We additionally provide an example of the matching API through demo.py which uses SuperPoint + LightGlue. This defaults to evaluating on the 900 test pairs. There are also 100 validation pairs. To test this demo, just run:
uv run demo.pyRunning the benchmark will automatically download the data (660MB). You can also manually download it here.
In your python environment (tested on Linux python 3.12), run:
uv pip install -e .or
uv sync- Provide expected results for SP+LG and LoMa.
- Remove Kornia dependency and split eval and dataset dependencies.
- Make into easy-to-use PyPi package.
All our code is MIT license. The pairs are scraped from WikiMedia Commons. As such, each pair has its own license that you can find in the data. They are generally permissive.
Our evaluation technique builds on WxBS.
If you find our models useful, please consider citing our paper!
@inproceedings{nordstrom2026loma,
title={LoMa: Local Feature Matching Revisited},
author={David Nordström and Johan Edstedt and Georg Bökman and Jonathan Astermark and Anders Heyden and Viktor Larsson and Mårten Wadenbäck and Michael Felsberg and Fredrik Kahl},
booktitle={Proceedings of the European Conference on Computer Vision (ECCV)},
year={2026}
}