Move the panorama keypoint detector onto the engine, and probe with a detector

XFeat's two exports are a Keypoints role now; the crate no longer names
tract, and the app compiles TensorRT engines for both ahead of the
first merge. The probe picks the smallest *detector* rather than the
smallest file: the tablet's first run chose the 112 KB eye classifier,
which has no int8 form, and reported the Hexagon as failed for want of
one.
This commit is contained in:
2026-09-19 16:05:08 +02:00
parent 76bc5652d7
commit 7a436e2549
10 changed files with 157 additions and 130 deletions
+8 -1
View File
@@ -38,7 +38,14 @@ pub fn init(runtime_dirs: Vec<PathBuf>) {
runtime_dirs,
cache_dir: crate::library::inference_cache_dir(),
models,
embedded: vec![(Role::Segmenter, dr_segment::embedded_model_bytes())],
embedded: {
let [landscape, portrait] = dr_pano::xfeat::embedded_model_bytes();
vec![
(Role::Segmenter, dr_segment::embedded_model_bytes()),
(Role::Keypoints, landscape),
(Role::Keypoints, portrait),
]
},
ceiling: None,
threads: 0,
decay: std::time::Duration::ZERO,