Skip to content

Overview

ARUS provides a flexible computational framework to manage the data processing flow. It provides a unified interface for different data sources, including sensory data from files and real-time devices, as well as annotation or event-based data from files and devices (annotation tools). It uses a computational graph to support building flexible data processing schemes and provides a set of common used data processing operators. Finally, it is built on multi-process or multi-thread processing to utilize the multi-core CPU architecture of modern computers.

Highlights

  1. Unified interfaces (Stream, Generator) for different data sources.
  2. Flexible computational graph (Node) and common data processing operators (Segmentor, Synchronizer, Scheduler, Processor).
  3. Built-in support for multi-thread and multi-core processing.

Package architecture

Figure 1. ARUS package architecture

Data flow module

Data flow module provides building blocks (classes) to support flexible computational graph, unified data interface, and common data flow operators.

The following class UML demonstrates the data flow building blocks (classes) and their relationships.

Class diagram: Core building blocks

Core building blocks

Building block Functionality Child classes Examples
Node Coming soon Coming soon Coming soon
Operator Coming soon Coming soon Coming soon
Building block Functionality Child classes Examples
Stream Coming soon Coming soon Coming soon
Segmentor Coming soon Coming soon Coming soon
Generator Coming soon Coming soon Coming soon
Building block Functionality Child classes Examples
Pipeline Coming soon Coming soon Coming soon
Synchronizer Coming soon Coming soon Coming soon
Scheduler Coming soon Coming soon Coming soon
Processor Coming soon Coming soon Coming soon

Data processing module

Data processing module provides mathmatical or transformation functions and classes to compute features or transform sensory or annotation data. This module is organized by data types. Currently it only supports one data type accel (raw accelerometer data), but more will be added in the future.

Data type Features Transformations Others
accel Coming soon Coming soon Coming soon

Last update: June 15, 2020