Usare le trasformazioni di Albumentations per diversificare i tuoi dati
Scopri come usare Albumentations per applicare trasformazioni durante l'addestramento personalizzato di Ultralytics YOLO11 e migliorare le prestazioni del modello con dati di addestramento diversificati.
Abirami Vina9 min di lettura
Quando sviluppi una soluzione di visione artificiale, raccogliere un insieme diversificato di immagini per addestrare i modelli di AI per la visione può essere una fase fondamentale del processo. Spesso richiede molto tempo e denaro e, a volte, le immagini raccolte non sono comunque abbastanza varie perché i modelli possano apprendere in modo efficace.
Per esempio, i modelli di visione artificiale come Ultralytics YOLO11 possono essere addestrati su misura con dataset di immagini per diversi task di visione artificiale legati a varie applicazioni. La diversità dei dati è fondamentale perché aiuta il modello a generalizzare meglio, permettendogli di riconoscere oggetti e schemi in un'ampia gamma di scenari reali.
Se hai difficoltà a causa della mancanza di dati diversificati, le tecniche di aumento dei dati delle immagini possono essere un'ottima soluzione. Metodi come la rotazione, il capovolgimento e la regolazione della luminosità possono ampliare la varietà del dataset, migliorando la capacità del modello di gestire una gamma più ampia di condizioni.
Per questo Ultralytics supporta un'integrazione per l'aumento dei dati delle immagini. Usando Albumentations, uno strumento molto diffuso che offre una raccolta di trasformazioni, puoi creare dati visivi diversificati. Questa integrazione semplifica l'addestramento di YOLO11 aumentando automaticamente le immagini di addestramento e migliorando così le prestazioni del modello.
In questo articolo vedremo come usare l'integrazione di Albumentations, quali vantaggi offre e che impatto ha sull'addestramento del modello.
Che cos'è Albumentations?#
I modelli di visione artificiale possono apprendere da un'ampia raccolta di immagini di alta qualità per riconoscere oggetti in ambienti diversi. Raccogliere grandi dataset da fonti del mondo reale può essere lento, costoso e inefficiente. Per semplificare questo compito, puoi usare l'aumento dei dati delle immagini per creare nuove variazioni delle immagini esistenti, aiutando i modelli ad apprendere da scenari diversi senza dover raccogliere altri dati.
In particolare, puoi usare Albumentations, una libreria open source introdotta nel 2018 per aumentare in modo efficiente i dati delle immagini. Supporta diverse operazioni, dalle semplici modifiche geometriche come rotazioni e capovolgimenti a regolazioni più complesse come luminosità, contrasto e aggiunta di rumore.

