TheDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/ethz-asl/kalibr/llms.txt
Use this file to discover all available pages before exploring further.
imu.yaml file provides Kalibr with the stochastic noise characteristics of your IMU. These parameters are used as prior information during the continuous-time batch optimization in kalibr_calibrate_imu_camera. Incorrect values will bias the calibration results, so they should come from the IMU datasheet or be identified through Allan variance analysis.
Example
The following example is taken directly from the Kalibr source for an ADIS16448 IMU:Field reference
Continuous-time noise spectral density of the accelerometer, in
m/s^2/sqrt(Hz). This is also called the velocity random walk. Corresponds to the white noise floor of the accelerometer Allan variance curve. Must be positive.Accelerometer bias instability (bias random walk), in
m/s^3/sqrt(Hz). Corresponds to the rate random walk region of the accelerometer Allan variance curve. Must be positive.Continuous-time noise spectral density of the gyroscope, in
rad/s/sqrt(Hz). This is also called the angle random walk. Corresponds to the white noise floor of the gyroscope Allan variance curve. Must be positive.Gyroscope bias instability (bias random walk), in
rad/s^2/sqrt(Hz). Corresponds to the rate random walk region of the gyroscope Allan variance curve. Must be positive.IMU measurement rate in Hz. Kalibr uses this to convert continuous-time noise densities to discrete-time noise covariances internally. Must be positive. Use the actual hardware rate, not a downsampled rate.
ROS topic that publishes
sensor_msgs/Imu messages in the bag file (e.g. /imu0).Determining parameter values
From the datasheet. Most IMU manufacturers provide the angle random walk (ARW) and velocity random walk (VRW) in the datasheet. These are the noise densities. Bias instability figures in the datasheet correspond to the random walk parameters. From Allan variance analysis. For better accuracy, record a static IMU dataset and compute the Allan deviation curve. The slope of-½ region gives the noise density; the slope of +½ region gives the random walk. Tools such as allan_variance_ros automate this process.
Multiple IMUs
When calibrating multiple IMUs, pass one YAML file per IMU to--imu:
Relationship to output imu.yaml
kalibr_calibrate_imu_camera writes a <bagtag>-imu.yaml output file that wraps the calibrated IMU parameters under named sections (imu0, imu1, …). This output format differs from the input format: the input file contains parameters for a single IMU at the top level, while the output file groups multiple IMUs by name. See Output files for more details on the naming convention.