Controllo verde
Link copiato negli appunti

Utilizzare gli aumenti di Albumentations per diversificare i dati

Scopri come utilizzare Albumentations per aumentare la formazione personalizzata di Ultralytics YOLO11 per migliorare le prestazioni del modello con dati di formazione diversi.

Quando si costruisce una soluzione di computer vision, la raccolta di una serie di immagini diversificate per l'addestramento dei modelli AI di visione può essere una parte cruciale del processo. Spesso richiede molto tempo e denaro e a volte le immagini raccolte non sono abbastanza varie da permettere ai modelli di apprendere in modo efficace.

Ad esempio, i modelli di visione computerizzata come Ultralytics YOLO11 possono essere addestrati su set di dati di immagini per vari compiti di computer vision relativi a diverse applicazioni. La diversità dei dati è fondamentale perché aiuta il modello a generalizzarsi meglio, consentendogli di riconoscere oggetti e modelli in un'ampia gamma di scenari reali.

Se sei alle prese con una 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 aiutare ad aumentare la varietà del tuo set di dati, migliorando la capacità del modello di gestire una gamma più ampia di condizioni.

Ecco perché Ultralytics supporta un'integrazione per l'aumento dei dati delle immagini. Utilizzando Albumentations, un popolare strumento che offre una raccolta di trasformazioni, puoi creare dati visivi diversi. Questa integrazione semplifica il processo di formazione di YOLO11 aumentando automaticamente le immagini di formazione e migliorando le prestazioni del modello. 

In questo articolo analizzeremo come puoi utilizzare l'integrazione di Albumentations, i suoi vantaggi e il suo impatto sulla formazione dei modelli.

Che cos'è l'albume?

I modelli di computer vision possono imparare da un ampio set di immagini di alta qualità per riconoscere oggetti in ambienti diversi. La raccolta di grandi set di dati da fonti reali può essere lenta, costosa e inefficiente. Per semplificare questo compito, puoi usare l 'aumento dei dati delle immagini per creare nuove variazioni di immagini esistenti, aiutando i modelli ad apprendere da scenari diversi senza raccogliere altri dati.

In particolare, puoi sfruttare Albumentations, una libreria open-source introdotta nel 2018 per aumentare in modo efficiente i dati delle immagini. Supporta una varietà di operazioni, da semplici modifiche geometriche come rotazioni e capovolgimenti a regolazioni più complesse come luminosità, contrasto e aggiunta di rumore.

Figura 1. Esempi di diversi tipi di aumento dei dati delle immagini.

Caratteristiche principali di Albumentations

Albumentations è noto per le sue elevate prestazioni, il che significa che è in grado di elaborare le immagini in modo rapido ed efficiente. Basato su librerie ottimizzate come OpenCV e NumPy, gestisce grandi insiemi di dati con tempi di elaborazione minimi, il che lo rende ideale per aumentare rapidamente i dati durante l'addestramento del modello.

Ecco altre caratteristiche chiave di Albumentations:

  • Ampia gamma di trasformazioni: Albumentations offre più di 70 tipi di modifiche. Queste variazioni aiutano i modelli a imparare a rilevare gli oggetti nonostante i cambiamenti di illuminazione, angolazione o sfondo.
  • Ottimizzato per la velocità: utilizza tecniche di ottimizzazione avanzate come la SIMD (Single Instruction, Multiple Data), che elabora più punti di dati contemporaneamente per velocizzare l'aumento delle immagini e gestire in modo efficiente i dataset di grandi dimensioni.
  • Tre livelli di potenziamento: Migliora i dati in tre modi. Ad esempio, i miglioramenti a livello di pixel regolano la luminosità e il colore senza alterare gli oggetti. Nel frattempo, i miglioramenti a livello spaziale modificano il posizionamento degli oggetti preservando i dettagli chiave, mentre i miglioramenti a livello di mix fondono parti di immagini diverse per creare nuovi campioni.

Perché dovresti usare l'integrazione di Albumentations?

Ti starai chiedendo: ci sono molti modi per applicare gli aumenti a un set di dati, e puoi anche crearne di tuoi usando strumenti come OpenCV. Quindi, perché scegliere un'integrazione che supporti una libreria come Albumentations?

