Keywords

1 Introduction

Image denoising is an important technique for remote sensing images, which are easily contaminated by noise when acquired from satellites via remote sensor. The noise not only deteriorates the visual quality of remote sensing images, but also and more important, causes the performance drop of image processing algorithms, e.g., segmentation and object recognition, which limits the application of remote sensing images. In order to remove the noise, numerous image denoising algorithms [1,2,3,4,5,6,7,8] are proposed based on different image prior models and achieve significant improvement on image quality in the last thirty years. The Wiener filter is the optimal filter in the sense of the mean square errors (MSE), which is derived by minimizing the MSE between the estimated image and desired noise-free image. However, the Wiener filter assumes that the signal is stationary and known, which cannot be satisfied for noisy images in practice.

In recent years, many modifications on Wiener filters are proposed to improve denoising performance and make it applicable to practical noisy images. The adaptive Wiener filter is proposed in [3], which derives the filter parameters for every pixel by calculating the corresponding signal variance in a sliding window centered at the target pixels. In [4], Jin et al. further improve it by combining two adaptive Wiener filters in both spatial domain and wavelet domain. Considering the different characteristics of images, Zhou and Cheng [5] improve the wavelet domain Wiener filter by determining an optimal threshold and neighboring window size for every wavelet subband. Considering the image nonlocal similarity, the famous nonlocal means filter [6] estimated the latent noise-free pixel by a weighted average of its surrounding pixels, where the weights are based on the distances of the patch intensities between the target patch and the reference patches. In [7], Lin et al. applied the nonlocal means filter to the noisy images first to generate an initial estimation of the original image, and then derived the wavelet domain Winer filter with the initial estimation to remove noise by shrinking wavelet coefficients. In [8], Mohamed and Hardie proposed a novel multi-patch adaptive Wiener filter algorithm for image restoration, which uses a single-pass spatial-domain weighted sum of all pixels within all of the similar patches to form the estimate each desired pixel. The multi-patch based methods are very useful in denoising problem and also utilized in [9, 10].

In this paper, we propose an iterative adaptive Wiener filter (IAWF) to reduce noise for remote sensing images. The proposed IAWF can also be regarded as a multi-patch collaborative filter, which derives a specific Wiener filter for each group of similar image patches. For a noisy image, an initial estimation is first generated by applying a low-pass filter. Then, the initial estimated image is divided into different patches, and similar patches in a neighborhood are clustered into one group. For each group, the optimal Winer filter is derived based on the statistical characteristic of the similar patches in the initial estimation and the noise variance. Since these image patches are overlapping, the filtered image is reconstructed by averaging all the samples from different patches corresponding to same position. This procedure is performed iteratively by taking the previous output image as the latent original signals to calculate the signal covariance matrix and updating the noise level based on the difference between the noisy image and the output image from previous iteration. Along with the noise reduction, the derived Wiener filters approach the optimal ones and achieve significant performance improvement compared with other denoising methods. Experimental results on remote sensing images show that the proposed methods can obviously improve their subjective and objective quality.

The remainder of this paper is organized as follows. In Sect. 2, we first formulate the denoising problem and the optimal Winer filter. Section 3 introduces the framework of the proposed iterative adaptive Wiener filter and the details of the proposed algorithm. Experimental results are reported in Sects. 4 and 5 concludes the paper.

2 Denoising with Winer Filter

For an image \( {\mathbf{\mathcal{I}}}_{x} \), the corresponding noisy image contaminated by additive noise with identical independent distribution can be formulated as

$$ \varvec{y} = \varvec{x} + \varvec{n} \,. $$
(1)

Here x, y and n are original image, noisy image and noise, which are organized into vector form. The Wiener filter, f, is the optimal linear estimator by minimizing the mean square errors between original image and filtered image,

$$ \varvec{f} = \mathop {\hbox{min} }\limits_{\varvec{f}} \left\| {\varvec{x} - \varvec{fy}} \right\|_{2}^{2} . $$
(2)

Then the optimization problem can be solved as

$$ \varvec{f} = \varvec{R}_{\varvec{x}} \left( {\varvec{R}_{\varvec{x}} +\varvec{\sigma}_{\varvec{n}}^{\mathbf{2}} \varvec{I}} \right)^{ - 1} , $$
(3)

where \( \sigma_{\varvec{n}}^{\mathbf{2}} \) is the noise variance, I is an unit matrix and R x is the covariance matrix of the original signals, which is a real symmetric matrix. The eigen-expansion of R x is given by

$$ \varvec{R}_{\varvec{x}} = E\left[ {\varvec{xx}^{\varvec{T}} } \right] = \varvec{U\varLambda U}^{T} = \mathop \sum \limits_{k = 1}^{N} \lambda_{k} \varvec{u}_{k} \varvec{u}_{k}^{T} \,, $$
(4)

