Multichannel SVD-Based Image De-Noising - CiteSeerX

3 downloads 0 Views 671KB Size Report
AC4. AC5. AC6. AC7. AC8. AC9. AC10. AC11. AC12. AC13. AC14. AC15. Fig. 2 Original Barbara image (512×512) is rearranged into sixteen 128×128 ...
Multichannel SVD-Based Image De-Noising Y. WONGSAWAT, K. R. RAO, S. ORAINTARA Department of Electrical Engineering University of Texas at Arlington Box 19016, 416 Yates Street, Arlington, TX 76019 USA [email protected], {rao ,oraintar}@uta.edu http://www-ee.uta.edu/dip, http://www-ee.uta.edu/msp Abstract: - In this paper, we propose a multichannel SVD-based image de-noising algorithm. The

IntDCT is employed to decorrelate the image into sixteen subbands. The SVD is then applied to each of the subbands and the additive noise is reduced by truncating the eigenvalues. The simulation results illustrate that this technique can effectively filter the noisy images without assuming any statistics of the image by using data compression technique. Key-Words: - Singular value decomposition, integer discrete cosine transform, de-noising, preprocessing, image restoration, knee point, JPEG-LS.

1 Introduction Preprocessing is a very important process for image and video compression. Once we import the inputs from the analog sources, additive noise usually appears in the raw images or video sequences. Denoising before encoding the images or video frames yields the advantages for the compression and the complexity. In 1995, Donoho has proposed the famous soft-thresholding using dyadic wavelets to optimally de-noise smooth signals based on the statistics of the data [3]. However, this de-noising algorithm yields superior results only for signals with slow variations. Recently, many works have been done to improve Donoho's de-noising algorithm. Yang and Nguyen proposed the image de-noising using lapped transform instead of dyadic wavelets, and then rearranged the coefficients into octave-based model [6]. They set up a maximum a posteriori (MAP) estimation problem to find the estimate of the original DCT coefficients before the degradation to improve the performance. Portilla et al [7] proposed the de-noising algorithm based on the statistical model of the coefficients of an overcomplete multiscale oriented basis. They developed a model for neighborhoods of oriented pyramid coefficients based on a Gaussian scale mixture. However, all of these techniques still require the statistics of the noise and the input signal.

In 1997, Konstantinides et al proposed a blockbased singular value decomposition (SVD) filter to reduce the noise without using the statistics of the noise and the input image [1]. Although, this system shows superior results over Donoho's algorithm, it requires high complexity in order to calculate the SVD in each image subblock and lacks robustness to adjust the thresholds to discard the eigenvalues of the SVD that represent the noise. In this paper, we propose the multichannel SVDbased image de-noising. This algorithm can improve the de-noising performance of the conventional SVD algorithm [1], while reducing the complexity without using the statistics of the noise and the input image. The integer discrete cosine transform (IntDCT) [8] is employed to decompose the image into the desired subbands before applying the SVD. In section 2, the SVD-based de-noising algorithm is briefly discussed. In section 3, the proposed multichannel SVD-based image de-noising system is presented. Simulation results and discussions are addressed in section 4. Section 5 concludes the paper and discusses some future works.

2 SVD Based De-Noising The SVD-based de-noising algorithm can be summarized as follows. First, the image is divided into non-overlapping 8×8 subblocks. Each subblock

Fig. 1. The proposed multichannel SVD-based image de-noising algorithm. is treated as a square matrix which is decomposed using SVD. The eigenvalues from the SVD of each 8×8 subblock are discarded by an optimal threshold using the method proposed in [2]. Finally, the new eigenvalues and the eigenvector matrices are recovered resulting in the de-noised image. Let F be an n×n matrix. The SVD of F can be given by

F = U ∑ VT ,

(1)

where U is an n×n orthogonal matrix, V is an n×n orthogonal matrix, and Σ is an n×n matrix whose off-diagonal entries are all 0s. The diagonal elements of Σ, λis, satisfy such that λ1 ≥ λ2 ≥ … ≥ λn ≥ 0 . The λis determined by this factorization are unique and are called the eigenvalues of F. The kth column of V, vk, can be calculated from

(F ′ − λk I )v k

= 0,

k = 1, 2, …, r,

(2)

where r is the rank of F and F′=FTF. The kth column of U, uk, can be obtained from

1

uk =

λk

Fv k ,

k = 1, 2, …, r.

(3)

In SVD coding [10], the reconstructed blocks can be obtained by retaining the q largest eigenvalues and the corresponding eigenvectors q

Fˆ = ∑ λ n u n v Tn ,

q≤r,

the energy of the discarded eigenvalues is equal to the square error of the reconstructed blocks r

∑∑ Fmn − Fˆ mn

2

=

m =1 n =1

r

∑λ

