# Aggiornamento 2026-05-16 20:12 ## Primo test YOLO digits su crop etichetta E' stato scaricato il progetto: ```text C:\devel\yolo-ocr\external\yolov8-digits-detection ``` Sono state trovate 28 immagini di test in: ```text C:\devel\yolo-ocr\immagini_test ``` Nota: la cartella indicata verbalmente come `C:\yolo-ocr\immagini_test` non esisteva; le immagini erano nella cartella corretta `C:\devel\yolo-ocr\immagini_test`. ## Runner creato E' stato creato: ```text C:\devel\yolo-ocr\tools\batch_yolo_digits.py ``` Il runner: - carica i modelli ONNX del progetto; - non installa PyTorch; - evita `pytorch_lightning`, usato dal progetto solo per logging; - esegue inferenza CPU; - ordina le cifre rilevate da sinistra a destra; - salva un CSV con codice, numero cifre, confidenza media e tempo; - salva immagini annotate con bbox delle cifre; - salva una tavola di controllo visivo. ## Risultato con soglia 0.25 Output: ```text immagini=28 codici_numerici=24 load_sec=2.679 infer_ms_medio=52.7 conf=0.25 iou=0.7 ``` Il modello e' veloce: circa 53 ms per crop su CPU. Qualita': - riconosce davvero alcune cifre stampate; - quindi la pista YOLO digits e' concreta; - tuttavia spesso riconosce solo una parte del codice; - alcuni crop restituiscono 1-3 cifre invece del codice completo; - il modello out-of-the-box non e' ancora sufficiente per lettura affidabile UDC. ## Risultato con soglia 0.10 Output: ```text immagini=28 codici_numerici=27 load_sec=1.881 infer_ms_medio=61.5 conf=0.1 iou=0.7 ``` La soglia piu' bassa fa trovare piu' cifre, ma introduce duplicati e classi sbagliate. Quindi il problema non si risolve solo abbassando la soglia. ## Conclusione Il modello esistente e' utile come base sperimentale, ma non e' pronto da integrare nel WMS come OCR affidabile. La cosa positiva e' che: - il modello e' leggero; - gira senza PyTorch; - riconosce cifre stampate almeno parzialmente; - la velocita' e' adeguata; - puo' diventare molto interessante con fine-tuning su immagini reali delle nostre etichette. Prossimo passo consigliato: 1. migliorare preprocessing e crop locale, cercando di isolare meglio la riga numerica; 2. creare una piccola tabella ground truth per le 28 immagini; 3. misurare accuracy reale cifra per cifra e codice intero; 4. valutare fine-tuning del modello con immagini nostre annotate.