where \( \lambda_{k} \) is the eigenvalue of R x , u k is the corresponding eigenvector, N is the number of eigenvalues of R x , and \( \varvec{U} = [\varvec{u}_{1} ,\varvec{u}_{2} , \ldots ,\varvec{u}_{N} ] \) and \( {\varvec{\Lambda}} = diag[\lambda_{1} ,\lambda_{2} , \ldots ,\lambda_{N} ] \). Then, the Wiener filter in Eq. (3) can be rewritten as

$$ \varvec{f} = \varvec{U}\widetilde{\varvec{\varLambda}}\varvec{U}^{T} = \mathop \sum \limits_{k = 1}^{N} \frac{{\lambda_{k} }}{{\lambda_{k} + \sigma_{\varvec{n}}^{2} }}\varvec{u}_{k} \varvec{u}_{k}^{T} , $$
(5)

and

$$ \widetilde{\varvec{\varLambda}} = diag\left[ {\frac{{\lambda_{1} }}{{\lambda_{1} + \sigma_{{\mathbf{n}}}^{2} }},\frac{{\lambda_{2} }}{{\lambda_{2} + \sigma_{{\mathbf{n}}}^{2} }}, \ldots ,\frac{{\lambda_{\text{N}} }}{{\lambda_{\text{N}} + \sigma_{{\mathbf{n}}}^{2} }}} \right]. $$
(6)

Since U is actually the Karhunen-Loeve Transform (KLT) matrix, the Wiener filter in Eq. (5) is equivalent to applying, applies the soft-thresholding operation to KLT coefficients. This kind of filters is widely used image sparsity based denoising methods [11,12,13], which first transform the image from spatial domain to sparse domains, e.g., wavelet domain, and threshold the sparse signals to reduce noise. The KLT is the optimal transform for signal decorrelation to get its sparse representation. However, since it is a signal-dependent transform constructed with the eigenvectors of the original signal covariance, it is difficult to be applied to image denoising problem without original signals.

3 The Proposed Iterative Adaptive Wiener Filter

In this paper, we propose a novel iterative adaptive Wiener filter for remote sensing image denoising problem. Figure 1 shows the framework of the proposed method. The noisy image is first filtered with a low-pass filter to get an initial estimation for the original image, and then the initial estimated image is further divided into many groups with similar patches. Specifically, for each patch, the K most similar patches are acquired by searching in a local area surrounding it according to Euclidean distance of the image patch vectors,

Fig. 1
figure 1

The framework of the proposed iterative adaptive Wiener filter

$$ \varvec{d}_{ij} = \left\| {\hat{\varvec{x}}_{i}^{\left( 0 \right)} - \hat{\varvec{x}}\,_{j}^{\left( 0 \right)} } \right\|_{2}^{2} . $$
(7)

where \( \hat{\varvec{x}}_{i}^{\left( 0 \right)} \) is the ith image patch in the initial estimation image. For image patch group, \( \varvec{G}_{ij} = \left\{ {\hat{\varvec{x}}_{ij}^{\left( 0 \right)} |j = 1,2, \ldots ,K} \right\} \), the covariance matrix R x is estimated with Eq. (8) from these image patch vectors assuming they follows the same distribution.

$$ \widehat{\varvec{R}}_{\varvec{x}} = \frac{1}{K}\mathop \sum \limits_{j = 1}^{K} \hat{\varvec{x}}_{ij}^{\left( 0 \right)} \left[ {\hat{\varvec{x}}_{ij}^{\left( 0 \right)} } \right]^{T} - \varvec{\mu \mu }^{T} , $$
(8)

and

$$ \varvec{\mu}= \frac{1}{K}\mathop \sum \limits_{j = 1}^{K} \hat{\varvec{x}}_{ij}^{\left( 0 \right)} . $$
(9)

The noise variance of \( {\mathbf{\mathcal{I}}}_{y} \) is estimated using the robust median estimator in wavelet domain as proposed by Donoho in [11], which is calculated as

$$ \hat{\sigma }_{n} = median(\left| \varvec{c} \right|)/0.6745, $$
(10)

where c is the coefficient vector of the diagonal band of 2D wavelet in the first level. Based on the derived covariance matrix and noise level, the near-optimal Wiener filter for each similar patch group can be derived with Eqs. (4), (5) and (8). Then, the derived filters are applied to the corresponding image patches to reduce their noise. Finally, the image in the kth iteration is reconstructed by averaging the multiple estimates for each pixel,

$$ \hat{\varvec{x}}^{\left( k \right)} \left( {i,j} \right) = \frac{1}{{\left| {\varOmega_{ij} } \right|}}\mathop \sum \limits_{{t \in \varOmega_{ij} }} \hat{\varvec{x}}_{t}^{\left( k \right)} (i',j'), $$
(11)