n = q +1

n

,

(5)

where Fmn is the original matrix of interest and Fˆ mn is the reconstructed matrix. Thus, the energy of the reconstructed subblock is q

Energy = ∑ λ n .

λ r′ ≥ ε 1 ≥ λ r′+1

(7)

where λi′ are the sorted eigenvalues of A, 1 ≤ r ≤ n , and ε1=||E||2 is the norm-2 of E. If the elements of E are independent and identically distributed (i.i.d.) random Gaussian variables with zero mean and σ2 variance, the upper bound of ε1 is

ε 1 ≤ nσ .

(8)

According to this, we can adjust the threshold ε1 in order to filter out the noise and retain most of the information using the data compression [1]. In terms of the eigenvalues, it is easy to select the required energy. Therefore, it is also easy to determine which eigenvalues and corresponding eigenvectors can be discarded.

3 Multichannel SVD-Based Image DeNoising The proposed multichannel SVD-based image denoising can be summarized as follows. We partition the n×n image into 4×4 subblocks. Each of the subblocks is transformed by the 4-point IntDCT [8] as.

Y = C f XC Tf ⊗ E f ,

(9)

where (4)

n =1

r

can be greater than r. Thus, we can define the effective rank of A as r if

(6)

n =1

In reality, F appears together with the additive noise resulting in the noisy input, A=F+E, to the system, where E is a random noise perturbation matrix of full rank [1]. In this case, the rank of A

1 1 ⎤ ⎡1 1 ⎢ 2 1 − 1 − 2⎥ ⎥, Cf = ⎢ ⎢1 − 1 − 1 1 ⎥ ⎥ ⎢ ⎣1 − 2 2 − 1 ⎦ ab ⎤ ⎡ 2 ab a2 ⎢a 2 2⎥ ⎢ ab b 2 ab b 2 ⎥ ⎥ ⎢ 4 2 4 ⎥ , a = 1 ,b = Ef = ⎢ 2 ab ⎥ ⎢ 2 ab 2 a2 ⎢a 2 2⎥ ⎢ ab b 2 ab b 2 ⎥ ⎥ ⎢ 4 2 4⎦ ⎣2

2 , and 5

⊗ implies element by element multiplication. The IntDCT is employed instead of the floating point DCT in order to reduce the computational

complexity while maintaining similar result. The transform coefficients are then regrouped into sixteen subbands by grouping all subblocks' coefficients of the same band together. Thus, the size of each subband is (n/4)×(n/4). Each of the subbands except for the DC (top left in Fig. 2) is then partitioned into blocks of size 8×8. Each of the 8×8 blocks is treated as a noisy matrix, which is then decomposed by the SVD. The de-noising process is applied by discarding some of the small eigenvalues according to a preset threshold. Fig. 1 illustrates the de-noising algorithm using multichannel SVD. In order to find the optimal denoising thresholds, the calibration algorithm in [2] is used. As an example, we apply the same threshold, ε, between 45 and 75 (using grey scale image, pixel values from 0 to 255), to all 15 channels, except the DC. After thresholding, JPEG-LS is then used to encode the reconstruction image to obtain the lossless bit rate of the denoised image. Fig. 3 (a) shows a comparison of the resulting lossless compression ratio at different values of ε. The point with maximum second derivative with respect to log (ε) is identified as knee-point. Fig. 3 (b) shows the PSNR of the corresponding de-noised image (compared with the original image). One can see that the location of the knee point in Fig. 3 (a) yields ε that maximizes the PSNR. In fact, any lossless compression algorithms can be used instead of JPEG-LS, for example Lempel-Ziv algorithm [1]. After getting the knee point, ε, we propose the multichannel thresholding (Tk) calculation as follows.

Tk =

PT ⋅ε , PTk

k = 1, 2, …, 15,

(10)

where

PTk =

PT =

⎤ 1 ⎡N N ⎢∑∑ AC k (i, j ) ⎥ , k = 1, 2, … , 15, N × N ⎣ i =1 j =1 ⎦

1 15 ∑ PT , 15 k =1 k

AC k (i, j ) are the coefficients in the AC k subbands (see Fig. 2), N=128 for image size of 512×512, and

ε is the knee point. This method is equivalent to

compressing the image using the lossy compression (In this case, SVD is used). We try to find the optimal thresholds in order to discard the high frequency information (noise) while retaining most of the original information.

