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
Scopri tutto ciò che c'è da sapere sull'annotazione delle immagini con Ultralytics e sui suoi strumenti integrati per l'etichettatura dei set di dati, la gestione delle annotazioni e la preparazione dei dati per i modelli.
Scala i tuoi progetti di visione artificiale con Ultralytics
Ultralytics ha Ultralytics lanciato Ultralytics , un ambiente progettato per supportare l'intero ciclo di vita dello sviluppo della visione artificiale. La piattaforma centralizza gli strumenti utilizzati per gestire le varie fasi dei flussi di lavoro di visione artificiale, tra cui la preparazione dei set di dati, l'annotazione di immagini e video, l'addestramento dei modelli e la distribuzione.
Nonostante la crescente diffusione in settori quali la guida autonoma e la sanità, lo sviluppo di soluzioni di visione artificiale può ancora essere considerato un processo frammentato. Uno dei motivi principali è che i modelli di visione artificiale dipendono in larga misura dalla qualità dei dati su cui vengono addestrati. Prima ancora di iniziare l'addestramento, è necessario creare, organizzare, verificare ed etichettare i set di dati affinché il modello possa imparare cosa detect riconoscere.
Quando si lavora con dati visivi, questo processo è noto come annotazione dei dati o annotazione delle immagini. Durante l'annotazione delle immagini, alcune parti specifiche di un'immagine vengono contrassegnate e contrassegnate con etichette che guidano il modello durante l'addestramento.
Ad esempio, se l'obiettivo è detect nelle immagini, gli annotatori potrebbero disegnare dei riquadri di delimitazione attorno a ciascun cane per indicare dove si trovano. In attività più complesse, potrebbero delineare la sagoma del cane utilizzando maschere di segmentazione o contrassegnare punti chiave per catturarne la postura. Questi esempi etichettati influenzano direttamente le prestazioni del modello una volta implementato.
Gestire flussi di lavoro di annotazione delle immagini su larga scala può rivelarsi complesso. I set di dati di grandi dimensioni richiedono spesso standard di etichettatura coerenti, la collaborazione tra più annotatori e strumenti che facilitino la revisione e il perfezionamento delle annotazioni.
Ultralytics integra tutto questo con un editor di annotazioni integrato. Supporta diversi tipi di attività di annotazione e offre ai team un modo più semplice per etichettare i dati e preparare set di dati per la visione artificiale all'interno di un unico flusso di lavoro.
Fig. 1. Una panoramica dell'editor di annotazioni nella Ultralytics (Fonte)
In questo articolo vedremo come l'editor di annotazioni Ultralytics aiuti i team ad annotare i set di dati in modo efficiente e a semplificare la preparazione dei dati. Cominciamo!
Annotazione dei dati nella visione artificiale
Prima di approfondire gli strumenti di annotazione delle immagini disponibili sulla Ultralytics , facciamo un passo indietro per capire in cosa consiste l'annotazione dei dati e perché è importante nella realizzazione dei sistemi di visione artificiale.
I modelli di visione artificiale apprendono analizzando vaste raccolte di immagini o video, note come set di dati. Tuttavia, le immagini grezze da sole non forniscono informazioni sufficienti affinché un modello capisca cosa deve detect riconoscere. Per rendere i dati utili all'addestramento, le immagini devono essere etichettate attraverso un processo di etichettatura dei dati, in modo che il modello possa imparare quali oggetti, forme o schemi cercare.
Durante l'annotazione delle immagini, determinati elementi all'interno di un'immagine vengono contrassegnati e dotati di etichette che descrivono ciò che il modello deve apprendere. Questi esempi etichettati guidano i modelli e gli algoritmi di deep learning durante l'addestramento e li aiutano a riconoscere schemi simili durante l'elaborazione di nuove immagini.
A seconda dell'applicazione e del caso d'uso, le diverse attività di visione artificiale richiedono diversi tipi di annotazione delle immagini. Ad esempio, gli annotatori possono tracciare riquadri di delimitazione attorno agli oggetti per il rilevamento degli oggetti, contornare aree di un'immagine per la segmentazione semantica, definire punti chiave per la stima della posa o assegnare etichette all'intera immagine per la classificazione.
Gestione e preparazione dei dati
La preparazione dei dati per i progetti di visione artificiale comporta spesso la gestione di vari formati di file e l'organizzazione dei set di dati. Comprende inoltre la verifica che tutto sia pronto per l'annotazione e l'addestramento degli algoritmi di apprendimento automatico. In molti flussi di lavoro, questo processo è distribuito su più strumenti: i dati devono essere caricati, puliti e trasferiti da un sistema all'altro prima di poter essere utilizzati.
Ultralytics semplifica il processo occupandosi della preparazione dei dati, dell'addestramento dei modelli e della distribuzione all'interno di un unico ambiente. I team possono caricare immagini, video o archivi di set di dati e beneficiare di un approccio completamente personalizzabile alla preparazione dei dati con annotazioni manuali o automatizzate tramite IA. Ultralytics supporta sia i dati grezzi che i formati standard come YOLO COCO, facilitando l'avvio di nuovi progetti. Fornisce inoltre l'accesso ai set di dati esistenti sulla piattaforma, inclusi quelli annotati che i team possono utilizzare per avviare rapidamente nuovi progetti o esperimenti.
Fig. 2. Caricare e gestire set di dati in un unico ambiente sulla Ultralytics . (Fonte)
Una volta che i dati sono disponibili, possono essere gestiti direttamente sulla piattaforma. Gli sviluppatori possono esaminare le immagini, monitorare lo stato di avanzamento delle annotazioni e utilizzare le visualizzazioni integrate per comprendere la distribuzione del set di dati e individuare eventuali lacune.
La piattaforma supporta inoltre la gestione delle versioni dei set di dati, consentendo ai team di acquisire istantanee dei propri dati man mano che questi si evolvono. Ciò semplifica il track , il confronto tra esperimenti e il mantenimento della coerenza durante l'addestramento.
Una volta preparati i dati, i team possono passare all'annotazione delle immagini, durante la quale queste vengono etichettate per aiutare i modelli a imparare cosa detect.
Annotazione dei set di dati sulla Ultralytics
Una volta caricati i dati, il passo successivo è l'annotazione. È in questa fase che i dati delle immagini vengono etichettati, gettando le basi per l'addestramento dei modelli di visione artificiale. Ultralytics include servizi di annotazione delle immagini integrati tramite un editor di annotazione che consente ai team di etichettare e gestire i set di dati direttamente all'interno dello stesso ambiente.
L'editor delle annotazioni si apre in un'interfaccia intuitiva in cui gli utenti possono esaminare le immagini, aggiungere etichette e aggiornare le annotazioni secondo necessità. Tutto è organizzato in un unico posto, rendendo più facile mantenere i set di dati coerenti e pronti per l'addestramento.
I team possono caricare set di dati e iniziare a etichettare le immagini direttamente nel browser, definendo e gestendo le classi di annotazione per garantire che le etichette rimangano coerenti in tutto il set di dati. Man mano che le annotazioni vengono create, gli utenti possono esaminarle visivamente nell'editor, rendendo più facile verificarne l'accuratezza prima di passare all'addestramento del modello.
Strumenti di annotazione delle immagini nella Ultralytics
Ultralytics include inoltre diverse funzionalità che supportano flussi di lavoro efficienti per l'etichettatura dei set di dati, semplificando il processo di annotazione grazie all'uso di algoritmi avanzati.
Ecco alcune delle funzionalità principali disponibili nella Ultralytics :
Annotazione manuale: questo approccio offre agli utenti il massimo controllo e flessibilità nella creazione di annotazioni sulle immagini, quali riquadri di delimitazione, aree di segmentazione o punti chiave, direttamente sulle immagini stesse.
Etichettatura assistita dall'intelligenza artificiale: questa funzione genera automaticamente suggerimenti di annotazione, riducendo la necessità di un'etichettatura manuale. Utilizza SAM Segment Anything Model) per detect o aree con un solo clic, semplificando il processo di annotazione e consentendo agli utenti di esaminare e confermare i suggerimenti prima di aggiungerli al set di dati.
Modifica delle annotazioni: in qualsiasi momento, gli utenti possono modificare o perfezionare le annotazioni delle immagini dopo la loro creazione. Ciò consente di correggere eventuali errori di etichettatura e di garantire la coerenza delle etichette del set di dati durante l'intero processo di annotazione.
Gestione delle classi: i team e i singoli sviluppatori possono definire e organizzare le classi di annotazione utilizzate durante l'etichettatura dei set di dati. Ciò contribuisce a garantire la coerenza delle etichette tra le immagini, aspetto fondamentale per l'addestramento di modelli in grado di riconoscere e distinguere con precisione le diverse classi.
Grazie alla combinazione di strumenti manuali, intelligenza artificiale e automazione, Ultralytics aiuta gli utenti ad annotare le immagini in modo più efficiente. Consente inoltre di preparare dati di addestramento di alta qualità per modelli di visione artificiale scalabili.
Tipi di attività di annotazione supportati
Casi d'uso diversi, come il controllo qualità dei prodotti, richiederanno tipi diversi di annotazione a seconda di ciò che deve essere rilevato all'interno delle immagini o dei video. Come accennato in precedenza, Ultralytics supporta cinque attività di rilevamento degli oggetti, ciascuna con il proprio tipo di annotazione.
Diamo un'occhiata più da vicino alle attività di annotazione supportate dalla piattaforma e a come possono essere utilizzate per etichettare i set di dati.
Rilevamento oggetti
Il rilevamento degli oggetti consente di identificare e localizzare gli oggetti all'interno di un'immagine. Gli annotatori contrassegnano ogni oggetto di interesse utilizzando dei riquadri di delimitazione, indicando la posizione in cui gli elementi compaiono nell'immagine.
Nell'editor delle annotazioni, questa operazione si esegue utilizzando lo strumento "riquadro di selezione". Gli utenti possono attivare la "modalità modifica", cliccare e trascinare per tracciare un rettangolo attorno a un oggetto e assegnare un'etichetta di classe da un menu a tendina.
I riquadri di delimitazione possono essere modificati dopo la loro creazione. Gli annotatori possono ridimensionarli trascinando i punti di controllo agli angoli o lungo i bordi, spostarli trascinando il centro del riquadro oppure eliminarli utilizzando le scorciatoie da tastiera. Queste annotazioni aiutano i modelli di visione artificiale ad apprendere a detect in diverse scene e condizioni.
Fig. 3. Annotazione per il rilevamento di oggetti tramite riquadri di delimitazione nella Ultralytics . (Fonte)
Segmentazione di istanza
La segmentazione per istanza fornisce annotazioni più dettagliate definendo la forma esatta degli oggetti all'interno di un'immagine. Anziché disegnare un semplice riquadro, gli annotatori tracciano i contorni dell'oggetto utilizzando l'annotazione poligonale per creare maschere precise per le attività di segmentazione delle immagini.
L'editor delle annotazioni include uno strumento poligonale dedicato a questa operazione. Gli annotatori posizionano diversi vertici lungo i contorni di un oggetto per delinearne la forma. Una volta posizionati i vertici, è possibile chiudere il poligono per creare una maschera di segmentazione.
I vertici possono essere modificati dopo la creazione del poligono. È possibile spostare i singoli punti per perfezionare i contorni degli oggetti ed eliminare i vertici, se necessario. Queste annotazioni a livello di pixel aiutano i modelli ad apprendere le strutture visive dettagliate e a distinguere gli oggetti che appaiono vicini tra loro.
Stima della posa
Le annotazioni relative alla stima della posa rilevano le posizioni delle articolazioni del corpo e le relazioni tra di esse. Ciò aiuta i modelli a comprendere la struttura e il movimento delle persone o degli animali presenti in un'immagine.
Utilizzando lo strumento per i punti chiave, gli annotatori posizionano i punti chiave che rappresentano le articolazioni del corpo, quali spalle, gomiti, polsi, anche, ginocchia e caviglie. La piattaforma supporta diversi modelli di scheletro integrati, tra cui il formato COCO a 17 punti per le pose COCO , nonché modelli per mani, volti, cani e angoli di scatole.
I modelli consentono di inserire una struttura completa del layout con un solo clic, dopodiché è possibile regolare i singoli punti chiave per adattarli alla posa dell'immagine. Ogni punto chiave può inoltre includere un indicatore di visibilità per segnalare se è visibile o nascosto.
Fig. 4. Annotazione della stima della posa tramite punti chiave e modelli scheletrici. (Fonte)
Riquadri di delimitazione orientati (OBB)
I riquadri di delimitazione orientati rappresentano un'evoluzione dei tradizionali riquadri di delimitazione, in quanto supportano la rotazione. Questo tipo di annotazione è utile quando gli oggetti appaiono inclinati anziché allineati con il fotogramma dell'immagine.
Nell'editor delle annotazioni, gli annotatori possono utilizzare lo strumento "riquadro di delimitazione orientato" per disegnare rettangoli ruotati attorno agli oggetti. Dopo aver disegnato il riquadro iniziale, è possibile utilizzare una maniglia di rotazione per regolare l'angolo, mentre le maniglie agli angoli consentono di ridimensionare il riquadro.
Le annotazioni ruotate vengono spesso utilizzate nelle immagini aeree, nei set di dati relativi alle ispezioni industriali e in altri contesti in cui gli oggetti appaiono in diagonale o da diversi punti di vista.
Fig. 5. Annotazione con riquadri di delimitazione orientati (OBB) per oggetti ruotati nelle immagini aeree. (Fonte)
Classificazione delle immagini
La classificazione delle immagini assegna un'etichetta all'intera immagine, anziché contrassegnare i singoli oggetti al suo interno.
Per i set di dati di classificazione, l'editor di annotazioni mette a disposizione un pannello di selezione delle classi. Gli annotatori possono assegnare etichette alle immagini selezionando una classe dalla barra laterale oppure utilizzando le scorciatoie da tastiera per velocizzare l'operazione.
Queste etichette a livello di immagine aiutano i modelli ad apprendere modelli visivi di alto livello che rappresentano diverse categorie.
Annotazione assistita dall'intelligenza artificiale con SAM
L'etichettatura delle immagini per attività come la segmentazione richiede spesso un lavoro accurato e minuzioso, soprattutto quando è necessario delineare con precisione i contorni degli oggetti. Ultralytics include strumenti di annotazione assistiti dall'intelligenza artificiale che accelerano il processo, garantendo al contempo che le annotazioni siano accurate e facili da verificare.
Ad esempio, gli annotatori possono interagire con un'immagine cliccando sulle parti di un oggetto che desiderano includere nell'annotazione. Possono inoltre contrassegnare le aree da escludere per affinare il risultato. Sulla base di questi input, il modello genera in tempo reale una maschera di segmentazione, che può poi essere revisionata e modificata prima di essere salvata.
Questo approccio semplifica l'analisi di immagini complesse senza dover ricalcare manualmente ogni singolo dettaglio. Allo stesso tempo, gli annotatori mantengono il controllo sul risultato finale, garantendo che le annotazioni rimangano coerenti in tutto il set di dati.
Fig. 6. Segmentazione assistita dall'intelligenza artificiale tramite lo strumento "Smart annotation" nella Ultralytics . (Fonte)
Queste funzionalità sono basate sui modelli Segment Anything Models (SAM). Questi modelli fanno parte di un ecosistema più ampio di strumenti open source di visione artificiale progettati per generare segmentazioni di alta qualità a partire da dati minimi. La piattaforma supporta diverse SAM , tra cui SAM .1 e SAM . Ciò offre ai team la flessibilità di scegliere tra prestazioni più veloci e risultati più dettagliati in base alle proprie esigenze.
Questi strumenti basati sull'intelligenza artificiale possono essere utilizzati in attività quali il rilevamento di oggetti, la segmentazione di istanze e il rilevamento di bounding box orientati. Ciò significa che i team possono elaborare grandi set di dati in modo più efficiente, mantenendo al contempo la qualità necessaria per un addestramento affidabile dei modelli.
Ottimizzare i flussi di lavoro di annotazione con gli strumenti integrati
Man mano che il lavoro di annotazione procede, capita spesso di dover tornare indietro per modificare le etichette, correggere eventuali errori o esaminare le immagini più attentamente. L'editor Ultralytics include strumenti integrati che rendono queste attività quotidiane più semplici da gestire e meno dispendiose in termini di tempo.
Tra le funzionalità relative al flusso di lavoro disponibili nell'editor figurano:
Scorciatoie da tastiera: l'editor include scorciatoie che consentono di eseguire più rapidamente le operazioni più comuni, come salvare le annotazioni, annullare o ripetere le modifiche, eliminare le etichette e selezionare le classi durante l'annotazione.
Cronologia delle operazioni di annullamento e ripetizione: gli annotatori possono facilmente annullare o ripristinare le modifiche apportate durante una sessione di modifica. Ciò consente ai team di sperimentare con le annotazioni e correggere rapidamente gli errori senza perdere i progressi compiuti, garantendo un migliore controllo della qualità durante la preparazione dei set di dati.
Modifica flessibile delle annotazioni: le annotazioni possono essere modificate anche dopo la loro creazione. Gli utenti possono ridimensionare le forme, spostare le annotazioni, ruotare i riquadri di delimitazione orientati o aggiornare le etichette delle classi secondo necessità, in particolare quando si perfezionano oggetti con forme irregolari.
Controlli di visibilità: l'editor include pulsanti di attivazione/disattivazione della visibilità che consentono agli utenti di mostrare o nascondere le annotazioni e le etichette delle classi, facilitando l'analisi delle immagini durante l'etichettatura.
Strumenti di precisione: funzioni quali lo zoom e un cursore a croce con coordinate in pixel aiutano gli annotatori a posizionare le etichette con maggiore precisione quando lavorano su immagini dettagliate.
Gestione delle classi di annotazione sulla Ultralytics
Classi di annotazione chiare e coerenti svolgono un ruolo fondamentale nella creazione di set di dati affidabili per la visione artificiale. Man mano che i progetti si espandono, gestire l'etichettatura dei dati su set di dati di grandi dimensioni può diventare complesso, specialmente quando sono coinvolti più annotatori. Mantenere le classi ben organizzate contribuisce a garantire che le annotazioni rimangano coerenti e che i modelli apprendano da dati strutturati.
Ultralytics semplifica questo processo integrando la gestione delle classi direttamente nell'editor di annotazione. Anziché gestire le etichette separatamente, i team possono creare, aggiornare e rivedere le classi mentre lavorano sulle immagini, rendendo più facile garantire la coerenza durante l'intero flusso di lavoro di annotazione.
All'interno dell'editor, tutte le classi sono disponibili in una barra laterale accanto all'area di annotazione. Ciò consente di selezionare facilmente l'etichetta corretta durante l'annotazione e di tenere track come le classi vengono utilizzate all'interno del set di dati. Gli utenti possono cercare classi esistenti o crearne di nuove secondo necessità, senza interrompere il proprio flusso di lavoro.
I dettagli delle classi possono essere aggiornati in qualsiasi momento. È possibile modificare direttamente i nomi e assegnare colori per facilitare l'identificazione delle diverse classi nelle annotazioni. L'editor mostra inoltre quante annotazioni sono collegate a ciascuna classe e consente agli utenti di esaminarle, aiutando i team a verificare la coerenza e l'accuratezza.
Tutte le classi sono gestite tramite una tabella centralizzata in cui è possibile ordinarle, cercarle e aggiornarle. Qualsiasi modifica apportata in questa tabella viene automaticamente applicata all'intero set di dati, aiutando i team a mantenere la coerenza man mano che i progetti di annotazione si espandono.
Fig. 7. La gestione delle classi nell'editor di annotazioni mostra l'organizzazione delle etichette e la personalizzazione dei colori. (Fonte)
In che modo la qualità delle annotazioni influisce sulle prestazioni nel mondo reale
Man mano che i sistemi di visione artificiale passano dalla fase di sviluppo all'applicazione pratica, la qualità dei dati annotati riveste un ruolo fondamentale nelle prestazioni dei modelli. I set di dati correttamente etichettati aiutano i modelli a generare previsioni più accurate e coerenti, specialmente in contesti dinamici o imprevedibili.
In pratica, anche piccole incongruenze nelle annotazioni possono influire sul comportamento del modello. Le differenze nel modo in cui gli oggetti vengono etichettati o nei casi limite potrebbero non essere evidenti durante l'addestramento, ma possono portare a previsioni meno affidabili una volta che i sistemi vengono implementati.
Inoltre, queste incongruenze possono diventare più evidenti nelle applicazioni pratiche. Ad esempio, nei sistemi robotici e sanitari, i modelli si basano su input visivi per detect e guidare le azioni in tempo reale. Le variazioni nell'assegnazione delle etichette possono influire sull'accuratezza con cui questi sistemi interpretano l'ambiente circostante.
Mantenendo pratiche di annotazione coerenti e utilizzando piattaforme come Ultralytics gestire e perfezionare i set di dati nel tempo, i team possono sviluppare modelli che funzionano in modo più affidabile anche al di fuori degli ambienti di test controllati.
Punti chiave
Un'annotazione dei dati di alta qualità è fondamentale per addestrare modelli di visione artificiale accurati e garantire il successo dei progetti di annotazione delle immagini. Ultralytics semplifica questo processo grazie a un potente editor di annotazione che supporta molteplici attività di visione artificiale. Combinando strumenti di annotazione manuale con l'etichettatura assistita dall'IA tramite SAM funzionalità di flusso di lavoro integrate, i team possono preparare i set di dati in modo più efficiente e passare più rapidamente dalla preparazione dei dati allo sviluppo dei modelli.