ERROR-RESILIENT WAVELET CODING FOR ... - Semantic Scholar

6 downloads 0 Views 482KB Size Report
lost packets that occur over noisy communication channels can be reconstructed ... based transmission, MD coding can be described as encod- ing of the source ...
ERROR-RESILIENT WAVELET CODING FOR WIRELESS IMAGE TRANSMISSION Y. Sriraja, Tanja Karp, and Sunanda Mitra Dept. of Electrical and Computer Engineering, Texas Tech University, Lubbock, TX 79409-3102 Email: [email protected], [email protected], [email protected] ABSTRACT This paper presents a wavelet based image encoding scheme with error-resilience and error concealment suitable for transmission over lossy wireless networks. The scheme involves partitioning the data into independent descriptions of roughly equal lengths. This is achieved without additional redundancy by a combination of packetization, partitioning by modifications to the wavelet tree structure, and a weighted averaging based interpolation method. Experiments show that we are able to achieve a high coding performance with an improvement of about 0.5-1.5 dB in PSNR over other similar methods. 1. INTRODUCTION Image transmissions across typical wireless channels require an efficient trade-off between available bandwidth and image quality. In order to maintain the network Quality of Service (QoS) requirements, timeliness and reliability factors also have to be considered [1]. At the application-level, images and multimedia use various compression algorithms [2, 3, 4] to reduce the bandwidth requirements and provide high quality images at low bit rates. With recent increase in use of wireless communications, error-resilient capabilities need to be incorporated into image coders with good compression performances, for reliable transmission. Wireless networks are very susceptible to transmission errors due to the channel characteristics that lead to high bit error rates (BER) and hence increased packet loss. Even in situations when protocols such as TCP are used to ensure the delivery of packets, large delays occur due to the retransmission of lost packets. Combining the source and channel coding processes such as in multiple description (MD) coding [5] has proved to outperform pure channel coding techniques for transmission channels with burst errors and without retransmission. MDC involves encoding the source data into different independent descriptions or packets of equal importance. The descriptions are constructed such that erroneous bits and lost packets that occur over noisy communication channels can be reconstructed from the other available packets. Each description can be independently decoded so that the loss of some of the descriptions does not affect the decoding of

the properly received descriptions. In the context of packet based transmission, MD coding can be described as encoding of the source data into N ≥ 2 packets, such that the reconstruction obtained from any 0 < k ≤ N packets is also good. MD coding schemes have been used previously to provide for robust transmission of images [6] and [7], where unequal forward error correction techniques were used to create multiple descriptions of images. Error concealment techniques are used for minimizing the error due to lost packets and recovery of missing data [8]. Wavelet zerotree based encoding schemes like the EZW [9] and the SPIHT algorithm [2] are fast, efficient, have low complexity, and provide high quality images at extremely low bit rates making them suitable for image transmission across channels with bandwidth constraints. However, the progressive nature of these schemes results in an embedded data stream that is easily corrupted by bit errors and losses, causing severe distortions to the resulting output and making image reconstruction almost impossible in the absence of powerful channel codes or retransmission. Methods to improve the error-resilience of zerotree-based image coders include the robust EZW (REZW) [10], packetized zerotree wavelet (PZW) algorithm [11], and dispersive packetization (DP) scheme [12]. These methods rely on different partitioning and packetization of the coded data to make them suitable for transmission. In this paper, we present a modification of the SPIHT image compression algorithm [2], that introduces error resilience in the encoded bit-stream by an efficient partitioning of the wavelet coefficients. The method does not add any redundant information and is able to packetize the data into packets of nearly equal lengths. Error concealment is achieved by estimation of significant missing wavelet coefficients by a weighted averaging based interpolation scheme. 2. THE SPIHT ALGORITHM The SPIHT algorithm [2] works by ordering wavelet coefficients into different sets based on their significance. The sets are partitioned and ordered in a manner that they can be duplicated at the decoder. The encoding process goes through two passes, the sorting and the refinement pass. At each bit level, in the sorting pass, significant coefficients

