Controllo verde
Link copiato negli appunti

Esplorare il funzionamento delle applicazioni della computer vision

Fai un'immersione profonda con noi nelle applicazioni della computer vision. Inoltre, ci occuperemo di varie attività di computer vision come il rilevamento e la segmentazione degli oggetti.

Quando abbiamo esplorato la storia dei modelli di computer vision, abbiamo visto come si è evoluta la computer vision e il percorso che ha portato ai modelli di visione avanzati che abbiamo oggi. Modelli moderni come Ultralytics YOLOv8 supportano molteplici attività di computer vision e vengono utilizzati in diverse applicazioni interessanti. 

In questo articolo daremo uno sguardo alle basi della computer vision e dei modelli di visione. Ci occuperemo del loro funzionamento e delle loro diverse applicazioni in vari settori. Le innovazioni della computer vision sono ovunque e stanno silenziosamente plasmando il nostro mondo. Scopriamole una per una! 

Che cos'è la Visione Artificiale?

L'intelligenza artificiale (AI) è un termine che racchiude molte tecnologie che mirano a replicare una parte dell'intelligenza umana. Uno di questi sottocampi dell'IA è la computer vision. La computer vision si occupa di dotare le macchine di occhi in grado di vedere, osservare e comprendere l'ambiente circostante. 

Proprio come la visione umana, le soluzioni di computer vision mirano a distinguere gli oggetti, calcolare le distanze e rilevare i movimenti. Tuttavia, a differenza degli esseri umani, che hanno una vita di esperienze che li aiutano a vedere e capire, i computer si basano su grandi quantità di dati, telecamere ad alta definizione e algoritmi complessi. 

Figura 1. Confronto tra visione umana e visione computerizzata.

I sistemi di visione computerizzata possono elaborare e analizzare dati visivi come immagini e video a velocità e precisione incredibili. La capacità di analizzare rapidamente e con precisione grandi quantità di informazioni visive rende la computer vision uno strumento potente in diversi settori, da quello manifatturiero a quello sanitario.

I modelli di visione supportano diverse attività di computer vision

I modelli di computer vision sono il cuore di qualsiasi applicazione di computer vision. Si tratta essenzialmente di algoritmi computazionali alimentati da tecniche di deep learning, progettati per dare alle macchine la capacità di interpretare e comprendere le informazioni visive. I modelli di visione permettono di svolgere attività cruciali di computer vision che vanno dalla classificazione delle immagini al rilevamento degli oggetti. Vediamo nel dettaglio alcuni di questi compiti e i loro casi d'uso. 

Classificazione delle immagini

La classificazione delle immagini comporta la categorizzazione e l'etichettatura delle immagini in classi o categorie predefinite. Un modello di visione come YOLOv8 può essere addestrato su grandi set di immagini etichettate. Durante l'addestramento, il modello impara a riconoscere i modelli e le caratteristiche associate a ciascuna classe. Una volta addestrato, può prevedere la categoria di nuove immagini non viste analizzando le loro caratteristiche e confrontandole con i modelli appresi. 

Figura 2. Un esempio di classificazione delle immagini.

Esistono diversi tipi di classificazione delle immagini. Ad esempio, quando si tratta di immagini mediche, si può utilizzare la classificazione binaria per dividere le immagini in due gruppi, come sani o malati. Un altro tipo è la classificazione multiclasse. Può aiutare a classificare le immagini in molti gruppi, ad esempio classificando i diversi animali di una fattoria come maiali, capre e mucche. Se invece vuoi classificare gli animali in gruppi e sottogruppi, come ad esempio classificare gli animali in mammiferi e uccelli e poi in specie come leoni, tigri, aquile e passeri, la classificazione gerarchica è l'opzione migliore.

Rilevamento degli oggetti

