Computer Vision cos’è e come funziona

Computer Vision

Condividi:

Condividi su facebook
Condividi su twitter
Condividi su linkedin
Condividi su whatsapp
Condividi su telegram

Computer Vision, mmm… A pensarci bene, da quando scrivo e studio Intelligenza Artificiale non ho mai fatto un articolo sulla Computer Vision. Un articolo semplice dove vado a spiegare cos’è questa disciplina, come funziona e perché è così cool.

Per questo oggi ho deciso di prendere l’argomento dall’inizio e parlarvi di una delle materie che più mi appassiona.

Inoltre, per non ripetere sempre la parola chiave di questo articolo l’andrò ad abbreviare con i caratteri CV (quindi non lo confondete per Curriculum Vitae 😅😂).

Prima di incominciare però voglio darvi un piccolo assaggio di quello che è il mercato della CV. Infatti, si stima che nel 2030 questo mercato (hardware e software) arriverà ad avere un valore di 41.11 miliardi di dollari (fonte).

Così tanto?? Com’è possibile?

Tra poco ti dirò il perché, continua a leggere.

Cos’è la Computer Vision

La Computer Vision è una branca dell’Intelligenza Artificiale che usa tecnologie di Deep Learning per replicare il comportamento umano, almeno quello che “vediamo” per così dire.

Non hai capito? Ecco qui un esempio.

Hai presente Tesla di Elon Musk? Bene. Tesla utilizza sistemi di CV avanzati per identificare gli oggetti, le persone, la strada e tutto il resto (proprio come facciamo noi esseri umani). Questo serve all’auto così da aiutare l’utente alla guida o sostituirlo.

Mmm…ok, forse questo non basta per descrivere questa materia.

Ti faccio un altro esempio.

Hai presente tecnologie come Realtà Aumentata (AR), Virtual Reality (VR) e Mixed Reality (XR)? Sì? Bene, alla base delle tecnologie che ti ho elencato c’è la Computer Vision, o per così dire, algoritmi e sistemi di CV.

Ora capisci perché si stima che il suo mercato raggiunga 41.11 miliardi di dollari entro il 2030?

La Computer Vision è alla base di ciò che c’è oggi e di ciò che vedremo -sempre di più – in futuro, come macchine a guida autonoma e realtà virtuali come il Metaverso (argomento molto discusso in Facebook e non solo).

Hai capito cos’è la Computer Vision? Bene, allora passiamo avanti e entriamo un po’ più nel dettaglio.

Come funziona la CV?

Da secoli l’uomo cerca di far replicare il comportamento umano alla macchina. Durante gli anni ci sono stati svariati insuccessi, ma oggi con nuove tecnologie e nuova potenza computazionale, l’essere umano è molto più vicino nel raggiungere il suo obiettivo.

Nel caso specifico della CV, l’obiettivo è quello di far riconoscere al computer oggetti di vario genere.

Questo è molto figo, ma cosa accade realmente? Come riesce un computer a riconoscere gli oggetti nelle immagini?


Per rispondere a queste domande cercherò di farti un esempio pratico partendo dalla base.

Prendiamo l’immagine di un cane, tu e io – come esseri umani – vediamo semplicemente un cane, mentre il computer no. Quello che vede il computer prima ancora di vedere il cane, sono numeri.

Ebbene sì, numeri! Sequenze di numeri a tre canali che vanno da 0 a 255. Questi numeri rispecchiano i colori primari RGB (Red, Green, Blue).

computer vision rgb
Image from GeeksforGeeks

Non ti è chiaro? Te la renderò più semplice.

Prendiamo in considerazione una immagine di Abraham Lincoln. Il computer per visualizzare questa immagine in bianco e nero, dividerà tutta la figura in pixel. Ad ogni pixel il computer assegnerà un valore da 0 a 255, relativo alla luminosità, ma questa volta su un solo canale (perché è in bianco e nero).

Computer Vision Pixel image
Image from unsplash.com. Photo by Nguyen Dang Hoang Nhu

Una volta ottenuto il valore di ogni pixel il computer riuscirà a formare e visualizzare l’immagine.

Questo è quello che, in breve, accade per una sola immagine.

Complesso vero? Ti capisco, per questo preferisco non scendere ancora più nel dettaglio. Ti confonderei le idee.

Leggi anche: Cosa sono le Convolutional Neural Network?

Ma come si costruisce un vero software di Computer Vision?

Poco fa ti ho spiegato come il PC vede un’immagine, ma come si crea un vero e proprio software di CV?