with respect to a set threshold are found and coded. The precision of each of the significant coefficients is enhanced in the refinement pass by sending the next bit from the binary representation of their values. The refinement allows for successive approximation quantization of the significant coefficients and thus a progressive coding scheme is obtained, wherein even a truncated bit stream can be decoded to get an image, though at a lower bit rate and with more distortion. The algorithm achieves a high coding efficiency by using the tree based organization of the wavelet coefficients and group testing the coefficients that belong to the wavelet tree. The wavelet tree is a set of wavelet coefficients across different scales but with the same spatial information, see Figure 1. According to the zerotree concept [9], if a wavelet coefficient at a given scale is found to be insignificant with respect to a given threshold, the 2 × 2 offspring of that coefficient at the next finer scale is also assumed to be insignificant. Thus, following the concept of a zerotree, fewer coefficients need to be checked for significance and hence a faster encoding is obtained. Wavelet trees can be classified as either, horizontal, vertical, or diagonal trees based on the spatial orientation of the frequency information stored in the tree, see Figure 1. In the approximation band, coefficients are either tree roots (coefficients addressing a tree), or leaves. A combination of three adjacent trees along with their roots and the adjacent leaf, contains all the frequency information corresponding to a square block in the spatial domain and is called a square tree [13], see Figure 1. At each scale the set of detail coefficients of a tree is referred to as a tile.

Horizontal Tree

Vertical Tree

Diagonal Tree

Fig. 1. Wavelet trees containing horizontal, vertical, and diagonal frequency information. The gray pixel in the approximation band is a leaf. The three depicted trees and the leaf form a square tree.

3. ERROR-RESILIENT SPIHT CODER The synchronization between the encoder and the decoder with respect to the ordering of the set partitions and the progressive encoding of the data by the SPIHT results in an embedded data stream that becomes highly susceptible to data loss. The loss of even a single bit of the data can lead to a loss in synchronization and render all successive bits useless, see Figure 5b. We seek to obtain a robust implementation of the SPIHT algorithm by partitioning the wavelet coefficients such that the embedded nature of the bitstream is removed. Further, based on a packetization scheme N different descriptions from the source data are created that are then transmitted separately. These descriptions are generated such that an effective error concealment scheme can be obtained for lost coefficients. 3.1. Packetization Packetization schemes involve distribution of the bitstream into each of the different packets such that they contain equally important information. In our scheme the packets are created so that they contain quantization information pertaining to only a certain subset of wavelet trees, and can be independently decoded. An equal number of approximation coefficients and trees are assigned to each packet in a manner that they can be identified in the decoder by the packet number. Interleaving neighboring approximation coefficients across packets ensures that more neighbors are available for interpolation in case of a packet loss. To ensure that the wavelet coefficients in a packet are distributed uniformly across the spatial-frequency domain, an equal number of horizontal trees, vertical trees and diagonal trees are assigned to each packet. Further, the three trees belonging to the same square tree are interleaved among themselves, so that no two of them end up in the same packet. Each of the packets or descriptions contains encoded bits corresponding to the constituent wavelet coefficients, and are transmitted as separate descriptions that can be independently decoded, in any order. Thus distortion due to packet losses and burst errors affect only a fraction of the wavelet coefficients and hence only certain areas on the image are damaged. The packetization maintains the progressive nature of the bitstream only within each packet and not across the packets. However the loss of progressiveness is compensated for by the fact that packetization introduces robustness and error-resilience into the bitstream. 3.2. Shifted Wavelet Trees The packetization scheme described above is effective in separating the different wavelet trees from each other. However, since a tree contains all the edge information for the corresponding spatial direction, loss of a tree would result in a total loss of edge information. To prevent the loss of

all horizontal, vertical, or diagonal edge information for a spatial block in the image due to packet loss, we propose a modified way to build wavelet trees. The new wavelet trees are obtained by a process of directional shifting of the tiles at different scales. The shifting is performed such that each tile of detail coefficients becomes associated with the offspring detail coefficients at the next finer scale of its neighboring tile along the same orientation. Thus an offspring of a tile belonging to a horizontal, vertical, or diagonal tree would be shifted to the right, down, or right and down, respectively, see Figure 2, where the number of shifts performed depends on the scale.

Appr. Coeff.

