Visione artificiale e intelligenza artificiale: trasformare la comprensione visiva

Pubblicato: 2025-01-15

La visione artificiale è uno dei sottodomini fondamentali dell'intelligenza artificiale (AI). Questa guida spiega la visione artificiale, come funziona, dove viene applicata e i suoi vantaggi e svantaggi.

Sommario

  • Cos'è la visione artificiale?
  • Storia ed evoluzione della visione artificiale
  • Come funziona la visione artificiale
  • Applicazioni della visione artificiale
  • Vantaggi della visione artificiale
  • Svantaggi della visione artificiale
  • Conclusione

Cos'è la visione artificiale?

Il dominio della visione artificiale copre tutte le tecniche di intelligenza artificiale che utilizzano sistemi informatici per analizzare dati visivi, come i dati contenuti in video e foto. Il campo esiste ufficialmente dagli anni '60 e le prime applicazioni di visione artificiale utilizzavano la corrispondenza di modelli e altre euristiche per migliorare le immagini in campo biomedico, fisica avanzata e altri campi di ricerca all'avanguardia. Quasi tutti i recenti sistemi di visione artificiale si affidano esclusivamente ad algoritmi di machine learning (ML) (più specificamente, algoritmi di deep learning) per svolgere il proprio lavoro, poiché sono molto più efficaci delle tecniche precedenti.

Lavora in modo più intelligente con Grammarly
Il partner di scrittura basato sull'intelligenza artificiale per chiunque abbia del lavoro da svolgere

Storia ed evoluzione della visione artificiale

La visione artificiale affonda le sue radici negli esperimenti condotti da neurofisiologi che cercavano di capire come le immagini prodotte dall'occhio vengono elaborate nel cervello. Durante i primi decenni del suo sviluppo, la visione artificiale si è ispirata in larga misura alla ricerca sulla visione umana e animale.

Sebbene sia difficile individuare un anno di inizio esatto, il 1959 è spesso considerato l’inizio del campo. In quell'anno furono stabiliti due concetti fondamentali dell'analisi delle immagini: (1) che l'analisi delle immagini dovrebbe concentrarsi prima sull'identificazione dei sottocomponenti di un'immagine e (2) che tali componenti dovrebbero poi essere analizzati gerarchicamente.

L'elenco seguente evidenzia alcune delle principali pietre miliari tra la scoperta di questi concetti fondamentali e la recente esplosione dei progressi nella visione artificiale. Oggi, i sistemi di visione artificiale si affidano a complessi algoritmi di deep learning per elaborare, comprendere, modificare e creare immagini realistiche in tempo reale.

Traguardi importanti nello sviluppo della visione artificiale

1959:studi sul cervello degli animali hanno dimostrato che i componenti semplici di un'immagine (come bordi e linee) vengono prima rilevati e poi elaborati gerarchicamente. Queste intuizioni sono diventate due dei concetti fondamentali della visione artificiale e sono riconosciuti come gli inizi ufficiali del campo.

Anni '60:iniziano i primi sforzi ufficiali di intelligenza artificiale e visione artificiale. I progressi includevano sistemi che trasformavano automaticamente parti di fotografie in oggetti tridimensionali equivalenti.

Anni '70:l'attenzione alla ricerca e all'educazione sulla visione artificiale ha prodotto molti algoritmi fondamentali di visione artificiale ancora in uso oggi, compresi quelli per il rilevamento di modelli, la stima del movimento, il rilevamento dei bordi, l'etichettatura delle linee e la modellazione geometrica dei componenti dell'immagine.

Anni '80:le reti neurali convoluzionali (CNN) furono sviluppate in modo significativo nel corso del decennio. Nel 1989, la prima CNN fu applicata con successo a un problema di vista, rilevando automaticamente i codici postali nelle immagini.

Anni '90:le fotocamere intelligenti diventano sempre più popolari e ampiamente utilizzate in ambienti industriali. La crescente domanda di strumenti per elaborare grandi quantità di immagini digitali ha portato a un’esplosione degli investimenti commerciali, facendo avanzare ulteriormente il campo. Nacque l'industria della visione artificiale e furono sviluppati metodi formali per valutare la qualità dei sistemi di visione artificiale.

