Modules

This page gives an overview of the official OpenHPS modules that are available. This list does not contain third party modules that provide nodes or data services.

@openhps/core

The core module offers the processing network model and commonly used nodes for sampling absolute and relative positions. It offers 2D, 3D and geographical positioning through trilateration, triangulation, fingerprinting and velocity processing.

Positioning Algorithms

  • @openhps/imu - Adds IMU processing nodes for fusing IMU sensors.
  • @openhps/rf - Adds RF processing nodes and data objects.
  • @openhps/fingerprinting - Adds various fingerprinting nodes and services for offline and offline positioning models.
  • @openhps/video - Provides general data objects and data frames for working with images, video data or cameras.
  • @openhps/opencv - Provides linkage with opencv4nodejs and OpenCV.js for computer vision algorithms on the server or browser.
  • @openhps/openvslam - Provides bindings to OpenVSLAM
  • @openhps/orb-slam3 - Provides bindings to ORB-SLAM3

Abstractions

  • @openhps/geospatial - Enables the concept of geospatial spaces (e.g. building, room) on top of reference spaces.

Data Services

Communication

  • @openhps/socket - Provides node communication through Socket.IO for remote models.
  • @openhps/rest - Provides node communication through restful endpoints.
  • @openhps/mqtt - MQTT client node communication and standalone MQTT server.
  • @openhps/protobuf - Protocol buffer serialization and deserialization.

Smartphone

Misc

  • @openhps/sphero - Example implementation for controlling and receiving sensor data from Sphero toys.
  • @openhps/csv - Read and write data frames from/to CSV files.
  • @openhps/web - Provides Web components