Il rilevamento degli oggetti è il processo di identificazione e localizzazione degli oggetti nelle immagini e nei fotogrammi video utilizzando la computer vision. Si compone di due attività: la localizzazione degli oggetti, che disegna i riquadri di delimitazione intorno agli oggetti, e la classificazione degli oggetti, che identifica la categoria di ciascun oggetto. Sulla base delle annotazioni dei riquadri di delimitazione, un modello di visione può imparare a riconoscere i modelli e le caratteristiche specifiche di ciascuna categoria di oggetti e prevedere la presenza e la posizione di questi ultimi in nuove immagini non viste. 

Figura 3. YOLOv8 Rilevamento degli oggetti per individuare i giocatori su un campo da calcio.

Il rilevamento degli oggetti ha molti casi d'uso in diversi settori, dallo sport alla biologia marina. Ad esempio, nel settore della vendita al dettaglio, la tecnologia Just Walk Out di Amazon utilizza il rilevamento degli oggetti per automatizzare le casse identificando gli articoli che i clienti prendono in mano. Una combinazione di visione computerizzata e dati dei sensori permette ai clienti di prendere i loro articoli e andarsene senza fare la fila. 

Ecco un approfondimento su come funziona:

  • Le telecamere montate sul soffitto riprendono i clienti che si muovono all'interno del negozio e i filmati vengono elaborati in tempo reale dai modelli di visione.
  • Il rilevamento degli oggetti viene utilizzato per individuare l'esatto prodotto che il cliente prende e mette nel carrello per aggiornare di conseguenza il suo carrello virtuale.
  • I sensori di peso sui ripiani migliorano la precisione rilevando la rimozione o la sostituzione degli articoli.
  • Quando il cliente esce dal negozio, la tecnologia di rilevamento degli oggetti e di riconoscimento facciale può essere utilizzata per confermare che il cliente è uscito e i suoi dati di pagamento, come la carta di credito, possono essere utilizzati per addebitarglieli automaticamente.

Segmentazione semantica e delle istanze

La segmentazione semantica e la segmentazione delle istanze sono attività di computer vision che aiutano a suddividere le immagini in segmenti significativi. La segmentazione semantica classifica i pixel in base al loro significato semantico e tratta tutti gli oggetti di una categoria come un'unica entità con la stessa etichetta. È adatta per etichettare oggetti non numerabili come "il cielo" o "l'oceano" o gruppi come "foglie" o "erba".

La segmentazione delle istanze, invece, è in grado di distinguere le diverse istanze della stessa classe assegnando un'etichetta unica a ogni oggetto rilevato. Puoi usare la segmentazione delle istanze per segmentare gli oggetti contati quando il numero e l'indipendenza degli oggetti sono importanti. Permette un'identificazione e una differenziazione più precisa.

Figura 4. Un esempio di segmentazione semantica e di istanza.

Possiamo capire meglio il contrasto tra segmentazione semantica e istanza con un esempio legato alle auto a guida autonoma. La segmentazione semantica è ideale per i compiti che richiedono la comprensione dei contenuti di una scena e può essere utilizzata nei veicoli autonomi per classificare le caratteristiche della strada, come gli attraversamenti pedonali e i segnali stradali. La segmentazione istintiva, invece, può essere utilizzata nei veicoli autonomi per identificare i singoli pedoni, i veicoli e gli ostacoli. 

Stima della posa

La stima della posa è un'attività di computer vision incentrata sul rilevamento e il tracciamento dei punti chiave della posa di un oggetto in immagini o video. È più comunemente utilizzata per la stima della posa umana, con punti chiave che includono aree come le spalle e le ginocchia. La stima della posa di un essere umano ci aiuta a comprendere e riconoscere azioni e movimenti che sono fondamentali per diverse applicazioni.

Figura 5. Un esempio di stima della posa utilizzando YOLOv8.

