From 5bd8fca248f03e629679973449bbc5cff5967bf4 Mon Sep 17 00:00:00 2001 From: AdrianoDev Date: Mon, 4 May 2026 22:00:32 +0200 Subject: [PATCH] fix: re-check min_score dopo NCC averaging Bug: score finale = (shape + ncc) / 2 puo scendere sotto min_score impostato dall'utente. La UI mostrava match con score < soglia perche il filtro min_score era applicato solo allo shape-score iniziale, non al risultato finale post-NCC. Aggiunto re-check dopo averaging: scarta match con score finale < min_score. Coerenza filtro user-facing ripristinata. Co-Authored-By: Claude Opus 4.7 (1M context) --- pm2d/line_matcher.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pm2d/line_matcher.py b/pm2d/line_matcher.py index b0291ad..ce4f657 100644 --- a/pm2d/line_matcher.py +++ b/pm2d/line_matcher.py @@ -1176,6 +1176,11 @@ class LineShapeMatcher: if ncc < verify_threshold: continue score_f = (float(score_f) + max(0.0, ncc)) * 0.5 + # Re-check min_score sullo score finale: NCC averaging puo + # abbattere lo shape-score sotto la soglia user. Senza questo + # check apparivano match con score < min_score (UI confusing). + if float(score_f) < min_score: + continue # Ri-traslo coord da spazio crop ROI a spazio scena originale. cx_out = cx_f + roi_offset[0]