Fig. 1 Esempi di diversi tipi di aumento dei dati delle immagini.
Funzionalità principali di Albumentations#
Albumentations è nota per le sue prestazioni elevate, che le permettono di elaborare rapidamente ed efficientemente le immagini. Basata su librerie ottimizzate come OpenCV e NumPy, gestisce grandi dataset con tempi di elaborazione ridotti, risultando ideale per aumentare rapidamente i dati durante l'addestramento del modello.
Ecco altre funzionalità importanti di Albumentations:
- Ampia varietà di trasformazioni: Albumentations offre più di 70 tipi di aumento dei dati. Queste variazioni aiutano i modelli a imparare a rilevare gli oggetti nonostante i cambiamenti di illuminazione, angolazione o sfondo.
- Ottimizzata per la velocità: usa tecniche di ottimizzazione avanzate come SIMD (istruzione singola, dati multipli), che elabora più punti dati contemporaneamente per accelerare l'aumento dei dati delle immagini e gestire grandi dataset in modo efficiente.
- Tre livelli di aumento dei dati: migliora i dati in tre modi. Per esempio, gli aumenti a livello di pixel regolano luminosità e colore senza modificare gli oggetti. Gli aumenti a livello spaziale modificano invece la posizione degli oggetti preservando i dettagli chiave, mentre quelli a livello di mescolamento fondono parti di immagini diverse per creare nuovi campioni.
Perché usare l'integrazione di Albumentations?#
Forse ti stai chiedendo: esistono molti modi per applicare aumenti dei dati a un dataset e potresti persino crearne di tuoi con strumenti come OpenCV. Perché scegliere allora un'integrazione che supporta una libreria come Albumentations?
Creare manualmente aumenti dei dati con strumenti come OpenCV può richiedere molto tempo e una certa esperienza. Inoltre, può essere complicato perfezionare le trasformazioni per ottenere i risultati migliori. L'integrazione di Albumentations semplifica questo processo. Offre molte trasformazioni già pronte che possono farti risparmiare tempo e fatica nella preparazione del dataset.
Un altro motivo per scegliere l'integrazione di Albumentations è la sua perfetta compatibilità con la pipeline di addestramento dei modelli Ultralytics. Semplifica notevolmente l'addestramento personalizzato di YOLO11, poiché gli aumenti dei dati vengono applicati automaticamente durante l'addestramento insieme agli aumenti integrati di Ultralytics. Semplifica il processo, così puoi concentrarti sul miglioramento del modello invece che sulla preparazione dei dati.
Per iniziare a usare l'integrazione di Albumentations#
È interessante notare che usare l'integrazione di Albumentations per addestrare Ultralytics YOLO11 è più semplice di quanto possa sembrare. Una volta configurate le librerie giuste, l'integrazione applica automaticamente gli aumenti dei dati alle immagini durante l'addestramento. Aiuta il modello ad apprendere da diverse varianti delle immagini usando lo stesso dataset.
Vediamo ora come installare e usare l'integrazione di Albumentations per addestrare su misura Ultralytics YOLO11.
Installazione del pacchetto Python Ultralytics e di Albumentations#
Prima di applicare gli aumenti, è necessario installare sia il pacchetto Python Ultralytics sia Albumentations. L'integrazione è stata progettata affinché entrambe le librerie funzionino insieme per impostazione predefinita, quindi non devi preoccuparti di configurazioni complesse.
L'intera procedura d'installazione si completa in un paio di minuti con un solo comando usando pip, il gestore di pacchetti per l'installazione delle librerie Python, come mostrato nell'immagine qui sotto.

