SurroundSense: Mobile Phone Localization via Ambience Fingerprinting Martin Azizyan Duke University

advertisement
SurroundSense:
Mobile Phone Localization
via Ambience Fingerprinting
Martin Azizyan Duke University
Ionut Constandache Duke University
Romit Roy Choudhury Duke University
Abstract
• Mobile computing applications center around
user’s location
• Term- Physical Location
(coordinates Latitude and Longitude)
• Term- Logical Location
(like Starbucks or McDonalds)
• Lots of Research available for physical location
• Few attempts recognizing logical location
Abstract
• Ambient sound, light, and color from phone’s
camera and microphone
• Accelerometers for user-motion
• Adjacent stores can be separated logically
• They propose SurroundSense, a mobile phone
based system explores ambience fingerprinting
• 51 different stores - average accuracy of 87%
when all sensing modalities are employed
Introduction
•
•
•
•
•
Starbucks -coffee machines and microwaves
Restaurants -forks and spoons clinking
Target – red colors
Panera Breads- yellow colors
Floors with carpets, ceramic tiles, or wooden
strips
• Bars -dim yellow lights
• BlockBuster - bright white light
Introduction
• Wal-Mart - walking up and down aisles
• Barnes and Noble -relaxed stroll with long
pauses
• Restaurants - short queuing followed by a long
duration of sitting
• May not be unique based on any one attribute,
the combination of all exhibits diversity
SurroundSense Architecture
SurroundSense Architecture
•
•
•
•
•
•
•
•
Mobile phone user visits an unknown store.
The phone senses the ambience
Values forwarded to the fingerprinting factory
Types of sensor data identified
Phone’s (GSM-based) physical coordinates
Geographical database
Fingerprint database and Fingerprint matching
The matching module -best match for test
fingerprint
System Design
•
•
•
•
•
Fingerprinting Sound
Fingerprinting Motion using Accelerometers
Fingerprinting Color/Light using Cameras
Fingerprinting Wi-Fi
Fingerprint Matching
Fingerprinting Sound
• Recorded ambient sound for one
• Time domain, a simple fingerprinting scheme
based on signal amplitude
• Acoustic fingerprints - computed the pair-wise
distances.
• Use sound only as a filter
• The output is fed to the accelerometer filter
Sound fingerprints from 3 adjacent stores
Fingerprinting
Motion using Accelerometers
•
•
•
•
•
Human movements in a location
Restaurants -stationary for long durations
Grocery store - more mobile
Accelerometer readings - stationary vs in motion
Vector machines (SVM), a popular data
classification tool
• User movement is prone to fluctuation
• Clothing store - browse long time or purchase in
haste
• Accelerometers as a filtering mechanism too
Sample Accelerometers Traces
Fingerprinting
Color/Light using Cameras
•
•
•
•
•
•
The wall and floor colors contribute to theme
Use automatically-taken phone pictures
Only floor-facing pictures are used
Color/light extraction
Why picture of the floor?
Colors of carpets, tiles, marble, and wooden
floors
• HSL - hue-saturation-lightness
• Clusters of color color-light fingerprint
Color/light fingerprint in the HSL space
Fingerprinting Wi-Fi
•
•
•
•
•
WiFi fingerprinting no good for logical places
WiFi based fingerprinting -fifth sensor
MAC addresses of visible APs
MAC addresses recorded every 5 seconds
Computing the fraction of times each unique
MAC address was seen over all recordings
• A tuple of fractions forms the WiFi fingerprint of
that place
Fingerprint Matching
• SurroundSense uses 4 filtering/matching
• The (WiFi, sound, and accelerometer) filters are
applied first
• Candidate set fed to the color/light-based
matching scheme
• Use the color/light based matching scheme last
• The final output is an ordered list of candidates
– the top ranked candidate is declared to be the
location of the phone
ProtoType Implementation
• Client and Server
• Populating the Fingerprint Database
Special Note: SurroundSense was implemented on Nokia N95
using Python platform. The server -MATLAB, Python code, data
mining tools
Client and Server
•
•
•
•
•
•
•
•
•
Sensor runs on threads and execute API calls
The accelerometer samples - 4 readings per second.
The audio sampling rate is 8 kHz.
Pictures are taken every 5 seconds
A meta file -stores date, time, GSM, camera mode
The server - several modules.
A Data Manager formats raw data appropriately.
The formatted data sent to Fingerprinting Factory
A MATLAB/ Python based Filtering/Matching
Module -computes the top-ranked match.
Populating the Fingerprint Database
•
•
•
•
•
•
How did they build a fingerprint database?
46 business locations
5 locations in India
Students visited 51 stores
Stores visited multiple times
Design location labeling games. The person with
a best match may win a prize.
• More people play larger fingerprint database
Evaluation
• Partially Controlled Experimentation
• Performance
Pre-Cluster Accuracy
Per-Shop Accuracy
Per-User Accuracy
Per-Sensor Accuracy
Partially Controlled Experimentation
• Not performed with a real user base
• Mobile phones in our hand (and not in our
pockets)
• Phones took pictures for color and light
fingerprinting.
• In uncontrolled environments, phones in pocket
• New wearable mobile phones
• Wrist watches and Necklaces
Mimicking Customer Behavior
•
•
•
•
•
•
•
Groups of 2 people
Went to different stores -time-separated
Fingerprinted every store in cluster
Behave like normal customers
Purchase coffee and food
Mimic the movement of another customers
Atypical behavior -picking up pre-ordered food
shopping very quickly.
Performance: Per-Cluster Accuracy
•
•
•
•
•
Evaluate 4 modes
1. WiFi-only
2. Sound, Accelerometer, Light and Color
3. Sound, Accelerometer
4. SurroundSense (SS) combined all modes
of ambience fingerprinting
• SurroundSense average accuracy of 87%
• All the sensors 90%...
Performance: Per-Shop Accuracy
• 47% of the shops can be localized perfectly using
SurroundSense.
• WiFi displays bimodal behavior – it’s either high
accuracy, or seriously suffers
• Clearly, the combination of multi-modal
fingerprinting is best
Performance: Per-User Accuracy
• User assigned to a random set of stores
• Report the average accuracy
• SurroundSense users achieve between 73% and
75% accuracy
• The accuracy grows to an average of 83% or
more for 80% of the users
• The median accuracy is around 88%, while 10%
users experience 96% accuracy or more
Performance: Per-Sensor Accuracy
• hand-picked 6 examples -merits and demerits of
each sensor
• Whenever the accelerometer is used-accuracy is
always 100%
• Only the camera, -100% accuracy in this
location
• Only color gives average accuracy of 91%. When
sound is added, -66%
• If the correct location is filtered out, the final
match incorrect
Limitations and Future Work
Energy Considerations
• Energy efficient localization and sensing
• Simple sensing mechanisms – when outdoors
• Variation in GSM signal strengths
• Temperature sensing
• An accelerometer trace requires time
• Faster methods of localization without
compromising accuracy
Conclusion
• Logical location, vs physical coordinates
• The main idea -ambient sound, light, color, RF,
luser movement
• Fingerprint identifies user’s location
• SurroundSense not a stand-alone technique- use
with GSM location
• SurroundSense step towards indoor localization
• Further research - better energy management
• SurroundSense a viable solution of the future
Questions/Comments?
Download