Sintonizzati su YOLO Vision 2025!
25 settembre 2025
10:00 — 18:00 BST
Evento ibrido
Yolo Vision 2024

Esplorazione dell'etichettatura dei dati per progetti di computer vision

Abirami Vina

4 minuti di lettura

2 settembre 2024

Leggi la nostra analisi approfondita sull'etichettatura dei dati in relazione ai progetti di computer vision e scopri come etichettare i dati visivi e perché è così importante.

L'intelligenza artificiale (AI) si concentra sul fornire alle macchine capacità simili a quelle umane, e uno dei modi più popolari per farlo è attraverso l'apprendimento supervisionato. In altre parole, insegnare ai modelli di AI mostrando loro esempi etichettati può aiutarli a imparare dai modelli e a migliorare nelle attività. È molto simile a come gli esseri umani imparano dall'esperienza. Quindi, come vengono creati questi esempi etichettati?

L'annotazione dei dati comporta l'etichettatura o il tagging dei dati per aiutare gli algoritmi di machine learning a comprenderli. Nella computer vision, questo significa contrassegnare immagini o video per riconoscere e classificare accuratamente oggetti, azioni o scene. L'etichettatura dei dati è fondamentale perché il successo di un modello di intelligenza artificiale dipende fortemente dalla qualità dei dati etichettati su cui è addestrato.

Gli studi dimostrano che oltre l'80% del tempo di un progetto di IA viene speso per la gestione dei dati, dalla raccolta e aggregazione all'etichettatura e pulizia. Questo dimostra quanto sia importante l'annotazione dei dati nello sviluppo di modelli di IA. L'utilizzo di dati annotati di alta qualità consente ai modelli di IA di eseguire attività come il riconoscimento facciale e il rilevamento di oggetti con maggiore accuratezza e affidabilità in situazioni reali.

Perché l'annotazione dei dati è necessaria

L'annotazione dei dati costituisce la base delle prestazioni di un modello di computer vision. I dati etichettati sono la ground truth che il modello utilizza per apprendere ed effettuare previsioni. I dati di ground truth sono fondamentali perché rappresentano il mondo reale che il modello cerca di comprendere. Senza questa base di riferimento affidabile, il modello di intelligenza artificiale sarebbe come una nave che naviga senza bussola. 

__wf_reserved_inherit
Fig 1. Verità di base contro previsione.

Un'etichettatura accurata aiuta questi modelli a capire cosa stanno vedendo e porta a un processo decisionale migliore. Se i dati sono etichettati in modo errato o incoerente, il modello farà fatica a fare previsioni e decisioni corrette, proprio come uno studente che impara da libri di testo errati. Grazie ai dati annotati, un modello può apprendere attività come la classificazione delle immagini, la segmentazione delle istanze e la stima della posa di oggetti in immagini e video. 

Le migliori risorse per i dataset

Prima di creare un nuovo dataset ed etichettare meticolosamente immagini e video, è consigliabile verificare se è possibile utilizzare dataset preesistenti per il tuo progetto. Esistono diversi repository open source fantastici in cui è possibile accedere gratuitamente a dataset di alta qualità. Alcuni dei più popolari includono:

  • ImageNet: Viene comunemente utilizzato per l'addestramento di modelli di classificazione delle immagini.
  • COCO: Questo set di dati è progettato per l'object detection, la segmentazione e il sottotitolaggio di immagini.
  • PASCAL VOC: supporta attività di rilevamento e segmentazione di oggetti.
__wf_reserved_inherit
Fig. 2. Esempi di dati nel dataset COCO.

Quando si sceglie un dataset, è importante considerare fattori come la sua adeguatezza al progetto, le dimensioni del dataset, la sua diversità e la qualità delle etichette. Inoltre, assicurati di rivedere i termini di licenza del dataset per evitare eventuali ripercussioni legali e verifica se i dati sono formattati in modo adatto al tuo flusso di lavoro e ai tuoi strumenti.

