  Point set registration is a key component in many computer vision tasks. The
goal of point set registration is to assign correspondences between two sets of
points and to recover the transformation that maps one point set to the other.
Multiple factors, including an unknown non-rigid spatial transformation, large
dimensionality of point set, noise and outliers, make the point set
registration a challenging problem. We introduce a probabilistic method, called
the Coherent Point Drift (CPD) algorithm, for both rigid and non-rigid point
set registration. We consider the alignment of two point sets as a probability
density estimation problem. We fit the GMM centroids (representing the first
point set) to the data (the second point set) by maximizing the likelihood. We
force the GMM centroids to move coherently as a group to preserve the
topological structure of the point sets. In the rigid case, we impose the
coherence constraint by re-parametrization of GMM centroid locations with rigid
parameters and derive a closed form solution of the maximization step of the EM
algorithm in arbitrary dimensions. In the non-rigid case, we impose the
coherence constraint by regularizing the displacement field and using the
variational calculus to derive the optimal transformation. We also introduce a
fast algorithm that reduces the method computation complexity to linear. We
test the CPD algorithm for both rigid and non-rigid transformations in the
presence of noise, outliers and missing points, where CPD shows accurate
results and outperforms current state-of-the-art methods.
