| Customize Help

MIL 3D Registration module



The MIL 3D Registration module allows you to calculate the optimal pairwise registration of two or more point clouds, and defines the transformation matrices required to align the working coordinate systems of the point clouds. This is useful in many applications where you have multiple point clouds, with overlapping representations of the same 3D object, and you want the same points on the 3D object to be represented with the same coordinate values in every point cloud. This is important when you want to detect defects in a scanned object, determine an object's pose, or merge multiple point clouds into one single point cloud that represents a 3D object.

This module registers each point cloud to a specified other point cloud (reference point cloud) in the list to register. Once the module establishes the transformation that registers each point cloud with its reference point cloud, you can also retrieve the transformation that registers it to any other in the list.

The module uses the Iterative Closest Point (ICP) algorithm to measure the root-mean-square (RMS) error between points it automatically pairs with those in the reference point cloud (closest points are paired first); it iteratively tries to transform the point cloud so that this measurement decreases. In each iteration, the points are paired and transformed again.

The following animation shows how the algorithm pairs points and transforms the point cloud repeatedly, over several iterations:

The registration operation continually iterates until a stop condition is met. The registration operation is considered successful (or not) depending on which stop condition is met. The stop conditions are set to default values that should suit the majority of applications, but they rely on an effective preregistration. Preregistering a point cloud requires specifying either to register the centroids of the two point clouds, or to use a user-defined transformation matrix that moves a point cloud to a rough location that is close enough to the other point cloud for the algorithm to start.