Persistent homology is perhaps the most popular and useful tool offered by topological data analysis, with point-cloud data being the most common setup. Its older cousin, the Euler characteristic curve (ECC) is less expressive, but far easier to compute. It is particularly suitable for analyzing imaging data, and is commonly used in fields ranging from astrophysics to biomedical image analysis. These fields are embracing GPU computations to handle increasingly large datasets. We therefore propose an optimized GPU implementation of ECC computation for 2D and 3D grayscale images. The goal of this paper is twofold. First, we offer a practical tool, illustrating its performance with thorough experimentation, but also explain its inherent shortcomings. Second, this simple algorithm serves as a perfect backdrop for highlighting basic GPU programming techniques that make our implementation so efficient, and some common pitfalls we avoided. This is intended as a step towards a wider usage of GPU programming in computational geometry and topology software. We find this is particularly important as geometric and topological tools are used in conjunction with modern, GPU-accelerated machine learning frameworks.
翻译:持久同调或许是拓扑数据分析中最受欢迎且最实用的工具,其最常见的设置是点云数据。与之相关的欧拉示性曲线(ECC)虽然表达能力较弱,但计算起来却要简单得多。它特别适用于分析成像数据,并广泛用于从天体物理学到生物医学图像分析等领域。这些领域正逐渐采用GPU计算来处理日益庞大的数据集。因此,我们提出了一种针对二维和三维灰度图像的ECC计算的优化GPU实现。本文的目标有两个方面。首先,我们提供了一个实用工具,并通过详尽的实验展示了其性能,同时也解释了其固有的局限性。其次,这个简单的算法为展示基本的GPU编程技术(这些技术使我们的实现如此高效)以及我们避免的一些常见陷阱提供了完美的背景。这旨在推动GPU编程在计算几何与拓扑软件中得到更广泛的应用。我们发现,在几何与拓扑工具与现代化的GPU加速机器学习框架结合使用时,这一点尤为重要。