Presentation for the 11th EAI International Conference Sensor System and Software (S-Cube) taking place on the 3rd December 2020.
This paper received the *Best Paper Award* at the S-Cube conference https://www.dimstudio.org/best-paper-award-at-eai-s-cube-conference/
Abstract
In this paper, we introduce MOBIUS, a smartphone-based system for remote tracking of citizens' movements. By collecting smartphone's sensor data such as accelerometer and gyroscope, along with self-report data, the MOBIUS system allows to classify the users' mode of transportation. With the MOBIUS app the users can also activate GPS tracking to visualise their journeys and travelling speed on a map. The MOBIUS app is an example of a tracing app which can provide more insights into how people move around in an urban area. In this paper, we introduce the motivation, the architectural design and development of the MOBIUS app. To further test its validity, we run a user study collecting data from multiple users. The collected data are used to train a deep convolutional neural network architecture which classifies the transportation modes using with a mean accuracy of 89%.
Video of the presentation
https://youtu.be/tBXtxcHFyMs
To appear in the Springer proceedings Science and Technologies for Smart Cities 6th EAI International Summit, SmartCity360, online December 2-4 December 2020, Proceedings
Take control of your SAP testing with UiPath Test Suite
MOBIUS: Smart Mobility Tracking with Smartphone Sensors
1. MOBIUS: Smart Mobility Tracking
with Smartphone Sensors
1Open University of The Netherlands 2Maastricht University
3rd December 2020
Daniele DI MITRI1 Khaleel ASYRAAF1
Kevin TREBING2 Stefano BROMURI1
daniele.dimitri@dipf.de - @dimstudio
2. The authors
Daniele DI MITRI
dimitri@dipf.de
Khaleel ASYRAAF
khaleel.asyraaf@ou.nl
Stefano BROMURI
stefano.bromuri@ou.nl
Kevin TREBING
kevin.trebing@
student.maastrichtuniversity.nl
Center for Actionable
Research of the Open University
MOBIUS: Mobility Tracking w. Smartphone Sensors 2
3. Outline presentation
• The authors
• Background
• Related Work
• Functional requirements
• System Architecture
1. Data Collection
2. Data Storing
• Collected dataset
3. Data annotation
4. Data Analysis
• Results
• Discussion
• Conclusions
MOBIUS: Mobility Tracking w. Smartphone Sensors 3
4. Background
• MOBIlity for Urban Sustainability (Mobius) is a project part of the
SafeCity programme of the Open University of The Netherlands
• The municipality of Heerlen monitors citizens journeys
throughout the city using paper based questionnaires
• MOBIUS idea:
• replace questionnaire with a mobile application (android)
• classify the transportation mode using Neural Networks (NN)
• collected labels asking user to self-report using the mobile
apps when the journey happens
MOBIUS: Mobility Tracking w. Smartphone Sensors 4
5. Related Work
• cell phone signal coverage and classified "stationary", "walking",
and "driving”
• 80%-85% accuracy (Anderson, 2006; Sohn, 2006)
• proximity to bus-stops and rail-lines as well as GPS data
• accuracy of 93% (Stenneth, 2011)
• Only accelerometer of the cell phone (Hemminki, 2013; Liang, 2019)
classify "stationary", "walk", "bus", "train", "metro", and "tram"
• achieve 80% and 95% accuracy, respectively.
• Using a Bi-LSTM (Zhao, 2019) with a MLP using acclerometer and
gyroscope readings on the classes "stationary", "walk", "run",
"bike", "bus", and "subway”
• achieve 92% accuracy
MOBIUS: Mobility Tracking w. Smartphone Sensors 5
Our classifier
uses a similar
CNN architecture
as (Liang, 2019).
6. Functional requirements
(FR1) Data collection
• Long periods data collection of accelerometer,
gyroscope, and GPS sensor data.
• Data collection should be a feature in the
background
• Accelerometer and gyroscope data sampled at
60Hz (60 updates per seconds)
• GPS coordinates sampled every 10 seconds
• Data gathering should not drain the battery
(FR2) Data storing
• Sessions to be stored into compressed format
(FR3) Data annotation
• Self-report the mode of transportation
• Activate a toggle for each mode of transportation
• The user-annotations should be editable
(FR4) Data analysis
• suitable representation for machine learning
(FR5) Privacy
• User should be able to deactivate the GPS
coordinate tracking
• Classification should rely on Acceleroemter and
Gyroscope
MOBIUS: Mobility Tracking w. Smartphone Sensors 6
8. (1) Data Collection: MOBIUS client
Android mobile application with 2 flows of data collection:
• Sensor data
• Accelerometer gyroscope - 60Hz (60 updates per second)
• Global Positioning System (GPS) - every 10s. Can be
deactivated
• User starts/stop the collection which runs in as deamon
service in the background
• Self-reported annotations:
• “Walking”, “Running”, “Biking”, “Train/bus”, “Car”.
• User toggles the annotations at start and ends of their
journeys
• At the end of the day, the user uploads the compressed
data in the server
MOBIUS: Mobility Tracking w. Smartphone Sensors 8
Source code: https://github.com/khaleelasyraaf/Mobius_Client
9. (2) Data Storing: Mobius Server
MOBIUS: Mobility Tracking w. Smartphone Sensors 9
• Each session is stored in a zip folder
• When the user hits the ‘Upload’ button, the zip
folder is transfered from the Cliebt to the Mobius
Server
• The Mobius server is a RESTful web service
implemented with Python Flask
• Each session folder is composed by three CSV files
contaning the data from: (1) acc & gyroscope, (2)
GPS, (3) annotations
• The files are later transformed into MLT-JSON
format to be compatible with the annoation tool
(next slide)
MLT-JSON data format
CSV data format
Source code: https://github.com/HansBambel/Mobius_server
10. (3) Data Annotation: Visual Inspection Tool
MOBIUS: Mobility Tracking w. Smartphone Sensors 10
Source code: https://github.com/dimstudio/visual-inspection-tool
11. Collected dataset & pre-processing
MOBIUS: Mobility Tracking w. Smartphone Sensors 11
• The research team (4 users) collected ~47 hours recordings
• The dataset was pre-processed and used as input for training
the Neural Networks
• We only consider Acc. and Gyr. (x,y,z)
• A sliding window approach was used (size 512 = 8.7s)
• It resulted into 168476 samples
• We removed gravity from the Accelerometer
• Applied smoothing at each sensor stream
• We also tried using only the Acc. magnitude
12. (4) Data Analysis: SharpFlow
Compared approaches:
1. Convolutional Neural Network
(CNN)
2. Bi-directional Long Short Term
Memory (Bi-LSTM)
3. Dummy classifiers
1. Most frequent class
2. Dependent on class
distribution
MOBIUS: Mobility Tracking w. Smartphone Sensors 12
Source code: https://github.com/dimstudio/SharpFlow
Grafic Representation of the CNN
14. Discussion
• Gyroscope sensor seems to have a minor performance
impact, thus excluding it will extend battery's life and
storage space
• Bi-LSTM did not achieve over 90% as in the literature,
due to smaller time window (2.56s) with a sampling rate
of 50Hz unlike our longer time (8.7s)
window was sampled at 60Hz
• The CNN outperforming the LSTM approach due to cyclic
motions are easy to spot by the spatially invariant
kernels of the convolutions
MOBIUS: Mobility Tracking w. Smartphone Sensors 14
15. Conclusions
• We introduced Mobius, a system for Smart Mobility Tracking
with Smartphone Sensors
• Mobius can automatically classify transportation mode using
only Accelerometer and Gyroscope data
• We tested Mobius using 47 hours of recorded data
• We achieved an overall 89% using a CNN
• Scalable client-server architecture which can accommodate
data from multiple clients
• User in the loop can self-report mode of transport
• We released all our code Open Source on GitHub
• We are aware that tracking apps pose privacy concerns due
to possible surveillance
MOBIUS: Mobility Tracking w. Smartphone Sensors 15
16. Future applications
• We plan to develop an Android Wear (smartwatch) version of the
Mobius client app
• Add more modalities such as the heart-rate
• The approach proposed by Mobius can be used for Human Activity
Recognition:
• Daily Life Activities
• Sports performance monitoring
• Physical rehabilitation Tasks
• The trained models can be embedded in the android app to avoid
uploading in the server
MOBIUS: Mobility Tracking w. Smartphone Sensors 16