Post on 06-Jul-2015
description
ALMA MATER STUDIORUM - UNIVERSITÀ DEGLI STUDI DI BOLOGNA
14 febbraio 2013
SCUOLA DI INGEGNERIA E ARCHITETTURA
CORSO DI LAUREA IN INGEGNERIA INFORMATICA DIPARTIMENTO DI INFORMATICA – SCIENZA E INGEGNERIA
TESI DI LAUREA in
Reti di Calcolatori T
Progetto di Middleware di supporto a servizi di realtà aumentata per smartphone
CANDIDATO: Marica Bertarini RELATORE: Chiar.mo Prof. Ing. Antonio Corradi CORRELATORE: Prof. Ing. Luca Foschini
Participatory e Mobile Phone Sensing
POI (Point of Interest) o PDI (Punto di Interesse)
Realtà aumentata (AR)
• Combinare oggetti reali ed oggetti virtuali nell’ambiente reale
• Funzionare in maniera interattiva e in tempo reale
• Allineare gli oggetti virtuali sulla realtà esistente
SMARTPHONE: Fotocamera Display Sensori
NOVITA’
Inserimento di nuovi POI attraverso la realtà aumentata
VANTAGGI: • Migliore esperienza dell’utente • Accesso diretto alle informazioni dei POI nelle vicinanze
§ Localizzazione semiautomatica § Intelligenza collettiva
Un sistema di realtà aumentata deve necessariamente:
Architettura sistema PoiAR
Architettura client e server
Inserimento di un nuovo POI - posizionamento
Modalità di utilizzo del servizio Google Images: Richiesta HTTP GET con impostazione dello User-Agent all’URL seguente: http://images.google.com/searchbyimage?image_url=http://POIAR_SERVER/PUBLIC_DIR/IMAGE_NAME
Parsing pagina HTML restituita: ricerca PAROLE SUGGERITE Google Web Search
Modalità di utilizzo del servizio Google Places: Nearby Search Request inclusa nelle API, prevede richiesta all’URL seguente: https://maps.googleapis.com/maps/api/place/nearbysearch/json?keyword=allKeywords&location=latitude,longitude&radius=radius&sensor=sensor&key=API_KEY
JSON restituito trasformato tramite libreria google-gson in oggetto Java della classe PlacesList
LATO SERVER Ricezione immagine
Ricerca immagine Google Images
Ricerca parole chiave
suggerite da Google
Google Web Search
Ricerca parole chiave suggerite
da Google + posizione utente Google Places
Notifica fallimento al client
Invio posizione + nome del presunto POI al client
Invio dettagli dei potenziali POI al
client
Apache Web Server Librerie java.net
Dettagli implementativi lato client
SUPPORTO ALLA COMUNICAZIONE DI RETE • Tentativi ripetuti • Ripristino upload e download • Chiusura connessione inutilizzate
CONFERMA POI IDENTIFICATO: se POI dell’utente non presente o posizione errata, possibilità di posizionamento manuale
E’ in cache run,me?
Lo si u,lizza
SI NO Esiste file cache del POI?
SI NO Richiesta al server
Cache run,me piena? Eliminazione POI
Last Recently Used (LRU)
Salvataggio in cache run,me
SISTEMA DI CACHING (runtime + persistente) • Cache persistente directory di cache prevista dal SO • Cache runtime = cache persistente (all’avvio) • Serve un dato: • Cache persistente aggiornata (al termine)
Test - successo dei metodi di posizionamento
PoiAR Client realizzato per
piattaforma Android (compatibilità garantita da v. 1.5 (API 3)) • 33 installazioni • almeno10 dispositivi diversi • maggior contributo: 4 utenti
14%
36%
50%
Successo dei metodi di posizionamento POI
Riconoscimento immagine
Posizionamento manuale
Posizionamento tramite keywords dell'utente (Google Places)
(Google Images)
64% LOCALIZZAZIONE AUTOMATICA 14% DESTINATO AD AUMENTARE:
• Allargando il campione • Futuro aumento risoluzione fotocamere smartphone
Test – modalità di utilizzo e comunicazione di rete
47,875
30,55
146,11
0 50 100 150 200 tempo (s)
Confronto tempi medi di upload
mobile - large
mobile - small
wi-fi - small
4G small
4G large
Wi-Fi small
10% 10%
80%
Tipologie di connessione 4G
Gprs
Edge
UMTS
54%
6%
40%
Utilizzo di PoiAR
Inserimento nuovo POI Integrazione contenuti Conferma POI esistente
26 POI inseriti 53 tentativi di inserimento Fallimenti: • Perdita connessione Internet • Abbandono dell’applicazione
Conclusioni e sviluppi futuri
SVILUPPI FUTURI
• Gestione upload fotografia iniziale in background
• Eliminazione POI meno confermati
• Nuovi meccanismi di coinvolgimento degli utenti
SISTEMA REALIZZATO • Strumento di inserimento nuovi POI in realtà aumentata • Localizzazione semiautomatica nuovi POI • Intelligenza collettiva per la conferma dei POI
Browser AR è stato reso una piattaforma di participatory sensing
sfruttando l’integrazione con servizi Web esistenti