2000:tra la fine degli anni '90 e l'inizio degli anni 2000, i ricercatori hanno stabilito il concetto di cecità al cambiamento. Hanno dimostrato che gli esseri umani spesso non notano cambiamenti sostanziali quando osservano i dati visivi. Questa scoperta ha contribuito a stabilire un’altra coppia di concetti – le idee di attenzione e di elaborazione parziale – come elementi fondamentali della visione artificiale.

2011:per la prima volta, un team svizzero ha dimostrato che le CNN applicate alle GPU erano un sistema di machine vision ML decisamente efficiente. Questi sistemi erano rivoluzionari, battendo numerosi record di visione e superando per la prima volta le prestazioni degli esseri umani. I sistemi di visione artificiale hanno iniziato la transizione verso implementazioni basate sulla CNN.

2015:un'implementazione di deep learning delle CNN vince per la prima volta il concorso ImageNet, segnando l'inizio dell'era moderna della visione artificiale.

Come funziona la visione artificiale

Il lavoro di visione artificiale di solito comporta tre parti, che descriviamo di seguito. I dettagli di implementazione di livello inferiore possono essere molto complessi e spesso comportano fasi ripetute, come descritto nella terza parte di seguito. Anche quando i dettagli dell’implementazione sono complicati, il lavoro solitamente segue questi schemi.

1 Acquisizione dell'immagine

Come altri sistemi ML, i sistemi di elaborazione visiva dei dati dipendono dalla quantità e dalla qualità dei dati a cui possono accedere. Quando viene progettato un sistema di visione artificiale, viene prestata particolare attenzione a quando e come vengono ottenuti i dati e le immagini di origine per migliorare la qualità dell'elaborazione. È necessario considerare e ottimizzare diversi fattori, tra cui:

  • Sensori:il numero e i tipi di sensori in uso. I sistemi di visione artificiale utilizzano sensori per ottenere dati dal loro ambiente, comprese videocamere, lidar (rilevamento e misurazione della luce), radar e sensori a infrarossi.
  • Distribuzione:disposizione e orientamento dei sensori per ridurre al minimo i punti ciechi e sfruttare in modo ottimale le informazioni del sensore.
  • Dati del sensore:diversi tipi e quantità di dati devono essere elaborati e interpretati in modo diverso. Ad esempio, i dati MRI, radiografici e video hanno requisiti di elaborazione, archiviazione e interpretazione specializzati.

Un sistema di visione artificiale dovrebbe idealmente avere accesso a dati di immagine appena sufficienti. Con troppo pochi dati, non sarà in grado di vedere informazioni sufficienti per risolvere i problemi per cui è progettato. Troppi dati irrilevanti esauriranno le risorse del sistema, lo rallenteranno e ne renderanno costoso il funzionamento. Un'attenta ottimizzazione della fase di acquisizione delle immagini è fondamentale per costruire sistemi di visione artificiale efficaci.

2 (Pre)elaborazione delle immagini

Gli stessi dati visivi provenienti da due fonti diverse possono significare cose diverse. Anche i dettagli sul contesto in cui è stata scattata un'immagine (come la luce ambientale, la temperatura e il movimento della fotocamera) possono indicare che l'immagine deve essere interpretata in modo diverso.

La preelaborazione delle immagini comporta molto lavoro per rendere le immagini più facili da comprendere e analizzare. Ad esempio, le immagini potrebbero essere normalizzate, il che significa che proprietà come dimensioni, colore, risoluzione e orientamento vengono regolate per essere coerenti tra le immagini. Altre proprietà possono anche essere regolate durante la preelaborazione per aiutare gli algoritmi di visione a rilevare caratteristiche specifiche del dominio. Ad esempio, il contrasto potrebbe essere migliorato per rendere più visibili alcuni oggetti o funzionalità.

È possibile apportare modifiche personalizzate per compensare le differenze nei sensori, i danni ai sensori e i relativi lavori di manutenzione. Infine, potrebbero essere apportate alcune modifiche per ottimizzare l'efficienza e i costi di elaborazione, tenendo conto di dettagli specifici su come verranno analizzate le immagini.

3 Elaborazione e analisi delle immagini: estrazione di caratteristiche, riconoscimento di pattern e classificazione