Creare un dataset personalizzato è un'ottima opzione se i dataset esistenti non soddisfano appieno le tue esigenze. Puoi raccogliere immagini utilizzando strumenti come webcam, droni o smartphone, a seconda di ciò che richiede il tuo progetto. Idealmente, il tuo dataset personalizzato dovrebbe essere diversificato, bilanciato e veramente rappresentativo del problema che stai cercando di risolvere. Ciò potrebbe significare acquisire immagini in diverse condizioni di illuminazione, da varie angolazioni e in molteplici ambienti.

Se hai la possibilità di raccogliere solo un numero limitato di immagini o video, l'aumento dei dati è una tecnica utile. Consiste nell'espandere il tuo dataset applicando trasformazioni come rotazione, capovolgimento o regolazioni del colore alle immagini esistenti. Aumenta le dimensioni del tuo dataset e rende il tuo modello più robusto e più capace di gestire le variazioni nei dati. Utilizzando un mix di dataset open-source, dataset personalizzati e dati aumentati, puoi aumentare significativamente le prestazioni dei tuoi modelli di computer vision.

Tipi di tecniche di annotazione delle immagini

Prima di iniziare ad annotare le immagini, è importante avere familiarità con i diversi tipi di annotazioni. Ti aiuterà a scegliere quello giusto per il tuo progetto. Successivamente, esamineremo alcuni dei principali tipi di annotazioni. 

Riquadri di delimitazione

I bounding box sono il tipo di annotazione più comune nella computer vision. Si tratta di rettangoli utilizzati per contrassegnare la posizione di un oggetto in un'immagine. Questi rettangoli sono definiti dalle coordinate dei loro angoli e aiutano i modelli di IA a identificare e localizzare gli oggetti. I bounding box sono utilizzati principalmente per l'object detection.

__wf_reserved_inherit
Fig 3. Esempio di bounding box.

Maschere di segmentazione

A volte, un oggetto deve essere rilevato in modo più accurato rispetto a un semplice riquadro di delimitazione disegnato attorno ad esso. Potresti essere interessato al contorno degli oggetti in un'immagine. In tal caso, le maschere di segmentazione consentono di delineare oggetti complessi. Le maschere di segmentazione sono una rappresentazione più dettagliata a livello di pixel. 

Queste maschere possono essere utilizzate per la segmentazione semantica e la segmentazione di istanza. La segmentazione semantica comporta l'etichettatura di ogni pixel in un'immagine in base all'oggetto o all'area che rappresenta, come un pedone, un'auto, una strada o un marciapiede. La segmentazione di istanza, tuttavia, fa un ulteriore passo avanti identificando e separando ogni oggetto individualmente, come distinguere tra ogni auto in un'immagine, anche se sono tutte dello stesso tipo.

__wf_reserved_inherit
Fig. 4. Un esempio di segmentazione semantica (a sinistra) e maschere di instance segmentation (a destra).

Cuboidi 3D

I cuboidi 3D sono simili alle bounding box, ma si distinguono per l'aggiunta di informazioni sulla profondità e per la fornitura di una rappresentazione 3D di un oggetto. Queste informazioni extra consentono ai sistemi di comprendere la forma, il volume e la posizione degli oggetti in uno spazio 3D. I cuboidi 3D sono spesso utilizzati nelle auto a guida autonoma per misurare la distanza degli oggetti dal veicolo.

__wf_reserved_inherit
Fig 5. Un esempio di cuboidi 3D.

Punti chiave e punti di riferimento

Un altro tipo interessante di annotazione sono i punti chiave, in cui punti specifici come occhi, nasi o articolazioni vengono contrassegnati sugli oggetti. I punti di riferimento fanno un ulteriore passo avanti collegando questi punti per catturare la struttura e il movimento di forme più complesse, come volti o pose del corpo. Questi tipi di annotazioni vengono utilizzati per applicazioni come il riconoscimento facciale, l'acquisizione del movimento e la realtà aumentata. Migliorano anche l'accuratezza dei modelli di IA in attività come il riconoscimento dei gesti o l'analisi delle prestazioni sportive.

__wf_reserved_inherit
Fig 6. Un esempio di punti chiave.

Come annotare i dati utilizzando labelImg

