Abstract
The key of image denoising algorithms is to preserve the details of the original image while denoising the noise in the image. The existing algorithms use the external information to better preserve the details of the image, but the use of external information needs the support of similar images or image patches. In this paper, an edge-aware image denoising algorithm is proposed to achieve the goal of preserving the details of original image while denoising and using only the characteristics of the noisy image. In general, image denoising algorithms use the noise prior to set parameters todenoise the noisy image. In this paper, it is found that the details of original image can be better preserved by combining the prior information of noise and the image edge features to set denoising parameters. The experimental results show that the proposed edge-aware image denoising algorithm can effectively improve the performance of block-matching and 3D filtering and patch group prior-based denoising algorithms and obtain higher peak signal-to-noise ratio and structural similarity values.
Introduction
Image quality is easy to decrease in the process of acquisition, transmission, and storage. Random error is called image noise. It is one of the reasons that distort the images. Image noise has hindered people’s access to image information. It not only affects human visual perception, but also has a great impact on the digital image processing technology, such as image saliency detection, image segmentation, image recognition, and so on. Therefore, image denoising is an important research topic in digital image processing, and it can be used as preprocessing in other image processing algorithms. Image denoising algorithm is to separate and remove the noise from the noisy image. Its goal is to make the denoising result as close as possible to the original image. That means the image information should be preserved to the maximum extent. In order to simplify the discussion, we assume that the cleaned image is distorted by Additive White Gaussian Noise, referred as AWGN, in this paper. AWGN is a very common type of noise. The relationship between the original image and the noisy image is as follows
As an important research topic, image denoising has attracted many researchers to study and explore. Many algorithms have been proposed. One of the most widely studied categories of denoising algorithms is using the standard deviation of noise as denoising parameter.1–6 We call the standard deviation of noise as noise level. However, the noise level of an image is unavailable in real-world situations. It is obvious that the denoising parameter setting affects the denoised result. Therefore, a variety of image noise level estimation algorithms have appeared with the progress of research on image denoising.
There is another popular category called image blind denoising.7,8 Image blind denoising can precede noisy images without using denoising parameter. These algorithms can avoid manual setting error and reduce labor consumption. However, it shows that if denoising algorithms use denoising parameter to denoise, they are more likely to achieve better results. Later, researchers often combine the image denoising algorithm and the image noise estimation algorithm9–11 to obtain the effect of blind denoising.
We observed that the noisy points in the image easily mix with the image information, such as the texture details, edge information, and so on. Because of this fact, the current denoising algorithms usually lose a lot of image information due to over smoothening ofthe image, especially when the noise level is high or the texture region is large. Based on this observation, in this paper, we propose an edge-aware image denoising algorithm (EAID).
In this paper, we assume that the noise level of the noisy image is known or can be obtained using the image noise estimation algorithm. However, we use different denoising parameter settings for different regions according to the edge of the image. EAID algorithm aims to remove the noise and preserve more image information.
The experimental results show that the proposed EAID algorithm can effectively improve the denoising effect of block-matching and 3D filtering (BM3D) algorithm 2 and patch group prior-based denoising (PGPD) algorithm. 4 Moreover, it can achieve higher peak signal-to-noise ratio (PSNR) and structural similarity (SSIM) 14 results.
The rest of the paper is organized as follows:“ Related work” section gives an overview of related works on image denoising; “The proposed algorithm” section describes the proposed EAID algorithm in detail; “Experiments and results” section reports the experimental results. There is a conclusion of our work in “Conclusion” section.
Related work
Researchers have proposed various denoising algorithms. Buades et al. 1 proposed a nonlocal mean denoising algorithm (NLM). It uses the redundant information of the image to denoise the image. It searches similar pixels for each pixel to be denoised. The final denoised result is obtained by weighted average of its similar pixels. Although NLM algorithm can get better denoised result, it also losses a lot of information of the original image. Dabov et al. 2 proposed a BM3D algorithm. The algorithm also takes advantage of the redundancy of images. BM3D is one of the state-of-the-art image denoising algorithms. We combine the BM3D algorithm and our edge-aware parameter setting strategy to denoise the noisy image, and so we give a brief description of BM3D algorithm in “The proposed algorithm” section.
The algorithms mentioned above use only the internal information of the original image to denoise. Different from them, some researchers found that using the external clean image or image region can better preserve the details of an image. Some researchers proposed a category of algorithms combining internal and external information. For example, the algorithm proposed by Mosseri et al. 3 is based on NLM. Different from NLM, it adopts two strategies when searching for similar image blocks. One strategy is to search within the noisy image. The other strategy is to search within the external image database. Then the algorithm combines the denoising results obtained by these two search strategies to get the final denoising result. However, this external algorithm is highly costly and needs the similar images or image regions in its external database. Xu et al. 4 used Gaussian mixture model learning algorithm to learn the nonlocal self-similarity prior knowledge from natural images. They proposed patch group-based nonlocal self-similarity prior learning for image denoising (PGPD). Yue et al. 5 use the graph-cut-based matching in external denoising. The algorithm first searches the external database for the correlated images of the same scene with different angle of view. It uses BM3D to replace the correlated images of the external database when the map cannot be found in external database image. This algorithm depends on the external database images which may not be applicable to real-world applications.
This paper proposed a novel image denoising algorithm combined with edge information. Different from the algorithms combining the internal and external information, the final denoising result is obtained by combining two denoising results with different parameter settings. The two denoising results are obtained by denoising the noisy image using different parameter settings, one is the known noisy level and the other is the tuned noisy level. The final result is obtained by combining the two denoising results according to the edge information.
The proposed algorithm
This section consists of two subsections. The first subsection uses a specific example to study and explain the denoising effects of using different denoising parameter settings. We found that different regions prefer the denoising results obtained using different denoising parameter settings. The second subsection introduces our algorithm using BM3D algorithm as an example in detail.
Denoising parameter settings
The denoising parameter setting affects the denoising performance. At present, most of the state-of-the-art denoising algorithms are not blind denoising. They need a priori information of noise intensity to denoise images. Generally speaking, they use noise level as denoising parameter.1–6 In view of the necessity of obtaining noise level, researchers have proposed many noise level estimation algorithms.9–11 Chen et al.9 proposed a noise level estimation algorithm which first computes the eigenvalues of the covariance matrix of patches of the input image and then computes the statistical relationship between the noise variance and the eigenvalues. The experimental results show that the root mean square error of the noise level predicted by the algorithm is 0.183 in the BSD500 12 when the standard deviation of noise is 50. Its results are very close to the true noise level. So when thenoise level is unavailable, it can be estimated by Chen et al.9
Figure 1 shows a specific example of the denoising results of BM3D with different denoising parameter settings. Figure 1(c) and (d) shows the results when BM3D using

