Slide 1

Slide 1 text

Indoor Positioning Using the OpenHPS Framework Maxim Van de Wynckel, Beat Signer Web & Information Systems Engineering Lab Vrije Universiteit Brussel 1

Slide 2

Slide 2 text

What is OpenHPS? An Open Source Hybrid Positioning System 2

Slide 3

Slide 3 text

What is OpenHPS? An Open Source Hybrid Positioning System ► Any technology ► Any algorithm ► Various use cases ► Flexibile processing and output ⬛ Accuracy over battery consumption, reliability, ... ► Aimed towards ⬛ Developers ⬛ Researchers 3

Slide 4

Slide 4 text

Process Network Design IMU Sensor ... 4

Slide 5

Slide 5 text

Process Network Design ... IMU Sensor ... IMU Source PDR Processing Display Position ... ... Merge Frames 5

Slide 6

Slide 6 text

Process Network Design ... IMU Source PDR Processing Save Display Position Load ... ... Merge Frames Data Service 6

Slide 7

Slide 7 text

Modularity Core Component Positioning Techniques (e.g. fingerprinting) Abstractions (e.g. location-based services) Data Storage (e.g. MongoDB) Communication (e.g. socket connection) 7

Slide 8

Slide 8 text

Data Processing Processed Data Knowledge Raw Data 8

Slide 9

Slide 9 text

DataObject 9

Slide 10

Slide 10 text

Absolute and Relative Positions Absolute ► 2D, 3D, Geographical, ... Relative ► Distance, angle, velocity, ... ► Relative to another object 10

Slide 11

Slide 11 text

DataFrame VideoDataFrame source CameraObject uid: "camera", position: { x: 2, y: 5, z: 3 }, projection: ..., width: 1280, height: 1024 Image DataObject Detected object DataObject Detected object DataObject Detected object uid timestamp 11

Slide 12

Slide 12 text

SymbolicSpace An object that semantically defines a space ► Spatial hierarchy ► Graph connectivity with other spaces ► Geocoding ► GeoJSON compatibility ► Can be used as a location ► Can be extended ... 12

Slide 13

Slide 13 text

Location-based Service Location-based Service getCurrentPosition("me", ...) Sink Processing Fusion Storage Source Processing Source 13

Slide 14

Slide 14 text

Location-based Service ... Location-based Service watchPosition("me", ...) Sink Processing Fusion Storage Source Processing Source 14

Slide 15

Slide 15 text

Demonstration ► Indoor positioning use case ► Use existing techniques ► Validation of flexibility and modularity Server Offline App Online App 15

Slide 16

Slide 16 text

Positioning Model WiFi Source BLE Source Merge Frames Socket Sink User Input Offline-stage App 16

Slide 17

Slide 17 text

Positioning Model ... Socket Source Socket Source Fingerprint Storage Fingerprint Service Sink WLAN Fingerprin Processin BLE Fingerprin Processing Server Beacon Data Service 17

Slide 18

Slide 18 text

Positioning Model ... IMU Source Socket Source Position Fusion PDR Processing WiFi Source BLE Source Merge Frames Socket Sink Display Sink Online-stage App Velocity Processing Velocity Processing Delay 18

Slide 19

Slide 19 text

Positioning Model ... Socket Sink Socket Source Socket Source rint ge Fingerprint Service WLAN Fingerprint Processing BLE Multilateration Processing Position Fusion BLE Fingerprint Processing Server Beacon Data Service 19

Slide 20

Slide 20 text

Positioning Model ... IMU Source Socket Source Position Fusion PDR Processing WiFi Source BLE Source Merge Frames Socket Sink Display Sink Online-stage App Velocity Processing Velocity Processing Delay 20

Slide 21

Slide 21 text

Dataset 21

Slide 22

Slide 22 text

Validation Results Static Positioning WLAN fingerprinting BLE fingerprinting BLE multilateration Fusion failed points 0 6 12 0 average error 1.23 m 3.23 m 4.92 m 1.37 m minimum error 0.01 m 0.17 m 0.74 m 0.01 m maximum error 4.77 m 15.39 m 19.26 m 9.75 m hit rate 95.82 % 80.83 % 52.50 % 96.67 % 22

Slide 23

Slide 23 text

Validation Results ... Trajectories 23

Slide 24

Slide 24 text

Validation Results ... Trajectories WLAN + BLE WLAN + BLE + IMU average error 3.28 m 1.26 m maximum error 9.60 m 3.10 m average update frequency 3.04 s 0.52 s 24

Slide 25

Slide 25 text

Contributions and Conclusions ► OpenHPS: open source framework for hybrid positioning ⬛ Aimed towards developers and researchers ► Abstractions such as location-based services and spaces ► Validation of an indoor positioning use case ► Configurable and interchangeable nodes and services ► Public dataset with multiple orientations Visit for additional resources, documentation, source code and more! https://openhps.org 25