Three-dimensional thinning algorithms on graphics processing units and multicore CPUs


J. Ruiz de Miras, Department of Computer Science, University of Jaén, 23071 Jaén, Spain.



Three-dimensional curve skeletons are a very compact representation of three-dimensional objects with many uses and applications in fields such as computer graphics, computer vision, and medical imaging. An important problem is that the calculation of the skeleton is a very time-consuming process. Thinning is a widely used technique for calculating the curve skeleton because of the properties it ensures and the ease of implementation. In this paper, we present parallel versions of a thinning algorithm for efficient implementation in both graphics processing units and multicore CPUs. The parallel programming models used in our implementations are Compute Unified Device Architecture (CUDA) and Open Computing Language (OpenCL). The speedup achieved with the optimized parallel algorithms for the graphics processing unit achieves 106.24x against the CPU single-process version and more than 19x over the CPU multithreaded version. Copyright © 2011 John Wiley & Sons, Ltd.