Fig. 2. Shifted wavelet trees; all tiles with the same gray level are assigned to the same packet. The shifting is performed cyclically so that tiles at the edge of a subband roll over to the other end when the shift is applied to them. Packetization of the modified shifted wavelet trees causes the coefficients of shifted trees to be grouped together when significance test is applied at the SPIHT encoder. The shifted wavelet trees do not contain the same spatial information and therefore, the expected coding advantage due to inter-band correlation is lost to a certain extent. However the intra-band correlation between neighboring tiles in the direction of the frequency information stored in that subband is usually high and therefore, by replacing a tile by its neighbor, the loss in coding efficiency is contained to a minimum. Similar partitioning schemes of the wavelet coefficients have been proposed in [10] and [12]. However our method differs from the above schemes in that the partitioning is applied to tiles of detail coefficients rather than the individual coefficients themselves. This causes the loss in coding

efficiency to be minimal as coefficients of each tile are encoded in the same packet as a group. We are also able to effectively partition both the square tree as well as the individual trees across different packets. Thus in case of packet loss significant edge information for a spatial area would still be available in the other packets. The dispersion of the frequency information of a square wavelet tree from Figure 1 allows us to interpolate for missing tree coefficients based on the available frequency information of the tree. 3.3. Interpolation and Recovery of Lost Coefficients Error concealment of the missing wavelet coefficients is obtained by a weighted interpolation scheme applied to the approximation coefficients. The lost detail coefficients are simply set to zero. The approximation coefficients are more correlated compared to the other subbands. Hence, estimation of the lost coefficients in the approximation band by averaging the available neighboring coefficients works fairly well for most cases. We here propose an interpolation based on a weighted average of the neighboring coefficients. The weights are based on edge information obtained by the values of the significant detail coefficients in the square tree to which the lost coefficient belongs. The horizontal, vertical, and the diagonal available neighbors of the lost coefficient are given weights proportional to the sum of absolute values of the coefficients of the tiles in the respective directions. Since the detail coefficients contain edge information pertaining to that orientation it therefore follows that we would want to interpolate for the lost coefficient based on the neighboring coefficients that lie along an edge rather than any other coefficients. The use of edge information based on the higher frequency coefficients improves the interpolation of lost approximation coefficients by a significant amount when compared with a simple non-directional averaging scheme. The improvements are illustrated in the Figure 3 that shows a section of the Lena image with 10% packet loss after interpolation of the approximation coefficients with the two methods. 4. RESULTS Experiments were conducted on 512 × 512, 8 bpp grayscale images. A four level wavelet decomposition of the images was obtained using the Daubechies’ biorthogonal (9,7) wavelet. The images were encoded into 20 packets at different bit rates. Though, the packets do not have exactly equal lengths, the variation in the packet lengths is less than about 10% of the average packet size. For applications, where uniform packet sizes are required, cropping or padding the packets can be done with minimal distortion loss. We compare our coding scheme against similar robust wavelet coding schemes. For the Lena image encoded at 0.21 bpp without any packet loss, a PSNR of 32.2 dB and a

5. CONCLUSIONS

Fig. 3. Section of Lena image encoded at 0.25 bpp with 10% packet loss. Results after interpolation by simple averaging, PSNR = 28.3 dB (left) weighted averaging, PSNR = 29.16 dB (right) loss of 1.2 dB in the coding efficiency compared to SPIHT was reported in [12, 11]. With our encoding scheme we obtain a PSNR of 33.0 dB, a gain of about 0.8 dB over their methods. Figure 4 shows the PSNR improvements we obtain compared to their reported results. Average PSNR vs. packet loss rate for Lena image Our Encoding Scheme DP PZW

PSNR (dB)

30

[1] Abbas Jamalipour, The Wireless Mobile Internet, John Wiley and Sons, Chichester, UK, 2003.

[3] JTC 1/SC 29, JPEG 2000 image coding system – Part 1: Core coding system, ISO/IEC 15444-1:2000, July 2002.

28 26 24 22

6. REFERENCES

[2] A. Said and W. Pearlman, “A new, fast and efficient image codec based on set partitioning in hierarchical trees,” IEEE Trans. on Circuits and Systems for Video Technology, vol. 6, pp. 243–250, June 1996.

34 32

