Abstract
The multi-scale retinex with color restoration (MSRCR) was developed as a general-purpose image enhancement algorithm that provides simultaneous dynamic range compression, local lightness/contrast enhancement, and good color rendition, and has been successfully used for a wide variety of imagery from diverse fields. While the MSRCR performs good enhancement in most images, the output image can sometimes be further visually optimized during our experiments. An improved MSRCR+Autolevels (AL) algorithm is presented, which can eliminate the impact of a small number of outliers in the histogram of the image and further improve the contrast of an image. New extension significantly improves the visual performance of the MSRCR algorithm. However, the MSRCR+AL containing a large number of complex calculations is computationally expensive, limiting real-time applications. In this paper, a parallel application of the MSRCR+AL algorithm on a graphics processing unit (GPU) is presented. For the various configurations in our test, the GPU-accelerated MSRCR+AL shows a scalable speedup as the resolution of an image increases. The up to 45× speedup (1,024 × 1,024) over the single-threaded CPU counterpart shows a promising direction of using the GPU-based MSRCR+AL in large-scale, time-critical applications. We also achieved 17 frames per second in video processing (1,280 × 720).
Similar content being viewed by others
References
Archirapatkave, V., Sumilo, H., See, S., Achalakul, T.: GPGPU acceleration algorithm for medical image reconstruction. In: Parallel and Distributed Processing with Applications (ISPA), 2011 IEEE 9th International Symposium on, IEEE, pp. 41–46 (2011)
Clayton, T., Murray, A., Lindsay, I.: GP-GPU: bridging the gap between modelling & experimentation. In: Adaptive Hardware and Systems, 2009. AHS 2009. NASA/ESA Conference on, IEEE, pp. 453–459 (2009)
Fechteler, P., Eisert, P.: Accelerated video encoding using render context information. In: Image Processing (ICIP), 2010 17th IEEE International Conference on, IEEE, pp. 2033–2036 (2010)
Gonzalez, R.C., Woods, R.E.: Digital Image Processing. Pearson Prentice Hall, Third ed. (2008)
Hines, G., Rahman, Z., Jobson, D., Woodell, G.: DSP implementation of the retinex image enhancement algorithm. In: Visual Information Processing XIII, Proceedings of SPIE, vol. 5438 (2004)
Hines, G., Rahman, Z., Jobson, D., Woodell, G.: Single-scale retinex using digital signal processors. In: Global Signal Processing Conference, Citeseer, vol. 27 (2004)
Hines, G., Rahman, Z., Jobson, D., Woodell, G., Harrah, S.: Real-time enhanced vision system 5778 (2005)
Hines, G., Rahman, Z., Jobson, D., Woodell, G.: Real-time enhancement, registration, and fusion for a multi-sensor enhanced vision system. Proc. SPIE 6226:622609 (2006)
Huang, M., Wei, S., Huang, B., Chang, Y.: Accelerating the kalman filter on a gpu. In: Parallel and Distributed Systems (ICPADS), 2011 IEEE 17th International Conference on, IEEE, pp. 1016–1020 (2011)
Jiang B, Rahman Z (2012) Runway hazard detection in poor visibility conditions. Proc. SPIE 8300:83000H
Jinzhu, Y., Han, F., Chaolu, F., Dazhe, Z., Yanfei, W.: An accelerative method for multimodality medical image registration based on cuda. In: Image and Signal Processing (CISP), 2011 4th International Congress on, IEEE, vol. 4, pp. 1817–1821 (2011)
Jobson, D., Rahman, Z., Woodell, G.: Retinex image processing: improved fidelity to direct visual observation (1996)
Jobson, D., Rahman, Z., Woodell, G.: Properties and performance of a center/surround retinex. Image Proc. IEEE Trans. 6(3):451–462 (1997)
Jobson, D., Rahman, Z., Woodell, G.: A multiscale retinex for bridging the gap between color images and the human observation of scenes. Image Proc. IEEE Trans. 6(7):965–976 (1997)
Jobson, D.; Rahman, Z.; Woodell, G.: The spatial aspect of color and scientific implications of retinex image processing. In: SPIE International Symposium on AeroSense, Proceedings of the Conference on Visual Information Processing X (2001)
Jobson, D., Rahman, Z., Woodell, G.: Feature visibility limits in the non-linear enhancement of turbid images. Proc. SPIE 5108, (2003)
Kinsner, M., Capson, D., Spence, A.: Scale-space ridge detection with gpu acceleration. In: Electrical and Computer Engineering, 2008. CCECE 2008. Canadian Conference on, IEEE, pp. 001, 527–001, 530 (2008)
Kirk, D., Wen-mei, W., Hwu, W.: Programming massively parallel processors: a hands-on approach. Morgan Kaufmann (2010)
van der Laan, W., Jalba, A., Roerdink, J.: Accelerating wavelet lifting on graphics hardware using cuda. IEEE Trans. Parallel Distrib. Syst. 22(1):132–146 (2011)
Land E (1983) Recent advances in retinex theory and some implications for cortical computations: color vision and the natural image. Proc. Natl. Acad. Sci. USA 80(16):5163
Land, E: An alternative technique for the computation of the designator in the retinex theory of color vision. Proc. Natl. Acad. Sci. 83(10):3078–3080 (1986)
Land, E.: Recent advances in retinex theory. Vision Res. 26(1):7–21 (1986)
Rahman, Z., Woodell, G., Jobson, D.: Retinex image enhancement: application to medical images. In: NASA Workshop on New Partnerships in Medical Diagnostic Imaging (2001)
Rahman, Z., Jobson, D., Woodell, G., Hines, G. Multisensor fusion and enhancement using the retinex image enhancement algorithm. Proc. SPIE Visual Inform. Process. 4736:36–44 (2002)
Rahman, Z., Jobson, D., Woodell, G. Retinex processing for automatic image enhancement. J. Electron. Imaging 13:100–110 (2004)
Sanders, J.; Kandrot, E.: CUDA by example: an introduction to general-purpose GPU programming. Addison-Wesley Professional (2010)
Shen G, Gao G, Li S, Shum H, Zhang Y (2005) Accelerate video decoding with generic gpu. Circuits Syst. Video Technol. IEEE Trans. 15(5):685–693
Shi, L., Chen, H., Sun, J., Li, K.: vCUDA: Gpu-accelerated high-performance computing in virtual machines. Comput. IEEE Trans. 61(6):804–816 (2012). doi:10.1109/TC.2011.112
Stockham Jr., T.G., Cannon, T.M., Robert, B.: Ingebretsen (1975) blind deconvolution through digital signal processing. Proc. IEEE 63.4 678–692 (1975)
Sun, Y., Sun, X., Zhang, H.: Research on parallel cone-beam ct image reconstruction on cuda-enabled gpu. In: Image Processing (ICIP), 2010 17th IEEE International Conference on, IEEE, pp. 4501–4504 (2010)
Tsai, S., Cheng, C., Li, C., Chen, L.: A real-time 1080p 2d-to-3d video conversion system. In: Consumer Electronics (ICCE), 2011 IEEE International Conference on, IEEE, pp. 803–804 (2011)
Woodell, G., Rahman, Z., Jobson, D., Hines, G.: Enhanced images for checked and carry-on baggage and cargo screening. Proc. SPIE 5403:582 (2004)
Woodell, G., Jobson, D., Rahman, Z., Hines, G. Enhancement of imagery in poor visibility conditions. Proc. SPIE 5778:673 (2005)
Woodell, G., Jobson, D., Rahman, Z., Hines, G.: Advanced image processing of aerial imagery. Proc. SPIE 6246:62460E (2006)
Wright, W.: The Measurement of Colour. London, Second ed. (1958)
Zavala-Romero, O., Baese, A., Meyer-Baese, U.: Multiplatform gpgpu implementation of the active contours without edges algorithm. Proc. SPIE 8399:83990E (2012)
Zhao, J., Zhou, H.: Design and optimization of remote sensing image fusion parallel algorithms based on cpu-gpu heterogeneous platforms. In: Image and Signal Processing (CISP), 2011 4th International Congress on, IEEE, vol. 3, pp. 1623–1627 (2011)
Acknowledgments
The authors wish to thank the NASA Aviation Safety Program, External Hazards Sensing and Mitigation for the funding which made this work possible. In particular, Dr. Jiang was funded by NASA Grant#NNL09AA00A to the National Institute of Aerospace.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Jiang, B., Woodell, G.A. & Jobson, D.J. Novel multi-scale retinex with color restoration on graphics processing unit. J Real-Time Image Proc 10, 239–253 (2015). https://doi.org/10.1007/s11554-014-0399-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11554-014-0399-9