^{1}

^{1}

^{1}

^{1}

SGK (sequential generalization of

In the image acquisition and transmission, noise is inevitably carried, which will reduce image quality, so image denoising has a very important significance. Image denoising algorithms can be divided into space domain denoising and frequency domain denoising. The former includes the mean filtering, median filtering, and Wiener filtering. The latter includes Fourier transform [

In recent years, there are some novel denoising algorithms such as nonlocal mean [

At present, many image denoising algorithms need to foreknow the noise standard deviation [

Based on the above considerations, a denoising algorithm combined with SGK dictionary learning and PCA noise estimation is proposed. Firstly, the image with additive Gaussian white noise is segmented, and the noise level is estimated by calculating the minimum eigenvalue of the image patch covariance matrix. Then the estimated noise standard deviation is entered into SGK dictionary learning algorithm to denoise the image. During the denoising process, each image patch is sparse and the sparse representation coefficient is calculated by pursuit algorithm. The dictionary atom is updated with the sparse representation coefficient; therefore a more accurate approximation of the image patch is obtained. The experimental results show that the proposed algorithm is superior to other algorithms in noise level estimation and has better denoising performance.

SGK dictionary learning algorithm is a generalization of the

SGK algorithm denoising flow chart.

For an image

Assume that the dictionary

For any patch in the image,

Therefore the global image representation is shown as

For the solution of (

In the dictionary update stage, updating each image’s atoms sequentially can minimize sparse representation error, which is denoted as

In (

All these

And

The closed-form solution of (

It replaces all atoms with

The final solution of the sparse representation error minimization problem is

Suppose that

Suppose that

In order to apply PCA to noise variance estimation, it defines positive integer

And it is held for all

which represents the fact that

If the above assumptions hold, the expected values of

The condition of (

For the estimation of noise variance

Figure

Noise estimation based on principal component analysis.

House image

Noise level estimation results

The standard Kodak Photo CD benchmark was used to evaluate the performance of denoising algorithm. The size of some images is

We conduct experiments for image denoising by using SGK, DCT, Global, K-SVD dictionary learning algorithms, and BM3D algorithms. The similarity of the first four algorithms is to build a dictionary and then use the dictionary to denoise. DCT algorithm denoises an image by sparsely representing each block with the overcomplete DCT dictionary, thus averaging the represented parts [

Throughout this experiment, we use SGK, DCT, Global, K-SVD, and BM3D algorithms to denoise the Barbara image with

Image denoising results of five dictionary learning algorithms.

Algorithms | Time/s | PSNR/dB | MSE |
---|---|---|---|

SGK | 17.378 | 32.077 | 77.470 |

DCT | 83.884 | 31.079 | 113.873 |

Global | 100.479 | 31.734 | 89.435 |

K-SVD | 284.181 | 32.171 | 72.383 |

BM3D | 12.256 | 30.717 | 119.478 |

Using five kinds of dictionary learning algorithm for image denoising.

Original Barbara image

SGK denoised image

DCT denoised image

Global denoised image

K-SVD denoised image

BM3D denoised image

In order to analyze the sensitivity of SGK algorithm to the noise level, the noise standard deviation is set as

Figure

SGK denoising performance with different noise offset.

In order to analyze the performances of SGK dictionary denoising combined with different noise estimation algorithms, this paper also introduces four noise estimation algorithms: Kurtosis [

Kurtosis assumes that the corresponding distribution of the kurtosis edge bandpass filter should be a constant for the noise-free images. However, the kurtosis at the entire scale of a noisy image may vary. Under this assumption, the noise standard deviation can be estimated by the kurtosis model.

Mode can divide image and the noise standard deviation is estimated according to the distribution pattern of the image’s local standard deviation. As the variance of noise is constant throughout the picture, it will affect every local variance value equally. As a result, the maximum of the bell-shaped distribution will reflect the local variance of the degraded image within homogeneous areas. This value is the mode of the distribution, and it is very close to the mode, so we can use the mode to estimate it.

Med estimates noise standard deviation based on the median of the image’s local standard deviation. If practical difficulties to properly estimate the mode arise, it may be useful to use the median operator instead, due to its greater simplicity and the fact that both parameters, albeit different, are not far apart in practice. So an alternative estimation procedure can be done.

Min estimates the noise standard deviation based on the minimum value of the local standard deviation of the images. Within a uniform area, the variance of the degraded image equals the variance of noise. According to the previous statement, one straightforward way to estimate standard deviation is to calculate the variance within homogeneous regions, where the variance of the original image is close to zero.

The above noise estimation algorithms are all combined with the SGK dictionary learning algorithm in this paper. Now we combine the five noise estimation algorithms mentioned above with SGK, respectively. The combined algorithms are referred to as PCA + SGK, Kurtosis + SGK, Mode + SGK, Med + SGK, and Min + SGK. Figure

Comparison of five kinds of algorithms.

Original Lena image

PCA + SGK

Kurtosis + SGK

Mode + SGK

Med + SGK

Min + SGK

In order to analyze the denoising performance of five algorithms quantitatively, additive Gaussian white noise images with

Denoising indicators on SGK combined with five noise estimation algorithms.

| Algorithms | | | | Time/s | PSNR/dB | MSE |
---|---|---|---|---|---|---|---|

PCA + SGK | | + | | 1.799 | | | |

Kurtosis + SGK | 2.841 | +0.841 | 0.841 | 4.699 | 43.378 | 2.987 | |

Mode + SGK | 2.768 | +0.768 | 0.768 | 0.070 | 43.222 | 3.010 | |

Med + SGK | 4.063 | +2.063 | 2.063 | 0.051 | 41.811 | 4.286 | |

Min + SGK | 0.496 | −1.504 | 1.504 | | 42.119 | 3.993 | |

| |||||||

| PCA + SGK | | + | | 1.829 | | |

Kurtosis + SGK | 5.166 | +0.166 | 0.166 | 5.865 | 38.302 | 9.614 | |

Mode + SGK | 4.480 | −0.520 | 0.520 | 0.091 | 38.139 | 9.981 | |

Med + SGK | 6.194 | +1.194 | 1.194 | 0.047 | 38.251 | 9.727 | |

Min + SGK | 0.674 | −4.326 | 4.326 | | 34.175 | 24.865 | |

| |||||||

| PCA + SGK | | + | | 1.604 | | |

Kurtosis + SGK | 9.576 | +0.424 | 0.424 | 4.848 | 34.795 | 21.559 | |

Mode + SGK | 8.809 | +1.191 | 1.191 | 0.090 | 34.074 | 25.447 | |

Med + SGK | 10.463 | +0.463 | 0.463 | 0.051 | 35.149 | 19.869 | |

Min + SGK | 1.640 | −18.360 | 18.360 | | 28.244 | 97.417 | |

| |||||||

| PCA + SGK | | + | | 1.995 | | |

Kurtosis + SGK | 14.196 | +0.804 | 0.804 | 5.208 | 33.899 | 30.760 | |

Mode + SGK | 12.494 | +2.506 | 2.506 | 0.084 | 31.381 | 47.311 | |

Med + SGK | 14.838 | −0.162 | 0.162 | 0.082 | 33.221 | 30.971 | |

Min + SGK | 1.807 | −13.193 | 13.193 | | 28.274 | 96.766 | |

| |||||||

| PCA + SGK | | + | | 1.618 | | |

Kurtosis + SGK | 18.943 | −1.057 | 1.057 | 4.818 | 31.574 | 45.256 | |

Mode + SGK | 17.038 | −2.963 | 2.963 | 0.094 | 30.186 | 62.300 | |

Med + SGK | 19.319 | −0.681 | 0.681 | 0.055 | 31.777 | 43.193 | |

Min + SGK | 1.877 | −18.123 | 18.123 | | 22.152 | 396.153 | |

| |||||||

| PCA+SGK | | − | | 1.393 | | |

Kurtosis + SGK | 28.480 | −1.520 | 1.520 | 5.126 | 29.724 | 69.292 | |

Mode + SGK | 23.356 | −6.644 | 6.644 | 0.084 | 29.044 | 161.709 | |

Med + SGK | 28.199 | −1.801 | 1.801 | 0.054 | 29.614 | 71.074 | |

Min + SGK | 3.292 | −26.708 | 26.708 | | 18.675 | 882.180 | |

| |||||||

| PCA + SGK | | − | | 1.865 | | |

Kurtosis + SGK | 38.238 | −1.762 | 1.762 | 5.134 | 28.305 | 96.062 | |

Mode + SGK | 33.463 | −6.537 | 6.537 | 0.087 | 25.813 | 170.526 | |

Med + SGK | 37.068 | −2.932 | 2.932 | 0.053 | 27.910 | 105.212 | |

Min + SGK | 5.385 | −34.615 | 34.615 | | 16.222 | 1152.049 |

Figure

Variation of denoising performance with noise standard deviation on five algorithms.

Variation of noise estimation absolute

Variation of noise estimation time

Variation of PSNR

Variation of MSE

The above experiments presumably assumed that the standard deviation of the noise contained in the image is known. In order to demonstrate the advantage of the proposed PCA + SGK algorithm, it is used to denoise the noisy image with unknown standard deviation and compare it with the original SGK algorithm. Twelve classic original images are shown in Figure

Twelve classic images.

Comparison of two denoising algorithms on the Cameraman image.

Noisy Cameraman image

SGK denoised image

PCA + SGK denoised image

The denoising results of 12 images are shown in Table

Denoising results of two algorithms for 12 images.

Image | Guessed noise value | PSNR of SGK | PCA estimated value | PSNR of PCA + SGK |
---|---|---|---|---|

Barbara | 12.15 | 31.5826 | 3.25 | 40.8875 |

Boat | 20.02 | 31.0877 | 4.96 | 36.9938 |

Bridge | 29.78 | 24.7522 | 8.67 | 32.1713 |

Cameraman | 35.11 | 27.5935 | 10.22 | 33.7171 |

Couple | 30.45 | 26.1943 | 12.30 | 32.2721 |

Fingerprint | 20.10 | 28.0063 | 15.06 | 29.7811 |

Flintstones | 4.98 | 23.4492 | 19.10 | 29.0998 |

Hill | 5.23 | 22.5119 | 20.21 | 29.9451 |

House | 10.00 | 22.8280 | 22.58 | 32.4558 |

Lena | 15.15 | 23.7830 | 24.34 | 30.8314 |

Man | 15.50 | 21.8376 | 28.04 | 28.3323 |

Peppers | 18.24 | 22.4973 | 30.38 | 28.7696 |

In this paper, the algorithm of PCA noise estimation combined with SGK dictionary learning was proposed to denoise image. The noisy image is first divided into patches, and the noise standard deviation is estimated by calculating the minimum eigenvalue of the image patch covariance matrix. After that, the estimated noise standard deviation is entered into SGK dictionary learning algorithm. The sparse representation of each training sample is obtained by sparse coding, and the dictionary atoms are updated by dictionary updating to denoise the image. This algorithm effectively solves the problem that the SGK algorithm requires a prior noise standard deviation for image denoising. This paper has the following three conclusions.

Firstly, the SGK dictionary learning algorithm is compared with K-SVD, DCT, Global, and BM3D algorithms. The PSNR of SGK algorithm and those of the other four algorithms do not have much difference, and the MSE of SGK algorithm is only higher than K-SVD algorithm. SGK algorithm owns great advantage in denoising time, which is much faster than K-SVD, DCT, and Global algorithms. Therefore, the SGK algorithm has the best denoising performance.

Secondly, the PCA algorithm is compared with the other four noise estimation algorithms: Kurtosis, Mode, Mad, and Min. The five algorithms are, respectively, combined with the SGK algorithm to denoise the additive Gaussian white noise images with different standard deviation. The absolute deviation of the noise estimated by PCA + SGK is the smallest, and it is better than the other four algorithms; that is, the noise standard deviation estimation of this algorithm is the most accurate. For the noise estimation time, Min + SGK, Med + SGK, and Mode + SGK all have a faster estimation and then it is PCA + SGK algorithm proposed in this paper and Kurtosis + SGK is the slowest. On the other hand, PCA + SGK and Kurtosis + SGK keep the high PSNR, followed by Med + SGK and Mode + SGK. The lowest PSNR is that of Min + SGK. At the same time, the MSE value of PCA + SGK is the lowest. So the denoising performance of proposed algorithm is better than the other four algorithms. It is found that the proposed algorithm is more accurate to estimate the noise standard deviation with faster denoising speed and good denoising performance.

Thirdly, PCA + SGK and SGK are, respectively, used to denoise the image with different standard deviation. Experiments show that PSNR of PCA + SGK is much higher than that of SGK. When using SGK for denoising, the noise standard is unclear, so the denoising performance is not good, while PCA + SGK firstly uses the PCA to estimate the noise standard deviation, which is close to the true value of the noise level, so the denoising performance is more ideal and the image’s details are better preserved. While performance improvement is different for different images, the results nonetheless indicate the potential of proposed algorithm over original SGK algorithms.

The authors declare that there are no conflicts of interest.

This work was supported by the Natural Science Foundation of Hebei Province (no. E2016202341) and Humanity and Social Science Foundation of Ministry of Education of China (15YJA630108).