docs: match the false-accept record to the evaluator's own columns

The record said '2 false accepts of 48 unknowns', which conflated two fields:
the 2 are 0 unknown accepts plus 1 unenrolled in-catalog facing and 1 enrolled
misidentification. Also restores the hybrid-verify line the lane vocabulary
edit dropped, and reframes the l09 note: its hubness ratio is 1.76 full /
1.36 live against G7's limit of 2.0, so the gate passes and the 30% internal
share heuristic is what raises the alarm.
This commit is contained in:
tngo 2026-09-28 22:36:27 +09:00
parent 47c4273eec
commit 2b7dd0c193
3 changed files with 12 additions and 4 deletions

View file

@ -6,6 +6,7 @@ Every lane is scored the same way, on the same crops, at the same resolutions:
local RootSIFT pyramid + OCR text lane (the shipped default)
matcher full-catalog SIFT/ORB/BRISK + RANSAC (the original demo)
gallery DINOv2 embedding, raw or with the trained head
hybrid-verify DINO shortlist, then the matcher re-ranks inside it
Reported per lane, as four separate ceilings rather than one conflated number:

View file

@ -595,7 +595,11 @@ The headline number is reproducible from the repo, not from a scratch script:
--image add/image6.jpg --lanes local --live
live resolution: catalog 69% · identity 86% · decision 86% ·
end-to-end 59% · precision 95% · 2 false accepts of 48 unknowns · 20.6 ms/crop
end-to-end 59% · precision 95% · 20.6 ms/crop
false accepts: 2 of 109 scored facings — 0 of the 48 unknowns, and 1
unenrolled in-catalog facing plus 1 enrolled misidentification. The
evaluator's own columns: unknown_false_accepts 0, unenrolled_false_accepts 1.
Still open, and not implementable from here: Tier 2 held-out labels (F-11), the
E-1..E-9 experiments, and the completion gate G1-G7, all of which need a second

View file

@ -59,9 +59,12 @@ text lane the signatures that cover them.
the enrollment protocol wants (§8 of the architecture decision). Its matcher
scores dwarf the other references (85-129 inliers against 10-40), so it wins
facings it should not; re-source it before trusting l09 precision. Measured on
the corrected image6 labels at full resolution, that is the one hub alarm the
local lane raises: 18 accepts, 12 correct, a 37.5% share against the 30% limit.
At live resolution the alarm clears (29%).
the corrected image6 labels, l09 is the largest single-SKU share of accepts at
both resolutions: 18 of 48 accepts (37.5%) at full, 11 of 38 (28.9%) at live,
against a true share of 13 of 61 facings (21.3%). That is a hubness ratio of
1.76 and 1.36 against the completion gate's limit of 2.0, so G7 passes; the
stricter internal 30% share heuristic is what raises the alarm at full
resolution. Re-sourcing the reference is the fix, not a threshold change.
## Rejected