Realtà aumentata: Che cos’è, come funziona e applicazioni dell’Augmented Reality

Realtà aumentata: Che cos’è, come funziona e applicazioni dell’Augmented Reality

Cos’è l’augmented reality

Per augmented reality (AR), in italiano Realtà aumentata, si intende la sovrapposizione di contenuti sensoriali generati da un sistema informatico, quali immagini o audio, a contenuti catturati dal mondo reale per mezzo, ad esempio, di una videocamera o una webcam, allo scopo di aggiungere informazione o elementi
interattivi. Gli elementi aggiunti sono inesistenti nella realtà fisica (virtuali), e sono pertanto fruibili dall’utente esclusivamente attraverso l’uso di un dispositivo, come ad esempio lo schermo di un computer o di un telefono cellulare, oppure ancora occhiali stereoscopici.

Più in generale, l’augmented reality è un caso particolare di Computermediated reality, ovvero di realtà modificata (mediata) tramite un calcolatore con lo scopo di alterarne la percezione complessiva o la quantità di informazione presente. A differenza della forse più nota realtà virtuale, le modifiche si limitano ad affiancare la realtà fisica, integrandola con l’aggiunta di elementi virtuali ma senza sostituirla del tutto, in modo che la percezione da parte dell’utente rimanga comunque quella di un ambiente prevalentemente reale.

Tali modifiche avvengono tipicamente, ma non esclusivamente, in real time, e devono pertanto essere elaborate dal sistema ad una velocità tale da essere sovrapposte ad un flusso video catturato dal mondo reale senza introdurre ritardi ed in modo trasparente all’utilizzatore, per non infrangere la sua percezione della realtà, e per consentirgli una più intuitiva ed efficace interazione con essa.

Realtà aumentata: Che cos'è, come funziona e applicazioni dell'Augmented Reality

Un semplice esempio di augmented reality è la sovraimpressione in tempo reale di testo o immagini al flusso video di una trasmissione televisiva, come l’interfaccia grafica che mostra il punteggio ed il tempo di gioco in una partita di calcio, o le immagini tridimensionali affiancate in chroma-key alle riprese in studio durante le previsioni meteorologiche.
Tale sovrapposizione aumenta infatti la quantità di informazione disponibile all’utente tramite elementi originariamente non presenti nel flusso video catturato dalle telecamere, generati in tempo reale da un computer e visibili solo per mezzo di uno schermo.
La natura degli elementi aggiunti è fortemente dipendente dal contesto semantico della loro applicazione: esistono infatti svariati domini applicativi in cui l’augmented reality ha avuto un forte sviluppo negli ultimi anni, ed il continuo miglioramento delle tecnologie di computer vision ha consentito un progressivo ampliamento di tali domini. La possibilità di riconoscere degli oggetti fisici in un flusso video (object recognition) ha infatti consentito lo sviluppo di applicazioni in grado di elaborare contenuti il cui stato o le cui proprietà variano in tempo reale in funzione dello stato o delle proprietà di tali oggetti, rendendo possibile una interazione con il programma tramite la loro manipolazione fisica o semplicemente utilizzandoli come punti di riferimento nello spazio.

Un classico esempio è il riconoscimento di un marker, ossia un oggetto fisico il cui aspetto esteriore è stato progettato appositamente per essere riconosciuto e tracciato con facilità, e che viene inserito intenzionalmente nel flusso video come punto di riferimento per il software, e per consentire all’utente, che lo manipola al momento della cattura del video, di interagire con il programma stesso senza bisogno di ulteriori periferiche di input, visualizzandone i risultati in tempo reale.
E’ facile intuire come attualmente sia proprio l’object recognition una delle componenti con maggiori potenzialità dell’augmented reality. Oggi esistono svariate piattaforme per lo sviluppo di applicazioni AR il cui fulcro sono proprio gli strumenti per la creazione dei marker ed il loro riconoscimento, ed è verosimile che l’evoluzione delle tecnologie di computer vision continui ad essere una componente chiave per lo sviluppo di applicazioni augmented reality anche in futuro.

Unire reale e virtuale

Una problematica fondamentale di ogni applicazione AR propriamente detta consiste nel combinare in modo consistente elementi reali e virtuali come se fossero parte di un unico ambiente, in modo da fornire all’utente l’illusione che gli elementi virtuali facciano parte del mondo reale.

Tale sovrapposizione implica una serie di trasformazioni in tempo reale tra differenti sistemi di coordinate.
Per comporre una scena in augmented reality, è necessario specificare innanzitutto la posizione e l’orientamento dell’oggetto virtuale rispetto al sistema di coordinate reale, effettuando una prima trasformazione basata sulla relazione tra oggetto e mondo reale. Occorre inoltre definire le coordinate della telecamera rispetto a quest’ultimo, mediante una seconda trasformazione, ed infine occorre proiettare la scena tridimensionale catturata dalla telecamera su un piano bidimensionale, ovvero il piano che compone l’immagine finale. L’utilizzo di marker, dalle dimensioni note, come punto di riferimento può rivelarsi molto utile per la composizione, in quanto le loro dimensioni all’interno dell’immagine, e la loro posizione e angolazione, possono tradursi direttamente in una trasformazione equivalente da applicare all’oggetto virtuale ad essi associato.
Perchè l’effetto sia convincente e l’utente abbia l’impressione di una sovrapposizione consistente, è necessario che le trasformazioni siano accurate, e che la relazione tra oggetto virtuale e mondo reale sia ben definita geometricamente. In caso di inconsistenze, è possibile classificare due tipi diversi di errore: statici e dinamici.

Gli errori statici sono percepiti dall’utente come un posizionamento incorretto dell’oggetto virtuale all’interno della scena. Ad esempio, un cubo virtuale posizionato sopra un tavolo reale potrebbe apparire invece oltre i bordi del tavolo con una diversa inquadratura. Una delle cause principali di errori statici è tipicamente l’imprecisione dei sensori utilizzati.

Gli errori dinamici sono invece dovuti a lacune nella sincronizzazione con il mondo reale, tipicamente causate dai ritardi introdotti dai limiti hardware del sistema AR in esame. Tali limiti possono essere di natura computazionale, sensoriale o di controllo, e possono essere parzialmente aggirati utilizzando tecniche predittive per stimare la posizione dell’oggetto virtuale quando essa non è rilevabile con precisione. Spesso, però, tali tecniche si rivelano insufficienti, e l’effetto percepito dall’utente è di un oggetto virtuale che cambia rapidamente posizione in modo innaturale per alcuni fotogrammi, per poi tornare alla posizione corretta.

AR dotati di dispositivi di output differenti, come ad esempio un head-mounted display in grado di visualizzare 3D stereoscopico oppure periferiche con feedback tattile (haptic feedback) presentano problematiche aggiuntive. Nel primo caso, il sistema AR dovrà renderizzare due immagini differenti, una per ogni occhio, e utilizzare due telecamere reali e due virtuali, la cui distanza deve essere il più possibile simile alla distanza intra-oculare dell’utente per garantire una visione corretta. Nel secondo caso, occorre effettuare un’ulteriore trasformazione di coordinate tra dispositivo e mondo reale, in modo da generare una sensazione tattile consistente con la scena osservata.
Entrambi gli esempi incidono sui costi computazionali, introducendo ritardi che possono condurre a degli errori dinamici.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: www.vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *