Source-linked AI summary
A Primer on the Differential Calculus of 3D Orientations
Michael Bloesch, Hannes Sommer, Tristan Laidlow, Michael Burri, Gabriel Nuetzi, Péter Fankhauser, Dario Bellicoso, Christian Gehring, Stefan Leutenegger, Marco Hutter, Roland Siegwart
TL;DR
3D orientations complicate optimization because SO(3) has no ordinary addition or subtraction, while optimization relies on small differences and gradients. The paper treats orientations as coordinate mappings and uses the exponential map with boxplus and boxminus to define representation-independent differentials. The document derives orientation identities and differentials, provides a Hamilton-unit-quaternion implementation, and applies the concepts to an IMU-driven kinematic model.
Problem
3D orientations complicate optimization because SO(3) has no ordinary addition or subtraction, while optimization relies on small differences and gradients.
Source: §III · p. 2Method
The paper treats orientations as coordinate mappings and uses the exponential map with boxplus and boxminus to define representation-independent differentials.
Source: §III · p. 2Results
The document derives orientation identities and differentials, provides a Hamilton-unit-quaternion implementation, and applies the concepts to an IMU-driven kinematic model.
Source: §VI · p. 3, §VII · p. 4Takeaways & Limitations
The framework provides reusable Jacobians for complex models through the chain rule and supports smooth embedding of rotational quantities in filtering and optimization.
Source: §III · p. 2, §VII · p. 4
Abstract
from arXiv · showhide
The proper handling of 3D orientations is a central element in many optimization problems in engineering. Unfortunately many researchers and engineers struggle with the formulation of such problems and often fall back to suboptimal solutions. The existence of many different conventions further complicates this issue, especially when interfacing multiple differing implementations. This document discusses an alternative approach which makes use of a more abstract notion of 3D orientations. The relative orientation between two coordinate systems is primarily identified by the coordinate mapping it induces. This is combined with the standard exponential map in order to introduce representation-independent and minimal differentials, which are very convenient in optimization based methods.
I. INTRODUCTION
The document develops a convention-independent treatment of 3D orientations by representing them as mappings and using exponential-map differentials for optimization and filtering.
II. VECTORS AND COORDINATE SYSTEMS NOTATION
- Orientations are defined by the coordinate mappings they induce between coordinate systems, with relative orientation represented by ΦBA ∈ SO(3).Coordinate tuples transform through the associated orientation mapping and rotation-matrix representation.Source: §II · p. 1, §III · p. 2
III. THEORY
- 3D orientations form the Lie group SO(3), which lacks ordinary addition and subtraction needed by filtering and optimization.The exponential map connects SO(3) to its tangent space, isomorphic to R3.Source: §III · p. 2
- Choosing a basis extends the tangent-space map to R3 and defines the exponential exp: R3 → SO(3).On Bπ(0), the exponential is bijective onto all non-180° orientations, with inverse logarithm log: SO(3)∗ → Bπ(0).Source: §III · p. 2
- The boxplus and boxminus operators place actual orientations on SO(3) and their differences on R3.This separation enables smooth embedding of rotational quantities in filtering and optimization frameworks.Source: §III · p. 2
- Orientation differentials are defined by replacing ordinary addition and subtraction with boxplus and boxminus.These constructions extend differential calculus to mappings involving orientations and Euclidean quantities.Source: §III · p. 2
IV. IMPLEMENTATION-INDEPENDENT IDENTITIES
The implementation-independent identities connect coordinate mappings, exponentials, and orientation derivatives without committing to a particular orientation parameterization.
IV. IMPLEMENTATION-INDEPENDENT IDENTITIES
- Concatenating the exponential with the coordinate mapping yields Rodrigues’ formula and identifies ϕ with the relative rotation vector.The rotation vector is associated with the relative orientation of two coordinate systems.Source: §IV · pp. 2–3
- The exponential commutes with coordinate mappings through the adjoint-related identity exp(Φ(ϕ)) = Φ ◦ exp(ϕ) ◦ Φ−1.This expresses how exponential-map rotations transform under a change of coordinates.Source: §IV · p. 3
- The derivative of the exponential map is represented by the Jacobian Γ(ϕ) ∈ R3×3.This Jacobian supplies a reusable differential for orientation-related derivatives.Source: §IV · p. 3
V. QUATERNION IMPLEMENTATION
The paper instantiates its abstract orientation framework with unit quaternions using the Hamilton convention and derives coordinate-mapping and rotation-matrix operations.
V. QUATERNION IMPLEMENTATION
- Unit quaternions implement orientations as Φ = (q0, ˇq) under the Hamilton convention, subject to q0^2 + ∥ˇq∥^2 = 1.The quaternion has a real part q0 and a three-dimensional imaginary part ˇq.Source: §V · p. 3
A. Coordinates Mapping and Rotation Matrix
- For relative orientation ΦBA, quaternion operations map vector coordinates between arbitrary coordinate systems.The resulting mapping provides the basis for the associated rotation matrix.Source: A. Coordinates Mapping and Rotation… · p. 3
- The quaternion coordinate-mapping expression directly yields the associated rotation matrix.The implementation therefore supplies both coordinate transformation and matrix representations of the same orientation.Source: A. Coordinates Mapping and Rotation… · p. 3
B. Concatenation
The document combines quaternion concatenation, exponential and logarithmic maps, consistency tests, and an IMU-based modeling example to apply orientation identities in practice.
B. Concatenation
- Quaternion concatenation is represented explicitly through scalar and vector components, including the vector cross-product term.Source: B. Concatenation · p. 3
C. Exponential and Logarithm
- For ϕ ∈ R3, the exponential map provides a unit-quaternion representation, while its logarithm recovers the corresponding minimal orientation differential.Source: C. Exponential and Logarithm · p. 3
- Angles below 10^-4 rad require a small-angle approximation to avoid numerical instabilities in the exponential-map implementation.Source: C. Exponential and Logarithm · p. 3
D. Consistency Tests
- Consistency tests compare the implemented operators with Rodriguez’ formula and should include varied samples, especially very small angles.Source: D. Consistency Tests · p. 3
VI. SIMPLE MODELING EXAMPLE
- The modeling example estimates robot position, velocity, and orientation by predicting with an IMU and updating with a pose sensor.Source: §VI · p. 3
A. Continuous Time Description
- The continuous-time IMU model includes additive biases, white-noise processes, gravity, and bias- and noise-corrected acceleration and angular velocity.Source: A. Continuous Time Description · pp. 3–4
B. Euler-Forward Discretization
The document discretizes the continuous-time formulation with Euler-Forward and specifies the corresponding discrete measurements and noise distribution.
- Euler-Forward discretization advances the formulation over a time increment ∆t, while allowing other discretization schemes.Source: B. Euler-Forward Discretization · p. 4
- The discretized IMU measurements are bias- and noise-corrected.Source: B. Euler-Forward Discretization · p. 4
- The discrete Gaussian noise ˆni is distributed as N(0, Ri/∆t) when Ri is the continuous white-noise density.Source: B. Euler-Forward Discretization · p. 4
C. Differentiation
The document derives process and measurement Jacobians for an IMU-pose-sensor model, then adapts EKF residual and update operations to orientation geometry.
C. Differentiation
- The process-model Jacobians are derived with F relative to the state and G relative to process noise using orientation identities and the chain rule.Source: C. Differentiation · p. 4
D. Measurement
- GPS position and orientation measurements define the measurement model with discrete Gaussian measurement noise.Source: D. Measurement · p. 4
- Measurement Jacobians H and J are derived using orientation identities and the zero expectation of orientation measurement noise.Source: D. Measurement · p. 4
E. Hints for the EKF Implementation
- The EKF uses the ⊟ operator for innovation residuals and the ⊞ operator for state updates instead of ordinary subtraction and addition.Source: E. Hints for the EKF Implementation · p. 4
VII. CONCLUSION
- The document presents these orientation identities and differentials as tools for computing Jacobians of more complex models through the chain rule.Source: §VII · p. 4
APPENDIX I DERIVATIVES INVOLVING ORIENTATIONS
The appendix derives time and inverse derivatives for orientations from angular-velocity definitions and supporting limit and composition identities.
1) Time Derivative of Orientation:
- Angular velocity is defined for a moving coordinate system relative to an inertial observer, with a negative sign matching active rotations measured by typical IMUs.Source: 1) Time Derivative of Orientation · p. 5
- A stated limit enables derivation of the time derivative of an orientation using previously established composition and differential identities.Source: 1) Time Derivative of Orientation · p. 5
2) Derivative of Inverse:
- The derivative of an inverse orientation is derived from orientation composition and inverse-related identities.Source: 2) Derivative of Inverse · p. 5
3) Derivative of Coordinate Map:
The paper derives differentials for coordinate maps, orientation concatenation with respect to either operand, and the exponential map using identities and chain-rule arguments.
3) Derivative of Coordinate Map:
- The coordinate-map derivative is formulated from the paper’s orientation identities, providing the basis for subsequent orientation differentials.Source: 3) Derivative of Coordinate Map · p. 5
4) Concatenation - Left:
- The concatenation derivative is derived separately with respect to the left orientation.Source: 4) Concatenation - Left · p. 5
5) Concatenation - Right:
- The concatenation derivative is likewise derived with respect to the right orientation, using an additional identity.Source: 5) Concatenation - Right · p. 5
6) Exponential Derivative:
- The exponential derivative is obtained by differentiating exp(xϕ) through the chain rule and an alternative limit-based route, then comparing both derivatives at x = 1.Source: 6) Exponential Derivative · p. 6
- The two exponential-derivative routes are combined with eq. (74) to obtain a matrix equation and, after substituting C(ϕ), eq. (33).Source: 6) Exponential Derivative · p. 6
APPENDIX II OTHER PROOFS
The appendix derives properties of C(ϕ) by studying the curve Cϕ(t) and solving its resulting matrix differential equation.
A. Rodriguez’ Formula
- The appendix states properties of C(ϕ) = C(exp(ϕ)) for arbitrary t, ϕ, and v.Source: A. Rodriguez’ Formula · p. 6
- For fixed ϕ, the curve Cϕ(t) := C(tϕ) is introduced, and a coordinate change extends the differential identity’s range.Source: A. Rodriguez’ Formula · p. 6
- The resulting matrix differential equation has a matrix-exponential solution valid for arbitrary ϕ.Source: A. Rodriguez’ Formula · p. 6
- The derived solution is shown equivalent to eq. (21) using series expansions.Source: A. Rodriguez’ Formula · p. 6
B. Concatenation and Exponential – Adjoint Related
The appendix proves the adjoint-related identity by showing that the conjugated exponential satisfies the defining properties of the exponential map.
- The proof begins by identifying the target adjoint-related identity to establish.Source: B. Concatenation and Exponential –… · p. 6
- Uniqueness of the exponential reduces the proof to verifying that the conjugated expression satisfies the defining properties, beginning with eq. (12).Source: B. Concatenation and Exponential –… · p. 6
- The derivative requirement in eq. (13) is separately verified for the conjugated expression.Source: B. Concatenation and Exponential –… · p. 6
- Because the conjugated map satisfies both uniquely defining properties, it is equivalent to exp(Φ(ϕ)).Source: B. Concatenation and Exponential –… · p. 6