Cliccando su “Accetta tutti i cookie”, l'utente accetta di memorizzare i cookie sul proprio dispositivo per migliorare la navigazione del sito, analizzare l'utilizzo del sito e assistere le nostre attività di marketing. Maggiori informazioni
Impostazioni dei cookie
Cliccando su “Accetta tutti i cookie”, l'utente accetta di memorizzare i cookie sul proprio dispositivo per migliorare la navigazione del sito, analizzare l'utilizzo del sito e assistere le nostre attività di marketing. Maggiori informazioni
Scoprite 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, raccogliere un insieme diversificato di immagini per l'addestramento dei modelli di Vision AI può essere una parte cruciale del processo. Spesso richiede molto tempo e denaro e, a volte, le immagini raccolte non sono ancora abbastanza varie affinché i modelli imparino efficacemente.
Ad esempio, i modelli di visione artificiale 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 hai difficoltà con la 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 dataset, 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, è possibile creare dati visivi diversi. Questa integrazione semplifica il processo di addestramento di YOLO11 aumentando automaticamente le immagini di addestramento, con conseguente miglioramento delle prestazioni del modello.
In questo articolo, esploreremo come è possibile utilizzare l'integrazione di Albumentations, i suoi vantaggi e il suo impatto sull'addestramento del modello.
Cos'è Albumentations?
I modelli di computer vision possono apprendere da un'ampia serie di immagini di alta qualità per riconoscere oggetti in diversi ambienti. La raccolta di grandi dataset da fonti del mondo reale può essere lenta, costosa e inefficiente. Per semplificare questo compito, è possibile utilizzare l'image data augmentation per creare nuove variazioni di immagini esistenti, aiutando i modelli a imparare da diversi scenari senza raccogliere ulteriori dati.
Nello specifico, puoi sfruttare Albumentations, una libreria open-source introdotta per l'efficiente data augmentation delle immagini nel 2018. Supporta una varietà di operazioni, da 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 data augmentation 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. Si basa su librerie ottimizzate come OpenCV e NumPy, gestisce grandi insiemi di dati con tempi di elaborazione minimi, rendendolo ideale per un rapido incremento dei dati durante l'addestramento del modello.
Ecco alcune altre caratteristiche chiave di Albumentations:
Ampia gamma di trasformazioni: Albumentations offre più di 70 tipi di accrescimenti. Queste variazioni aiutano i modelli a imparare a detect gli oggetti nonostante i cambiamenti di illuminazione, angolazione o sfondo.
Ottimizzato per la velocità: Utilizza tecniche di ottimizzazione avanzate come SIMD (Single Instruction, Multiple Data), che elabora più punti dati contemporaneamente per accelerare l'aumento dei dati e gestire in modo efficiente grandi dataset.
Tre livelli di aumento dati: Migliora i dati in tre modi. Ad esempio, gli aumenti a livello di pixel regolano la luminosità e il colore senza alterare gli oggetti. Nel frattempo, gli aumenti a livello spaziale modificano il posizionamento degli oggetti preservando i dettagli chiave e gli aumenti a livello di fusione combinano parti di immagini diverse per creare nuovi campioni.
Perché dovresti usare l'integrazione Albumentations?
Ci si potrebbe chiedere: ci sono molti modi per applicare gli incrementi a un set di dati, e si possono anche creare da soli utilizzando strumenti come OpenCV. Quindi, perché scegliere un'integrazione che supporti una libreria come Albumentations?
La creazione manuale di 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 semplifica questo processo. Offre molte trasformazioni pronte all'uso che possono far risparmiare tempo e fatica nella preparazione del set di dati.
Un altro motivo per scegliere l'integrazione di Albumentations è che funziona senza problemi con la pipeline diformazione dei modelli di Ultralytics . È molto più facile addestrare YOLO11 in modo personalizzato, poiché gli incrementi vengono applicati automaticamente durante l'addestramento. Questo semplifica il processo e consente di concentrarsi maggiormente sul miglioramento del modello piuttosto che sulla preparazione dei dati.
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'aumento dei dati delle immagini durante l'addestramento. Questo aiuta il modello ad apprendere da diverse variazioni di immagini utilizzando lo stesso set di dati.
Vediamo quindi come installare e utilizzare l'integrazione di Albumentations per l'addestramento personalizzato di YOLO11.
Installazione del pacchetto Ultralytics Python e di Albumentations
Prima di applicare gli incrementi, è necessario installare sia il pacchettoUltralytics Python che Albumentations. L'integrazione è stata realizzata in modo che le due librerie funzionino insieme senza problemi per impostazione predefinita, quindi non è necessario preoccuparsi 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 addestramento del modello Ultralytics applica automaticamente gli aumenti delle immagini durante l'addestramento. Se Albumentations non è installato, questi aumenti non verranno applicati. Per maggiori dettagli, è possibile consultare la documentazione ufficiale di Ultralytics .
Formazione di YOLO11 con l'aiuto dell'integrazione di Albumentations
Cerchiamo di capire meglio cosa succede sotto il cofano dell'integrazione di Albumentations.
Ecco uno sguardo ravvicinato ai potenziamenti applicati durante l'addestramento di YOLO11 :
Sfocatura: questa trasformazione aggiunge una leggera sfocatura all'immagine. Aiuta il modello a detect 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 detect 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 texture invece che sui colori.
CLAHE (Contrast limited adaptive histogram equalization): Questa aumentazione aumenta il contrasto nelle immagini, in particolare nelle aree troppo scure o difficili da vedere, come in condizioni di scarsa illuminazione o nebbiose. Questo rende gli oggetti in quelle aree più chiari e più facili da identificare per il modello.
Fig 3. Esempio di aumento della scala di grigi applicato a un'immagine di un gatto.
Applicazioni di YOLO11 e dell'integrazione di Albumentations
Se state addestrando YOLO11 per un'applicazione specifica, l'integrazione di Albumentations può contribuire a migliorare le prestazioni del modello adattandolo alle varie condizioni. Vediamo alcune applicazioni reali e le sfide che questa integrazione può risolvere.
Tuttavia, la creazione di queste soluzioni di computer vision comporta una serie di sfide. Le scansioni mediche possono variare ampiamente tra gli ospedali, influenzate da fattori come diverse attrezzature, impostazioni e persino l'esperienza dei tecnici. Variazioni di luminosità, contrasto ed esposizione possono influire sulla coerenza e l'accuratezza dei modelli di Vision AI, rendendo difficile per loro funzionare in modo affidabile in ambienti diversi.
È qui che l'integrazione di strumenti come Albumentations diventa essenziale. Generando più versioni aumentate della stessa scansione, Albumentations consente al modello di imparare da una varietà di qualità di immagini. In questo modo il modello diventa più robusto, consentendogli di detect con precisione detect malattie sia nelle immagini di alta che di bassa qualità.
Un'altra interessante applicazione della Vision AI è nella sicurezza e nella 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, il bagliore o la scarsa visibilità possono rendere difficile per i modelli di visione computerizzata detect 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 detect 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 del cliente
Una fuoriuscita in un corridoio di un supermercato, un cane che corre in un negozio o un bambino che fa cadere un espositore di prodotti sono solo alcuni esempi di eventi quotidiani che possono essere casi limite per la Vision AI nel settore retail. La computer vision è sempre più utilizzata per migliorare l'esperienza del cliente monitorando 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 accuratamente per i sistemi di AI.
Sebbene non tutti gli scenari possano essere rappresentati in un dataset di computer vision, l'integrazione di Albumentations aiuta aumentando i dati per coprire molte situazioni possibili, come illuminazione imprevista, angolazioni insolite o ostruzioni. Ciò aiuta i modelli di computer vision ad adattarsi a varie condizioni, migliorando la loro capacità di gestire casi limite ed effettuare previsioni accurate in ambienti di vendita al dettaglio dinamici.
Punti chiave
La raccolta di dati diversificati del mondo reale per l'addestramento dei modelli può essere complicata, ma Albumentations lo rende più semplice creando variazioni di immagini che aiutano i modelli ad adattarsi a 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ù precisi e affidabili.