Chroma Noise Reduction in DCT Domain Using Soft-Thresholding
© Antonio Buemi et al. 2010
Received: 31 March 2010
Accepted: 17 December 2010
Published: 9 January 2011
The chroma noise effect seriously reduces the quality of digital images and videos, especially if they are acquired in low-light conditions. This paper describes the DCT-CNR (Discrete Cosine Transform-Chroma Noise Reduction), an efficient chroma noise reduction algorithm based on soft-thresholding. It reduces the contribution of the DCT coefficients having highest probability to be corrupted by noise and preserves the ones corresponding to the details of the image. Experiments show that the proposed method achieves good results with low computational and hardware resources requirements.
Noise is one of the most critical problems in digital images, especially in low-light conditions. The relative amount of "chroma" and "luminance" noise varies depending on the exposure settings and on the camera model. In particular, low-light no-flash photography suffers from severe noise problems. A complete elimination of luminance noise can be unnatural and the full chroma noise removal can introduce false colors; so the denoising algorithms should vary properly the filtering strength, depending on the input local characteristics.
In literature there are several techniques for chroma noise reduction. Some of them make use of optical filters installed in the digital cameras to avoid aliasing [1–3]. Other approaches manage the high frequencies only and are ineffective against low-frequency chroma noise.
Another common and simple way to address the problem consists of converting the input image to luminance-chrominance space, blurring the chroma planes and transforming the image back to the original color domain . The main weakness of this technique is the inability to discern between noise and genuine color details; so, when the blurring becomes strong, color bleeding along edges can be introduced. Moreover, large blurring kernels are needed to remove low-frequencies chroma blobs. Another fast solution consists of applying standard greyscale image algorithms to each color plane of the input image independently, but the risk of artefacts or false colors introduction is very high because the correlation among color channels is ignored .
The solution proposed by Kodak  promises to overcome the limitation of the methods described above. The basic idea behind the algorithm is to identify the edges of the input image and to use variable shaped blur kernels to reduce the noise. This strategy allows managing low-frequencies blobs and avoiding color bleeding. It can be summarized in four steps. The input image is firstly converted to the CIELAB  color space. An edge map is then built convolving four 5 × 5 truncated pyramid filters  with luminance and chrominance channels and summing the results to obtain a single edge map. Then four filters capture high frequencies corresponding to horizontal, vertical, and diagonals edges. The chrominance channels are smoothed to remove noise. For each pixel of the image, the corresponding edge map value is taken as reference. Then the algorithm moves in each of the eight preferred directions (North, North-East, East, South-East, South, South-West, West, North-West), one pixel at a time, comparing the edge map values with the reference value. If the difference between the current and the reference values is lower than a threshold, the current pixel is added to the smoothing neighbourhood region and the process continues; otherwise the growth of the region along the current direction is stopped. When the blur kernel shape is computed, the chrominance values are replaced with the average of the neighbouring pixels falling in the kernel. The threshold can be fixed by the user or computed adaptively in run-time, for example, by calculating the standard deviation of the edges map values in a flat region of the image. The final step consists of converting the resulting image back to the original color space.
Chroma noise reduction has application in astrophotography too. PixInsight  is an advanced image processing platform produced by the Spanish company Pleiades Astrophoto. It is a modular application for chroma noise reduction based on two principal algorithms: the SGBNR (Selective Gaussian Blur Noise Reduction) and the SCNR (Subtractive Chromatic Noise Reduction). The first one is an efficient method to reduce the noise in the medium and large-dimensional scales, while the second one is a technique developed to remove noise in the green channel of coloured deep-sky astrophotos.
The SGBNR is designed to smooth image areas where there are few or no details, but preserving small structures and contrast. In order to achieve this goal it uses a lowpass filter with a strength that depends on edge features of the image. The filtering intensity is driven by the filter size, the "Amount" parameter, which fixes the percentage of the original pixel value to be preserved, and the "Edges Protection Threshold", which evaluates the "edgeness" degree of each pixel (also depending on the luminance level) and modulates the filter strength consequently.
where pixel values are in the normalized interval.
During low-pass filtering, each pixel is assigned to a neighborhood of surrounding pixels. Edge protection works by first estimating a significant brightness level for the neighborhood. Then it compares the central pixel with each neighbor and computes a weighted difference. When a neighbor pixel, whose difference with the central pixel exceeds the corresponding edges protection threshold (either for bright or dark sides, depending on the sign of the difference), is found, then a corrective function is applied to the neighbor pixel in order to give it more opportunities to survive after the low-pass filtering. This allows to preserve small-scale image features and contrast. Note that too high value of the threshold can allow excessive low-pass filtering, whilst too low value of the threshold can generate artifacts. The SGBNR can also be applied recursively. In this case the threshold parameters are less critical and the edge protection mechanism is more efficient.
The SCNR process has been designed mainly to remove green noisy pixels. With the exception of some planetary nebulae, there is no green object in the deep-sky: there are no green stars and emission nebulae are deeply red, whilst reflection nebulae are blue; so if there are green pixels on a color balanced, deep-sky astrophoto, they will be noise; consequently such kind of noise can be removed easily and very efficiently. The SCNR process is defined by two parameters: the "Protection Method" and "Amount". In order to avoid destroying correct green data, four protection methods have been implemented. They perform a weighted average on the new green value depending on the red and blue values. The parameter "Amount" controls the contribution of the original green value.
The main drawback of the SCNR is that it can introduce a magenta cast to the sky background, which must be controlled by a careful dosage of the Amount parameter. PixInsight contains also the "ATrousWaveletTransform", a rich tool able to reduce the high-frequencies chroma noise using the wavelet decomposition. It exploits median and erosion/dilation morphological filters for specific noise reduction tasks, such as impulsive noise removal.
The panorama of consumer solutions available as plug-in or as standalone application includes also Noise Ninja  and Dfine . Noise Ninja is a powerful software produced by the PictureCode LLC that removes chroma noise with an algorithm in the wavelet domain. It is a good trade-off between noise reduction and details preservation. The main feature is the ability to limit the introduction of edge blurring and color bleeding, which are defects not properly managed by conventional wavelets.
Dfine is made for both amateurs and experts. The automatic process consists of two steps: to measure the noise and to remove the noise. The application allows the full control of the noise reduction process, too. The entity of the noise can be measured manually depending on the features of the image under processing, by selecting a region of the image affected by noise and then by filtering only a specific color range or a specific object. The default noise reduction method is named "Control Points" and it allows the user to select different parts of the image and to tune the filter strength. The statistics collected on the selected data are used to perform the noise reduction on the whole image. The Control Points method allows the user also to manage separately the chroma and contrast noise. Moreover, the so-built noise profile can be saved and applied for further executions. The "Color Range" method is designed to preserve specific colors. It is also possible to apply the algorithm only to specific objects, for example, on the skin, or processing the background of the image only.
All the algorithms discussed above require interaction with the user. This paper presents the DCT-CNR (Discrete Cosine Transform-Chroma Noise Reduction), an efficient chroma noise reduction algorithm based on soft-thresholding on DCT data and designed to be integrated in the Image Generation Pipeline (IGP) , which allows any image system to yield the final color image starting from sensor data. Each step of the chain affects the noise level in the image; so reducing the noise during the generation process is a crucial step to improve the output quality. The DCT-CNR allows to limit chroma noise locally without using interaction and it can be easily embedded in JPEG encoders, which usually is the final step of the IGP, with negligible computational overload.
The rest of the paper is organized as follows: Section 2 briefly describes the problem of the noise reduction in the DCT domain; Section 3 presents the DCT-CNR in details; Section 4 discusses experimental results and comparative tests; the last section contains conclusion and final remarks.
2. Noise Reduction and DCT
The (white) noise affects all the DCT coefficients and it implies not only a degradation of the image but also a reduction of the efficiency of the encoding process performed both in still image and in video sequences. The number of DCT zero-coefficients decreases due to noise; so the run-length coding used in JPEG  and MPEG  standards suffers a loss in terms of compression rate.
A widely used technique for noise reduction consists of adjusting each frequency component of the noisy signal accordingly with a function properly defined, usually called coring function . The basic idea is that low-energy DCT coefficients bring small information and are highly influenced by noise. On the other hand, high-energy DCT coefficients carry high information and are slightly influenced by noise. Thus, the coefficients with large amplitudes can be considered reliable and they should be preserved; on the contrary, coefficients with small amplitude are considered not reliable and their contribution should be reduced or discarded.
where is one of the DCT coefficients of the noisy signal; is the noise-reduced DCT coefficient; is the coring threshold.
3. Chroma Noise Reduction in DCT Domain
The proposed algorithm, named DCT-CNR (Discrete Cosine Transform-Chroma Noise Reduction), consists of performing a soft-threshold to the chrominance components of the image preserving the luminance and the DC coefficients of each DCT 8 × 8 chrominance block of the image to be coded.
Any image device contains an IGP , which transforms the sensor data in the final RGB image. Each step of the pipeline affects the output noise level, which depends on many factors, including sensor type, pixel dimensions, temperature, exposure time, and ISO speed. An effective noise reduction strategy should be distributed (limiting the noise introduction or amplification in each block of the chain). The DCT-CNR has been developed to be easily integrated into the JPEG encoder, which is placed at the end of the pipeline to perform the compression, providing chroma noise reduction without resources overload.
The crucial step of the algorithm is the coring threshold definition. It should be big enough to reduce the noise and small enough to preserve the details. Moreover, it should be different for each block to take into account the information content, avoiding texture or detailed regions destruction and performing a strong noise reduction in the flat areas, where the chroma noise is more visible. A fixed threshold definition may not be a good solution because it could not manage differently the details in regions with different features.
An appropriate threshold definition has to exploit local measures able to provide a reliable color noise characterization. Moreover, each 8 × 8 block of DCT coefficients must be classified. To achieve such results the threshold has been defined using the following measures.
Robustness" to noise: a statistical analysis of a large set of images affected by color noise showed that some AC coefficients are more sensitive to noise than others. A constant weight has been assigned to each AC coefficient in dependence on its position in the block, in order to preserve the most robust coefficients (which carry suitable information) and discard the ones that, with high probability, are corrupted by noise.
Edgeness" of the block: if a block contains an edge or a detail, its information content should be maintained untouched, whilst a homogeneous block should be strongly corrected. In this paper an edgeness measure has been used. It is basically a fuzzy measure describing the probability that a block contains an edge.
An adaptive threshold, varying for each DCT block, is defined combining robustness and edgeness, as described in the following subsections.
3.1. Block Classification: Coefficients Robustness to Noise
3.2. Block Classification: Edgeness
energy estimation along directions,
fuzzy estimation of the block activity,
and estimate the distance among the edgeness measures, which are indicator of the presence of a master direction in the block under examination.
The edgeness value is used to drive the noise reduction intensity, which depends on the threshold computation defined in the following subsection. Several cases could happen.
Very HIGH values of edgeness: both and have values close to 1. This means that a dominant direction exists and the block contains an edge, and so it has to be preserved (Figure 5(a)).
- (b)Very LOW values of edgeness (close to zero): one has the following.
Both and are low, but the values in DIR are high. In this case all the directions are strong, so the block has probably fine textures or noise fluctuations, and a strong filtering is required. In other words, most of its coefficients have to be reduced or discarded.
Average value of edgeness: two directions are greater than the third one, and so a sort of media filtering is needed.
3.3. Threshold Definition
The threshold computation is the key step of the algorithm. The higher the threshold is, the bigger is the number of DCT coefficients whose contribution is reduced or discarded. The real parameter allows to increase or to reduce the threshold which drives the filter strength.
DCT-CNR computational complexity.
Operations per pixel
Several tests have been done to evaluate the performances of the DCT-CNR. The results are described in the following subsections. The objective metric Peak Signal-to-Noise Ratio (PSNR) has been used to estimate the effectiveness of the algorithm as discussed in Section 4.1. Section 4.2 explains the algorithm effects on the JPEG compression. Section 4.3 presents comparative tests with other color noise reduction techniques.
4.1. DCT-CNR Performances Evaluation Using PSNR
PSNR performances of DCT-CNR.
4.2. DCT-CNR: Pro and Cons
4.3. DCT-CNR: Comparative Testing
PSNR results of DCT-CNR, Chroma Blurring, and Dfine algorithms.
But a fair comparison among the algorithms must take into account their complexity and the specific application they have been developed to. The DCT-CNR is fully automatic and it has been developed to be implemented as additional feature of a JPEG encoder with negligible additional hardware and computational resources. The main constraint driving the algorithm design was to reduce the computational and memory costs. Most of the chroma noise reduction algorithms, Dfine and CB included, have been developed for postprocessing. Their application into an IGP implies adding to the chain a block dedicated to chroma noise reduction, with consequently increase of resources requirement.
A simple and efficient algorithm for chroma noise reduction, called DCT-CNR, has been presented. It operates in the DCT data domain, managing the chromatic components only. The DCT-CNR has a very low complexity in terms of computational costs and it also requires few hardware resources because it could be easily integrated in the JPEG compression block of an IGP of a digital still camera improving the final image quality without additional complexity. It is based on a DCT block classification and it is able to preserve the zones of the image containing details or edges by applying a stronger filtering on the flat regions.
- Adams JE Jr., Hamilton JF Jr., Smith CM: Reducing Color Aliasing Artifacts from Color Digital Images. US Patent No. US 6 927 804 B2, August 2005Google Scholar
- Kessler D, Nutt ACG, Palum RJ: Anti-Aliasing Low-Pass Blur Filter for Reducing Artifacts in Imaging. Patent No. US 5 684 293 B1, November 1997Google Scholar
- McGettigan AD, Ockenfuss G: Anti-Aliasing Optical Filter for Image Sensors. US Patent No. 7 088 510 B2, August 2006Google Scholar
- Hamilton JF Jr., Adams JE Jr.: Smoothing a Digital Color Image Using Luminance Values. U.S. Patent No. 6 697 107, Febraury 2004Google Scholar
- Gonzales RC, Woods RE: Digital Image Processing. Addison Wesley, Reading, Mass, USA; 1993.Google Scholar
- Adams JE Jr., Hamilton JF Jr.: Removing Chroma Noise from Digital Images by Using Variable Shape Pixel Neighborhood Regions. European Patent No. EP 1 093 087 B1, September 2000
- Uniform Color Spaces—Color Difference Equations, Psychometric Color Terms. Commission Internationale de L'Eclairage, Paris, France; 1978.
- Wu Q, Schulze MA, Castleman KR: Steerable pyramid filters for selective image enhancement applications. Proceedings of the IEEE International Symposium on Circuits and Systems (ISCAS '98), June 1998 5: V-325-V-328.Google Scholar
- Donoho DL: Denoising by soft-thresholding. IEEE Transactions on Information Theory 1995,41(3):613-627. 10.1109/18.382009View ArticleMathSciNetMATHGoogle Scholar
- Balster EJ, Zheng YF, Ewing RL: Feature-based wavelet shrinkage algorithm for image denoising. IEEE Transactions on Image Processing 2005,14(12):2024-2039.View ArticleGoogle Scholar
- Van Roosmalen PMB, Lagendijk RL, Biemond J: Embedded coring in MPEG video compression. IEEE Transactions on Circuits and Systems for Video Technology 2002,12(3):205-211. 10.1109/76.993441View ArticleGoogle Scholar
- Donoho DL, Johnstone JM: Ideal spatial adaptation by wavelet shrinkage. Biometrika 1994,81(3):425-455. 10.1093/biomet/81.3.425View ArticleMathSciNetMATHGoogle Scholar
- Donoho DL, Johnstone IM, Kerkyacharian G, Picard D: Wavelet shrinkage: asymptopia? Journal of the Royal Statistical Society Series B 1995,57(2):301-369.MathSciNetMATHGoogle Scholar
- Chang SG, Yu B, Vetterli M: Adaptive wavelet thresholding for image denoising and compression. IEEE Transactions on Image Processing 2000,9(9):1532-1546. 10.1109/83.862633View ArticleMathSciNetMATHGoogle Scholar
- Tomasi C, Manduchi R: Bilateral filtering for gray and color images. Proceedings of the IEEE 6th International Conference on Computer Vision, January 1998 839-846.Google Scholar
- Zhang M, Gunturk BK: Multiresolution bilateral filtering for image denoising. IEEE Transactions on Image Processing 2008,17(12):2324-2333.View ArticleMathSciNetGoogle Scholar
- PixInsight Image Processing Software http://www.pixinsight.com/
- Noise Ninja http://www.picturecode.com
- Dfine http://www.niksoftware.com/
- Battiato S, Messina G, Castorina A: Exposure correction for imaging devices: an overview. In Single-Sensor Imaging, Methods and Applications for Digital Cameras, Image Processing Series. Edited by: Lukac R. CRC Press, Boca Raton, Fla, USA; 2008.Google Scholar
- Wallace GK: The JPEG still picture compression standard. Communications of the ACM 1991,34(4):30-44. 10.1145/103085.103089View ArticleGoogle Scholar
- ISO/IEC JTC1/SC29/WG11 N 2502 Final Draft of International Standard MPEG-4
- Battiato S, Mancuso M: Psychovisual and Statistical Optimization of Quantization Tables for DCT Compression Engines. European Patent No. EP 20010830738, 2003Google Scholar
- Battiato S, Mancuso M, Bosco A, Guarnera M: Psychovisual and statistical optimization of quantization tables for DCT compression engines. Proceedings of IEEE International Conference on Image Analysis and Processing (ICIAP '01), September 2001, Palermo, Italy 602-606.View ArticleGoogle Scholar
- Bosco A, Battiato S, Bruna A, Rizzo R: Noise reduction for CFA image Sensors exploiting HVS behaviour. Sensors 2009,9(3):1692-1713. 10.3390/s90301692View ArticleGoogle Scholar
- Coudoux F-X, Gazalet M, Corlay P: A DCT-domain postprocessor for color bleeding removal. Proceedings of the European Conference on Circuit Theory and Design, August-September 2005 1: 209-212.Google Scholar
- Independent JPEG Group http://www.ijg.org/
This article is published under license to BioMed Central Ltd. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.