where \( \varOmega_{ij} \) is the set composed of image patches that include the image pixel \( \hat{\varvec{x}}^{\left( k \right)} \left( {i,j} \right) \). Coordinates \( \left( {i,j} \right) \) and \( (i^{{\prime }} ,j^{{\prime }} ) \) indicate the same sample under the whole image and the image patch coordinate systems, respectively.

Since the initial estimation is not accurate, most of noise cannot be removed by the Wiener filters in the first iteration cannot reduce most of noise. Therefore, we perform the above procedure iteratively, and take the output of previous iteration as the estimation of original signal in current iteration. The noise level need be updated with the following equation,

$$ \sigma_{\varvec{n}}^{\left( k \right)} = s\sqrt {\left[ {\sigma_{\varvec{n}}^{\left( 0 \right)} } \right]^{2} - var\left( {\hat{\varvec{x}}^{{\left( {k - 1} \right)}} - \hat{\varvec{x}}^{\left( 0 \right)} } \right)} , $$
(12)

where \( var\left( \cdot \right) \) is the function to calculate the variance of vectors, and s is a scale factor.

4 Experimental Results

In this section, we carry out the proposed IAWF on noisy remote sensing images to verify its performance by comparing with other methods. The compared methods include adaptive Wiener filter (AWF) [14], OptNeighShrink method [5], BLS-GSM [15] and nonlocal means filter (NLM) [6]. We randomly download 15 remote sensing images captured by LandSat-7, from website of United States Geological Survey.Footnote 1 These images are captured by LAND SAT 7 ETM+ with spatial resolution 30 m. Gaussian noise is added to the images artificially, to verify the performance of the proposed method. Since the noise level is an important parameter for different denoising methods and is unknown in practice, we estimate it with the method in [11]. In the proposed method, we apply the AWF to the noisy images to generate the initial estimation, and set its parameter as \( \sigma_{\varvec{n}} /20 \) to avoid oversmoothing the image. The proposed algorithm is terminated when the mean absolution difference (MAD) of images between two iterations is smaller than 1.0, and the number of similar patches in one group is 50. The scale factor in Eq. (12) is 0.3.

The experimental results are measure by the Peak Signal-to-Noise ratio (PSNR) in decibels (dB), i.e.,

$$ PSNR = 10*\log_{10} \frac{{255^{2} }}{MSE}, $$
(13)

where MSE is the mean square error between the original signal and the distorted signal. The denoised image with high quality is closer to the original one when PSNR is higher. Table 1 shows the PSNR results on 15 remote sensing images contaminated by Gaussian noise with different noise levels. From the PSNR results, we can see that the proposed method can efficiently improve the quality of noisy remote sensing images. Our method achieves 5.87 and 9.41 dB improvement on average for these noisy images when noise standard deviations are 20 and 60. Compared with other denoising methods, the proposed method also achieves around 0.45–1.29 and 0.21–4.21 dB at σ n  = 20 and 60, respectively. Especially, our method takes the AWF as the initial estimation, and further improves its quality significantly. Since the PSNR quality metric is not well consistent with perceptual quality, we also take the widely used quality metric, Structural Similarity Index Metric (SSIM) [16], to further verify the performance of our proposed method. Based on the SSIM results in Table 2, our method also achieves the best quality compared with other methods. Figure 2 gives an example remote sensing image. It shows the subjective results for noisy images with noise standard deviation σ n  = 60 and the corresponding denoised images with different methods. We can see that the images restored by the proposed method show more visual pleasing results. Although the BLS-GSM and NLM methods can remove the noise obviously, they also smooth out many details in the original image. Our method achieves a good tradeoff between the noise reduction and image detailed structure preservation. Since our method estimate the threshold for singular values from similar patch group, the filtering strength can well adapt to image content. In addition, the overlapping of patches makes one pixel has multiple estimation independently, which is useful to noise reduction with independent distribution. Therefore, our method achieves a good tradeoff between the noise reduction and image detailed structure preservation.

Table 1 PSNR results on images contaminated by Gaussian noise with different noise levels
Table 2 SSIM results on Images with different noise levels
Fig. 2
figure 2

Subjective image quality comparison for desnoised remote sensing images with different methods, a noisy image, b AWF results, c OptNeighShrink results, d BLS-GSM results, e NLM results, f the results of the proposed method

5 Conclusion

In this paper, we proposed an iterative adaptive Wiener filter by utilizing the filtered similar image patches to predict the covariance matrix of original signals and derive the optimal Wiener filter for each group of image patches. The final reconstructed image is the average of all the filtered samples from different patches corresponding to the same position. The iterative strategy makes the derived Wiener filters approach the optimal ones with the noise reduction. Based on the experimental results, the proposed IAWF significantly improves the quality of noisy remote sensing images. Furthermore, it is also an very practical method since all the parameters are estimated from the noisy images.