4 Simulation Results and Discussion In this section, we compare the simulation results of the various de-noising algorithms including the conventional SVD de-noising algorithm [1], the proposed multichannel SVD-based image denoising and Donoho’s statistical based de-noising algorithm [3]. Figs. 4 (a) and (b) show the noisy Barbara and Lena images with additive noise at standard deviation (STD) of σ=10. In Table 1, for Barbara image, which contains both high and low frequency information, the multichannel SVD (MSVD) outperforms both the conventional and Donoho’s algorithms (for

DC

AC1

AC5

AC6

AC2

AC4

AC7

AC12

AC3

AC8

AC11

AC13

AC9

AC10

AC14

AC15

Fig. 2 Original Barbara image (512×512) is rearranged into sixteen 128×128 subbands.

Bit Rate (bpp) 6

5.5 Knee Point 5

4.5

4 45

50

55

PSNR

60

65

70

75 Threshold

(a)

31 30.8 Max PSNR

30.6 30.4 30.2 30 29.8 29.6 45

50

55

60 (b)

64

65

70

75 Threshold

Fig. 3. Relation between the knee-point and the maximum PSNR of the de-noised image. (a) Bit Rate and (b) PSNR, versus de-noising thresholds.

Donoho, we use 2 level DWT (Daubechies-4 filters), σ =10, 15, 20: threshold = 66.6537, 90.5338, 114.5676). Figs. 5 (a) and (b) show the MSVD and Donoho’s de-noised Barbara images, with PSNR equal to 30.8806 dB and 25.0365 dB, respectively. Figs. 5 (c) and (d) illustrate the error images between Figs. 5 (a) and (b), respectively, and the original Barbara image. It is evident that Donoho’s algorithm still leaves some residual structure in the error image. This has been reduced in the case of the proposed MSVD. In Table 2, for Lena image, which contains low frequency information, Donoho’s algorithm [3] outperforms the conventional SVD algorithm while MSVD system outperforms both of them (for Donoho, we use 2 level DWT (Daubechies-4 filters), σ =10, 15, 20: threshold = 56.6189, 80.8025, 105.202). Figs. 6 (a) and (b) show the MSVD and Donoho’s de-noised Lena images, with PSNR equal to 32.1166 dB and 30.1072 dB, respectively. Figs. 6 (c) and (d) illustrate the error images of Figs. 6 (a) and (b), respectively, compared with the original Lena image.

(a)

(b)

Fig. 4 Noisy images of (a) Barbara (σ =10) and (b) Lena (σ =10). Futhermore, Table 3 shows that the proposed algorithm outperforms (achieves higher PSNR while using lower bit rate) the conventional algorithm [1] for different noisy environment using JPEG-LS [11]. Finally, Table 4 illustrates that by using various test images [13] in different conditions of additive noise, the proposed MSVD system mostly outperforms both the conventional SVD and Donoho's algorithm. In the conventional algorithm, all the 8×8 subblocks have the same priority, so we have to use the same threshold in order to discard the eigenvalues that contain the noise. In the multichannel SVD-based de-noising algorithm, we split the coefficients into several channels using the IntDCT, which can be implemented using just additions and shifts [8]. Using this, we can adjust the threshold for each subband, which yields the improvement from the conventional algorithm [1]. Moreover, for the conventional algorithm [1], we have to calculate SVD for all 4,096 subblocks. However, by skipping the SVD calculation for the most important subband (DC), SVD for only 3,840 subblocks has to be calculated. Thus, the number of SVD-calculated blocks can be reduced by 6.25% (24.66% in time complexity).

5 Conclusions In this paper, we proposed a novel multichannel SVD-based image de-noising. In order to reduce the computational complexity in calculating SVD

Table 1 Simulation Results using Barbara Image (PSNR in dB) σ

Noisy

(STD)

10 15 20

SVD

28.1433 30.7198 24.6141 27.6910 22.1154 25.4677

MSVD

Donoho

30.8806 28.4174 26.7040

25.0365 24.2158 23.7573

Table 2 Simulation Results using Lena Image (PSNR in dB) σ

Noisy

(STD)

10 15 20

SVD

28.1433 31.4154 24.6141 28.6876 22.1154 26.6577

MSVD

Donoho

32.1166 30.0657 28.5571

30.1072 29.1281 28.3432

Table 3 Relation between PSNR and Bit Rate of Each Algorithm using JPEG-LS for Barbara Image (PSNR in dB and bit rate in bits per pixel (bpp))

Algorithm

PSNR (σ =10)

Bit Rate (σ =10)

PSNR (σ =20)

Bit Rate (σ =20)

Noisy SVD MSVD

28.1433 30.7198 30.8806

6.17 5.00 4.72

22.1154 25.4677 26.5900

6.93 5.39 4.81

(a)

(c)

(b)

(d)

Fig. 5. De-noised Barbara images using (a) MSVD (PSNR = 30.88 dB) and (b) Donoho’s algorithm (PSNR = 25.04 dB), and error images using (c) MSVD and (d) Donoho’s algorithm. from the conventional SVD-based de-noising [1], we introduce a multichannel SVD and find the optimal de-noising threshold for each channel except the DC. Simulation results demonstrate that calculating the SVD for the DC channel can be neglected because noise tends to be cancelled rather than added in the DC channel. Moreover, We can improve the performance by using 8-point IntDCT [12] to achieve 64-channel SVD-based algorithm. We can also extend this algorithm to video de-noising.

