Abstract
Noise reduction is a very important topic in image processing. In this paper, we present a novel method for reducing noise in an image corrupted by a mixture of Gaussian white noise and signal dependent noise. Our method can be built from any existing denoising methods. The main steps of our method can be described as follows: (a) reduce noise from the input noisy image, (b) take the logarithm of the denoised image, (c) reduce noise from the logarithm image, and (d) transform this noise-reduced logarithm image back to the original space. We conduct experiments for seven gray scale images and we find that our method is always better than the method that it was built up from in term of peak signal to noise ratio (PSNR). However, our method is comparable to total least square (TLS) method, which is specifically designed for reducing signal dependent noise. The PSNR’s of our method are sometimes higher and sometimes lower than those of the TLS method. Nevertheless, our method is much faster than the TLS method in CPU computation time.
Keywords
Introduction
In existing literature, the majority of denoising methods deals with Gaussian white noise, which can be modeled as:
Even though Gaussian white noise is well studied, there exist other kinds of noise in real-life images. For example, CMOS and CCD sensors are two special devices that suffer from noise. In CMOS sensors, there exists fixed pattern noise and a mixture of Gaussian white noise and multiplicative noise. We formulate this kind of noisy image A as:
In this paper, we propose a new method for reducing a mixture of Gaussian white noise and signal dependent noise. Our method is based on any existing denoising method DeNoise, which can be BivShrink [6], NL-Means [7], BM3D [8], etc. We perform the DeNoise to the noisy image, and take the logarithm transform of the denoised image, perform the DeNoise to the logarithm image again, and then conduct the exponent transform in order to obtain the final denoisied image. Our new method is very simple, but it always outperforms the standard BivShrink, NL-Means, BM3D, and PGBM3D [9] in term of peak signal to noise ratio (PSNR) in our experiments for the mixture noise model discussed in this paper. Our method is comparable to the TLS method, but it is much faster than the TLS method.
Reducing noise in an image is a common procedure in digital image processing, where the image may be corrupted during its acquisition or transmission. Image denoising plays a vital role in a number of applications such as image segmentation, image restoration, visual tracking, image registration, image classification, and so on. Even though there are many image denoising methods in the literature, there are not many denoising methods for a mixture of Gaussian white noise and signal dependent noise. To our best knowledge, methods [20–22] considered this kind of noise.
Even though there are many algorithms for suppressing additive Gaussian white noise in the literature, multiplicative noise, also called signal dependent noise, is difficult to deal with. As will be shown in the next section, existing denoising methods for additive Gaussian white noise perform poorly on multiplicative noise. One natural question is: Can we take the logarithm of the noisy image and convert the multiplicative noise to additive noise? The answer is positive and it is the main focus of this paper.
In this paper, we propose a novel method for image denoising. Our method deals with a mixture of Gaussian white noise and signal dependent noise. In our method, we first reduce Gaussian white noise from a noisy image, take the logarithm of the denoised image, perform denoising to the logarithm image, and then conduct exponent transform in order to obtain the final denoised image. We need to estimate noise standard deviation σ
n
as [23]:
In order to achieve better denoising results, we can choose any image denoising methods published in the literature. For example, we can select the BivShrink, NL-Means, BM3D, PGBM3D, our methods [10–15], global denoising [16], or correlation-based method [17] to reduce noise in our proposed method. There exists difference in BM3D/PGBM3D and other image denoising methods. The BM3D/PGBM3D scales the denoised image pixels to the range of [0,1] whereas other denoising methods do not have such restriction. Because of this difference, we propose two algorithms for image denoising in this paper: one for BM3D/PGBM3D and the other one for other denoising methods.
We list the steps of our first denoising method with DeNoise (=BM3D/PGBM3D) as follows:
We list the steps of our second denoising method with DeNoise (=Bivshrink/NL-Means/Methods [10–15]/Methods [16, 17]) as follows:
Since Algorithms I and II can be built from any existing denoising methods, they should be able to produce high quality denoising images. In our experiments, we selected to use the BM3D for Algorithm I and the denoising results are shown in Tables 1–7. Our method is comparable to the standard BM3D for Gaussian white noise and it performs the best among all denoising methods compared in this paper except the TLS method for signal dependent noise. Our method is comparable to the TLS method in PSNR for signal dependent noise, but it is much faster than the TLS method. Since the global denoising method [16] and correlation-based method [17] are better than BM3D for image denoising, they can be used in Algorithm II in order to achieve better denoising results. If the authors of [16] and [17] publish their code, we will definitely use their code to test our Algorithm II for image denoising.
The major contribution of this paper is the following. We have built two denoising algorithms by taking advantage of existing state-of-the-art image denoising methods for a mixture of Gaussian white noise and signal dependent noise. Our method utilizes the logarithm transform to convert multiplicative noise to additive noise so that existing denoising methods for additive noise can be applied. Experimental results show that our proposed method is similar to the BM3D method for Gaussian white noise, and it is better than the BivShink, the standard BM3D, and the PGBM3D for signal dependent noise for all cases in our experiments. The TLS method performs better than our proposed method for some test cases. However, the TLS method is extremely slow, which makes it less useful for big images. As a result, we suggest using our proposed method in this paper for image denoising.
The PSNR of different denoising methods for image Barbara (512×512). The best results are highlighted in bold font
The PSNR of different denoising methods for image Boat (512×512). The best results are highlighted in bold font
The PSNR of different denoising methods for image Cameraman (256×256). The best results are highlighted in bold font
The PSNR of different denoising methods for image Fingerprint (512×512). The best results are highlighted in bold font
The PSNR of different denoising methods for image House (256×256). The best results are highlighted in bold font
The PSNR of different denoising methods for image Lena (512×512). The best results are highlighted in bold font
The PSNR of different denoising methods for image Peppers (256×256). The best results are highlighted in bold font
The major limitation of our proposed method is that it is slower than the standard BM3D, but it calls the BM3D for at most two times. We are sacrificing some computation time in exchange for better image quality.
We performed experiments to show the ability of our proposed method for image denoising. We tested seven gray-scale images: Barbara, Boat, Cameraman, Fingerprint, House, Lena, and Pepper (see Fig. 1). These images were frequently tested for image denoising in the literature. We compared our method with the BivShrink, the BM3D, the NL-Means, the PGBM3D, and the TLS method. We tested a mixture of Gaussian white noise and signal-dependent noise in our experiments. For Gaussian white noise, we test σ
n
= 20, 40, 60, 80, and 100. For signal dependent noise, we test the following cases: (k0, k1) = (10, 0. 1), (10, 0. 3), (10, 0. 5), (10, 0. 7), and (10, 0. 9). Tables 1–7 show the peak signal to noise ratio (PSNR) of the BivShrink, the BM3D, the NL-Means, the PGBM3D, the TLS, and our proposed method for the above-mentioned seven images, respectively. The PSNR is defined as

