We'll discuss how to use GPUs to accelerate a common 3D spatial processing application, point cloud registration. Registration, or finding the relative rigid transform between two point clouds, forms a core component of many 3D vision algorithms such as object matching and environment reconstruction. We use the GPU to accelerate this process using a parallelized form of the Expectation Maximization (EM) algorithm. Using this novel EM construction can both accelerate registration as well as provide a natural geometric segmentation of the data, two processes that we show to be highly interrelated at the kernel level when deployed on a GPU. Finally, we discuss how GPU-accelerated registration can be used in the larger context of real-time 3D perception.
As 3D depth sensors become smaller, cheaper, and more ubiquitous, it is becoming increasingly important to develop efficient and robust techniques to manage and process point cloud data. A common operation of particular importance is the ability to derive solid 3D geometry from unorganized sets of points. In this poster, we describe a parallel method to both process and compress 3D point data into a statistical parametric form in order to quickly construct a 3D triangle mesh using a modified form of the Marching Cubes algorithm.
Many modern 3D range sensors generate on the order of one million data points per second and form the foundation of many modern applications in robotic perception. For real-time performance, it is beneficial to leverage parallel hardware when possible. This poster details work to quickly compress a raw point cloud into a set of parametric surfaces using a GPU-accelerated form of Expectation Maximization. We find that our algorithm is over an order of magnitude faster than the serial C version, while the segmentation provides several orders of magnitude savings in memory while still preserving the geometric properties of the data.