Abstract
Phase diversity method is not only used as an image restoration technique, but also as a wavefront sensor. However, its computations have been perceived as being too burdensome to achieve its real-time applications on a desktop computer platform. In this paper, the implementation of the phase diversity algorithm based on graphic processing unit (GPU) is presented. The redundancy computations for the pupil function, point spread function, and optical transfer function are analyzed. Two kinds of implementation methods based on GPU are compared: one is the general method which is accomplished by GPU library CUFFT without precision loss (method-1) and the other one performed by our own custom FFT with little damage of precision considering the redundant calculations (method-2). The results show the cost and gradient functions can be speeded up by method-2 in contrast with the method-1 and the overhead of global memory access by kernel fusion can be reduced. For the image of 256 × 256 with the sampling factor of 3, the results reveal that method-2 achieves speedup of 1.83× compared with method-1 when the central 128 × 128 pixels of the point spread function are used.
Similar content being viewed by others
References
Gonsalves, R.A.: Phase retrieval and diversity in adaptive optics. Opt. Eng. 21, 829–832 (1982)
Paxman, R.G., Schulz, T.J., Fienup, J.R.: Joint estimation of object and aberrations by using phase diversity. J. Opt. Soc. Am. A. 9(7), 1072–1085 (1992)
Meynadier, L., Michau, V., Velluet, M., et al.: Noise propagation in wave-front sensing with phase diversity. Appl. Opt. 38, 4967–4979 (1999)
Löfdahl, M.G., Scharmer, G.B.: Wavefront sensing and image restoration from focused and defocused solar images. Astron. Astrophys. Suppl. Ser. 107, 243–264 (1994)
Georges, J.A., et al.: High speed closed loop dual deformable mirror phase diversity testbed. Proc. SPIE 6711, 671105 (2007)
Dolne, J.J., Menicucci, P., Miccolis, D., et al.: Real time phase diversity advanced image processing and wavefront sensing. Proceedings of SPIE 6712:67120G (2007)
Warmuth, M.W., Parker, S.W., Wilson, A.J., et al.: Operation of phase-diverse adaptive-optics with extended scenes. Proc. SPIE. 7093, 709307 (2008)
Katsaggelos, A.K., Lay, K.T.: Maximum likelihood blur identification and image restoration using the EM algorithm. Signal Process. IEEE Trans. 39(3), 729–733 (1991)
Bailey, D.H., Swarztrauber, P.N.: The fractional Fourier transform and applications. SIAM Rev. 33(3), 389–404 (1991)
Rabiner, L.R., Schafer, R.W., Rader, C.M.: The Chirp z-transform algorithm and its application. Bell Sys. Tech. J. 48(5), 1249–1291 (1969)
Soummer, R., Pueyo, L., Sivaramakrishnan, A., et al.: Fast computation of Lyot-style coronagraph propagation. Opt. Express 15(24), 15935–15951 (2007)
Paxman, R.G., Thelen, B.J., Carrara, D.A.: Myopic deblurring of space-variant blur by using phase-diverse speckle. In: Circuits, Systems and Computers, Conference Record of 1977 11th Asilomar Conference 2, pp. 928–932 (1998)
Paxman, R.G., Seldin, J.H.: Fine-resolution astronomical imaging with phase diversity speckle. Digit. Image Recov. Synth. II SPIE. 2029, 287–298 (1993)
Zielinski T P.: Robust image-based wavefront sensing [M]. University of Rochester, Rochester (2011)
Nagy, J.G., Plemmons, R.J., Torgersen, T.C.: Iterative image restoration using approximate inverse preconditioning. IEEE Trans. Image Process. A Publ. IEEE Signal Process. Soc. 5(7), 1151–1162 (1996)
Zhang, Tianxu, Shen, Jun, Hong, Hanyu: Opt. Eng. 44, 017005 (2005)
Farber, R.: CUDA application design and development, Morgan Kaufmann, Burlington (2011)
Sanders, J., Kandrot, E.: CUDA by example: an introduction to general-purpose GPU programming, Addison, Wesley (2011)
Cook, S., Programming, C.U.D.A.: A developer’s guide to parallel computing with GPUs. Morgan Kaufmann, Burlington (2011)
Wilt, N.: The CUDA handbook: a comprehensive guide to GPU programming. Pearson Education, Prentice Hall (2013)
Rao, K.R., Kim, D.N., Hwang, J.J.: Fast Fourier transform algorithms and applications, signals and communication technology. Springer, Netherlands (2010)
Volkov, V., Kazian, B.: Fitting FFT onto the G80 architecture. http://www.cs.berkeley.edu/~kubitron/courses/cs258-S08/projects/reports/project6_report.pdf (2008)
Govindaraju, N.K., Lloyd, B., et al.: High performance discrete Fourier transforms on graphics processors. Proceedings of the 2008 ACM/IEEE conference on Supercomputing. IEEE Press, 1-12 (2008)
Luitjens, J.: Faster parallel reductions on Kepler. http://devblogs.nvidia.com/parallelforall/faster-parallel-reductions-kepler/ (2014)
Acknowledgments
This work was funded by the National Natural Science Foundation of China (Grant No. 11178004) and Innovation Foundation of Key Laboratory on Adaptive optics (Grant No. YJ14K018). The reviewers whose comments are very valuable and helpful for revising and improving this paper are also acknowledged.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Zhang, Q., Bao, H., Rao, C. et al. Redundancy computation analysis and implementation of phase diversity based on GPU. Opt Rev 22, 741–752 (2015). https://doi.org/10.1007/s10043-015-0120-7
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10043-015-0120-7