Fast GPU denoiser for still images and video

Image/video denoising is widely used in many applications. We have developed GPU-accelerated denoise kernel that runs on existing hardware from NVIDIA. We have implemented both luma and chroma denoisers and got very high performance both for image and video processing.

GPU Denoiser Library Features

  • Input format: 8/10/12/14/16-bit per channel input data array from CPU or GPU memory
  • Output format: 24/48-bit output data array in CPU or GPU memory
  • Denoising with 16/32-bit accuracy
  • Wavelet algorithms CDF 5/3 and CDF 9/7
  • Thresholding: Hard, Soft, Garrote
  • Number of decomposition levels: from 1 to 7
  • Separate Y (luma) and Cb/Cr (chroma) denoising
  • GUI to show processed data via OpenGL with minimum latency
  • Timing and performance measurements
  • Compatibility with Windows-10, Linux Ubuntu/CentOS, and L4T (Jetson)

Benchmarks for fast image and video denoiser on GPU

Images: 2K image (1920×1080, 24-bit) and 4K image (3840×2160, 24-bit)
Wavelet transform: CDF 9/7
Number or DWT resolutions: 7
DWT thresholds for YCbCr: 10;10;10
Test description: all data in GPU memory, timing includes GPU computations only
Software: OS Windows-10 (64-bit), CUDA-10.2
Hardware: CPU Intel Core i7-5930K (Haswell-E, 6 cores, 3.5–3.7 GHz), NVIDIA GeForce GTX 1080

  • 2K denoising time – 1.78 ms (3.3 GByte/s)
  • 4K denoising time – 5.84 ms (4.0 GByte/s)

We have designed that software as a part of our GPU Image & Video Processing SDK. Now our customers have opportunity to utilize GPU-accelerated denoiser in their applications as a part of general image processing pipeline.

Testing

To test our GPU-based denoiser, please download Fast CinemaDNG Processor software from the download page. We have implemented two types of denoisers: before demosaicing (raw denoiser) and after demosaicing (rgb/yuv denoiser). You can test and visualize the results of denoising for DNG footages and you can get sample set of DNG images at the download page as well.

GPU-based Denoiser Roadmap

  • Denoising algorithm which is based on "camera noise profile" and variance stabilizing transform (VST) - done
  • Wavelet-based denoiser optimization (gpu performance, gpu memory consumption, strength of noise suppression) - in progress
  • Total variation denoising (total variation regularization)

Contact Form

This form collects your name and email. Check out our Privacy Policy on how we protect and manage your personal data.