Automatic 3D Point Cloud to CAD Model Registration for Robotic Applications, 10-R9865Printer Friendly Version
Inclusive Dates: 10/01/08 09/30/09
Background - Industrial robots are traditionally programmed to repetitively perform one task on fixed objects within their workspace. Many applications, however, require greater flexibility to accommodate a wide variety of parts in unconstrained locations. This situation is common for many high-volume, high-flexibility manufacturing operations such as job shops, military vehicle maintenance, and aerospace manufacturing. Advanced sensing methods are required to provide robots with improved perception for operation in these dynamic environments. Specifically, sensing methods are needed to recognize and locate parts within a robot's workspace. Recent advancements in low-cost, high-resolution 3D sensing have the potential to enable more intelligent robot perception.
Approach - The project was focused on developing methods that use 3D spatial sensors to recognize an object by extracting salient features from the sensed data and matching those features to a database of parts. After identification, the part was registered in 3D space for robotic system operations. A laser-line triangulation sensor (Figure 1) was used to generate surface point clouds of sample parts. Methods were developed to segment the data into regions based on a variation of the watershed algorithm (Figure 2). Next, features such as surface area, moment of area, centroid and normal vector were extracted from the regions. The same segmentation and feature extraction algorithms were applied to the database of parts, and a scored comparison of the feature sets provided high probability matches between the database regions and the sensed regions.
Two stages of verification and registration were performed on the potential matches. The first was a least-squares fit of the centroids of the matching regions. If the two data sets were a good match, a small residual error was generated from the optimal rigid body transformation that aligns the centroids. The best candidates from the least-squares alignment were then subject to the iterative closest point (ICP) algorithm to align the data sets on a point-by-point basis. The ICP algorithm provided the final registration transformation and also verified the quality of the match from the distance error between the aligned surfaces.
Accomplishments - The method was tested on an experimental database of more than 1,500 parts. Parts were selected at random, and a simulation of the sensor output was used to generate synthetic test data. Part recognition performance was better than 90 percent, and with an iterative approach, near 100 percent recognition accuracy was achieved. The registration accuracy of the parts was within the resolution of the sensor data.