Caixa grande "engolindo" uma caixa menor do mesmo produto continuava
aparecendo mesmo com sobreposição óbvia — IoU sozinho não resolve isso
porque a união fica dominada pela caixa maior, então o IoU continua baixo
mesmo com contenção quase total (ex.: caixa 1/5 da área da outra, 100%
contida, IoU ≈ 0.2).
- iou=0.5 explícito no NMS do YOLO (antes usava o default 0.7, permissivo
demais)
- novo pós-filtro _suprimir_boxes_contidas(): entre duas boxes da mesma
classe onde a intersecção cobre ≥90% da área da MENOR das duas, mantém
só a de maior confiança
Afeta tanto as boxes da revisão quanto as do TrainingTab, já que ambas vêm
do mesmo /detectar.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>