A Simple Denoising Algorithm for Real-World Noisy Camera Images

J Imaging. 2023 Sep 18;9(9):185. doi: 10.3390/jimaging9090185.

Abstract

The noise statistics of real-world camera images are challenging for any denoising algorithm. Here, I describe a modified version of a bionic algorithm that improves the quality of real-word noisy camera images from a publicly available image dataset. In the first step, an adaptive local averaging filter was executed for each pixel to remove moderate sensor noise while preserving fine image details and object contours. In the second step, image sharpness was enhanced by means of an unsharp mask filter to generate output images that are close to ground-truth images (multiple averages of static camera images). The performance of this denoising algorithm was compared with five popular denoising methods: bm3d, wavelet, non-local means (NL-means), total variation (TV) denoising and bilateral filter. Results show that the two-step filter had a performance that was similar to NL-means and TV filtering. Bm3d had the best denoising performance but sometimes led to blurry images. This novel two-step filter only depends on a single parameter that can be obtained from global image statistics. To reduce computation time, denoising was restricted to the Y channel of YUV-transformed images and four image segments were simultaneously processed in parallel on a multi-core processor.

Keywords: image enhancement; image processing; local means calculation; multi-core denoising; night vision; noise reduction; real-world camera pictures.

Grants and funding

The research was supported by the aws project P1716437-WZP01. Open Access Funding by the University of Graz.