A GPU-Accelerated Real-Time NLMeans Algorithm for Denoising Color Video Sequences

  • Bart Goossens
  • Hiêp Luong
  • Jan Aelterman
  • Aleksandra Pižurica
  • Wilfried Philips
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6475)


The NLMeans filter, originally proposed by Buades et al., is a very popular filter for the removal of white Gaussian noise, due to its simplicity and excellent performance. The strength of this filter lies in exploiting the repetitive character of structures in images. However, to fully take advantage of the repetitivity a computationally extensive search for similar candidate blocks is indispensable. In previous work, we presented a number of algorithmic acceleration techniques for the NLMeans filter for still grayscale images. In this paper, we go one step further and incorporate both temporal information and color information into the NLMeans algorithm, in order to restore video sequences. Starting from our algorithmic acceleration techniques, we investigate how the NLMeans algorithm can be easily mapped onto recent parallel computing architectures. In particular, we consider the graphical processing unit (GPU), which is available on most recent computers. Our developments lead to a high-quality denoising filter that can process DVD-resolution video sequences in real-time on a mid-range GPU.


Video Sequence Graphical Processing Unit Color Channel Image Denoising Correlate Noise 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Rudin, L., Osher, S.: Total variation based image restoration with free local constraints. In: IEEE Int. Conf. Image Proc (ICIP), vol. 1, pp. 31–35 (November 1994)Google Scholar
  2. 2.
    Portilla, J., Strela, V., Wainwright, M., Simoncelli, E.P.: Image denoising using scale mixtures of gaussians in the wavelet domain. IEEE Trans. Image Processing 12(11), 1338–1351 (2003)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Dabov, K., Foi, A., Katkovnik, V., Egiazarian, K.: Image denoising by sparse 3d transform-domain collaborative filtering. IEEE Trans. Image Processing 16(8), 2080–2095 (2007)MathSciNetCrossRefGoogle Scholar
  4. 4.
    Goossens, B., Luong, H., Pižurica, A., Philips, W.: An improved Non-Local Means Algorithm for Image Denoising. In: Int. Workshop on Local and Non-Local Approx. in Image Processing (2008) (invited paper)Google Scholar
  5. 5.
    Goossens, B., Pižurica, A., Philips, W.: Removal of correlated noise by modeling the signal of interest in the wavelet domain. IEEE Trans. Image Processing 18(6), 1153–1165 (2009)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Goossens, B., Pižurica, A., Philips, W.: Image Denoising Using Mixtures of Projected Gaussian Scale Mixtures. IEEE Trans. Image Processing 18(8), 1689–1702 (2009)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Brailean, J.C., Kleihorst, R.P., Efstraditis, S., Katsaggeleos, K.A., Lagendijk, R.L.: Noise reduction filters for dynamic image sequences: a review. Proc. IEEE 83(9), 1272–1292 (1995)CrossRefGoogle Scholar
  8. 8.
    Selesnick, I.W., Li, K.Y.: Video denoising using 2D and 3D dual-tree complex wavelet transforms. In: Proc. SPIE Wavelet Applications in Signal and Image Processing, pp. 607–618 (August 2003)Google Scholar
  9. 9.
    Pižurica, A., Zlokolica, V., Philips, W.: Combined wavelet domain and temporal video denoising. In: Proc. IEEE Int. Conf. on Advanced Video and Signal Based Surveillance (AVSS), pp. 334–341 (2003)Google Scholar
  10. 10.
    Zlokolica, V., Pižurica, A., Philips, W.: Recursive temporal denoising and motion estimation of video. In: IEEE Int. Conf. Image Proc (ICIP), pp. 1465–1468 (2004)Google Scholar
  11. 11.
    Goossens, B., Pižurica, A., Philips, W.: Video denoising using motion-compensated lifting wavelet transform. In: Proceedings of Wavelets and Applications Semester and Conference (WavE 2006), Lausanne, Switzerland (July 2006)Google Scholar
  12. 12.
    Dabov, K., Foi, A., Egiazarian, K.: Video denoising by sparse 3D transform-domain collaborative filtering. In: European Signal Processing Conference (EUSIPCO 2007), Poznan, Poland (2007)Google Scholar
  13. 13.
    Buades, A., Coll, B., Morel, J.-M.: Nonlocal Image and Movie Denoising. Int J. Comput. Vis. 76, 123–139 (2008)CrossRefGoogle Scholar
  14. 14.
    Yu, S., Ahmad, M.O., Swamy, M.N.S.: Video Denoising using Motion Compensated 3D Wavelet Transform with Integrated Recursive Temporal Filtering. IEEE Trans. Cir. and Sys. for Video Technol. (2010) (in press)Google Scholar
  15. 15.
    Mélange, T., Nachtegael, M., Kerre, E.E., Zlokolica, V., Schulte, S., De Witte, V., Pizurica, A., Philips, W.: Video denoising by fuzzy motion and detail adaptive averaging. Journal of Elec. Imaging 17(4), 43005–1–43005–19 (2008)CrossRefGoogle Scholar
  16. 16.
    Buades, A., Coll., B., Morel, J.M.: A non local algorithm for image denoising. In: Proc. Int. Conf. Comp. Vision and Pat. Recog (CVPR), vol. 2, pp. 60–65 (2005)Google Scholar
  17. 17.
    Azzabou, N., Paragias, N., Guichard, F.: Image Denoising Based on Adapted Dictionary Computation. In: Proc. of IEEE International Conference on Image Processing (ICIP), San Antonio, Texas, USA, pp. 109–112 (September 2007)Google Scholar
  18. 18.
    Kervrann, C., Boulanger, J., Coupé, P.: Bayesian Non-Local Means Filter, Image Redundancy and Adaptive Dictionaries for Noise Removal. In: Sgallari, F., Murli, A., Paragios, N. (eds.) SSVM 2007. LNCS, vol. 4485, pp. 520–532. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  19. 19.
    Dauwe, A., Goossens, B., Luong, H.Q., Philips, W.: A Fast Non-Local Image Denoising Algorithm. In: Proc. SPIE Electronic Imaging, San José, USA, vol. 6812 (January 2008)Google Scholar
  20. 20.
    Kervrann, C., Boulanger, J.: Optimal spatial adaptation for patch-based image denoising. IEEE Trans. Image Processing 15(10), 2866–2878 (2006)CrossRefGoogle Scholar
  21. 21.
    Wang, J., Guo, Y., Ying, Y., Liu, Y., Peng, Q.: Fast non-local algorithm for image denoising. In: IEEE Int. Conf. Image Proc (ICIP), pp. 1429–1432 (2006)Google Scholar
  22. 22.
    Bilcu, R.C., Vehvilainen, M.: Fast nonlocal means for image denoising. In: Martin, R.A., DiCarlo, J.M., Sampat, N. (eds.) Proc. SPIE Digital Photography III, vol. 6502, SPIE, CA (2007)Google Scholar
  23. 23.
    Aelterman, J., Goossens, B., Pižurica, A., Philips, W.: Suppression of Correlated Noise, IN-TECH. In: Recent Advances in Signal Processing (2010)Google Scholar
  24. 24.
    General-Purpose Computation on Graphics Hardware,
  25. 25.
    Kharlamov, A., Podlozhnyuk, V.: Image denoising, CUDA 1.1 SDK (June 2007)Google Scholar
  26. 26.
    De Fontes, F.P.X., Barroso, G.A., Hellier, P.: Real time ultrasound image denoising. Journal of Real-Time Image Processing (April 2010)Google Scholar
  27. 27.
    Goossens, B., Pižurica, A., Philips, W.: EM-Based Estimation of Spatially Variant Correlated Image Noise. In: IEEE Int. Conf. Image Proc. (ICIP), San Diego, CA, USA, pp. 1744–1747 (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Bart Goossens
    • 1
  • Hiêp Luong
    • 1
  • Jan Aelterman
    • 1
  • Aleksandra Pižurica
    • 1
  • Wilfried Philips
    • 1
  1. 1.TELIN-IPI-IBBTGhent UniversityGhentBelgium

Personalised recommendations