Implementing Point Assignment Using Octrees and GPU
Data point set registration is an important operation in coordinate metrology. Registration is the operation by which sampled point clouds are aligned with a CAD model by a 4×4 homogeneous transformation (e.g., rotation and translation). This alignment permits validation of the produced artifact’s geometry. Registration is an iterative nonlinear optimization operation assigning points on the CAD model for the sampled points. The objective is to minimize the sum of the squares of the normal distances between each point in the point cloud and the closest point in the CAD model. State-of-the-art metrology systems are now capable of generating thousands, if not millions, of data points during an inspection operation, resulting in increased computational power to fully utilize these larger data sets. The execution time for assigning the point set in registration process is directly related to the number of points processed and CAD model complexity. A brute force approach to registration, which is often used, is to compute the minimum distance between each sampled point and its normal projection on the CAD model. As the point cloud size and CAD model complexity increase, this approach becomes intractable and inefficient. This paper proposes a new approach to efficiently identify the closest point in the CAD model for a given point. This approach employs a combination of readily available computer hardware, graphical processor unit (GPU) and a formulation of the point assignment problem, using an octree data structure that is suited for execution on the GPU.