Abstract
In this paper, we present a parallel implementation of a fixed-point algorithm for finding the solution of the total variation model for phase demodulation. The total variation model is efficient in estimating discontinuous phase maps, background illumination, and amplitude modulation from a single fringe pattern. The implementations include execution in a multi-core CPU and a GPU using OpenMP and CUDA, respectively. We show performance comparisons of the parallel implementations with 64-bit and 32-bit precision floating-point numbers using synthetic and real experimental data. Results show that our parallel implementations achieve speedups over the serial implementation of 9x for multi-core CPU and 103x for GPU.







Similar content being viewed by others
References
Ayubi, G.A., Duarte, I., Perciante, C.D., Flores, J.L., Ferrari, J.A.: Phase-step retrieval for tunable phase-shifting algorithms. Opt. Commun. 405(June), 334–342 (2017). https://doi.org/10.1016/j.optcom.2017.08.045
Brito-Loeza, C., Legarda-Saenz, R., Espinosa-Romero, A., Martin-Gonzalez, A.: A mean curvature regularized based model for demodulating phase maps from fringe patterns. Commun. Comput. Phys. 24(1), 27–43 (2018). https://doi.org/10.4208/cicp.OA-2017-0109
Brito-Loeza, C., Legarda-Saenz, R., Martin-Gonzalez, A.: A fast algorithm for a total variation based phase demodulation model. Numer. Methods Partial Differ. Equ. 36(3), 617–636 (2020)
Chapman, B., Jost, G., Van Der Pas, R.: Using OpenMP: Portable Shared Memory Parallel Programming, vol. 10. MIT Press, Cambridge (2008)
Cheng, J., Grossman, M., McKercher, T.: Professional CUDA C Programming. Wiley, Indianapolis, Indiana (2014). https://www.books.google.com.mx/books?id_Z7rnAEACAAJ
Cook, S.: CUDA Programming: A Developer’s Guide to Parallel Computing with GPUs, 1st edn. Morgan Kaufmann Publishers Inc., San Francisco, CA (2012)
Demmel, J.W.: Applied Numerical Linear Algebra. Society for Industrial and Applied Mathematics, Philadelphia, PA (1997)
Flores, V.H., Reyes-Figueroa, A., Carrillo-Delgado, C., Rivera, M.: Two-step phase shifting algorithms: where are we? Opt. Laser Technol. 126(January), 106105 (2020). https://doi.org/10.1016/j.optlastec.2020.106105
Galvan, C., Rivera, M.: Second-order robust regularization cost function for detecting and reconstructing phase discontinuities. Appl. Opt. 45(2), 353–359 (2006). https://doi.org/10.1364/AO.45.000353
Goldberg, D.: What every computer scientist should know about floating-point arithmetic. ACM Comput. Surv. (CSUR) 23(1), 5–48 (1991)
Hwu, W.M., Keutzer, K., Mattson, T.G.: The concurrency challenge. IEEE Des. Test. Comput. 25(4), 312–320 (2008). https://doi.org/10.1109/MDT.2008.110
Itseez: OpenCV. Website (2020). http://opencv.org//. Accessed 24 Sept 2020
Karpinsky, N., Zhang, S.: High-resolution, real-time 3d imaging with fringe analysis. J. Real Time Image Process. 7(1), 55–66 (2012)
Kirk, D.B., Wen-Mei, W.H.: Programming Massively Parallel Processors: A Hands-on Approach (Applications of GPU Computing Series), 1st edn. Morgan Kaufmann, Burlington, MA, USA (2010)
Kulkarni, R., Rastogi, P.: Two-step phase demodulation algorithm based on quadratic phase parameter estimation using state space analysis. Opt. Lasers Eng. 110(April), 41–46 (2018). https://doi.org/10.1016/j.optlaseng.2018.05.012
Legarda-Saenz, R., Brito-Loeza, C.: Augmented lagrangian method for a total variation-based model for demodulating phase discontinuities. J. Algorithm Comput. Technol. 14, 1–8 (2020). https://doi.org/10.1177/1748302620941413
Legarda-Saenz, R., Brito-Loeza, C., Espinosa-Romero, A.: Total variation regularization cost function for demodulating phase discontinuities. Appl. Opt. 53(11), 2297–2301 (2014)
Legarda-Saenz, R., Osten, W., Juptner, W.P.: Improvement of the regularized phase tracking technique for the processing of nonnormalized fringe patterns. Appl. Opt. 41(26), 5519–5526 (2002). https://doi.org/10.1364/AO.41.005519
Legarda-Saenz, R., Tellez Quinones, A., Brito-Loeza, C., Espinosa-Romero, A.: Variational phase recovering without phase unwrapping in phase-shifting interferometry. Int. J. Comput. Math. 96(6), 1217–1229 (2019)
Vese, L.A., Le Guyader, C.: Variational Methods in Image Processing, 1st edn. Chapman and Hall/CRC, Abingdon, UK (2015)
Marroquin, J.L., Rivera, M., Botello, S., Rodriguez-Vera, R., Servin, M.: Regularization methods for processing fringe-pattern images. Appl. Opt. 38(5), 788–794 (1999). https://doi.org/10.1364/AO.38.000788
NVIDIA Corporation: CUDA C++ Programming Guide. Website (2020). https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html. Accessed 24 Sept 2020
Pacheco, P.: An Introduction to Parallel Programming, 1st edn. Morgan Kaufmann Publishers Inc., San Francisco, CA (2011)
Perlin, M., Bustamante, M.D.: A robust quantitative comparison criterion of two signals based on the sobolev norm of their difference. J. Eng. Math. 101(1), 115–124 (2016)
Rajshekhar, G., Rastogi, P.: Fringe analysis: premise and perspectives. Opt. Lasers Eng. 50(8), iii–x (2012). https://doi.org/10.1016/j.optlaseng.2012.04.006
Rudin, L.I., Osher, S., Fatemi, E.: Nonlinear total variation based noise removal algorithms. Phys. D 60(1–4), 259–268 (1992). https://doi.org/10.1016/0167-2789(92)90242-F
Rünnger, G., Rauber, T.: Parallel Programming: for Multicore and Cluster Systems, 2nd edn. Springer-Verlag, Berlin Heidelberg (2013)
Servin, M., Marroquin, J.L., Cuevas, F.J.: Fringe-follower regularized phase tracker for demodulation of closed-fringe interferograms. J. Opt. Soc. Am. A 18(3), 689–695 (2001). https://doi.org/10.1364/JOSAA.18.000689
Servin, M., Padilla, M., Choque, I., Ordones, S.: Phase-stepping algorithms for synchronous demodulation of nonlinear phase-shifted fringes. Opt. Express 27(4), 5824 (2019). https://doi.org/10.1364/OE.27.005824
Servin, M., Quiroga, J.A., Padilla, M.: Fringe Pattern Analysis for Optical Metrology: Theory, Algorithms, and Applications. Wiley-VCH, Weinheim (2014)
Singh, M., Khare, K.: Single-shot interferogram analysis for accurate reconstruction of step phase objects. J. Opt. Soc. Am. A 34(3), 349 (2017). https://doi.org/10.1364/JOSAA.34.000349
Surrel, Y.: Fringe Analysis. In: P.K. Rastogi (ed.) Photomechanics, Topics in Applied Physics, vol. 77, pp. 55–102. Springer, Berlin, Heidelberg (2000). https://doi.org/10.1007/3-540-48800-6_3
Takeda, M., Ina, H., Kobayashi, S.: Fourier-transform method of fringe-pattern analysis for computer-based topography and interferometry. J. Opt. Soc. Am. 72(1), 156 (1982). https://doi.org/10.1364/JOSA.72.000156
Veldhuizen, T.L.: Arrays in blitz++. In: Caromel, D., Oldehoeft, R.R., Tholburn, M. (eds.) Computing in Object-Oriented Parallel Environments, pp. 223–230. Springer, Berlin, Heidelberg (1998)
Whitehead, N., Fit-Florea, A.: Precision & performance: Floating point and IEEE 754 compliance for NVIDIA GPUs. Technical report, rn (A+ B) 21(1), 18749–19424 (2011)
Zhu, X., Tang, C., Li, B., Sun, C., Wang, L.: Phase retrieval from single frame projection fringe pattern with variational image decomposition. Opt. Lasers Eng. 59, 25–33 (2014). https://doi.org/10.1016/j.optlaseng.2014.03.002
Acknowledgements
Authors acknowledge the support from “Laboratorio de Supercómputo del Bajío” through the Grant Number 300832 from CONACyT.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Hernandez-Lopez, F.J., Legarda-Sáenz, R. & Brito-Loeza, C. Parallel algorithm for fringe pattern demodulation. J Real-Time Image Proc 18, 2441–2451 (2021). https://doi.org/10.1007/s11554-021-01129-4
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11554-021-01129-4