Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Indoor Positioning Using the OpenHPS Framework

Beat Signer
PRO
December 04, 2021

Indoor Positioning Using the OpenHPS Framework

Research paper presentation given at IPIN 2021, Lloret de Mar, Spain.

Hybrid positioning frameworks use various sensors and algorithms to enhance positioning through different types of fusion. The optimisation of the fusion process requires the testing of different algorithm parameters and optimal lowas well as high-level sensor fusion techniques. The presented OpenHPS open source hybrid positioning system is a modular framework managing individual nodes in a process network, which can be configured to support concrete positioning use cases or to adapt to specific technologies. This modularity allows developers to rapidly develop and optimise their positioning system while still providing them the flexibility to add their own algorithms. In this paper we discuss how a process network developed with OpenHPS can be used to realise a customisable indoor positioning solution with an offline and online stage, and how it can be adapted for high accuracy or low latency. For the demonstration and validation of our indoor positioning solution, we further compiled a publicly available dataset containing data from WLAN access points, BLE beacons as well as several trajectories that include IMU data.

Research paper: https://beatsigner.com/publications/indoor-positioning-using-the-openhps-framework.pdf

Beat Signer
PRO

December 04, 2021
Tweet

More Decks by Beat Signer

Other Decks in Science

Transcript

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

    Vrije Universiteit Brussel



    1

    View Slide

  2. What is OpenHPS?
    An Open Source Hybrid Positioning System
    2

    View Slide

  3. 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

    View Slide

  4. Process Network Design
    IMU Sensor
    ...
    4

    View Slide

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

    View Slide

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

    View Slide

  7. 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

    View Slide

  8. Data Processing
    Processed Data
    Knowledge Raw Data
    8

    View Slide

  9. DataObject
    9

    View Slide

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

    View Slide

  11. 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

    View Slide

  12. 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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  18. 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

    View Slide

  19. 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

    View Slide

  20. 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

    View Slide

  21. Dataset
    21

    View Slide

  22. 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

    View Slide

  23. Validation Results ...
    Trajectories
    23

    View Slide

  24. 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

    View Slide

  25. 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

    View Slide