Beh creare un software richiede del tempo, anche se minore rispetto a una decade fa, ma comunque ci vogliono dei mesi, se non anni. Ma vediamo gli step principali.

  • La prima cosa che si deve fare è raccogliere dati. Milioni su milioni di immagini di qualità, perché senza buoni dati l’algoritmo farà delle predizioni sbagliate.
  • Una volta che le immagini sono state raccolte, queste devono essere etichettate. Significa che se il mio obiettivo è identificare i volti delle persone, in quasi tutte le immagini raccolte dovrò selezionare ed etichettare i volti delle persone.
  • Dopo aver finito il lavoro sulle immagini creerò l’algoritmo che andrò ad allenare sulle stesse immagini catturate ed etichettate. Successivamente testerò lo stesso algoritmo con le immagini che non ho etichettato o quelle che non sono state date in pasto all’algoritmo.
  • Se il software funziona dopo svariati test allora è giunto il momento dell’applicazione sul campo.

Questo è il processo con cui viene fuori un algoritmo di CV.

Io l’ho fatta molto semplice, ma non è tutto oro quel che luccica. Dietro si nascondono ore e ore di lavoro.

Leggi anche: Riconoscere i linguaggio dei segni con la webcam

Ok, tutto molto figo ma quali sono i campi di applicazione, dove viene usata la Computer Vision?

Campi di applicazione della Computer Vision

Ci sono diversi campi di applicazione in cui possiamo vedere all’opera la CV, alcuni te li ho già detti prima, altri sono sempre davanti ai tuoi occhi e neanche lo sai.

Antonio aspetta, cosa intendi con “sono sempre davanti ai tuoi occhi”?

Facial Detection & Recognition

Hai un iPhone X o superiore? o uno smartphone Android recente?

Se la risposta è “Si”, allora saprai anche che dispone della funzionalità “sblocco con il volto”. Bene, questa feature è Computer Vision e in gergo è chiamata “Facial Recognition”.

Qui l’algoritmo impara a individuare e riconoscere i volti delle persone.

Healthcare

Il campo medico rientra tra i tanti campi di applicazione. Tutt’oggi si stanno iniziando ad usare i primi sistemi di Computer Vision per identificare le malattie del corpo umano. Un esempio pratico è quello dell’identificazione del cancro nei polmoni.

Auto a guida autonoma

Te ne ho già parlato prima, ma sempre più case automobilistiche utilizzano questi sistemi per aiutare il guidatore su strada, o addirittura sostituirlo. Questa sfida non sarà semplice per via di leggi che ancora non esistono e anche di questioni etiche.

Virtual Reality, Augmented Reality e Mixed Reality

Snapchat, Instagram, Facebook sono solo alcune delle società che utilizzano queste tecnologie. I filtri 3D diffusi da Snapchat e poi copiati da Facebook su Instagram sono una prova.

Queste tipo di realtà giocheranno un ruolo fondamentale in futuro, proprio perché aziende come Facebook sono in gara per costruire il prima metaverso, proprio come nel film Ready Player One.

Sport (e non solo) Analysis

La computer vision può anche essere usata per fare delle analisi video, quindi restituire degli insights in tempo reale su come sta andando una partita.

O ancora, cosa un po’ spaventosa, il tuo datore di lavoro potrebbe controllarti e stimare quanto effettivamente lavori.

Conclusioni

Questi sono solo dimostrazioni lampanti di questa materia che oggi ti ho spiegato. Magari ora non lo sappiamo ma può essere che in futuro ci saranno ancora più campi di applicazione, dove ora non ce lo immaginiamo.

Sicuramente il progresso tecnologico influirà parecchio sulla Computer Vision e gli altri campi dell’Intelligenza artificiale come il Natural Language Process (NLP). L’importante è che insieme al progresso tecnologico ci siano leggi a tutela della privacy dell’utente e norme etiche.

Detto questo ti ringrazio per essere arrivato fino in fondo e spero tu abbia capito tutto.

Ti sei eccitato all’idea di quello che questa tecnologia può fare o sei un po’ terrorizzato? Fammelo sapere nei commenti!

Alla prossima,

Antonio.

Condividi su facebook
Condividi su twitter
Condividi su linkedin
Condividi su whatsapp
Condividi su telegram
Antonio Furioso

Antonio Furioso

Fondatore di Neuragate. Credo molto in quello che le immagini possono comunicare, per questo sono fortemente attratto dalla Computer Vision. Mi piace tutto quello che è nuovo. La curiosità è quella che mi spinge oltre le aspettative e a fare sempre di più.

Iscriviti
Notificami
guest
0 Commenti
Inline Feedback
Vedi tutti i commenti
Neuragate