(a) Original image; (b) noisy image; (c) denoising result 1; (d) denoising result 2.
The finding shown in Figure 1 is also validate for blind denoising algorithms. Since most current noise level estimation algorithms estimate the noise standard deviation
Based on the above findings, this paper uses different parameter settings to obtain the denoising results. The final denoising result is obtained by combining the denoising results with different denoising parameter settings based on the edge information.
Edge-aware image denoising algorithm
Most denoising algorithms use the same denoising parameter to denoise the whole image. As shown in Figure 1(d), we find that the image details can be better preserved when using
As shown in Figure 2, the proposed algorithm is based on the existing state-of-the-art algorithms (e.g. BM3D and PGPD). We use the denoising algorithm to denoise images with

Algorithm example diagram. (a) Original image; (b) noisy image (PNSR: 14.683 dB); (c) denoising result 1 (PSNR: 26.109 dB); (d) denoising result 2 (PSNR: 26.153 dB); (e) edge detection result; (f) expanded edge image; (g) E-BM3D result (PSNR: 26.248 dB); (h) E-PGPD result (PSNR: 26.242 dB).
BM3D is currently recognized as one of the best denoising algorithms. Since we combine the BM3D algorithm and our edge-aware parameter setting strategy to denoise the noisy image, we give a brief introduction on BM3D. BM3D is both a transform domain denoising algorithm and a spatial domain denoising algorithm. BM3D has two main steps. They are briefly described below.
The first step is to get a basic estimate of the noisy image. It first finds some groups (a collection of one block and its similar blocks is called a group). Then it aggregates all the elements of a group to obtain a three-dimensional array corresponding to the group. These arrays aim to enhance sparsity. Next, BM3D uses collaborative filtering to handle the arrays with three steps: three-dimensional transformation, transform spectral shrinkage, and three-dimensional inverse transform. After these three steps, the basic estimation of each image block is obtained and returned to their original position. It is worth noting that for overlapping image blocks, BM3D takes their weighted average.
The second step is to get the final denoising result based on the first step. The difference is that a block gets two corresponding groups. The first group is obtained from the noisy blocks by using the similarity of blocks. The second one consists of blocks of basic estimation which correspond to the elements of the first group. After the two groups undergo three-dimensional transform, Wiener filtering, and inverse transform, BM3D gets the final estimation. It puts each block back to its original position to get the denoising result.
The proposed algorithm calculates the edge detection result (e) for the denoising result 1 (c) using the Canny edge detection algorithm
13
after the noisy image was processed by BM3D. Canny edge detection computes the edge by first smoothing the image and then computing the derivative values. The brief introduction of this algorithm is introduced below. First, it uses the Gaussian filter to smooth the grayscale image. This is because some noise points can be mixed with the textures and edge information of an image, which is mentioned in “Introduction” section. Second, it calculates the gradient and direction of the image gradient.
After that, nonedge points are removed by nonmaximum suppression and threshold processing to detect the edge of the image.
After obtaining the edge detection result shown in Figure 2(e), an expanded edge result shown in Figure 2(f) is obtained by perform expansion operation using an expanded core of radius
The last step of our algorithm is using the expanded edge image shown in Figure 2(f) as a weight map to calculate the final denoising result, which is calculated as follows
Experiments and results
In this paper, we propose two methods, namely, E-PGPD and E-BM3D. These two methods are modified based on BM3D and PGPD. The source codes of BM3D and PGPD can be downloaded at the authors’ home pages. Twenty widely used natural images (shown in Figure 3) are taken as experimentally original images. We use a common experimental setting described in paper. 4 Additive white Gaussian noises with zero mean and a variety of standard deviations are added to the images to test the performance of different denoising algorithms.

