A work efficient parallel algorithm for exact Euclidean Distance Transform
Manduhu and Mark W. Jones
Abstract
A fully-parallelized work-time optimal algorithm is presented for computing the exact Euclidean Distance Transform (EDT) of a 2D binary image with the size of n x n. Unlike existing PRAM and other algorithms, this algorithm is suitable for implementation on modern SIMD architectures such as GPUs. As a fundamental operation of 2D EDT, 1D EDT is efficiently parallelized first. Specifically, the GPU algorithm for the 1D EDT, which uses CUDA binary functions such as ballot(), ffs(), clz() and shfl(), runs in O(log_32_n) time and performs O(n) work. Using the 1D EDT as a fundamental operation, the fully-parallelized work-time optimal 2D EDT algorithm is designed. This algorithm consists of three steps. Step 1 of the algorithm runs in O(log_32_n) time and performs O(N) (N=n^2) of total work on GPU. Step 2 performs O(N) of total work and has an expected time complexity of O(logn) on GPU. Step 3 runs in O(log_32_n) time and performs O(N) of total work on GPU. As far as we know, this algorithm is the first fully-parallelized and realized work-time optimal algorithm for GPUs. Experimental results show that this algorithm outperforms a state-of-the-art GPU algorithm by factor of 2.41 for an image with size of 1024 x 1024.
Related Files
DOI
10.1109/TIP.2019.2916741
https://dx.doi.org/10.1109/TIP.2019.2916741
Citation
Manduhu and Mark W. Jones, A work efficient parallel algorithm for exact Euclidean Distance Transform, IEEE Transactions on Image Processing, 28(11), 5322-5335, Nov. 2019. https://dx.doi.org/10.1109/TIP.2019.2916741
BibTeX
@article{ParallelEDT, author={M. {Manduhu} and M. W. {Jones}}, journal={IEEE Transactions on Image Processing}, title={A Work Efficient Parallel Algorithm for Exact Euclidean Distance Transform}, year={2019}, volume={28}, number={11}, pages={5322-5335}, doi={10.1109/TIP.2019.2916741}, ISSN={1057-7149}, month={11},}