The seven images used in our experiments.
where M and N are the row and column numbers of the image, and A and B are the noise-free and denoised images, respectively. In Table 1, both our method and the standard BM3D generate the highest PSNR for σ n = 20, 40, 60, 80, 100, and (k0, k1) = (10, 0.1). Our method outperforms the TLS for (k0, k1) = (10, 0.3) and they generate identical PSNR for (k0, k1) = (10, 0.5). The TLS is better than our method for (k0, k1) = (10, 0.7) and (10, 0.9). In Table 2, both our method and the standard BM3D generate the highest PSNR for σ n = 20, 40, 60, 80, 100, and (k0, k1) = (10, 0.1). The TLS is better than our method for (k0, k1) = (10, 0.3) and (10, 0.5). The TLS is not as good as our method for (k0, k1) = (10, 0.7) and (10, 0.9). In Table 3, our method generates the highest PSNR for σ n = 20, 40, 60, 80, 100, and (k0, k1) = (10, 0.1). The TLS method yields the highest PSNR for (k0, k1) = (10, 0.3), (10, 0.5), (10, 0.7) and (10, 0.9). In Table 4, both our method and BM3D generate the highest PSNR for σ n = 20, 40, 60, 80, and 100. The TLS method yields the highest PSNR for (k0, k1) = (10, 0.1), and our method produces the highest PSNR for (k0, k1) = (10, 0.3), (10, 0.5), (10, 0.7), and (10, 0.9). In Table 5, both our method and the standard BM3D generate the highest PSNR for σ n = 20, 40, 60, 80, 100, and (k0, k1) = (10, 0.1). The TLS is better than our method for (k0, k1) = (10, 0.3). The TLS is not as good as our method for (k0, k1) = (10, 0.5), (10, 0.7) and (10, 0.9). In Tables 6 and 7, our method is always better than the BM3D and TLS for images Lena and Pepper. For example, in the last columns of Tables 6 and 7, our method outperforms NL-Means, Bivshrink, BM3D, PGBM3D, and TLS for all test cases and for both Gaussian white noise and signal dependent noise. Our method sometimes achieves 1.0 dB higher PSNR than the TLS method in Table 7. For signal dependent noise, our method is comparable to the TLS method and it is better than all other methods compared in this paper. The PSNR improvement of our proposed method over standard BM3D sometimes can reach 5 dB. This indicates that our proposed denoising method in this paper is a good choice for noise reduction of images. In Tables 1–7, the TLS method is always inferior to BM3D and our method for reducing Gaussian white noise. Since in reality we do not know the types of noise in a noisy image, it is preferable to use our method to reduce noise.
Figures 2–8 show the original noise-free image, the noisy image, and the images generated by BivShrink, NL-Means, BM3D, PGBM3D, TLS, and our proposed method for (k0, k1) = (10, 0.5) for images Barbara, Boat, Cameraman, Fingerprint, House, Lena and Peppers, respectively. It can be seen that our proposed method reduces signal dependent noise very effectively and it is much better than the standard BM3D, BivShrink, NL-Means, and PGBM3D in term of visual quality in the denoised images. Our method is comparable to the TLS in PSNR, but our method is much faster than the TLS for reducing noise.

