gaitmap.trajectory_reconstruction: Algorithms to estimate IMU sensor orientation and position#

Methods to calculate the global orientation and position of an IMU.

This module provides simple methods to estimate the orientation and position on custom IMU data and a set of wrappers to make applying these methods to the default gaitmap datasets easier.

TrajectoryWrapperClasses#

StrideLevelTrajectory(*[, ori_method, ...])

Estimate the trajectory over the duration of a stride by considering each stride individually.

RegionLevelTrajectory(*[, ori_method, ...])

Estimate the trajectory over the duration of an entire gait sequence or region of interest.

Trajectory Estimation Methods#

Methods to calculate position and orientation of an IMU withing a single algorithm.

RtsKalman(*[, initial_orientation, ...])

An Error-State-Kalman-Filter (ESKF) with Rauch-Tung-Striebel (RTS) smoothing for trajectory estimation.

MadgwickRtsKalman(*[, initial_orientation, ...])

An extention of the RTS Kalman filter that uses the Madgwick filter for orientation estimation.

Orientation Estimation Methods#

Methods to calculate the global orientation of an IMU.

SimpleGyroIntegration([initial_orientation, ...])

Integrate Gyro values without any drift correction.

MadgwickAHRS([beta, initial_orientation, ...])

The MadwickAHRS algorithm to estimate the orientation of an IMU.

MahonyAHRS([kp, ki, initial_orientation, ...])

The MahonyAHRS algorithm to estimate the orientation of an IMU.

Position Estimation Methods#

Methods to calculate the global position of an IMU.

ForwardBackwardIntegration([turning_point, ...])

Use forward(-backward) integration of acc to estimate velocity and position.

PieceWiseLinearDedriftedIntegration([...])

Use a piecewise linear drift model based on zupts for integration of acc to estimate velocity and position.