A Purely Algebraic Justification of the Kabsch-Umeyama Algorithm

Published: October 09, 2019


Christoph J. Witzgall, Javier Bernal, James F. Lawrence


The constrained orthogonal Procrustes problem is the least-squares problem that calls for a rotation matrix that optimally aligns two matrices of the same order. Over past decades, the algorithm of choice for solving this problem has been the Kabsch-Umeyama algorithm which is essentially no more than the computation of the singular value decomposition of a particular matrix. Its justification as presented separately by Kabsch and Umeyama is not totally algebraic as it is based on solving the minimization problem via Lagrange multipliers. In order to provide a more transparent alternative, it is the main purpose of this paper to present a purely algebraic justification of the algorithm through the exclusive use of simple concepts from linear algebra. For the sake of completeness, a proof is also included of the well-known and widely-used fact that the orientation-preserving rigid motion problem, i.e., the least-squares problem that calls for an orientation-preserving rigid motion that optimally aligns two corresponding sets of points in d-dimensional Euclidean space, reduces to the constrained orthogonal Procrustes problem.
Citation: Journal of Research (NIST JRES) -
Pub Type: NIST Pubs


Constrained Orthogornal Procrustes Problem, Orientation-Preserving Rigid Motion, Kabsch-Umeyama Algorithm, Singular Value Decompostion, Rotation Matrix, trace
Created October 09, 2019