Geodesic Distance on SO(3)
旋转测地距离AdvancedThe minimum angle still needed to turn one orientation into another — the standard way to measure rotation error.
The geodesic distance on SO(3) is the shortest distance between two rotations on the rotation group SO(3) (the set of all 3D rotations); numerically, it's the minimum rotation angle needed to turn one orientation into the other, ranging from 0 to π (180°). For rotation matrices R₁ and R₂, first compute the relative rotation R₁ᵀR₂, then take θ = arccos((tr(R₁ᵀR₂) − 1)/2), where tr is the sum of the diagonal entries; with unit quaternions q₁ and q₂ it can be written θ = 2·arccos(|q₁·q₂|), with the absolute value needed because q and −q represent the same rotation. Directly comparing the raw components of Euler angles or quaternions can be misled by the choice of representation; the geodesic distance only measures the actual angular difference. It's the standard metric reported as 'geodesic error' in 6D object pose estimation and rotation-representation research — such as the paper that introduced the 6D rotation representation by Zhou and colleagues — and it can also be used directly as a training loss.
ExampleWith R₁ the identity and R₂ a 90° rotation about the z-axis: tr(R₂) = 0+0+1 = 1, so θ = arccos(0) = 90°. Or take yaw angles of 179° and −179°: their raw difference is 358°, but the geodesic distance is only 2°.
- Also called
- Angular Distance, Geodesic Error, Rotation Angle Error
- Related
- Special Orthogonal Group SO(3) · Rotation Matrix · Quaternion Double Cover · 6D Rotation Representation · 6D Object Pose Estimation · Euler Angles
- Sources
- Zhou et al., On the Continuity of Rotation Representations in Neural Networks(geodesic error 定义) (Chinese)