Gli attuali sistemi di visione artificiale sono gerarchici e considerano le parti di ciascuna immagine in modo indipendente. Ogni livello in una gerarchia è generalmente specializzato per eseguire una delle tre cose:

  • Estrazione delle caratteristiche:un livello di estrazione delle caratteristiche trova componenti dell'immagine interessanti. Ad esempio, potrebbe identificare dove si possono trovare le linee rette nell'immagine.
  • Riconoscimento di pattern:un livello di riconoscimento di pattern esamina il modo in cui le varie funzionalità si combinano in pattern. Potrebbe identificare, ad esempio, quali combinazioni di linee nell'immagine formano poligoni.
  • Classificazione:dopo un numero sufficiente di ripetizioni di estrazione di caratteristiche e riconoscimento di modelli, il sistema potrebbe aver appreso abbastanza su una determinata immagine per rispondere a una domanda di classificazione, come "Ci sono auto in questa immagine?" Un livello di classificazione risponde a tali domande.

Il diagramma seguente mostra come questo viene implementato in un'architettura di sistema di visione artificiale costruita con le CNN. L'input (solitamente un'immagine o un video) analizzato dal sistema si trova all'estrema sinistra del diagramma. Una CNN, implementata come una rete neurale profonda, alterna strati convoluzionali, che eccellono nell’estrazione delle caratteristiche, con strati di pooling, che eccellono nel riconoscimento di schemi. I dettagli dell'immagine vengono elaborati da sinistra a destra e potrebbero esserci molte più ripetizioni dei due livelli rispetto a quelle mostrate di seguito.

Architettura della rete neurale convoluzionale (CNN).

Una volta completata un'analisi sufficientemente approfondita, uno strato di neuroni completamente connesso considera tutti i modelli e le caratteristiche dei dati in modo aggregato e risolve un problema di classificazione (come "C'è un'auto nella foto?").

Applicazioni della visione artificiale

La visione artificiale è applicabile ovunque. Poiché i sistemi sono diventati più potenti e più facili da applicare, il numero di applicazioni è esploso. Ecco alcune delle applicazioni più conosciute.

Riconoscimento facciale

Una delle applicazioni più diffuse e avanzate della visione artificiale riguarda il rilevamento e il riconoscimento dei volti. Smartphone, sistemi di sicurezza e dispositivi di controllo degli accessi utilizzano una combinazione di sensori, fotocamere e reti neurali addestrate per identificare quando le immagini contengono volti e trasformare eventuali volti trovati in modo che possano essere analizzati.

Un sistema di riconoscimento facciale esegue regolarmente la scansione dei volti nelle vicinanze. I dati provenienti da sensori economici e veloci, come una sorgente di luce a infrarossi e una fotocamera a bassa risoluzione ma ad alto contrasto, vengono passati attraverso un modello ML che identifica la presenza di volti.

Se vengono rilevati potenziali volti, è possibile puntarli su una fotocamera più lenta, più costosa e con una risoluzione più elevata e quindi effettuare una breve registrazione. Un sistema di elaborazione visiva può quindi trasformare la registrazione in ricostruzioni 3D per contribuire a convalidare la presenza di un volto. Un classificatore facciale può quindi decidere se le persone nell'immagine fanno parte di un gruppo a cui è consentito sbloccare un telefono o accedere a un edificio.

Veicoli autonomi

È difficile costruire un sistema in grado di controllare un veicolo, navigare nel mondo e reagire in tempo reale ai cambiamenti nell’ambiente. I sistemi di visione artificiale sono solo una delle tecnologie fondamentali che consentono i veicoli autonomi.

Questi sistemi di visione imparano a identificare strade, segnali stradali, veicoli, ostacoli, pedoni e molte altre cose che potrebbero incontrare durante la guida. Prima di poter essere efficaci, devono analizzare grandi quantità di dati ottenuti in tutti i tipi di condizioni di guida.

Per essere utili in condizioni reali, i sistemi di visione artificiale utilizzati per i veicoli autonomi devono essere molto veloci (in modo che il veicolo autonomo abbia il tempo massimo per reagire al cambiamento delle condizioni), accurati (poiché un errore può mettere in pericolo vite umane) e potenti (poiché il problema è complesso: il sistema deve identificare gli oggetti in tutte le condizioni atmosferiche e di illuminazione). Le aziende produttrici di veicoli autonomi stanno investendo molto nell’ecosistema. I volumi di dati disponibili crescono in modo esponenziale e le tecniche utilizzate per elaborarli stanno migliorando rapidamente.

Realtà aumentata

Gli occhiali intelligenti e le attuali fotocamere dei telefoni si affidano a sistemi di visione artificiale per fornire esperienze di realtà aumentata ai propri utenti. Sistemi ben addestrati, simili a quelli utilizzati per abilitare i veicoli autonomi, identificano gli oggetti nell'inquadratura di una fotocamera o un set di occhiali intelligenti e la posizione degli oggetti l'uno rispetto all'altro nello spazio 3D.

Sistemi avanzati di generazione di immagini collegano quindi queste informazioni per aumentare ciò che la fotocamera o gli occhiali mostrano all'utente in vari modi. Ad esempio, possono creare l’illusione che i dati vengano proiettati su superfici o mostrare come oggetti come i mobili potrebbero adattarsi allo spazio 3D.

Vantaggi della visione artificiale

I sistemi di visione artificiale possono aiutare ad aumentare la visione umana, migliorare i sistemi di sicurezza e analizzare i dati su larga scala. I principali vantaggi derivanti dal loro utilizzo includono quanto segue:

Velocità e scala del riconoscimento degli oggetti

I sistemi di visione artificiale all’avanguardia possono identificare gli oggetti molto più velocemente e a un volume molto più elevato rispetto agli esseri umani. Una catena di montaggio, ad esempio, si muoverà più velocemente quando un sistema automatizzato di visione artificiale assisterà il suo supervisore. I veicoli a guida autonoma possono funzionare in modalità di assistenza alla guida, aiutando i conducenti a essere consapevoli delle informazioni provenienti dall’ambiente circostante che non rileveranno rapidamente. Possono anche assumere il pieno controllo e prendere decisioni più rapide e sicure rispetto a un essere umano senza aiuto.

Precisione

I sistemi di visione artificiale ben addestrati sono più precisi degli esseri umani nei compiti per cui sono addestrati. Ad esempio, possono identificare i difetti negli oggetti in modo più accurato o rilevare precocemente escrescenze cancerose nelle immagini mediche.

Grande volume di elaborazione dati

I sistemi di visione possono identificare anomalie e minacce in grandi quantità di immagini e feed video molto più velocemente e con maggiore precisione rispetto agli esseri umani. La loro capacità di elaborare le informazioni è correlata alla potenza di calcolo disponibile e può essere aumentata indefinitamente.

Svantaggi della visione artificiale

I sistemi di visione artificiale ad alte prestazioni sono difficili da produrre. Alcune delle sfide e degli svantaggi includono quanto segue:

Adattamento eccessivo

Gli attuali sistemi di visione artificiale sono basati su algoritmi e reti di deep learning. Dipendono dall'accesso a grandi quantità di dati annotati durante l'addestramento. Attualmente, i dati sulla formazione visiva non sono disponibili negli ampi volumi visti in altre applicazioni e generarli è impegnativo e costoso. Di conseguenza, molti sistemi di visione artificiale sono addestrati su dati insufficienti e si adatteranno eccessivamente: avranno bisogno di aiuto per generalizzare a situazioni nuove e invisibili.

La privacy è difficile da garantire su larga scala

I sistemi di visione artificiale potrebbero osservare e apprendere da grandi quantità di dati privati ​​o protetti. Una volta sul campo, potrebbero anche osservare dati arbitrari nel loro ambiente. È difficile garantire che i dati di addestramento siano privi di informazioni private, ed è ancora più difficile impedire che un sistema sul campo incorpori informazioni private nella sua formazione.

Computazionalmente complesso

I sistemi che utilizzano la visione artificiale tendono ad essere applicati ad alcuni dei problemi più impegnativi nel campo dell’intelligenza artificiale. Di conseguenza, sono costosi e complessi e possono essere difficili da costruire e assemblare correttamente.

Conclusione

Molti dei problemi più interessanti e impegnativi nel machine learning e nell’intelligenza artificiale coinvolgono l’uso e l’applicazione di sistemi di visione artificiale. Sono utili ovunque, anche nei sistemi di sicurezza, nei veicoli a guida autonoma, nell’analisi delle immagini mediche e altrove. Detto questo, i sistemi di visione artificiale sono costosi e difficili da costruire.

Dipendono da una raccolta dati dispendiosa in termini di tempo, richiedono risorse personalizzate o costose prima di poter essere utilizzate in modo efficace e sollevano problemi di privacy. In quest’area chiave del machine learning sono in corso ricerche approfondite che stanno avanzando rapidamente.