La stima della posa può essere utilizzata nello sport per analizzare i movimenti degli atleti. L'NBA utilizza la stima della posa per studiare i movimenti e le posizioni dei giocatori durante la partita. Tracciando punti chiave come spalle, gomiti, ginocchia e caviglie, la stima della posa fornisce informazioni dettagliate sui movimenti dei giocatori. Questi dati aiutano gli allenatori a sviluppare strategie migliori, a ottimizzare i programmi di allenamento e ad apportare modifiche in tempo reale durante le partite. Inoltre, i dati possono aiutare a monitorare l'affaticamento dei giocatori e il rischio di infortuni per migliorare la salute e le prestazioni complessive dei giocatori.

Rilevamento di oggetti con Bounding Box orientate

L'OBB (Oriented Bounding Boxes Object Detection ) utilizza rettangoli ruotati per identificare e localizzare con precisione gli oggetti in un'immagine. A differenza dei rettangoli di selezione standard che si allineano agli assi dell'immagine, gli OBB ruotano per adattarsi all'orientamento dell'oggetto. Questo li rende particolarmente utili per gli oggetti che non sono perfettamente orizzontali o verticali. Sono ottimi per individuare e isolare con precisione gli oggetti ruotati per evitare sovrapposizioni in ambienti affollati.

Figura 6. Un esempio di rilevamento di Bounding Box orientati su un'immagine aerea di barche utilizzando YOLOV8.

Nella sorveglianza marittima, l'identificazione e la localizzazione delle navi è fondamentale per la sicurezza e la gestione delle risorse. Il rilevamento OBB può essere utilizzato per localizzare con precisione le navi, anche quando sono densamente ammassate o orientate in modo diverso. Aiuta a monitorare le rotte di navigazione, a gestire il traffico marittimo e a ottimizzare le operazioni portuali. Può anche essere d'aiuto nella risposta ai disastri, identificando e valutando rapidamente i danni alle navi e alle infrastrutture dopo eventi come uragani o fuoriuscite di petrolio.

Tracciamento degli oggetti

Finora abbiamo parlato di attività di computer vision che riguardano le immagini. Il tracciamento degli oggetti è un'attività di computer vision in grado di seguire un oggetto nel corso dei fotogrammi di un video. Inizia identificando l'oggetto nel primo fotogramma grazie ad algoritmi di rilevamento e poi segue continuamente la sua posizione mentre si muove nel video. Il tracciamento dell'oggetto coinvolge tecniche come il rilevamento dell'oggetto, l'estrazione delle caratteristiche e la previsione del movimento per mantenere il tracciamento accurato.

Figura 7. Utilizzo di YOLOv8 per tracciare i pesci.

I modelli di visione come YOLOv8 possono essere utilizzati per seguire i pesci nella biologia marina. Utilizzando telecamere subacquee, i ricercatori possono monitorare i movimenti e i comportamenti dei pesci nei loro habitat naturali. Il processo inizia individuando i singoli pesci nei primi fotogrammi e poi segue le loro posizioni per tutto il video. Il monitoraggio dei pesci aiuta gli scienziati a comprendere i modelli di migrazione, i comportamenti sociali e le interazioni con l'ambiente. Inoltre, supporta le pratiche di pesca sostenibile fornendo informazioni sulla distribuzione e l'abbondanza dei pesci.

Uno sguardo finale alla Computer Vision

La computer vision sta cambiando attivamente il modo in cui utilizziamo la tecnologia e interagiamo con il mondo. Utilizzando modelli di deep learning e algoritmi complessi per comprendere immagini e video, la computer vision aiuta le industrie a ottimizzare molti processi. Attività di computer vision come il rilevamento e il tracciamento degli oggetti stanno rendendo possibile la creazione di soluzioni mai immaginate prima. Con il continuo miglioramento della tecnologia di visione artificiale, il futuro ci riserva molte altre applicazioni innovative! 

Impariamo e cresciamo insieme! Esplora il nostro repository GitHub per vedere i nostri contributi all'IA. Scopri come stiamo ridefinendo settori come le auto a guida autonoma e l'agricoltura grazie all'IA. 🚀

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