Source-linked AI summary
Using Inertial Sensors for Position and Orientation Estimation
Manon Kok, Jeroen D. Hol, Thomas B. Schön
TL;DR
Inertial sensors provide high-rate position and orientation information, but noise, bias, and integration cause long-term drift. This tutorial develops signal-processing models and compares smoothing, filtering, extended Kalman, and complementary-filter approaches, illustrating their estimates with experimental and simulated data. It concludes that additional sensors and models are necessary for accurate long-term estimation, while smoothing generally yields better estimates than filtering.
Problem
Inertial measurements support short-term pose estimation but accumulate errors and drift, motivating careful modeling and supplementary information.
Method
The tutorial presents modeling choices and optimization-based smoothing and filtering alongside extended Kalman-filter and complementary-filter implementations.
Results
Smoothing generally provides better estimates than filtering, whose initial uncertainty is higher and requires time to converge.
Takeaways & Limitations
Accurate inertial position and orientation estimation requires additional sensors and models, although the estimation problems are forgiving when models are valid.
Takeaways & Limitations
Smoothing uses all measurements, but its computational cost and memory requirements grow with data-set length and it requires waiting for all data.
Abstract
from arXiv · showhide
In recent years, MEMS inertial sensors (3D accelerometers and 3D gyroscopes) have become widely available due to their small size and low cost. Inertial sensor measurements are obtained at high sampling rates and can be integrated to obtain position and orientation information. These estimates are accurate on a short time scale, but suffer from integration drift over longer time scales. To overcome this issue, inertial sensors are typically combined with additional sensors and models. In this tutorial we focus on the signal processing aspects of position and orientation estimation using inertial sensors. We discuss different modeling choices and a selected number of important algorithms. The algorithms include optimization-based smoothing and filtering as well as computationally cheaper extended Kalman filter and complementary filter implementations. The quality of their estimates is illustrated using both experimental and simulated data.
Introduction
This tutorial introduces position and orientation estimation with inertial sensors, emphasizing signal-processing models and algorithms for handling integration drift. It covers applications from human motion capture to navigation and motivates combining inertial measurements with additional sensors and models.
- Background and motivation: Inertial sensors combine three-axis accelerometers and gyroscopes, enabling pose estimation for devices, moving objects, and connected human-body segments.Gyroscopes measure angular velocity, while accelerometers measure external specific force, including acceleration and gravity.
- Background and motivation: MEMS inertial sensors are small, inexpensive, low-power devices whose measurements are available at high sampling rates.Their widespread use includes smartphones, controllers, virtual-reality headsets, robotics, biomechanical analysis, and motion capture.
- Background and motivation: The estimation problems are nonlinear and depend on orientation parametrization, but careful modeling and algorithm selection can improve accuracy beyond simple practical methods.The tutorial presents a starting point for implementing position and orientation estimators.
- Using inertial sensors for position and orientation estimation: Dead-reckoning integrates gyroscope measurements for orientation and double-integrates gravity-corrected accelerometer measurements for position.Position and orientation estimation are linked because orientation is needed to subtract gravity from accelerometer measurements.
- Using inertial sensors for position and orientation estimation: Measurement noise and bias accumulate through integration, causing orientation and position estimates to drift over time.In stationary smartphone data, orientation drifted a few degrees and position drifted several meters over 10 seconds; gravity leakage further worsened position error.
- Using inertial sensors for position and orientation estimation: Because inertial estimates drift over longer time scales, accurate pose estimation requires additional sensors and models, such as GNSS, UWB, cameras, or motion constraints.The tutorial focuses on signal processing, modeling choices, and important algorithms to support implementation of combined estimation systems.
2.4 Sensor errors
Inertial measurements contain noise and bias, including slowly time-varying gyroscope bias and accelerometer errors that can be difficult to separate from setup effects. Allan variance characterizes sensor noise under stationary conditions, but dynamic operation introduces additional error sources.
- Measurement errors: Stationary gyroscope measurements contain approximately Gaussian noise and bias, while the gyroscope bias can vary slowly over time.The tutorial illustrates these effects using roughly 10 seconds of smartphone data and reports different bias values across a 55-minute dataset.
- Measurement errors: Accelerometer measurements contain approximately Gaussian noise, and nonzero components can reflect either sensor bias or a non-flat supporting surface.The z-component is also reported as larger than expected, though the supplied passage is truncated before explaining why.
- Calibration: A stationary sensor makes gyroscope bias easier to estimate than accelerometer bias because accelerometer bias is confounded with the table’s inclination.Stationarity is sufficient for gyroscope-bias estimation, but does not distinguish accelerometer bias from gravity projected onto tilted support surfaces.
- Allan variance: Allan variance evaluates inertial-sensor error behavior under stationary conditions by examining measurement averaging over different cluster times.Allan standard deviation is plotted against cluster time to study white noise and bias instability.
- Allan variance: White-noise contributions decrease with averaging, whereas changing bias causes Allan-deviation curves to depart from slope −1/2 at longer averaging times.The tutorial presents the slope −1/2 as the log–log signature of the white-noise component.
- Allan variance: Allan variance should not be the sole basis for sensor selection because dynamic conditions introduce sampling, saturation, and temperature-related errors.The limitation applies because Allan variance only considers stationary conditions.
3.2 Parametrizing orientation
The section presents several interchangeable representations of 3D orientation, including rotation matrices, axis-angle parameters, Euler angles, and unit quaternions. These representations differ in parameterization and have distinct non-uniqueness or singularity issues.
- Rotation matrices: Rotations in R3 form the special orthogonal group SO(3), whose matrices satisfy orthogonality and determinant-one constraints.Rotation matrices provide a unique orientation description using nine mutually dependent components.
- Axis-angle representation: Euler’s rotation theorem represents any rotation by an angle α around a unit axis n.The corresponding rotation formula decomposes a vector into components parallel and orthogonal to the axis before rotating it.
- Rotation vector: The rotation vector η = nα uses three parameters but is non-unique because adding 2π to α leaves the orientation unchanged.This periodicity is called wrapping.
- Euler angles: Euler angles use the z-y-x convention: ψ rotates around z, θ around y, and φ around x.The angles are also called yaw, pitch, and roll, respectively.
- Euler angles: Euler-angle representations can suffer gimbal lock, where only the combination φ − ψ is observable and multiple angle triples represent the same rotation.The section also notes angle wrapping as a separate source of non-uniqueness.
- Unit quaternions: Unit quaternions represent orientation in four dimensions and rotate vectors through quaternion multiplication and conjugation.A quaternion q and its negation −q describe the same orientation.
3.3 Probabilistic orientation modeling
The section addresses the difficulty of estimating orientations directly with standard parameterizations because orientations lie on SO(3), not ordinary Euclidean space. It introduces local rotation-vector deviations and alternative manifold-based distributions for probabilistic estimation.
- Motivation: Although orientation parameterizations are interchangeable, their choice substantially affects filtering and smoothing because these algorithms typically assume Euclidean state representations.In particular, ordinary subtraction of two orientations may not provide an appropriate error representation.
- Lie-group representation: SO(3) is a matrix Lie group, enabling orientations to be represented by rotation matrices or unit quaternions while deviations are represented by rotation vectors in R3.The exponential and logarithm mappings connect the local Euclidean deviation space with orientation representations.
- Lie-group representation: The local representation encodes an orientation using a linearization point and an orientation deviation η_t, expressed in a selected coordinate frame.The framework can use either a quaternion or rotation matrix as the linearization point.
- Local approximations: For small orientation deviations, the section uses approximations associated with the exponential and logarithm mappings.These approximations support computational treatment of local orientation errors.
- Manifold distributions: An alternative approach models orientation and uncertainty directly on the orientation manifold using spherical distributions, including Bingham distributions.These models naturally constrain estimates and uncertainties to SO(3).
3.4 Measurement models
The measurement models describe gyroscope and accelerometer observations, then add magnetometer or position measurements to complement inertial sensing. They explicitly account for noise, slowly varying biases, simplifying assumptions, and environmental uncertainty.
- Inertial measurements: Gyroscope measurements are modeled as angular velocity corrupted by a slowly time-varying bias and measurement noise.The bias may be treated as a constant parameter or included in the state and modeled as a random walk.
- Inertial measurements: Accelerometer measurements contain specific force, combining sensor acceleration and gravity, with an associated bias and approximately Gaussian noise.For calibrated sensors, the accelerometer covariance can often be treated as diagonal.
- Accelerometer model: A common accelerometer model assumes linear acceleration is approximately zero because measurements are typically dominated by gravity.Outlier rejection, adaptive noise covariance, or physical acceleration models can address violations of this assumption.
- Additional measurements: Magnetometers complement accelerometers by providing heading information around the gravity vector under a locally constant-earth-field assumption.The model defines heading relative to magnetic north unless magnetic declination is corrected using sensor location.
- Additional measurements: Nearby magnetic material can make measured fields differ significantly from the earth magnetic field, creating a major practical concern when the disturbance cannot be calibrated.This issue occurs in indoor environments and around vehicles, trains, robots, buildings, or furniture.
3.5 Choosing the state and modeling its dynamics
The section compares state and dynamics modeling choices for inertial position and orientation estimation, including motion-model states and inertial-input dynamics. It also describes initialization from position, velocity, accelerometer, and magnetometer information.
- Dynamic modeling: Dynamic models describe how position, velocity, and orientation states evolve over time.Their formulations depend on the chosen orientation parameterization and can be discretized using an Euler approximation.
- Dynamic modeling: One alternative includes position, velocity, acceleration, and angular velocity in the state and uses constant-acceleration or constant-angular-velocity motion models.Process noise represents deviations from those constancy assumptions.
- Dynamic modeling: A second alternative uses inertial measurements as inputs to the dynamics, directly modeling changes in position, velocity, and orientation from those measurements.This gives process noise the intuitive interpretation of inertial measurement noise.
- Dynamic modeling: Using a motion model incorporates knowledge about sensor motion but requires a larger state vector, whereas inertial-input dynamics are useful when sensible motion models are difficult to obtain.The two alternatives therefore trade state dimension against motion-model information.
- Initialization: Initial position and velocity can be obtained from the first position measurement or assigned zero estimates with suitable uncertainty when no additional information is available.Initial orientation can be estimated from the first accelerometer and magnetometer samples under gravity and local magnetic-field assumptions.
- Initialization: The initial orientation optimization determines a quaternion that minimizes disagreement between normalized gravity and magnetic-field vectors in sensor and navigation frames.Its solution is the eigenvector corresponding to the largest eigenvalue of a matrix A.
- Initialization: The accuracy of this initial orientation depends strongly on whether magnetic interference is absent and linear acceleration is negligible.The tutorial consequently chooses orientation prior covariances conservatively, modeling 68% of orientation errors as smaller than 20°.
3.7 Resulting probabilistic models
The paper formulates pose and orientation estimation as probabilistic state-space models, then solves smoothing through nonlinear optimization using Gaussian measurement and dynamics models.
- Model assumptions: The models assume a fixed navigation frame, negligible earth rotation and Coriolis acceleration, and calibrated inertial measurements with zero biases.
- Pose estimation: Pose estimation uses position, velocity, and orientation states, combining inertial measurements with position measurements.The accelerometer and gyroscope measurements are modeled as inputs to the dynamics.
- Orientation estimation: Orientation estimation uses only an orientation state, combining inertial sensors with magnetometer measurements while assuming approximately zero linear acceleration.
- Optimization formulation: Smoothing is posed as a maximum a posteriori optimization problem over the full state trajectory using Gaussian probability factors.The practical objective omits terms independent of the trajectory and minimizes the negative log posterior.
- Gauss-Newton optimization: The Gauss-Newton Hessian approximation avoids second derivatives and is positive semidefinite, but introduces an approximation.The resulting nonlinear least-squares estimate is computed iteratively using gradient, Hessian, search-direction, and step-length updates.
4.2 Filtering estimation in an optimization framework
The optimization-based filtering approach replaces whole-trajectory smoothing with a small nonlinear least-squares problem solved at each time step, enabling recursive estimates while retaining iterative optimization.
- Filtering versus smoothing: Unlike smoothing, filtering avoids waiting for the full data set, but smoothing uses all measurements and has computational and memory costs that grow with data length.
- Recursive formulation: Filtering uses the previous posterior and system dynamics to form a prior for the next state by marginalizing the previous state.
- Prediction: The prediction approximation propagates the state through the dynamics and propagates covariance using the dynamics Jacobians.The covariance at the previous time step is approximated from the objective Hessian.
- Recursive formulation: The filtering problem is approximated locally and solved as a nonlinear least-squares problem using Gauss-Newton optimization at each time instance.This approach is closely related to an iterated extended Kalman filter.
- Orientation filtering: For orientation filtering, the method initializes from a previous orientation estimate, linearizes the dynamics around it, and repeatedly updates the estimate and covariance.The linearization point is recomputed after each Gauss-Newton iteration.
4.3 Extended Kalman filtering
The extended Kalman filter provides a recursive alternative based on nonlinear state-space models, alternating prediction and measurement updates; orientation variants use quaternion or deviation states.
- EKF formulation: An EKF assumes additive measurement noise and zero-mean Gaussian process and measurement noise with constant covariance.
- EKF formulation: The state and covariance are estimated recursively through a time update followed by a measurement update.The time update predicts the next state from the dynamic model, while the measurement update incorporates current measurements.
- Quaternion-state EKF: Quaternion-state orientation EKFs use the dynamic model and accelerometer and magnetometer measurements, with derivatives supplying the linearization matrices.
- Quaternion-state EKF: Quaternion updates require an additional renormalization step because the measurement update can produce an unnormalized quaternion.The covariance is adjusted together with the quaternion during renormalization.
- Orientation-deviation EKF: The orientation-deviation EKF resets the deviation state after relinearizing the orientation around an updated quaternion or rotation-matrix point.The resulting implementation is also called a multiplicative EKF.
- Orientation-deviation EKF: The deviation-state EKF uses a 3-dimensional state rather than the 4-dimensional state of the quaternion implementation, making it computationally attractive.
4.4 Complementary filtering
Complementary filters recursively combine gyroscope integration with accelerometer- and magnetometer-based orientation information without using the paper’s probabilistic models.
- Filter principle: Complementary filters estimate orientation recursively by combining gyroscope information with accelerometer and magnetometer information.
- Filter principle: The filter uses complementary low-pass and high-pass components whose sum equals one.The low-pass filter weights accelerometer- and magnetometer-derived orientation, while the high-pass component corresponds to gyroscope-derived information.
- Parameter choice: The parameter a controls the cutoff frequency and the relative contribution of gyroscope measurements through γ.A large a gives γ close to one and a lower cutoff frequency; a small a gives γ close to zero and a higher cutoff frequency.
- Three-dimensional implementation: For three-dimensional orientation, the filter propagates a quaternion using gyroscope measurements and obtains a reference orientation from accelerometer and magnetometer measurements.
- Three-dimensional implementation: The implementation performs one Gauss-Newton update per recursion rather than fully solving the orientation optimization problem.
- Relation to EKF: Compared with the EKF, the complementary filter uses a constant scaling factor, whereas the EKF accounts for uncertainty through time-varying covariance matrices.
4.5 Evaluation based on experimental and simulated data
The evaluation applies five orientation-estimation algorithms to simulated and experimental data, illustrating their accuracy, uncertainty, and application-dependent trade-offs. Smoothing generally performs best, while computationally cheaper filters can suffer from linearization issues.
- Evaluation setup: The evaluation uses simulated and experimental inertial and magnetometer data, with Euler angles comparing estimates against reference orientations.Experimental data come from a Trivisio Colibri Wireless IMU, while simulated data support controlled algorithm analysis and Monte Carlo comparisons.
- Orientation characteristics: Roll and pitch are typically easier to estimate accurately than heading, even when the inertial-and-magnetometer state-space model is valid.With inertial measurements alone, roll and pitch remain accurate while heading drifts significantly.
- Orientation characteristics: Magnetic material causes significant heading errors and can also disturb roll and pitch, depending on disturbance magnitude and sensor uncertainty.The effect is observed in orientation estimates obtained with the smoothing optimization approach.
- Algorithm comparison: The smoothing approach outperforms the filtering approaches, with smoothing uncertainty converging to 2.25° for heading and 0.39° for roll and pitch.Filtering uncertainties converge to approximately 3.16° for heading and 0.46° for roll and pitch in the reported simulation.
- Algorithm comparison: All five algorithms produce fairly good orientation estimates when the models are valid, but smoothing is most computationally expensive and some filters have linearization issues.The EKF with quaternion states and complementary filter are especially vulnerable when large corrections are needed or magnetometer data are unavailable.
4.6 Extending to pose estimation
The pose-estimation extension incorporates position measurements into a smoothing formulation that couples position, velocity, and orientation. Simulations show that motion determines which orientation components remain observable and that larger time-varying acceleration improves heading accuracy.
- Pose-estimation formulation: Pose estimation extends the orientation algorithms with a state-space model and formulates estimation as a smoothing optimization problem.Complementary filtering is not considered for pose estimation because it is predominantly used for orientation estimation.
- Pose-estimation formulation: Position measurements inform orientation because position, velocity, and orientation states are coupled through the acceleration measurement model.This coupling makes magnetometer data and an approximately zero-acceleration assumption nonessential, although orientation accuracy remains motion-dependent.
- Motion cases: For a stationary sensor, position measurements constrain inclination but not heading, so inclination errors remain small while heading drifts.The same limitation appears in the stationary-sensor smoothing example.
- Motion cases: Constant acceleration produces orientation drift in the direction orthogonal to the accelerometer-measurement direction.The reported example shows heading drift together with a smaller roll drift.
- Motion cases: Except for constant or zero acceleration, the state-space model can produce drift-free orientation estimates, with heading accuracy depending on acceleration magnitude.The conclusion is based on mean RMSE results from 100 Monte Carlo simulations covering stationary, constant-acceleration, and two time-varying-acceleration cases.
Calibration
Calibration is important because inertial biases and sensor-axis misalignment affect estimation, particularly when inertial data are combined with additional sensors. The tutorial introduces methods for estimating calibration parameters.
- Calibration motivation: Practical calibration must account for inertial sensor biases and alignment between inertial axes and additional-sensor axes.Axis alignment is specifically important when combining inertial measurements with other sensors.
- Calibration methods: The tutorial presents calibration methods that estimate parameters within smoothing and filtering algorithms or by maximum likelihood.A gyroscope-bias example illustrates the calibration algorithms in orientation estimation.
5.1 Maximum a posteriori calibration
Unknown calibration parameters can be incorporated into smoothing or filtering formulations to obtain MAP estimates. The tutorial illustrates this approach for gyroscope bias.
- MAP formulation: Unknown parameters are estimated in the smoothing problem by augmenting the estimation formulation with parameter priors.The parameter prior and state prior are specified separately in the model.
- MAP formulation: In filtering, calibration parameters are modeled as slowly time-varying states with an initial prior and dynamic model.This formulation differs from explicitly representing constant parameters outside the state vector.
- Algorithm extension: The smoothing and filtering formulations compute MAP parameter estimates and extend Algorithms 1–4 with only minor changes.The required changes mainly add derivatives with respect to the unknown parameters.
- Gyroscope-bias example: A gyroscope bias can be modeled as constant for smoothing or slowly time-varying for filtering, including a random-walk dynamic model.The tutorial uses these alternatives in its gyroscope-bias example.
5.2 Maximum likelihood calibration
Maximum-likelihood calibration treats unknown sensor parameters through a likelihood built from recursively approximated predictive distributions. For gyroscope bias, optimization-based smoothing remains accurate, while filtering requires time to converge and prior choice affects MAP estimates.
- Maximum likelihood: Maximum-likelihood estimation selects parameters by maximizing the likelihood of the observed measurement sequence.The likelihood is the joint probability of the observations under parameter θ, with an equivalent conditional-log-likelihood formulation.
- Maximum likelihood: Nonlinear orientation parametrizations prevent a closed-form one-step-ahead predictor, so the predictor is approximated using filtering equations.The approximation leads to an optimization problem whose objective is defined recursively through filtering updates.
- Maximum likelihood: BFGS numerically approximates the objective gradient and iteratively updates parameters until convergence; gyroscope-bias ML estimates use an EKF to evaluate the objective.The EKF supplies the predicted measurements and covariance for each candidate bias, while BFGS solves the resulting optimization problem.
- Gyroscope-bias estimation: Smoothing orientation RMSEs remain almost unchanged when a gyroscope bias is estimated, whereas filtering results worsen because the bias requires time to be estimated.The comparison is based on 100 Monte Carlo simulations with a constant bias and a small random-walk covariance.
- Gyroscope-bias estimation: With an appropriately chosen prior, ML and MAP gyroscope-bias estimates are comparable; an overly tight prior biases MAP estimates toward zero.The comparison uses 500 Monte Carlo simulations and evaluates priors with σδω = 0.05 and σδω = 1 · 10^-3.
- Identifiability: Using only inertial measurements, the z-axis gyroscope bias is unidentifiable while the sensor is horizontal but converges after sensor rotation.Rotation lets accelerometer measurements provide information that aids estimation; with magnetometer measurements, z-axis bias estimates converge significantly faster.
6.2 Using more complex sensor information: inertial and vision
This section extends inertial pose estimation with camera measurements and with body-structure information for human motion capture. The models relate image features and rigid sensor placements to position, orientation, and connected body segments.
- Inertial and vision: Camera–IMU pose estimation replaces direct position measurements with camera observations while retaining inertial measurements in the state-space model.The camera and IMU are rigidly attached, and image measurements are incorporated into the pose-estimation model.
- Inertial and vision: A pin-hole camera model relates an environmental point’s camera-frame position to its image position using the camera’s focal length.The focal length is treated as a known intrinsic camera property.
- Inertial and vision: The camera geometry expresses observations using camera position and orientation, environmental point positions, and fixed camera–body extrinsics.The camera–body distance and rotation are assumed constant and can be determined by dedicated calibration algorithms.
- Inertial and vision: If environmental point positions are unknown, they can be included in the state vector, yielding simultaneous localization and mapping.SLAM builds an environmental map while estimating the mobile sensor’s unknown position.
- Inertial motion capture: Inertial motion capture uses IMUs on body segments to estimate human pose for applications including rehabilitation and sports-performance analysis.The example depicts estimated orientations and positions of the body segments of speed skater Ireen Wüst.
- Inertial motion capture: Motion-capture models treat sensor placement on soft tissue as approximately constant and enforce equality constraints connecting body segments at joints.These adaptations are incorporated into a smoothing optimization problem for the multi-sensor body model.
- Inertial motion capture: Additional human-body knowledge, such as hinge-like joint rotation limits, can be included as extra model terms in the optimization problem.The knee is given as an example of a joint whose rotation is mainly limited to one or two axes.
Appendix A
Appendix A summarizes quaternion algebra and conversions among quaternion, rotation-vector, rotation-matrix, and Euler-angle representations. It also records singularities and implementation conditions relevant to these mappings.
- Quaternion algebra: Unit quaternions provide the tutorial’s four-dimensional parametrization of orientations.A unit quaternion satisfies ∥q∥2 = 1.
- Quaternion algebra: Quaternion multiplication, conjugation, and vector rotation support expressing rotations algebraically and equivalently through rotation matrices.The appendix gives the multiplication operation, conjugate, and the relation between quaternion rotation and matrix multiplication.
- Parametrization conversions: The appendix provides conversions between unit quaternions and rotation matrices, including practical conditions for matrix-to-quaternion conversion.That conversion requires handling cases where 1 + Tr R is not positive or q0 equals zero.
- Parametrization conversions: Quaternion exponential and logarithm convert between rotation vectors and unit quaternions but are singular at zero.At η = 0, the quaternion exponential returns the identity quaternion, while log q returns 03×1 when qv = 0.
- Parametrization conversions: Rotation vectors and rotation matrices are related through matrix exponential and logarithm mappings.The rotation vector η is mapped to R by exp([η×]) and recovered through the matrix logarithm.
- Parametrization conversions: Euler angles are represented through a product of elemental rotation matrices, and the appendix gives conversions between Euler angles and rotation matrices.Together with the quaternion and rotation-vector relations, these formulas enable conversion among the orientation parametrizations used in the tutorial.
B.1 Smoothing in an optimization framework
The appendix extends smoothing, filtering, and EKF pose-estimation algorithms to include unknown gyroscope bias. It adapts state dynamics, time updates, covariance matrices, and priors for the augmented models.
- Pose-estimation extensions: Pose-estimation smoothing and filtering algorithms are adapted by adding position and velocity states to the orientation-estimation framework.The filtering optimization problem and EKF implementations require corresponding state, covariance, and linearization updates.
- Pose-estimation extensions: The pose-estimation linearization point is updated before optimization so the initial position and velocity prediction error is zero.This adjustment is made before starting the optimization algorithm.
- Pose-estimation extensions: Quaternion-state and orientation-deviation-state EKFs require adapted time-update matrices and pose-estimation covariance equations.The appendix identifies the matrices needed for implementing both EKF pose-estimation variants.
- Gyroscope-bias extensions: Unknown gyroscope bias is incorporated by modifying dynamic models and time updates while leaving measurement models independent of the bias.The bias is added to the augmented state and modeled through the adapted dynamics.
- Gyroscope-bias extensions: Optimization-based bias estimation adds a prior-dependent objective term, and filtering-based estimation augments the state and covariance dimensions.The initial bias also requires a prior in the smoothing and filtering algorithms.
- Gyroscope-bias extensions: The EKF bias extension additionally adjusts covariance renormalization to match the enlarged covariance matrix.A bias prior remains required for this algorithm as well.