Wagner Martin G
Department of Medical Physics, University of Wisconsin, 1111 Highland Avenue, Madison, WI 53705.
J Real Time Image Process. 2020 Oct 28;17(5):1255-1266. doi: 10.1007/s11554-019-00886-7. Epub 2019 May 28.
The skeletonization of binary images is a common task in many image processing and machine learning applications. Some of these applications require very fast image processing. We propose novel techniques for efficient 2D and 3D thinning of binary images using GPU processors. The algorithms use bit-encoded binary images to process multiple points simultaneously in each thread. The simpleness of a point is determined based on Boolean algebra using only bitwise logical operators. This avoids computationally expensive decoding and encoding steps and allows for additional parallelization. The 2D algorithm is evaluated using a dataset of handwritten characters images. It required an average computation time of 3.53 ns for 32×32 pixels and 0.25 ms for 1024×1024 pixels. This is 52 to 18,380 times faster than a multi-threaded border-parallel algorithm. The 3D algorithm was evaluated based on clinical images of the human vasculature and required computation times of 0.27 ms for 128×128×128 voxels and 20.32 ms for 512×512×512 voxels, which is 32 to 46 times faster than the compared border-sequential algorithm using the same GPU processor. The proposed techniques enable efficient real-time 2D and 3D skeletonization of binary images, which could improve the performance of many existing machine learning applications.
二值图像的骨架化是许多图像处理和机器学习应用中的常见任务。其中一些应用需要非常快速的图像处理。我们提出了使用GPU处理器对二值图像进行高效二维和三维细化的新技术。这些算法使用位编码的二值图像在每个线程中同时处理多个点。点的简单性仅基于布尔代数使用按位逻辑运算符来确定。这避免了计算成本高昂的解码和编码步骤,并允许额外的并行化。使用手写字符图像数据集对二维算法进行了评估。对于32×32像素,平均计算时间为3.53纳秒,对于1024×1024像素,平均计算时间为0.25毫秒。这比多线程边界并行算法快52到18380倍。基于人体脉管系统的临床图像对三维算法进行了评估,对于128×128×128体素,计算时间为0.27毫秒,对于512×512×512体素,计算时间为20.32毫秒,这比使用相同GPU处理器的对比边界顺序算法快32到46倍。所提出的技术能够对二值图像进行高效的实时二维和三维骨架化,这可以提高许多现有机器学习应用的性能。