Based on a paper: „ SurroundSense: Mobile Phone Localization via Ambience Fingerprinting ” and Romit Roy Choudhury’s presentation: http://people.ee.duke.edu/~romit/courses/s10/mat erial/surroundsense.ppt
Takes advantage of phone’s hardware. Starting to be popular: AppStore: 3000 LBAs Android: 500 LBAs
Find my iphone: provide location of your phone on computer. Geolife: display shopping list when the phone Is detected near Wal-Mart. Microblog: ask user to update blog when visiting art gallery. Starbucks: voucher for a person, who enters coffee shop.
Consider information about particular client: latitude 52.2317028164831644 longtitude 21.005795001983643 vs palace of culture and science in Warsaw.
Most of the location-based application needs logical, not physical location. Unfortnately, most existing solutions are physical. ◦ Gsm ◦ GPS ◦ SkyHook ◦ Google Latitude ◦ Radar ◦ …
Physical Location Error
Starbucks Pizza Hut Physical Location Error
Starbucks Pizza Hut Physical Location Error The dividing-wall problem
Deus ex machina
GPS / GSM alone are error prone, but combined with other sensors, they might produce an unique fingerprint.
SurroundSense Multi-dimensional fingerprint Based on ambient sound/light/color/movement/WiFi Starbucks Pizza Hut Wall QuickTim e ᆰ and TIFF (Uncom pressed) are needed to see th
Should Ambiences be Unique Worldwide? J I P H Q B A C K D E L Q M N R F O G
GSM provides macro location (strip mall) Should Ambiences be Unique Worldwide? SurroundSense refines to Starbucks J I P H Q B A C K D E L Q M N R F O G
It is unprofitable to have identical businesses aroud, with the same light, music, color, layout, etc. SurroundSense takes advantage of that fact.
SurroundSense Architecture Ambience Fingerprinting Matching Sound Test Fingerprint Color/Light + Acc. = WiFi Logical Fingerprint Location GSM Macro Database Location Candidate Fingerprints
Acoustic fingerprint Fingerprints (amplitude distribution) 0.14 Normalized Count 0.12 Sound: 0.1 (via phone 0.08 0.06 microphone) 0.04 0.02 0 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 Amplitude Values Color and light fingerprints on HSL space Color: (via phone 1 camera) Lightness 0.5 0 0 0.8 1 0.5 0.4 0.6 0.2 Hue 1 0 Saturation
Fingerprints Movement: (via phone accelerometer) Grocery Store Cafeteria Clothes Store Moving Static
Fingerprints Movement: (via phone accelerometer) Grocery Store Cafeteria Clothes Store Moving Static Queuing Seated
Fingerprints Movement: (via phone accelerometer) Grocery Store Cafeteria Clothes Store Moving Static Short walks between Pause for product browsing product browsing
Fingerprints Movement: (via phone accelerometer) Grocery Store Cafeteria Clothes Store Moving Static Walk more Quicker stops
Fingerprints Movement: (via phone accelerometer) Grocery Store Cafeteria Clothes Store Moving Static WiFi: (via phone wireless card) ƒ (overheard WiFi APs)
Discussion Time varying ambience What if phones are in pockets? Fingerprint Database
Discussion Time varying ambience Collect ambience fingerprints over different time windows What if phones are in pockets? Fingerprint Database
Discussion Time varying ambience Collect ambience fingerprints over different time windows What if phones are in pockets? Use sound/WiFi/movement Fingerprint Database
Discussion Time varying ambience Collect ambience fingerprints over different time windows What if phones are in pockets? Use sound/WiFi/movement Opportunistically take pictures Fingerprint Database
Discussion Time varying ambience Collect ambience fingerprints over different time windows What if phones are in pockets? Use sound/WiFi/movement Opportunistically take pictures Fingerprint Database War-sensing
Architecture: Filtering & Matching Candidate Fingerprints
May vary over time. May vary over the circumstances. Much noise.
Amplitude divided into 100 equal intervals 50 positive and 50 negative Frequency = 8 KHz (8k samples / s) Normalized – divided by total number of samples in the recording. Filter Metric: Euclidean distance discard candidate fingerprint if metric > threshold r
Individual pace Some people do shopping in hurry large noise floor
Totally 10 Samples, 4 times per second. Two sample states: ◦ Stationary ◦ Motion support vector machines for detecting each state (libSVM). 0.0 ≤ R ≤ 0.2 sitting t R = 0.2 ≤ R ≤ 2.0 slow browsing moving 2.0 ≤ R ≤ ∞ speed-walking t static Discard candidates with different classification.
Stationary devices with unique MAC address If they are in neighbourhood … Recive beacon every 5 seconds.
M as the union of MAC addresses in f1 and f2 f(m) – how many times MAC address m was seen. Add a large value when m occurs frequently in both f 1 and f 2
Rich diversity across different locations. Uniformity at the same location. Unique floor. K-means clustering algorithm (approximated). Pictures in Hue Saturation Lightness space.
SizeOf(C ij ) – number of pixels in cluster C ij T i – total number of pixels in C i δ (i, j) – centroid distance between i th cluster F 1 and j th cluster F 2 The similarity between the fingerprints is a sum of all pairwise similarities.
Evaluation Methodology 51 business locations 46 in Durham, NC 5 in India Data collected by 4 people 12 tests per location Mimicked customer behavior
Evaluation: Per-Cluster Accuracy Cluster 1 2 3 4 5 6 7 8 9 10 No. of Shops 4 7 3 7 4 5 5 6 5 5 Localization accuracy per cluster Accuracy (%) Cluster
Limitations and Future Work Energy-Efficiency Continuous sensing likely to have a large energy draw Localization in Real Time User’s movement requires time to converge Non-business locations Ambiences may be less diverse
Conclusion Ambience can be a great clue about location Ambient Sound, light, color, movement … None of the individual sensors good enough Combined they may be unique Uniqueness facilitated by economic incentive Businesses benefit if they are mutually diverse in ambience Ambience diversity helps SurroundSense Current accuracy of 89%
Recommend
More recommend