Twenty commonly used test images.
Besides noise level
The parameter settings of E-BM3D.
The parameter settings of E-PGPD.
We evaluate the competing algorithms from three aspects: PSNR, SSIM,
14
and visual quality. In Table 3, we present the PSNR results of E-BM3D and BM3D algorithms on 10 noise levels
PSNR (dB) results of E-BM3D and BM3D when using different parameter settings on 20 natural images.
The best PSNR result on each
Table 3 also shows that across all the experimented noise levels, the proposed E-BM3D achieves better results than BM3D when using
In Table 4, we present the PSNR results of E-PGPD and PGPD algorithms on 10 noise levels
PSNR (dB) results of E-PGPD and PGPD when using different parameter settings on 20 natural images.
The best PSNR result on each
SSIM is another important index to evaluate an image denoising algorithm. Table 5 shows SSIM results of E-BM3D and BM3D algorithms on
SSIM results of E-BM3D and different denoising algorithms on 20 natural images.
The best SSIM result on each
SSIM results of E-PGPD and different denoising algorithms on 20 natural images.
The best SSIM result on each
Figures 4 and 5 are two examples of E-BM3D, E-PGPD, BM3D, and PGPD algorithms. As Figure 4 shows, the results of BM3D and PGPD lost some details so the visual qualities of denoised images are low. For example, our algorithms retain the details of the numbers better than the others. And our algorithms also make the textures of the curtain more clearly as shown in Figure 5. In terms of PSNR, E-BM3D gets higher PSNR than BM3D, and E-PGPD gets higher PSNR than PGPD. In order to show the effectiveness of our method more intuitively, we show the difference between the denoising results of various methods and the original image. We first calculate the difference images and multiply the difference images using the same multiplier. Then we get difference images shown in Figures 4(g) to (i) and 5(g) to (i). As shown in these difference images, the numbers and the curtains in the results of our algorithms are both closer to the original images than those in the results of the original algorithms.

Denoising results of different algorithms when

Denoising results of different algorithms when
Nowadays, most images are color images. In order to further show the effectiveness of the proposed algorithm, we experiment our algorithm with color images. As shown in Figure 6, our algorithm achieves a better denoising effect. Our algorithm also gets higher PSNR results.

Denoising results of different algorithms when
To summarize, we can conclude that E-BM3D and E-PGPD outperform BM3D and PGPG when using
Conclusion
In this paper, we found the relationship between the denoising parameter and the noise level by using different denoising parameter settings. Combining with the image edge information, this paper developed a novel image denoising algorithm. Different from internal and external algorithms, our algorithm does not require the support of external image databases. The experimental results show that the proposed algorithm can better preserve the edge information, especially for image regions with complex texture.
Footnotes
Acknowledgements
The authors would like to thank the editor and the reviewers for their insightful and constructive comments.
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work is partly supported by the National Natural Science Foundation of China under Grants No. 61672158 and No. 61300102 and the Fujian Natural Science Funds for Distinguished Young Scholar under Grant No. 2015J06014.