A method for partitioning the wavelet coded data into different packets suitable for transmission across wireless networks has been presented. The packetization is done such that burst errors and packet losses are spread out across the spatial domain. An edge based weighted interpolation scheme is used to estimate the lost significant coefficients. Experiments show that our method compares favorably to similar coding schemes. The method has a high coding efficiency, low distortion for low and moderate (up to 20%) packet loss scenarios, and produces good quality reconstructed images without adding any form of redundancy. Transmission delays are considerably reduced by avoiding retransmission of the lost packets. The method is ideally suited for wireless image transmission applications, where an efficient, reliable, and robust data delivery is required.

0

5

10 15 Packet loss rate (in %)

20

25

Fig. 4. PSNR of Lena image encoded at 0.21 bpp using dispersive packetization (DP) [12], packetized zerotree wavelet algorithm (PZW) [11], and our encoding scheme To obtain the rate-distortion plots for the images with different packet and burst error loss scenarios, we drop a number of packets out of a total of 20, based on the loss rates, and obtain the reconstructed images. The loss of a packets implies the loss of a contiguous block of bits, and thus simulates the burst errors that are common in wireless channels. Significant wavelet coefficients from the lost packets are estimated using the interpolation scheme described earlier. Figure 5 compares the effect of packet loss on an SPIHT encoded image to an image encoded with our scheme. By incorporating packetization and error concealment in the encoding process we are able to retain image quality, and in the process reduce transmission delays by avoiding retransmission of lost data.

[4] Sunanda Mitra and Shuyu Yang, “High fidelity adaptive vector quantization at very low bit rates for progressive transmission of radiographic images,” Journal of Electronic Imaging, vol. 8, no. 1, pp. 23–35, 1999. [5] Vivek K. Goyal, “Multiple description coding: Compression meets the network,” IEEE Signal Processing Magazine, pp. 74–92, September 2001. [6] S.D Servetto, V.A.Vaishampayan K. Ramachandran, and K. Nahrstedt, “Multiple description wavelet based image coding,” IEEE Trans. on Image Processing, vol. 9, no. 10, pp. 813–826, May 2000. [7] A.E. Mohr, E.A. Riskin, and R.E. Ladner, “Unequal loss protection: Graceful degradation of image quality over packet erasure channels through forward error correction,” IEEE Journal on Selected Areas of Communications, vol. 18, no. 10, pp. 819–828, June 2000. [8] Victor DeBrunner, Linda DeBrunner, Longji Wang, and Sridhar Radhakrishnan, “Error control and concealment for image transmission,” IEEE Communications Surveys & Tutorials, vol. 3, no. 1, pp. 1211–1225, October 2000.

(a)

(b)

(c)

(d)

Fig. 5. 512 × 512 Boat image encoded at 0.25 bpp (a) SPIHT, PSNR =29.6 dB (b) SPIHT with 5 % packet loss, PSNR = 10.2 dB (c) Our encoding scheme with 5 % packet loss, PSNR = 17.7 dB (d) Reconstructed image after interpolation of lost approximation coefficients, PSNR = 27.58 dB [9] J. Shapiro, “Embedded image coding using zerotrees of wavelet coefficients,” IEEE Trans. on Signal Processing, vol. 41, no. 12, pp. 3445–3462, December 1993. [10] Charles D. Creusere, “A new method of robust image compression based on the embedded zerotree wavelet algorithm,” IEEE Trans. on Image Processing, vol. 6, no. 10, pp. 1436–1442, October 1997. [11] J.K. Rogers and P.C. Cosman, “Robust wavelet zerotree image compression with fixed length packetization,” Proc. DCC’98, vol. 12, no. 10, pp. 418–427,

October 1998. [12] Ivan V. Bajic and John W.Woods, “Domain-based multiple description coding of images and video,” IEEE Trans. on Image Processing, vol. 12, no. 10, pp. 1211–1225, October 2003. [13] Taekon Kim, Seungkeun Choi, Robert E. Van Dyck, and Nirmal K. Bose, “Classified zerotree wavelet image coding and adaptive packetization for low-bitrate transport,” IEEE Trans. on Circuits and Systems for Video Technology, vol. 11, no. 9, pp. 1211–1225, September 2001.