Product recognition demo for supermarket shelf images
Find a file
kiyo9w 004212a8cf
Some checks failed
tests / model-free (pull_request) Has been cancelled
fix: gate the live cosine aggregate at the gallery's own line
The previous commit stopped the live path re-gating gallery scores at
COSINE_ACCEPT, but it passed zero accept lines. `aggregate_votes` divides by the
whole observation window, so one rejected crop beside one accepted 0.45 averages
to 0.225 - and a zero gate labelled that, at a score the gallery itself calls
unknown.

The aggregate now clears the gallery's own line: `head_threshold` (0.40) when a
fine-tuned head is loaded, `threshold` (0.55) otherwise. The margin gate is
still the only extra gate, so a head match between 0.40 and 0.60 is labelled.

Regression test: a rejected crop followed by an accepted 0.45 must not label the
track (fails on the zero-gate version).

Verified: `python -m unittest discover -s code -p 'test_*.py'` - 258 tests, OK,
2 skipped.
2026-09-28 17:36:43 +09:00
.github/workflows chore: run the Python suite from the repository root 2026-09-28 17:26:58 +09:00
recognization fix: gate the live cosine aggregate at the gallery's own line 2026-09-28 17:36:43 +09:00
.gitignore Initial commit for push folder 2026-09-18 09:13:53 +09:00