Fig. 2 Installazione di Ultralytics e Albumentations.
Una volta installato Albumentations, la modalità di addestramento dei modelli Ultralytics applica automaticamente gli aumenti alle immagini durante l'addestramento. Se Albumentations non è installato, questi aumenti non verranno applicati. Puoi anche sostituire gli aumenti predefiniti con le tue trasformazioni personalizzate di Albumentations, passandole all'argomento di addestramento augmentations.
Addestrare Ultralytics YOLO11 con l'integrazione di Albumentations#
Vediamo più da vicino cosa succede dietro le quinte nell'integrazione di Albumentations.
Ecco una panoramica più dettagliata degli aumenti dei dati applicati durante l'addestramento di Ultralytics YOLO11:
- Sfocatura: questa trasformazione applica una leggera sfocatura a un'immagine. Aiuta il modello a rilevare gli oggetti anche quando non sono a fuoco.
- Sfocatura mediana: riduce il rumore casuale preservando i bordi degli oggetti nell'immagine. In questo modo, il modello riesce più facilmente a rilevare gli oggetti in ambienti complessi.
- Scala di grigi: convertendo un'immagine in bianco e nero, questo aumento dei dati può aiutare il modello a concentrarsi sulle forme e sulle texture invece che sui colori.
- CLAHE (equalizzazione adattiva dell'istogramma con contrasto limitato): questo aumento dei dati migliora il contrasto nelle immagini, in particolare nelle aree troppo scure o difficili da vedere, come in condizioni di scarsa illuminazione o foschia. Gli oggetti in queste aree diventano così più nitidi e facili da identificare per il modello.

Fig. 3 Un esempio di aumento dei dati in scala di grigi applicato a un'immagine di un gatto.
Applicazioni di Ultralytics YOLO11 e dell'integrazione di Albumentations#
Se stai addestrando su misura Ultralytics YOLO11 per un'applicazione specifica, l'integrazione di Albumentations può aiutarti a migliorare le prestazioni del modello adattandolo a condizioni diverse. Vediamo alcune applicazioni reali e le sfide che questa integrazione può risolvere.
Migliorare l'imaging medico#
L'AI per la visione in ambito sanitario aiuta i medici ad analizzare le immagini mediche con maggiore precisione, facilitando la diagnosi e migliorando l'assistenza ai pazienti. In effetti, circa un quinto delle organizzazioni sanitarie usa già soluzioni di AI.
Tuttavia, lo sviluppo di queste soluzioni di visione artificiale comporta una serie di sfide. Le immagini mediche possono variare notevolmente da un ospedale all'altro, per fattori quali le differenze nelle apparecchiature e nelle impostazioni, e persino l'esperienza dei tecnici. Le variazioni di luminosità, contrasto ed esposizione possono influire sulla coerenza e sulla precisione dei modelli di AI per la visione, rendendo difficile garantire prestazioni affidabili in ambienti diversi.
È qui che l'integrazione di strumenti come Albumentations diventa essenziale. Generando diverse versioni aumentate della stessa scansione, Albumentations consente al modello di apprendere da immagini di qualità varia. In questo modo il modello diventa più robusto e può rilevare le malattie con precisione sia nelle immagini di alta qualità sia in quelle di bassa qualità.

Fig. 4 Immagini radiografiche aumentate.
Migliorare la sicurezza e la videosorveglianza#
Un'altra applicazione interessante dell'AI per la visione è la sicurezza e la videosorveglianza. Il rilevamento di oggetti in tempo reale può aiutare i team di sicurezza a identificare rapidamente potenziali minacce.
Una delle principali criticità di questa applicazione è che le telecamere di sicurezza registrano immagini in condizioni di illuminazione diverse durante la giornata, e queste condizioni possono influire notevolmente sul modo in cui un modello interpreta le immagini. Fattori come la scarsa illuminazione, i riflessi o la visibilità ridotta possono rendere difficile per i modelli di visione artificiale rilevare gli oggetti o riconoscere potenziali minacce in modo coerente.
L'integrazione di Albumentations aiuta applicando trasformazioni che imitano condizioni di illuminazione diverse. In questo modo, il modello impara a rilevare gli oggetti sia in ambienti luminosi sia in condizioni di scarsa illuminazione, diventando più affidabile e migliorando i tempi di risposta nelle situazioni difficili.
Ripensare i flussi di lavoro nel commercio al dettaglio e l'esperienza dei clienti#
Una fuoriuscita in una corsia del supermercato, un cane che corre in un negozio o un bambino che rovescia un espositore sono solo alcuni esempi di eventi quotidiani che possono rappresentare casi limite per gli ambienti di AI per la visione nel commercio al dettaglio. La visione artificiale viene sempre più usata per migliorare l'esperienza dei clienti, monitorando il comportamento dei clienti, il flusso di persone e i prodotti sugli scaffali. Tuttavia, per i sistemi di AI può essere difficile comprendere ed elaborare con precisione queste situazioni del mondo reale.
Anche se non è possibile rappresentare ogni scenario in un dataset di visione artificiale, l'integrazione di Albumentations aiuta ad aumentare i dati per coprire molte situazioni possibili, come illuminazione imprevista, angolazioni insolite o ostacoli. Questo aiuta i modelli di visione artificiale ad adattarsi a condizioni diverse, migliorando la capacità di gestire i casi limite e formulare previsioni accurate in ambienti di vendita al dettaglio dinamici.
Punti chiave#
Raccogliere dati diversificati del mondo reale per addestrare un modello può essere complicato, ma Albumentations semplifica il compito creando variazioni delle immagini che aiutano i modelli ad adattarsi a condizioni diverse.
L'integrazione di Albumentations supportata da Ultralytics semplifica l'applicazione di questi aumenti dei dati durante l'addestramento personalizzato di YOLO11. Il risultato è una qualità migliore dei dataset, a vantaggio di numerosi settori grazie a modelli di AI per la visione più precisi e affidabili.
Unisciti alla nostra community ed esplora il nostro repository GitHub per saperne di più sull'AI; dai anche un'occhiata alle nostre opzioni di licenza per dare il via ai tuoi progetti di AI per la visione. Ti interessano innovazioni come l'AI nel settore manifatturiero o la visione artificiale nelle auto a guida autonoma? Visita le nostre pagine dedicate alle soluzioni per saperne di più.
Scritto da
Commenti
Fai una domanda, condividi i tuoi risultati o aiuta qualcun altro.










