High performance two-dimensional phase unwrapping on GPUs

Published: 01 Jan 2014, Last Modified: 13 Nov 2024Conf. Computing Frontiers 2014EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: Phase unwrapping is an important procedure in digital image and signal processing, and has been widely used in many fields, such as optical and microwave interferometry, magnetic resonance imaging, synthetic aperture radar, adaptive optics. Phase unwrapping is a time consuming process with large amount of calculations and complicated data dependency. A number of algorithms with different features have been developed to solve this problem. Among all of them, Goldstein's algorithm is one of the most widely used algorithms, and has been included in some standard libraries (such as MATLAB). In this paper we propose an innovative implementation of Goldstein's algorithm on GPU. Several important approaches and optimizations are proposed for the GPU algorithm. For example, by introducing a localmatching step, we were able to parallelize the branchcut step efficiently, getting much better performance than existing work. With a cascaded propagation model, another important operation in the algorithm, floodfill, is able to make good use of the computing power of GPU. We tested our GPU algorithm on NVIDIA C2050 and K20 GPUs, and achieved speedup of up to 781 and 896 over the CPU implementation respectively. To the best of our knowledge, this is the best performance of unwrap ever achieved on GPUs.
Loading

OpenReview is a long-term project to advance science through improved peer review with legal nonprofit status. We gratefully acknowledge the support of the OpenReview Sponsors. © 2025 OpenReview