Ora che abbiamo discusso i diversi tipi di annotazioni, cerchiamo di capire come è possibile annotare le immagini utilizzando uno strumento popolare, LabelImg. LabelImg è uno strumento open-source che semplifica l'annotazione delle immagini e può essere utilizzato per creare dataset nel formato YOLO (You Only Look Once). È un'ottima scelta per i principianti che lavorano su piccoli progetti Ultralytics YOLOv8.

La configurazione di LabelImg è semplice. Innanzitutto, assicurati di avere Python 3 installato sul tuo computer. Quindi, puoi installare LabelImg con un comando rapido.

Una volta installato, è possibile avviare lo strumento utilizzando il comando:

LabelImg funziona su più piattaforme, tra cui Windows, macOS e Linux. In caso di problemi durante l'installazione, il repository ufficiale di LabelImg può fornire istruzioni più dettagliate.

__wf_reserved_inherit
Fig. 7. Utilizzo di LabelImg per l'annotazione di immagini.

Una volta avviato lo strumento, segui questi semplici passaggi per iniziare a etichettare le tue immagini:

  • Imposta le tue classi: Inizia definendo l'elenco delle classi (categorie) che desideri annotare in un file denominato “predefined_classes.txt.” Questo file consente al software di sapere quali oggetti etichetterai nelle tue immagini.
  • Passa al formato YOLO: Per impostazione predefinita, LabelImg utilizza il formato PASCAL VOC, ma se stai lavorando con YOLO, dovrai cambiare formato. Basta fare clic sul pulsante “PascalVOC” sulla barra degli strumenti per passare a YOLO.
  • Inizia ad annotare: Utilizza le opzioni "Apri" o "ApriDIR" per caricare le tue immagini. Quindi, disegna dei rettangoli di delimitazione attorno agli oggetti che desideri annotare e assegna l'etichetta di classe corretta. Dopo aver etichettato ogni immagine, salva il tuo lavoro. LabelImg creerà un file di testo con lo stesso nome della tua immagine, contenente le annotazioni YOLO.
  • Salva e rivedi: Le annotazioni vengono salvate in un file .txt nel formato YOLO. Il software salva anche un file “classes.txt che elenca tutti i nomi delle classi.

Strategie efficienti di etichettatura dei dati

Per rendere più agevole il processo di etichettatura dei dati, è necessario tenere a mente alcune strategie chiave. Ad esempio, linee guida chiare per l'annotazione sono fondamentali. Senza di esse, diversi annotatori potrebbero interpretare un compito in modo diverso. 

Supponiamo di dover annotare gli uccelli nelle immagini con dei bounding box. Un annotatore potrebbe etichettare l'intero uccello, mentre un altro potrebbe etichettare solo la testa o le ali. Questo tipo di incoerenza può confondere il modello durante l'addestramento. Fornendo definizioni chiare, come "etichettare l'intero uccello comprese le ali e la coda", insieme a esempi e istruzioni per i casi più complessi, è possibile assicurarsi che i dati siano etichettati in modo accurato e coerente.

Anche i controlli di qualità regolari sono importanti per mantenere standard elevati. Stabilendo parametri di riferimento e utilizzando metriche specifiche per rivedere il lavoro, è possibile mantenere i dati accurati e perfezionare il processo attraverso un feedback continuo. 

L'etichettatura dei dati in poche parole

L'annotazione dei dati è un concetto semplice che può avere un impatto significativo sul tuo modello di computer vision. Che tu stia utilizzando strumenti come LabelImg per annotare le immagini o addestrando modelli su set di dati open source, la comprensione dell'etichettatura dei dati è fondamentale. Le strategie di etichettatura dei dati possono aiutare a semplificare l'intero processo e a renderlo più efficiente. Prendere il tempo necessario per perfezionare il tuo approccio all'annotazione può portare a risultati di intelligenza artificiale migliori e più affidabili.

Continua a esplorare e ad ampliare le tue competenze! Rimani in contatto con la nostra community per continuare a imparare sull'AI! Dai un'occhiata al nostro repository GitHub per scoprire come stiamo utilizzando l'AI per creare soluzioni innovative in settori come il manufacturing e l'assistenza sanitaria. 🚀

Costruiamo insieme il futuro
dell'AI!

Inizia il tuo viaggio con il futuro del machine learning

Inizia gratis
Link copiato negli appunti