dr-pano: a second XFeat shape for portrait frames, and a matcher that takes seconds
Twelve real frames from the fixture set now align in 4.5 s — 4.4 s of matching, 118 ms of bundle adjustment — where the first run took 51 s and left the first two frames out. The matcher computes each pair's similarity matrix once, across the cores, with a dot product written to vectorise; both nearest-neighbour directions read it. The frames that failed were portrait: fitted into the landscape input they used 512 of 1024 px, and their thin overlap did not survive at half resolution. The same weights are now exported at 768×1024 as well and the detector picks the shape by aspect. The example aligns from embedded previews and draws the set on a cylinder; on the fixture the sweep is 152° at a fitted 47.9 mm against the EXIF's 50, RMS 1.5 px, and the overlaps show no ghosting.
This commit is contained in:
+6
-3
@@ -76,10 +76,13 @@ rather than a code change — as this document predicted it would be.
|
||||
|
||||
| File | Source | Trained on | Used by |
|
||||
|---|---|---|---|
|
||||
| `keypoints/xfeat-1024.onnx` | `weights/xfeat.pt` from `https://github.com/verlab/accelerated_features` | MegaDepth + synthetic warps, by the authors | panorama alignment (FR-MRG-8) |
|
||||
| `keypoints/xfeat-1024.onnx` | `weights/xfeat.pt` from `https://github.com/verlab/accelerated_features` | MegaDepth + synthetic warps, by the authors | panorama alignment (FR-MRG-8), landscape frames |
|
||||
| `keypoints/xfeat-768.onnx` | the same weights | — | the same, portrait frames |
|
||||
|
||||
Exported by `tools/export-xfeat.sh` at a fixed 768×1024 grayscale input.
|
||||
Only the convolutional network is in the file; the keypoint decoding is Rust.
|
||||
Exported by `tools/export-xfeat.sh` at fixed grayscale inputs of 1024×768
|
||||
and 768×1024 — the same weights twice, because tract needs a static shape
|
||||
and a portrait frame in a landscape input wastes half of it. Only the
|
||||
convolutional network is in each file; the keypoint decoding is Rust.
|
||||
|
||||
**The repository and its weights are Apache-2.0**, read on 2026-09-19 from the
|
||||
`LICENSE` at its root, with no separate grant on the checkpoint and no
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user