References: [1] K. Konstantinides, B. K. Natarajan, and G. S. Yovanof, “Noise Estimation and Filtering Using Block-based Singular Value Decomposition,” IEEE Trans. Image Processing, vol. 6, pp.479-483, Mar. 1997. [2] B. K. Natarajan, “Filtering Random Noise from Deterministic Signals via Data Compression,” IEEE Trans. Signal Processing, vol.43, pp.2595-2605, Nov. 1995. [3] D. L. Donoho, “De-noising by Soft Thresholding,” IEEE Trans. Info. Theory, vol. 41, pp. 613-627, May 1995.

(a)

(c)

(b)

(d)

Fig. 6. De-noised Lena images using (a) MSVD (PSNR = 32.12 dB) and (b) Donoho’s algorithm (PSNR = 30.11 dB), and error images using (c) MSVD and (d) Donoho’s algorithm. [4] K. R. Rao and P. C. Yip, The Transform and Data Compression Handbook, Boca Raton, FL: CRC Press, 2001. [5] K. Konstantinides and K. Yao, “Statistical analysis of effective singular values in matrix rank determination,” IEEE Trans. Acoust., Speech, Signal Processing, vol. 36, pp. 757763, May 1988. [6] S. Yang and T. Nguyen, “Denoising in the Lapped Transform Domain,” IEEE ICASSP, pp. 173-176, April 2003.

[7] J. Portilla et al, “Image Denoising using Scale Mixtures of Gaussians in the Wavelet Domain,” IEEE Trans. Image Processing, vol. 12, pp.1338-1351, Nov. 2003. [8] I. E. G. Richardson, H.264 and MPEG-4 Video Compression, Chichester, West Sussex: Wiley, 2002. [9] K. R. Rao and J. J. Hwang, Techniques and Standards for Image, Video and Audio Coding. Upper Saddle River, NJ: Prentice Hall, 1996.

Table 4 Simulation Results for Various Test Images (PSNR in dB) Image Barbara Lena Baboon Girl Goldhill Peppers Aerial Apc Boat Car1 Car2 Couple Elaine Step Stream Tank Truck1 Truck2

Noisy (σ=10) 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433 28.1433

SVD

MSVD

Donoho

30.7198 31.4154 28.3391 31.9039 30.4583 31.3619 29.4346 31.2802 30.5466 30.7708 30.6385 31.3328 30.2653 34.5971 28.6964 30.3478 29.0564 29.0754

30.8806 32.1166 28.4077 32.6726 30.8286 31.6789 29.3377 31.9737 30.6979 31.6615 31.4814 31.2980 30.8686 39.1557 28.6589 30.7978 29.3358 29.3889

25.0365 30.1072 21.9791 31.3287 28.3678 30.0781 24.4236 31.3062 27.3150 30.8792 30.9969 27.4222 30.6224 36.2789 23.9093 29.9008 27.1154 27.2396

[10] E. F. Deprenttere, SVD and Signal Processing: Algorithms, Applications and Architectures, Amsterdam: North-Holland, 1988. [11] M. J. Weinberger, G. Seroussi, and G. Sapiro, “The LOCO-I Lossless Image Compression Algorithm: Principles and Standardization into JPEG-LS,” IEEE Trans Image Processing, vol. 9, pp. 1309-1324, Aug. 2000. (Software : http://www.hpl.hp.com/loco).

Noisy (σ=10) 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154 22.1154

SVD

MSVD

Donoho

25.4677 26.6577 23.5150 27.1134 26.3901 26.7733 24.5401 27.1461 26.1403 27.0467 26.9415 26.7180 26.5658 28.4667 24.2097 26.6954 25.5190 25.5362

26.7040 28.5571 23.9397 29.1796 27.6942 28.4849 25.2096 29.5554 27.2346 28.8961 28.8446 27.6294 28.4304 33.6623 24.7302 28.4479 26.4519 26.4761

23.7573 28.3432 21.3570 29.4393 27.2365 28.2578 23.2715 29.7120 25.8331 29.4380 29.6122 25.5297 29.2438 31.9720 23.2190 28.6679 26.3308 26.4657

[12] G. J. Sullivan, P. Topiwala, and A. Luthra, “The H.264/AVC Advanced Video Standard: Overview and Introduction to the Fidelity Range Extensions,” SPIE Conference on Application of Digital Image Processing XXVII, pp. 53-74, Aug. 2004. [13] Image Database: http://sipi.usc.edu/database.