Skip to main content

A Neural Network for attitude estimation using IMU data

Project description

RIANN (Robust IMU-based Attitude Neural Network)

What is RIANN?

RIANN is a lightweight neural network implementation for estimating orientation (attitude) from inertial measurement unit (IMU) data. It processes accelerometer and gyroscope readings to provide quaternion-based attitude estimation, optimized for real-time applications.

Key Features

  • Fast and accurate quaternion-based attitude estimation
  • Optimized for real-time processing with state preservation
  • Supports both batch processing and step-by-step integration
  • Robust against sensor noise and motion artifacts
  • Simple Python API with minimal dependencies

Installation

pip install riann

or from source

git clone https://github.com/daniel-om-weber/riann.git
cd riann
pip install -e .

Quickstart

import numpy as np
from riann.riann import RIANN

# Initialize RIANN
riann = RIANN()

# Prepare IMU data
acc = np.ones((100, 3))  # Accelerometer data (100 samples, XYZ axes)
gyr = np.zeros((100, 3)) # Gyroscope data (100 samples, XYZ axes)
fs = 200                 # Sampling rate in Hz

# Get attitude quaternions (w,x,y,z)
attitude = riann.predict(acc, gyr, fs)
print(f"Output shape: {attitude.shape}")  # (100, 4) - 100 unit quaternions
Output shape: (100, 4)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

riann-0.1.3.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

riann-0.1.3-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file riann-0.1.3.tar.gz.

File metadata

  • Download URL: riann-0.1.3.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for riann-0.1.3.tar.gz
Algorithm Hash digest
SHA256 6a06235368c5c324c85378608e11c2e3d87790172ac87a2ec143fcdf7e9fc301
MD5 3f211d5d6c1d1250d06644955711dd0d
BLAKE2b-256 f7fde7d3df13a4aa20d1edab5c1157040680193b5eb2601a52be7d5743f7f037

See more details on using hashes here.

File details

Details for the file riann-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: riann-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for riann-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a7d1ab5c820c57fa945637d3ab1195f2caac13dd6a62bd22d5ea81318d7e9f03
MD5 eae9dd5fdbad320879cf6ca38a9b57ef
BLAKE2b-256 7342f7a53ecf56baa427eaba92837d6b35da8d0fd244bf73f35125a0009aa1e8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page