930 resultados para SLAM RGB-D SlamDunk Android 3D mobile
Resumo:
Tematiche di violenza e aggressione sono oggi di estrema attualità e sempre più spesso se ne sente parlare al telegiornale o in programmi specializzati. Aggressione per molestie, furto o per scopi razziali; le motivazioni e i casi d'interesse sono vari e spesso hanno inizio senza alcun apparente motivo e la sensazione di sentirsi sempre meno al sicuro, anche appena usciti di casa, può degenerare ad una vera e propria paranoia. L'unica cosa che è sempre al nostro fianco, oggi giorno, sono i nostri smartphone, che risultano sempre più sofisticati e intelligenti; perché, allora, non provare ad usarli come protezione? L'obiettivo su cui si è incentrata questa tesi è, appunto, il riconoscimento di un'aggressione basata sull'analisi della situazione in cui si trova l'utente, attraverso l'uso dei sensori messi a disposizione dagli odierni smartphone in circolazione. Esistono già numerose applicazioni per la sicurezza personale, ma il metodo utilizzato per la segnalazione di un'aggressione è sempre basato sulla pressione di un pulsante o un'azione particolare che l'utente deve svolgere. L'applicazione creata in questo studio, invece, cerca di riconoscere le situazioni di pericolo osservando i movimenti dell'utente e basa il riconoscimento sulla presenza di situazioni fuori dalla normale quotidianità che, attraverso dei "controlli di conferma", permettono di riconoscere il pericolo in maniera completamente autonoma. Si è deciso di approcciarsi ad un riconoscimento autonomo, in quanto, non sempre si ha la possibilità, o il tempo, di prendere in mano il proprio smartphone per avvisare del pericolo e molte volte il panico potrebbe far perdere la lucidità alla vittima, il cui primo pensiero è quello di difendersi e scappare e non utilizzare il dispositivo. Altre volte, distrarsi anche per un secondo, potrebbe essere fatale per la propria sicurezza. Per questo motivo si è ricercato un'approccio di riconoscimento basato "sull'osservazione" di ciò che sta accadendo, piuttosto che sull'attesa di un segnale. L'obiettivo di riconoscimento prefissato è stato quello delle aggressioni in strada e i sensori utilizzati a questo scopo sono stati: accelerometro, giroscopio, GPS e microfono. Attraverso la combinazione di questi sensori, infatti, è stato possibile riconoscere cadute (di forte entità), urla e probabili spinte/strattoni. Si sono studiate, per tanto, le caratteristiche che collegassero queste tipologie di situazioni per ogni sensore preso in esame, costruendo un'approccio di riconoscimento risultato valido per gli obiettivi minimi prefissati.
Resumo:
Negli ultimi anni si è imposto il concetto di Ubiquitous Computing, ovvero la possibilità di accedere al web e di usare applicazioni per divertimento o lavoro in qualsiasi momento e in qualsiasi luogo. Questo fenomeno sta cambiando notevolmente le abitudini delle persone e ciò è testimoniato anche dal fatto che il mercato mobile è in forte ascesa: da fine 2014 sono 45 milioni gli smartphone e 12 milioni i tablet in circolazione in Italia. Sembra quasi impossibile, dunque, rinunciare al mobile, soprattutto per le aziende: il nuovo modo di comunicare ha reso necessaria l’introduzione del Mobile Marketing e per raggiungere i propri clienti ora uno degli strumenti più efficaci e diretti sono le applicazioni. Esse si definiscono native se si pongono come traguardo un determinato smartphone e possono funzionare solo per quel sistema operativo. Infatti un’app costruita, per esempio, per Android non può funzionare su dispositivi Apple o Windows Phone a meno che non si ricorra al processo di porting. Ultimamente però è richiesto un numero sempre maggiore di app per piattaforma e i dispositivi presenti attualmente sul mercato presentano differenze tra le CPU, le interfacce (Application Programming Interface), i sistemi operativi, l’hardware, etc. Nasce quindi la necessità di creare applicazioni che possano funzionare su più sistemi operativi, ovvero le applicazioni platform-independent. Per facilitare e supportare questo genere di lavoro sono stati definiti nuovi ambienti di sviluppo tra i quali Sencha Touch e Apache Cordova. Il risultato finale dello sviluppo di un’app attraverso questi framework è proprio quello di ottenere un oggetto che possa essere eseguito su qualsiasi dispositivo. Naturalmente la resa non sarà la stessa di un’app nativa, la quale ha libero accesso a tutte le funzionalità del dispositivo (rubrica, messaggi, notifiche, geolocalizzazione, fotocamera, accelerometro, etc.), però con questa nuova app vi è la garanzia di un costo di sviluppo minore e di una richiesta considerevole sul mercato. L’obiettivo della tesi è quello di analizzare questo scenario attraverso un caso di studio proveniente da una realtà aziendale che presenta proprio la necessità di sviluppare un’applicazione per più piattaforme. Nella prima parte della tesi viene affrontata la tematica del mobile computing e quella del dualismo tra la programmazione nativa e le web app: verranno analizzate le caratteristiche delle due diverse tipologie cercando di capire quale delle due risulti essere la migliore. Nella seconda parte sarà data luce a uno dei più importanti framework per la costruzione di app multi-piattaforma: Sencha Touch. Ne verranno analizzate le caratteristiche, soffermandosi in particolare sul pattern MVC e si potrà vedere un confronto con altri framework. Nella terza parte si tratterà il caso di studio, un app mobile per Retail basata su Sencha Touch e Apache Cordova. Nella parte finale si troveranno alcune riflessioni e conclusioni sul mobile platform-independent e sui vantaggi e gli svantaggi dell’utilizzo di JavaScript per sviluppare app.
Resumo:
L'obiettivo di questa tesi è stato quello di progettare ed avviare lo sviluppo di un videogioco 3D multipiattaforma, nello specifico PC(Windows) e Mobile(Android), realizzandone poi una demo, affrontando così tutte le problematiche che possono sorgere quando si sviluppa un programma per dispositivi profondamente diversi fra loro. Il videogioco che si è scelto di realizzare è del genere “First Person Adventure”, in cui il giocatore deve esplorare la mappa di gioco, ed interagire con i vari elementi presenti al fine di far procedere la storia, il tutto realizzato ad un livello qualitativo sufficiente a permetterne la commercializzazione una volta ultimato.
Resumo:
Questa tesi si focalizza sulle possibili tecnologie per realizzare comunicazioni opportunistiche fra dispositivi mobile ed embedded, con l'obiettivo di integrarle nel contesto di sistemi a larga scala situati, e con particolare riferimento al prototipo denominato "Magic Carpet". Vengono considerate in particolare le tecnologie WiFi ad-hoc e Bluetooth Low Energy su Android e Raspberry Pi.
Resumo:
Il lavoro svolto in questa tesi è volto alla descrizione dello sviluppo di un'applicazione mobile per Android legata al mondo della ristorazione. Viene descritta l'applicazione "Takeway", che svolge funzioni di presentazione di un ristorante e di gestione di ordini TakeAway. Viene inoltre proposta un'analisi del fenomeno di centralità del web/mobile nel quotidiano, delle tecnologie più recenti e dei limiti di queste piattaforme. Le sezioni più importanti riguardano la progettazione e l'implementazione del progetto, sono di carattere tecnico e analizzano le strutture utilizzate e gli strumenti impiegati nello sviluppo del software.
Resumo:
La tesi nasce da un'attività di ricerca approfondita su alcune tecnologie innovative e all'avanguardia nell'ambito del mobile computing e dell'Internet of Things. Tra queste il focus principale è orientato allo studio del Bluetooth Low Energy, nuova specifica di Bluetooth caratterizzata principalmente da un consumo di energia assai ridotto. In particolare, si è approfondito il suo funzionamento nel caso dei beacon, piccoli dispositivi che permettono una localizzazione mediante l'invio di un segnale BLE. Inoltre è stata analizzata la possibilità di interazione con Android, poiché oggigiorno non si può evitare di pensare a come queste tecnologie possano interfacciarsi con il mondo degli smartphone e dei tablet. Come conseguenza di tale attività di ricerca è stato analizzato un caso di studio che permettesse di applicare le tecnologie studiate e la loro interazione. Si è pensato quindi a un piccolo sistema distribuito per schermi adattativi (capaci di modificare i contenuti visualizzati in relazione ad eventi esterni) affinché ogni schermo mostrasse dinamicamente l'orario delle lezioni di ciascuno studente all'avvicinarsi di quest'ultimo, e solo per il tempo di permanenza nei pressi dello schermo. Si è quindi progettato e sviluppato un prototipo, e infine durante il testing si sono potute verificare le attuali potenzialità di queste tecnologie e trarre conclusioni sulla possibilità della loro futura diffusione e di impiego in contesti differenti.
Resumo:
Dall'inizio del nuovo millennio lo sviluppo di tecnologie nel campo del mobile computing, della rete internet, lo sviluppo dell'Internet of things e pure il cloud computing hanno reso possibile l'innovazione dei metodi di lavoro e collaborazione. L'evoluzione del mobile computing e della realtà aumentata che sta avvenendo in tempi più recenti apre potenzialmente nuovi orizzonti nello sviluppo di sistemi distribuiti collaborativi. Esistono oggi diversi framework a supporto della realtà aumentata, Wikitude, Metaio, Layar, ma l'interesse primario di queste librerie è quello di fornire una serie di API fondamentali per il rendering di immagini 3D attraverso i dispositivi, per lo studio dello spazio in cui inserire queste immagini e per il riconoscimento di marker. Questo tipo di funzionalità sono state un grande passo per quanto riguarda la Computer Graphics e la realtà aumentata chiaramente, però aprono la strada ad una Augmented Reality(AR) ancora più aumentata. Questa tesi si propone proprio di presentare l'ideazione, l'analisi, la progettazione e la prototipazione di un sistema distribuito situato a supporto della collaborazione basato su realtà aumentata. Lo studio di questa applicazione vuole mettere in luce molti aspetti innovativi e che ancora oggi non sono stati approfonditi né tanto meno sviluppati come API o forniti da librerie riguardo alla realtà aumentata e alle sue possibili applicazioni.
Resumo:
La tesi si pone il duplice obiettivo, da un lato, di seguire e approfondire i lavori di restauro e messa in sicurezza delle facciate di palazzo del Podestà, dall'altro, contemporaneamente, di proporre, sviluppare e sperimentare strumenti digitali da utilizzare durante la progettazione e l'esecuzione degli interventi di Restauro. Il settore del restauro architettonico si presenta, più di tanti altri, caratterizzato dalla molteplicità delle figure che intervengono nel corso del processso produttivo e dalla grandissima varietà e quantità di informazioni che entrano in gioco, partendo dalla fase di rilievo dello stato di fatto, fino all'indispensabile documentazione di fine lavori. Prendendo avvio, dunque, dal tirocinio svolto presso la Leonardo S.r.l. di Bologna, si è svolta una riflessione sui processi gestionali ed operativi legati alle operazioni di restauro e ci si è proposti di sviluppare e proporre alcuni strumenti digitali che, senza stravolgere l'attuale processo produttivo, potessero portare benefici operativi all'attività aziendale, facilitare il controllo ed il feedback da parte del committente e migliorare ed alleggerire l'onere della rendicontazione dei lavori. L'orizzonte di questi strumenti è multiplo: per l'attualità è stata sviluppata, in collaborazione con l'ENEA di Bologna, un'applicazione mobile su piattaforma FileMaker per la gestione delle operazioni di restauro attraverso la creazione di un database per la gestione delle analisi e del cantiere; mentre, per uno sviluppo "a regime" fra qualche anno, si è valutata l'efficacia di tecnologie SfM (Structure from Motion) per il rilievo speditivo e la documentazione. Nell'ottica di sviluppi ancora più lontani, infine, le due fasi saranno riunite nella proposta di tecnologie di realtà aumentata con l'obiettivo futuribile di poter passare direttamente dalla realtà e dal rilievo tridimensionale speditivo al progetto ed alla documentazione, senza dovere necessariamente passare da elaborati grafici bidimensionali. Durante tutte queste fasi lo sviluppo delle tecnologie è proceduto di pari passo con il cantiere di palazzo del Podestà, tanto nelle fasi di approfondita ricerca storica, quanto nella produzione delle schede di intervento. L'occasione della ricerca storica ha anche permesso di stilare un semplice regesto, corredato da immagini e bibliografia che raduna ed integra con materiali inediti i numerosi contributi sul tema che si sono succeduti dalla fine del XIX ai giorni nostri.
Resumo:
Le immagini termiche all’ infrarosso sono utilizzate da molte decadi per monitorare la distribuzione di temperatura della pelle umana. Anormalità come infiammazioni ed infezioni causano un aumento locale della temperatura, visibile sulle immagini sotto forma di hot spot. In tal senso la termografia ad infrarossi può essere utilizzata nel campo ortopedico per rilevare le zone sovra-caricate dalla protesi. Per effettuare una valutazione precisa dell’interfaccia moncone-invasatura può essere utile combinare i dati termografici e i dati antropometrici (superficie tridimensionale del moncone), relativi ai singoli pazienti. Di ciò si occupa tale studio, che dopo aver fornito una panoramica sulla termografia e sulla reverse engineering, sperimenta delle tecniche semplici e low-cost per combinare i dati termici e i dati antropometrici. Buoni risultati si riescono ad ottenere utilizzando un Kinect come scanner e un software open-source per il texture mapping. I termogrammi 3D ricreati costituiscono un ottimo strumento di valutazione, per medici e tecnici ortopedici, circa il design dell’invasatura.
Resumo:
L'obiettivo di questa tesi è quello di fornire le informazioni di base che, un aspirante programmatore Android, deve sapere per scrivere applicazioni che facciano uso dei sensori presenti nei moderni telefoni cellulari (accelerometro, giroscopio, sensore di prossimità, ecc...). La tesi si apre citando qualche aneddoto storico sulla nascita del sistema operativo più famoso al mondo ed elencando tutte le releases ufficiali e le novità che hanno portato dalla 1.0 all'attuale 5.1.1 Lollipop. Verranno analizzate le componenti fondamentali per costruire un applicazione Android: Activities, Services, Content Providers e Broadcast Receivers. Verrà introdotto e approfondito il concetto di sensore, sia punto di vista fisico sia dal punto di vista informatico/logico, evidenziando le tre dimensioni più importanti ovvero struttura, interazione e comportamento. Si analizzeranno tutte i tipi di errori e problematiche reali che potrebbero influire negativamente sui valori delle misurazioni (disturbi, rumori, ecc...) e si propone la moderna soluzione del Sensor Fusion come caso particolare di studio, prendendo spunto dal lavoro di grandi aziende come la Invensense e la Kionix Inc. Infine, si conclude l'elaborato passando dalle parole al codice: verranno affrontate le fasi di analisi e d'implementazione di un'applicazione esemplificativa capace di determinare l'orientamento del dispositivo nello spazio, sfruttando diverse tecniche Sensor Fusion.
Resumo:
L'indipendenza dai combustibili fossili è uno degli argomenti maggiormente trattati negli ultimi anni e lo sviluppo di tecnologie atte a produrre energia attraverso fonti rinnovabili è uno dei punti cruciali della ricerca moderna. L'utilizzo dei veicoli elettrici nel quotidiano rappresenta una delle vie principali per l'abbandono delle fonti non rinnovabili, tuttavia siamo ancora in presenza di qualche limite. Una delle principali ragioni per cui gli automobilisti sono restii ad utilizzare le auto elettriche è quella che in inglese viene definita Range Anxiety, ossia la preoccupazione di non riuscire a raggiungere la propria meta con l'autonomia residua del veicolo. Altri fattori che contribuiscono a scoraggiare gli automobilisti sono i lunghi tempi di ricarica e dove effettuare queste ultime. Per cercare di ridurre queste problematiche nel seguente elaborato viene descritto lo sviluppo di un applicazione per sistema Android, con lo scopo di simulare dei percorsi inseriti dall'utente come se venissero effettuati utilizzando un veicolo elettrico: l'applicativo, sfruttando un servizio esterno fornirà all'utente tutti i dati del percorso, come ad esempio dove effettuare una ricarica. Di seguito viene illustrato l'utilizzo dell'applicativo, la sua architettura, come è stato sviluppato e le sue future estensioni.
Resumo:
L'obiettivo di questa tesi è quello di esplorare l'ideazione di sistemi software collaborativi innovativi basati su smart-glasses e forme di realtà aumentata mobile. In particolare, è stato formulato un caso di studio che cattura alcuni aspetti essenziali di questi sistemi: un'applicazione nel quale più utenti dotati di smart glasses si muovono in una zona precisa cercando di raggiungere tutti i punti d'interesse preimpostati in fase di inizializzazione e ottendendo le ricompense contenute dentro agli scrigni situati nei suddetti punti. Lo specifico caso di studio si occupa di approfondire gli aspetti relativi all'Interfaccia Utente, mentre precedentemente erano state affrontate le parti riguardanti la comunicazione e la cooperazione. L'applicazione è location-based e si serve delle tecniche di geolocalizzazione GPS ed è hands-free perché l'interfaccia grafica è mostrata all'utente tramite lo schermo degli smart-glasses.
Resumo:
Questa tesi esamina la progettazione e lo sviluppo di un'applicazione mobile Android che è in grado di gestire l'attività sportiva di un utente. L'applicazione offre numerose funzionalità, che permettono all'utente di eseguire allenamenti per il fitness e allenamenti per la corsa, tenendo sempre sotto controllo i risultati ottenuti e tutte le informazioni necessarie. Oltre ad eseguire allenamenti l'utente può crearne di propri e modificarli a suo piacimento, in più nell'App è inserito lo shop dove l'utilizzatore può comprare allenamenti messi a disposizione direttamente da FitBody. Gli aspetti visti sopra saranno descritti attraverso un'analisi del problema e un'analisi sulla progettazione architetturale. In particolare verranno sottolineati aspetti riguardanti l'interazione tra utenti e l'utilizzo di API che permetteranno all'utilizzatore di condividere le proprie esperienze sul social network Facebook e di avere un'esperienza completa con l'app. In questo scritto si parlerà anche della comunicazione tra applicazione e server, che avviene grazie a chiamate HTTP con metodo POST. Attraverso queste chiamate l'applicazione leggerà e scriverà informazioni sul database online, 'hostato' sulla piattaforma Altervista. L'applicazione web, di cui sarà data solamente un'infarinatura, è stata sviluppata utilizzando il linguaggio di programmazione PHP. Ogni 'response' inviata dal server al client è composta da uno o più oggetti JSON.
Resumo:
Nella prima parte dell'elaborato vengono introdotti dei concetti basilari del sistema ferroviario necessari al proseguo della trattazione: i sistemi di circolazione utilizzati in Italia, le sezioni di blocco, i sistemi di sicurezza e di controllo della marcia, il sistema ERTMS a livello europeo. Nella seconda parte, dopo aver introdotto il concetto di capacità, vengono analizzati nel dettaglio e confrontati, in termini di capacità teorica, i sistemi basati sul blocco fisso e sul blocco mobile. Vengono quindi proposti i metodi utilizzati per il calcolo della capacità reale, prestando particolare attenzione al metodo dei coefficienti di ritardo specifico D e di stabilità X. Da quest' ultimo e con l'introduzione dei livelli di servizio, viene analizzato il rapporto che lega la capacità con la qualità della circolazione. Infine viene proposto un confronto tra le linee convenzionali e le linee AV/AC in Italia, evidenziando il rapporto tra le caratteristiche di velocità e di capacità.
Resumo:
L’obiettivo di questa tesi è la trasposizione del gioco da tavolo “Mahjong” su un’applicazione mobile. Essa è sviluppata in Android, ma l’idea è quella di estenderla anche alle altre piattaforme. Col passare del tempo il Mahjong si è diffuso in molti paesi e per questo ne sono nate molte varianti. In questo caso si adotta il regolamento ravennate 200-400, opportunamente modificato per adattarlo all’applicazione. Il nome dell’applicativo nasce dal fatto che esso dovrà gestire un numero molto elevato di lingue e che nessuno ha ancora sviluppato un gioco multiplayer sul Mahjong, per cui sarà il primo a livello mondiale. Nell’applicazione un utente dovrà creare il tavolo di gioco e solo allora gli altri potranno visualizzarlo. Dopo che tutti si saranno seduti, chiunque potrà chiedere di iniziare una partita, che comincerà non appena tutti avranno accettato la richiesta. È stato progettato un database, in modo da salvare lo stato attuale di tutti i tavoli. Le informazioni sullo stato di ogni partita, invece, sono salvate in un file diverso per ciascuna. L’architettura utilizzata per lo sviluppo dell’applicativo è del tipo client-server. Per la parte server dell’applicazione si è scelto di usare il linguaggio java, utilizzando le socket e instaurando connessioni SSL. Il server utilizza inoltre connessioni non persistenti. Tutte le richieste inviate e ricevute dal server sono create in un formato adatto all'interscambio di dati fra applicazioni client-server, chiamato JSON. Nel server si è creato, inoltre, un servizio di “caching” delle partite, in modo da incrementare le prestazioni e la velocità di elaborazione delle richieste. Per connettere in modo corretto il server al database si utilizza JDBC.