The noise-free image, the noisy image (PSNR = 10.75), the denoised images by BivShrink (PSNR = 16.59), NL-Means (PSNR = 20.78), BM3D (PSNR = 21.35), PGBM3D (PSNR = 16.67), TLS (PSNR =

The noise-free image, the noisy image (PSNR = 10.23), the denoised images by BivShrink (PSNR = 21.47), NL-Means (PSNR = 19.67), BM3D (PSNR = 23.63), PGBM3D (PSNR = 17.00), TLS (PSNR =

The noise-free image, the noisy image (PSNR = 10.49), the denoised images by BivShrink (PSNR = 19.81), NL-Means (PSNR = 18.49), BM3D (PSNR = 19.81), PGBM3D (PSNR = 16.66), TLS (PSNR =

The noise-free image, the noisy image (PSNR = 9.54), the denoised images by BivShrink (PSNR = 17.99), NL-Means (PSNR = 18.45), BM3D (PSNR = 21.44), PGBM3D (PSNR = 15.63), TLS (PSNR = 21.48), and the proposed method (PSNR =

The noise-free image, the noisy image (PSNR = 9.80), the denoised images by BivShrink (PSNR = 21.24), NL-Means (PSNR = 19.39), BM3D (PSNR = 23.97), PGBM3D (PSNR = 17.15), TLS (PSNR = 26.07), and the proposed method (PSNR =

The noise-free image, the noisy image (PSNR = 10.52), the denoised images by BivShrink (PSNR = 18.22), NL-Means (PSNR = 22.39), BM3D (PSNR = 23.43), PGBM3D (PSNR = 17.34), TLS (PSNR = 27.05), and the proposed method (PSNR =

The noise-free image, the noisy image (PSNR = 10.44), the denoised images by BivShrink (PSNR = 20.01), NL-Means (PSNR = 17.77), BM3D (PSNR = 21.62), PGBM3D (PSNR = 16.67), TLS (PSNR = 24.00), and the proposed method (PSNR =
Table 8 lists the CPU time to denoise one image of size 512×512 for the BivShink, the standard BM3D, the PGBM3D, the NL-Means, the TLS, and our proposed method in this paper. We use a HP Notebook with a 1.40 GHz CPU and 4 GB Random Access Memory (RAM) to perform the denoising tasks. Our algorithms are implemented in Matlab and they are not optimized for speed. Therefore, our algorithms are a bit slow. In Table 8, the TLS method is very slow when compared with other denoising methods. Our proposed method is a bit slower than the standard BM3D, but it is much faster than the TLS method. In addition, our proposed method produces comparable and sometimes even better denoising results than the TLS method in term of PSNR among all denoising methods compared in this paper.
The execution time in seconds of different denoising methods for image Barbara (512×512)
Reducing noise in digital images corrupted with additive, multiplicative, and a mixture of them is a very important topic in image processing. In this paper, we have proposed a novel method for reducing the signal dependent noise in the noisy images. Our method consists of the following steps: (a) reduce noise from the input noisy image, (b) take the logarithm of the denoised image, (c) reduce noise from the logarithm image, and (d) transform this noise-reduced logarithm image back to the original space. Our new denoising method in this paper works well for both the Gaussian white noise and signal-dependent noise. Furthermore, it outperforms the standard BivShrink, NL-Means, BM3D, PGBM3D, and TLS for signal dependent noise for most of our test cases. It achieves similar and sometimes better results than the BM3D for Gaussian white noise.
Footnotes
Acknowledgments
The authors would like to thank the Associate Editor and the anonymous reviewer whose constructive suggestions and comments have improved the quality of this paper. The authors would also thank the authors of [6–9,
] for posting their denoising software on their websites.
