Fondamenti di IA

Che cos’è la Visione Artificiale?

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

Che cos’è la Visione Artificiale?

Gli algoritmi di visione artificiale sono uno dei sistemi di intelligenza artificiale più trasformativi e potenti al mondo, al momento. I sistemi di visione artificiale vengono utilizzati in veicoli autonomi, navigazione robotica, sistemi di riconoscimento facciale e molto altro. Tuttavia, cosa sono esattamente gli algoritmi di visione artificiale? Come funzionano? Per rispondere a queste domande, esploreremo in profondità la teoria alla base della visione artificiale, gli algoritmi di visione artificiale e le applicazioni dei sistemi di visione artificiale.

Come funzionano i sistemi di Visione Artificiale?

Per apprezzare appieno come funzionano i sistemi di visione artificiale, prendiamo un momento per discutere come gli esseri umani riconoscono gli oggetti. La migliore spiegazione che la neuropsicologia ha per il riconoscimento degli oggetti è un modello che descrive la fase iniziale del riconoscimento degli oggetti come una fase in cui i componenti base degli oggetti, come forma, colore e profondità, vengono interpretati dal cervello per primi. I segnali dall’occhio che entrano nel cervello vengono analizzati per estrarre i bordi di un oggetto per primi, e questi bordi vengono uniti in una rappresentazione più complessa che completa la forma dell’oggetto.

I sistemi di visione artificiale funzionano in modo molto simile al sistema visivo umano, discernendo per primi i bordi di un oggetto e unendoli poi nella forma dell’oggetto. La grande differenza è che, poiché i computer interpretano le immagini come numeri, un sistema di visione artificiale ha bisogno di un modo per interpretare i singoli pixel che compongono l’immagine. Il sistema di visione artificiale assegna valori ai pixel dell’immagine e, esaminando la differenza di valori tra una regione di pixel e un’altra regione di pixel, il computer può discernere i bordi. Ad esempio, se l’immagine in questione è in scala di grigi, allora i valori varieranno dal nero (rappresentato da 0) al bianco (rappresentato da 255). Un cambiamento improvviso nella gamma di valori dei pixel vicini indicherà un bordo.

Questo principio di base di confronto dei valori dei pixel può essere applicato anche alle immagini a colori, con il computer che confronta le differenze tra i diversi canali di colore RGB. Ora che sappiamo come un sistema di visione artificiale esamini i valori dei pixel per interpretare un’immagine, prendiamo uno sguardo all’architettura di un sistema di visione artificiale.

Reti Neurali Convolutive (CNN)

Il tipo principale di intelligenza artificiale utilizzato nei compiti di visione artificiale è basato su reti neurali convolutive. Cosa sono esattamente le convoluzioni?

Le convoluzioni sono processi matematici che la rete utilizza per determinare la differenza di valori tra i pixel. Se si immagina una griglia di valori dei pixel, si può pensare a una griglia più piccola che si muove su questa griglia principale. I valori sotto la seconda griglia vengono analizzati dalla rete, quindi la rete esamina solo un pugno di pixel alla volta. Ciò è spesso chiamato la tecnica delle “finestre scorrevoli”. I valori esaminati dalla finestra scorrevole vengono riassunti dalla rete, il che aiuta a ridurre la complessità dell’immagine e a renderla più facile per la rete estrarre pattern.

Le reti neurali convolutive sono divise in due sezioni diverse, la sezione convolutiva e la sezione fully connected. Le layer convolutive della rete sono gli estrattori di caratteristiche, il cui compito è analizzare i pixel all’interno dell’immagine e formare rappresentazioni di essi che le layer fully connected della rete neurale possano imparare a riconoscere. Le layer convolutive iniziano esaminando semplicemente i pixel ed estraendo le caratteristiche di basso livello dell’immagine, come i bordi. Le layer convolutive successive uniscono i bordi in forme più complesse. Alla fine, la rete dovrebbe avere una rappresentazione dei bordi e dei dettagli dell’immagine che può passare alle layer fully connected.

Annotatione delle Immagini

Sebbene una rete neurale convolutiva possa estrarre pattern dalle immagini da sola, l’accuratezza del sistema di visione artificiale può essere notevolmente migliorata annotando le immagini. L’annotazione delle immagini è il processo di aggiungere metadati all’immagine che aiuta il classificatore a rilevare oggetti importanti nell’immagine. L’uso dell’annotazione delle immagini è importante ogni volta che i sistemi di visione artificiale devono essere altamente precisi, come quando si controlla un veicolo autonomo o un robot.

Esistono vari modi in cui le immagini possono essere annotate per migliorare le prestazioni di un classificatore di visione artificiale. L’annotazione delle immagini viene spesso eseguita con bounding box, una scatola che circonda i bordi dell’oggetto bersaglio e indica al computer di focalizzare la sua attenzione all’interno della scatola. La segmentazione semantica è un altro tipo di annotazione delle immagini, che funziona assegnando una classe di immagine a ogni pixel dell’immagine. In altre parole, ogni pixel che potrebbe essere considerato “erba” o “alberi” verrà etichettato come appartenente a quelle classi. La tecnica fornisce una precisione a livello di pixel, ma la creazione di annotazioni di segmentazione semantica è più complessa e richiede più tempo rispetto alla creazione di semplici bounding box. Esistono anche altri metodi di annotazione, come linee e punti.

Blogger e programmatore con specializzazioni in Machine Learning e Deep Learning argomenti. Daniel spera di aiutare gli altri a utilizzare il potere dell'AI per il bene sociale.