Skip to article frontmatterSkip to article content

WhiteNoiseFactor

Below is partly generated with ChatGPT 4o, needs to be verified.

Overview

The WhiteNoiseFactor in GTSAM is a binary nonlinear factor designed to estimate the parameters of zero-mean Gaussian white noise. It uses a mean-precision parameterization, where the mean μ \mu and precision τ=1/σ2 \tau = 1/\sigma^2 are treated as variables to be optimized.

Parameterization

The factor models the negative log-likelihood of a zero-mean Gaussian distribution as follows,

f(z,μ,τ)=log(2π)0.5log(τ)+0.5τ(zμ)2f(z, \mu, \tau) = \log(\sqrt{2\pi}) - 0.5 \log(\tau) + 0.5 \tau (z - \mu)^2

where:

  • z z : Measurement value (observed data).
  • μ \mu : Mean of the Gaussian distribution (to be estimated).
  • τ \tau : Precision of the Gaussian distribution τ=1/σ2 \tau = 1/\sigma^2 , also to be estimated).

This formulation allows the factor to optimize both the mean and precision of the noise model simultaneously.

Use Case: Estimating IMU Noise Characteristics

The WhiteNoiseFactor can be used in system identification tasks, such as estimating the noise characteristics of an IMU. Here’s how it would work:

  1. Define the Measurement:

    • Collect a series of IMU measurements (e.g., accelerometer or gyroscope readings) under known conditions (e.g., stationary or constant velocity).
  2. Set Up the Factor Graph:

    • Add WhiteNoiseFactor instances to the factor graph for each measurement, linking the observed value z z to the mean and precision variables.
  3. Optimize the Graph:

    • Use GTSAM’s nonlinear optimization tools to solve for the mean μ \mu and precision τ \tau that best explain the observed measurements.
  4. Extract Noise Characteristics:

    • The optimized mean μ \mu represents the bias in the sensor measurements.
    • The optimized precision τ \tau can be inverted to compute the standard deviation σ=1/τ \sigma = 1/\sqrt{\tau} , which represents the noise level.