Introduction

OpenHPS is an open source framework for building positioning systems. It lets you fuse multiple positioning techniques and algorithms into a single data processing model, so you can go from raw sensor data to a position for one or more objects.

The project is led by Maxim Van de Wynckel as part of his research towards Interoperable and Discoverable Indoor Positioning Systems, supervised by Prof. Dr. Beat Signer.

How it works

At its core, OpenHPS is a graph of connected nodes that process information. Information flows through the graph as data frames, which carry one or more data objects (the things you are locating).

Architectural Overview

There are three types of nodes:

  • Source nodes generate new data frames (e.g. from a sensor).
  • Processing nodes transform the data (e.g. a positioning algorithm).
  • Sink nodes store or display the result.

Features

  • 2D, 3D and geographical positioning
  • Relative positioning (e.g. distance or angle to a landmark)
  • Common algorithms out of the box: trilateration, triangulation, fingerprinting, dead reckoning and more
  • Computer vision through @openhps/opencv
  • Extensible: add your own nodes, algorithms and data services
  • Modular: pick only the modules you need

What's next?

Source

All code is available on GitHub and published on npm.

Citing & Press Kit

A press kit containing logos (*.SVG, *.PNG) can be found here. Citing the OpenHPS framework should be done using the technical paper.

Van de Wynckel, M. and Signer, B.: "OpenHPS: An Open Source Hybrid Positioning System", Technical Report WISE Lab, WISE-2020-01, December 2020