L’obiettivo del progetto di ricerca è la sperimentazione di simulazioni riabilitative cognitive realizzate in contesti di Realtà Virtuale per il ripristino della funzionalità di orientamento spazio temporale in soggetti con insulto cerebrale congenito e acquisito.
Ogni simulazione prevede la costruzione di percorsi riabilitativi con un elevato grado di personalizzazione rispetto ai soggetti prescelti e al loro contesto esperienziale, e possibilità di controllo e rivisitazione ed analisi da parte del terapeuta. Prima di una applicazione sui soggetti da riabilitare, si renderà necessaria una revisione con sperimentazione molto accurata per eventualmente migliorare il materiale da utilizzare. La conclusione della ricerca e della sperimentazione permetterà di definire le caratteristiche ottimali di una innovativa piattaforma hardware e software di VR (Virtual Reality) dedicata alla riabilitazione ad utilizzo di pazienti e specialisti.
La piattaforma è suddivisa in due piattaforme indipendenti
- La piattaforma di realtà virtuale: Realizzata da Synarea, consente di creare e utilizzare ambienti virtuali interattivi.
- La piattaforma gestionale: Realizzata da Regola consente di gestire il percorso riabilitativo dell’utente e di effettuare analisi dei risultati.
L’integrazione delle due piattaforme consente poi la creazione del prodotto finale.
LA PIATTAFORMA DI REALTÀ VIRTUALE
Overview
La piattaforma di realtà virtuale (VRP) è il componente del progetto Riccamente che permette di creare e navigare ambienti virtuali; all’interno di essi gli utenti possono eseguire specifici esercizi di orientamento spaziale per il raggiungimento degli obiettivi clinici.
Dal punto di vista architetturale la VRP si fonda sul FRAMEWORK 3DOORS 2.0 per la creazione di scenari 3D real-time, dal quale eredita le funzionalità di base.
3DOORS Framework
Il Framework 3DOORS™ è uno strumento software progettato e sviluppato da SynArea per la realizzazione di applicazioni di realtà virtuale in real-time.
Il framework è basato su moduli software interamente sviluppati in C++, e si basa su un motore di rendering opportunamente modificato per le proprie esigenze.
Il framework costituisce la base per la costruzione di applicazioni di realtà virtuale 3D in tempo reale, di diverso ambito applicativo. Fornisce quindi un set di funzionalità di base, raggruppate appunto in librerie, che possono essere utilizzate per la creazione di applicazioni di vario tipo. Nel coso del progetto Riccamente esso verrà utilizzato, in una certa misura integrato, per realizzare la piattaforma di realtà virtuale (VRP).
Nella pagina seguente (Fig.1) è riportato uno schema semplificato dell’architettura del framework, che riflettente l’organizzazione funzionale e per livelli dei moduli sopra citati.
Figura 1 – Architettura del Framework 3DOOR (Moduli e Livelli)
PIATTAFORMA PER RICCAMENTE
Come detto il Framework 3DOOR verrò utilizzato e integrato per realizzare la VRP aventi le specifiche funzionalità richieste dal progetto Riccamente, che a livello generale sono le seguenti:
- Modulo di creazione di scenari urbani
- Modulo di creazione degli esercizi terapeutici
- Modulo di gestione degli scenari e degli esercizi
- Navigazione degli scenari 3D in terza persona con avatar
- Implementazione di nuove periferiche di interfaccia
- Modulo di Log delle attività dell’utente
- Plug-in web per la fruizione remota
Figura 2 – Architettura generale della piattaforma di VR
MODULO DI CREAZIONE DEGLI SCENARI URBANI
Creare uno scenario 3D in generale, e uno scenario urbano in particolare, è un’attività che richiede specifiche competenze di modellazione e di grafica vettoriale e tempi di lavoro più o meno lunghi a seconda dello scenario da creare.
Questo fatto mal si sposa con la necessità di dare ai terapeuti del progetto Riccamente la possibilità di creare liberamente gli scenari da somministrare ai pazienti. Infatti non è realistico aspettarsi competenze specifiche in un campo non di loro competenza come la modellazione 3D.
Il Modulo di creazione di scenari urbani è quindi una specifica interfaccia della piattaforma di VR che mette a disposizione dei terapeuti alcuni modelli già elaborati da modellatori e grafici professionisti. Ognuno di questi modelli rappresenta una piccola porzione di ambiente urbano e i diversi modelli possono essere semplicemente accostati tra loro a formare scenari urbani e città sempre diverse.
A livello generale questo modulo mette a disposizione del terapeuta:
- Un repository di modelli di scorci urbani
- Una funzionalità Map Driver che guida il terapeuta nell’accostamento dei diversi scorci, inibendo ad esempio il posizionamento contiguo di due scorci non congruenti; e nella creazione dell’ambientazione desiderata, evidenziando gli scorci contenenti Landmark Globali (LG) e quelli contenenti Landmark Locali (LL).
- Una funzionalità di navigazione 3D dell’ambientazione in divenire
- La gestione delle ambientazioni create (salvataggio, organizzazione ecc.)
Il salvataggio dei dati necessari a ricreare lo scenario virtuale sono gestiti autonomamente dal modulo DAL del Framework 3DOORS. Il Modulo di creazione degli scenari urbani si deve però occupare di salvare altri dati:
- Un array bidimensionale che riproduce le coordinate della griglia e tasselli usati per ogni quadrato della griglia
- Il numero totale di LL presenti nello scenario
- Il numero totale di LG presenti nello scenario
Repository di modelli di scorci urbani
Come sappiamo (cfr. Deliverables 1.1) lo scenario urbano per il test si caratterizza per la presenza di alcuni Landmark Locali, Landmark Globali e per un certo grado di complessità sia degli incroci che della scenario stesso.
Il Repository di scorci urbani ha il compito di fornire al terapeuta dei “tasselli” già modellati con i quali costruire lo scenario che desidera. Si tratta quindi di porzioni di territori urbani quadrati contenenti alcune strade e palazzi, che possono essere di tre tipologie:
- tasselli normali : strade, palazzi, piazze, giardini, ecc
- tasselli con LL: strade e palazzi tra i quali un LL (es, tabaccaio, edicola, ecc)
- tasselli con LG: strade e palazzi tra i quali un LG (es. grattacielo, torre, campanile, ecc.)
La figura 3 mostra gli esempi di alcuni prototipi di tasselli elaborati dai modellatori del progetti.
Figura 3 – Esempio di scorci urbani
Scorcio urbano A – tassello normale |
Scorcio urbano B – tassello normale |
Funzionalità Map Driver
Data uno scorcio urbano è evidente che non qualunque altro scorcio urbano del Repository gli sarà accostabile e non su qualunque lato. Una Funzionalità di Map Driver quindi aiuterà il terapeuta a scegliere i tasselli congruenti per procedere alla costruzione della città.
MODULO DI CREAZIONE DEGLI ESERCIZI TERAPEUTICI
Il progetto Riccamente prevede un certo numero di esercizi terapeutici standard (che saranno definiti in dettaglio nelle prossime fasi di progetto). Questi esercizi si svolgono all’interno di uno scenario virtuale, che nel corso della sperimentazione sarà lo scenario urbano ma potenzialmente potrebbe essere uno qualsiasi dei quattro scenari classici (urbano, aperto con LG, aperto senza LG, interno) descritti le D1.2 (verificare)
Il modulo di creazione degli esercizi terapeutici fornisce al terapeuta l’interfaccia per usare una qualsiasi ambientazione virtuale, creata con il modulo di creazione degli scenari urbani o importata da altra fonte, come scenario per uno degli esercizi standard del progetto.
A livello generale questo modulo mette a disposizione del terapeuta:
- Un modulo di prototipazione degli esercizi terapeutici
- Un repository di oggetti 3D collocabili nello scenario
- Un editor di scena che permette di stabilire le interazioni tra il paziente e gli oggetti in scena
Modulo di prototipazione degli esercizi terapeutici
Come accennato il progetto prevede un certo numero di esercizi terapeutici standard, ognuno con sue caratteristiche particolari. Quando il terapeuta ha scelto quale scenario virtuale utilizzare dovrà decidere il tipo di esercizio da creare, e questa decisione porrà dei vincoli all’editor di scene e sul tipo di oggetti 3D utilizzabili.
Repository di oggetti 3D
Il terapeuta avrà a disposizione un certo numero di modelli 3D predefiniti che potrà disporre a suo piacere all’interno dello scenario di esercizio. Questo oggetti sono tipicamente oggetti con i quale il paziente deve interagire (a titolo di esempio palloncini, fiori, cibo, ecc) oppure oggetti che permettono di rendere più interessante e realistico lo scenario (es. panchine, persone, animali, automobili, ecc.)
Figura 4 – Esempio di oggetti 3D
Automobile |
Stella |
Editor di scene
Un editor avanzato di scene si occuperà di permettere al terapeuta di decidere il comportamento dell’oggetto e il tipo di interazione tra l’oggetto e il paziente.
Per quanto riguarda il comportamento dell’oggetto il terapeuta, collocato l’oggetto nello scenario, potrà decidere se lasciarlo fisso o movimentarlo secondo quattro parametri:
- spostamento lungo una o più direzioni
- rotazione attorno a uno o più assi
- apparizione e sparizione dello oggetto
- cambiamento di colore dell’oggetto
Inoltre sarà possibile decidere se la modifica dei parametri debba avvenire durante tutta la durata della scena (ad esempio posizionando un oggetto persona nella scena si potrebbe decidere di farla spostare continuamente simulando una persona che passeggia) o solo nel momento in cui il paziente interagisce con l’oggetto (ad esempio un oggetto che cambia colore nel momento in cui viene cliccato da paziente)
Per quanto riguarda il tipo di interazione tra il paziente e gli oggetti, sono previsti quattro tipi di interazione:
- Nessuna interazione: l’oggetto è posto nello scenario in posizione fissa o in movimento e il paziente non può interagire con esso
- L’interazione avviene cliccando sull’oggetto
- L’interazione avviane con l’ avvicinarsi dell’avatar del paziente all’oggetto
- L’interazione avviene al cambiamento di certi stati dello scenario (ad esempio quando il paziente ha colorato tutti gli oggetti presenti compaiono altri oggetti da colorare)
Inoltre sarà possibile decidere se una data interazione è pertinente o meno per l’esercizio in essere (cfr. 4.1.1)
MODULO DI GESTIONE DEGLI SCENARI E DEGLI ESERCIZI
Un terzo modulo fornisce al terapeuta gli strumenti per gestire gli scenari e gli esercizi creati.
Si tratta, sia per gli scenari che per gli esercizi, di funzionalità di :
- Caricamento
- Salvataggio
- Catalogazione
Questo modulo si rende necessario per permettere il pieno utilizzo della piattaforma di VR anche slegato dalla piattaforma amministrativa.
NAVIGAZIONE DEGLI SCENARI 3D IN TERZA PERSONA
Il progetto Riccamente è volto alla cura di soggetti che oltre ad avere un deficit cognitivi, sono spesso soggetti con una scarsa propensione all’utilizzo del PC e che quindi non sono pratici della navigazione nei mondi virtuali.
Il frame work 3DOORS 2.0 permette la navigazione delle scene solo in soggettiva (prima persona) che presuppone buone capacità di navigazione.
Si rende pertanto necessario implementare nella piattaforma di VR la possibilità di fruire delle scene in terza persona, vale a dire con la camera posta a una certa distanza alle spalle dell’avatar, come si usa ad esempio nei videogame.
Questo fornice una maggiore visione prospettica all’utilizzatore e in sostanza facilita la navigazione degli scenari rendendola più usabile anche da persone non esperte.
Nel contempo verranno modellati alcuni avatar (almeno uno) da come riferimento per la navigazione degli scenari.
IMPLEMENTAZIONE DI NUOVE INTERFACCE FISICHE
Un altro fattore , oltre a problemi di ordine cognitivo e alla scarsa propensione all’uso dei PC, che può caratterizzare i soggetti ai quali si rivolge il progetto è un certo grado di deficit di manualità, come ad esempio nel caso dei soggetti colpiti da ictus ischemico.
Si ritiene quindi utile per il progetto estendere la gamma di interfacce di movimento rispetto al framework di riferimento, che sono limitate a:
- Tastiera
- mouse
- mouse 3D
alle quali andranno aggiunte:
- joystick
- kinect
Kinect, è stato inserita nel progetto in quanto si tratta di una periferica di interfaccia altamente innovativa. Infatti permette di gestire la movimentazione delle scene in maniera molto libera poiché l’utente si interfaccia alla scena senza l’uso di alcun controller da impugnare, ma solo attraverso i movimenti del corpo o i comandi vocali.
MODULO DI LOG DELLE ATTIVITÀ UTENTE
Le attività che il paziente esegue durante l’esercizio terapeutico devono essere monitorate in modo da poterle salvare su file o spedire via stream di rete alla piattaforma gestionale.
Per questo motivo la piattaforma di VR dovrà essere dotata di un modulo di log che sia configurabile e che tenga traccia delle attività svolte durante l’esercizio.
Il grado di accuratezza di tale log (es. ogni singolo click del mouse o solo quelli significativi, ecc) sarà deciso nel corso del progetto. Per approfondimenti cfr. 4.1 e seguenti.
PLUG-IN WEB PER LA FRUIZIONE REMOTA
Il Framework 3DOORS mette a disposizione le librerie TD Player che implementano un plugin per web browser, compatibile sia con Internet Explorer che con la famiglia di browser basati sul motore Gecko (Mozilla, Firefox, Safari, Opera, Chrome).
Esso permette la navigazione interattiva della scena, la sua fruizione in modalità passiva, e la fruizione di alcuni contenuti multimediali ad essa collegati. Inoltre, essendo utilizzabile tramite web, offre la possibilità di fruire dei contenuti anche su macchine ove non sia installato il software della piattaforma 3DOORS, poiché i contenuti vengono reperiti on-demand dal plugin stesso.
Questo plug-in web di base deve essere esteso nelle sue funzionalità al fine di dialogare con la piattaforma amministrativa e permettere in tal modo il monitoraggio remoto degli esercizi in svolgimento. A tal proposito si veda più avanti nel presente documento (cfr 4.2 e seguenti).
REQUISITI HARDWARE DELLA PIATTAFORMA DI VR
La VRP per il progetto può essere installata su qualsiasi computer purché soddisfi i requisiti hardware richiesti dal Framwork 3DOOR, che sono illustrati nella seguente tabella.
Requisiti minimi | Requisiti consigliati | |
CPU | Dual core 2.0Ghz | Quad core 2.0Ghz |
RAM | 1Gb (2Gb preferiti) | 4Gb |
VIDEO CARD | nVidia con memoria propria 256Mb (512Mb preferiti) | Ati Radeon HD5400 o superiore
oppure nVidia GTX200 o superiore Supporto HDMI and DVI |
HARD DISK | Almeno 100MB di spazio libero per l’installazione e almeno 1GB di spazio libero per i contenuti 3D |
Almeno 100MB di spazio libero per l’installazione e almeno 1GB di spazio libero per i contenuti 3D |
SCHEDA AUDIO | Standard | Scheda audio conforme AC’97 |
RETE | Presenza di connessione alla rete | Presenza di connessione alla rete |
SISTEMA OPERATIVO | MicroSoft Windows XP | MicroSoft Windows 7 Home Premium o superiore |