Creare manualmente gli incrementi con strumenti come OpenCV può richiedere molto tempo e una certa esperienza. Può anche essere complicato mettere a punto le trasformazioni per ottenere i risultati migliori. L'integrazione di Albumentations rende questo processo più semplice. Offre molte trasformazioni pronte all'uso che possono farti risparmiare tempo e fatica nella preparazione del tuo set di dati.

Un altro motivo per scegliere l'integrazione di Albumentations è che funziona senza problemi con la pipeline diformazione dei modelli di Ultralytics . In questo modo è molto più facile addestrare YOLO11 in modo personalizzato, poiché gli incrementi vengono applicati automaticamente durante l'addestramento. Questo semplifica il processo, in modo che tu possa concentrarti maggiormente sul miglioramento del modello piuttosto che sulla preparazione dei dati. 

Come iniziare con l'integrazione di Albumentations

È interessante notare che l'utilizzo delle integrazioni di Albumentations per addestrare YOLO11 è più semplice di quanto possa sembrare. Una volta impostate le librerie giuste, l'integrazione applica automaticamente l'incremento dei dati delle immagini durante l'addestramento. In questo modo il modello apprende da diverse varianti di immagini utilizzando lo stesso set di dati.

Vediamo quindi come installare e utilizzare l'integrazione Albumentations per l'addestramento personalizzato di YOLO11.

Installazione del pacchetto Ultralytics Python e di Albumentations

Prima di applicare gli aumenti, è necessario installare sia il pacchettoUltralytics Python che Albumentations. L'integrazione è stata realizzata in modo che entrambe le librerie lavorino insieme senza problemi per impostazione predefinita, quindi non dovrai preoccuparti di configurazioni complesse.

L'intero processo di installazione può essere completato in un paio di minuti con un singolo comando pip, che è uno strumento di gestione dei pacchetti per l'installazione delle librerie Python , come mostrato nell'immagine sottostante. 

Figura 2. Installazione di Ultralytics e Albumentations.

Una volta installato Albumentations, la modalità di formazione del modello Ultralytics applica automaticamente gli aumenti delle immagini durante la formazione. Se Albumentations non è installato, questi aumenti non verranno applicati. Per maggiori dettagli, puoi consultare la documentazione ufficiale di Ultralytics .

Addestramento di YOLO11 con l'aiuto dell'integrazione di Albumentations

Vediamo di capire meglio cosa succede sotto il cofano dell'integrazione di Albumentations. 

Ecco un'occhiata più da vicino alle migliorie applicate durante l'addestramento di YOLO11 :

  • Sfocatura: questa trasformazione aggiunge una leggera sfocatura all'immagine. Aiuta il modello a rilevare gli oggetti anche quando sono fuori fuoco.
  • Sfocatura mediana: Riduce il rumore casuale preservando i bordi degli oggetti in un'immagine. In questo modo il modello è in grado di rilevare più facilmente gli oggetti in ambienti complessi.
  • Scala di grigi: Convertendo un'immagine in bianco e nero, questo aumento può aiutare il modello a concentrarsi su forme e strutture invece che sui colori.
  • CLAHE (Contrast limited adaptive histogram equalization): Questo aumento aumenta il contrasto delle immagini, in particolare nelle aree troppo scure o difficili da vedere, come in condizioni di scarsa illuminazione o di foschia. In questo modo gli oggetti in quelle aree sono più chiari e più facili da identificare per il modello.
Figura 3. Un esempio di aumento della scala di grigi applicato all'immagine di un gatto.

Applicazioni di YOLO11 e dell'integrazione di Albumentations

Se stai addestrando YOLO11 per un'applicazione specifica, l'integrazione di Albumentations può aiutarti a migliorare le prestazioni del modello adattandolo alle varie condizioni. Vediamo alcune applicazioni reali e le sfide che questa integrazione può risolvere.

Migliorare l'imaging medico

L'IA di visione nel settore sanitario sta aiutando i medici ad analizzare le immagini mediche in modo più accurato per assistere le diagnosi e migliorare la cura dei pazienti. In effetti, circa un quinto delle organizzazioni sanitarie sta già utilizzando soluzioni di IA. 

Tuttavia, la creazione di queste soluzioni di computer vision comporta una serie di sfide. Le scansioni mediche possono variare notevolmente da un ospedale all'altro, influenzate da fattori quali le diverse attrezzature, le impostazioni e persino l'esperienza dei tecnici. Le variazioni di luminosità, contrasto ed esposizione possono influenzare la coerenza e l'accuratezza dei modelli di Vision AI, rendendo difficile il loro funzionamento affidabile in ambienti diversi.

È qui che l'integrazione di strumenti come Albumentations diventa essenziale. Generando più versioni aumentate della stessa scansione, Albumentations permette al modello di imparare da una varietà di qualità di immagini. Questo aiuta il modello a diventare più robusto, consentendogli di individuare con precisione le malattie sia nelle immagini di alta che di bassa qualità. 

Figura 4. Immagini radiografiche aumentate.

Migliorare la sicurezza e la sorveglianza

Un'altra interessante applicazione della Vision AI è quella della sicurezza e della sorveglianza. Il rilevamento di oggetti in tempo reale può aiutare i team di sicurezza a identificare rapidamente le potenziali minacce. 

Una delle principali preoccupazioni legate a questa applicazione è che le telecamere di sicurezza catturano filmati in varie condizioni di illuminazione durante il giorno e queste condizioni possono influenzare drasticamente il modo in cui un modello comprende tali immagini. Fattori come la scarsa illuminazione, i riflessi o la scarsa visibilità possono rendere difficile per i modelli di visione computerizzata rilevare gli oggetti o riconoscere le potenziali minacce in modo coerente.

L'integrazione di Albumentations aiuta ad applicare trasformazioni per simulare diverse condizioni di illuminazione. In questo modo il modello impara a rilevare gli oggetti sia in ambienti luminosi che in ambienti con scarsa illuminazione, rendendolo più affidabile e migliorando i tempi di risposta in condizioni difficili.

Ridefinire i flussi di lavoro della vendita al dettaglio e l'esperienza dei clienti

Un rovesciamento in una corsia del supermercato, un cane che corre in un negozio o un bambino che rovescia un espositore di prodotti sono solo alcuni esempi di eventi quotidiani che possono rappresentare casi limite per la Vision AI negli ambienti di vendita al dettaglio . La computer vision è sempre più utilizzata per migliorare l'esperienza del cliente, tracciando il comportamento degli acquirenti, monitorando il traffico pedonale e identificando i prodotti sugli scaffali. Tuttavia, queste situazioni del mondo reale possono essere difficili da comprendere ed elaborare con precisione per i sistemi di intelligenza artificiale.

Anche se non tutti gli scenari possono essere rappresentati in un set di dati di computer vision, l'integrazione di Albumentations aiuta ad aumentare i dati per coprire molte situazioni possibili, come illuminazione inaspettata, angoli insoliti o ostacoli. Questo aiuta i modelli di computer vision ad adattarsi alle varie condizioni, migliorando la loro capacità di gestire i casi limite e di fare previsioni accurate in ambienti di vendita dinamici.

Punti di forza

Raccogliere diversi dati del mondo reale per l'addestramento dei modelli può essere complicato, ma Albumentations lo rende più semplice creando variazioni di immagini che aiutano i modelli ad adattarsi alle diverse condizioni. 

L'integrazione di Albumentations supportata da Ultralytics semplifica il processo di applicazione di questi aumenti durante l'addestramento personalizzato di YOLO11. Ciò si traduce in una migliore qualità del set di dati, a vantaggio di un'ampia gamma di settori che producono modelli di Vision AI più accurati e affidabili.

Unisciti alla nostra comunità ed esplora il nostro repository GitHub per saperne di più sull'IA e scopri le nostre opzioni di licenza per dare il via ai tuoi progetti di Vision AI. Sei interessato a innovazioni come l'IA nella produzione o la computer vision nella guida autonoma? Visita le nostre pagine dedicate alle soluzioni per saperne di più. 

Logo di FacebookLogo di TwitterLogo di LinkedInSimbolo di copia-link

Leggi tutto in questa categoria

Costruiamo insieme il futuro
di AI!

Inizia il tuo viaggio nel futuro dell'apprendimento automatico