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

arXiv:1606.05285v2cs.RO

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. 2
  • Method

    The paper treats orientations as coordinate mappings and uses the exponential map with boxplus and boxminus to define representation-independent differentials.

    Source: §III · p. 2
  • Results

    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. 4
  • Takeaways & 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 · show

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

B. Euler-Forward Discretization

The document discretizes the continuous-time formulation with Euler-Forward and specifies the corresponding discrete measurements and noise distribution.

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

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:

2) Derivative of Inverse:

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:

5) Concatenation - Right:

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

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.

Loading 1606.05285v2…