HOME JOURNALS CONTACT

Journal of Applied Sciences

Year: 2012 | Volume: 12 | Issue: 14 | Page No.: 1465-1473
DOI: 10.3923/jas.2012.1465.1473
Link Performance Enhancement for Image Transmission with FEC in Wireless Sensor Networks
David F.W. Yap, S.K. Tiong, Johnny Koh, D.P. Andito, K.C. Lim and W.K. Yeo

Abstract: Wireless Sensor Networks (WSN) is formerly created to support text-based data communication. However, by improving link level mechanism of WSN with Error Control Coding (ECC), reliable multimedia transmission could be realized. This paper addresses the performance issue of transferring multimedia data, particularly still image data, using real sensor motes platform. An X-ray image is transferred from one mote to other mote in one hop scenario. Forward Error Correction (FEC) and interleaving technique are used to design the code that capable of handling both erasure and noise in the received packet. The results show that erasure code can effectively combat the effect of random noise in one packet despite its number as well as recover small quantity of lost packet. Furthermore, the scheme can increase the image PSNR (Peak Signal to Noise Ratio) up to 18.41 dB as compared to the uncoded counterpart.

Fulltext PDF Fulltext HTML

How to cite this article
David F.W. Yap, S.K. Tiong, Johnny Koh, D.P. Andito, K.C. Lim and W.K. Yeo, 2012. Link Performance Enhancement for Image Transmission with FEC in Wireless Sensor Networks. Journal of Applied Sciences, 12: 1465-1473.

Keywords: Wireless sensor networks, Wireless sensor networks and image transmission

INTRODUCTION

As it has been made mainly for scalar (text-based) information data communication, WSN does not directly support multimedia transmission. However, recent development of low cost multimedia sensors such as microphone and low-end camera, have triggered research interest in realizing Wireless Multimedia Sensor Networks (WMSN). Towards realizing it, many works have been done in quite diverse areas ranging from Physical, Data Link, Network, Transport and Application (Akyildiz et al., 2007).

Energy consumption is one of the most attractive parts since WSN node has limited energy resource. Thus prolonging network lifetime is one of the primary concerns (Liu et al., 2010). Energy efficiency also becomes one of main driving force for various applications such as localization technique (Li et al., 2010). Preserving energy also goes in parallel with improving reliability of wireless sensor network e.g., by organizing WSN node into cluster of communication (Wang et al., 2009; Abidoye et al., 2011; Shanoon-Aiyal et al., 2011).

This study particular interest is in link layer level performance i.e., addressing the communication reliability between two sensor motes. First, it is important to define the scope of transmission reliability used in this work. A reliable communication in link layer level constitutes a state where the transmitted packet has a low error rate and high acceptance ratio (Zuniga and Krishnamachari, 2004). Meanwhile, it is well known that wireless channel is highly unreliable and delivering reliable communication constitutes a very challenging task. From link layer approach, previous researchers like Yang et al. (2010) utilizes Error Control Coding (ECC) to improve the reliability by retransmitting loss/corrupted data (Automatic Retransmission Query/ARQ), recovery on the receiving party (Forward Error Correction) and mixed of both (Hybrid ARQ).

ARQ is mainly useful when the probability of error in the channel is low while FEC is particularly useful only when one can predict the probability of error. The mixed of both (Hybrid ARQ) might be even more powerful but simulation study shows that H-ARQ performance in terms of energy consumption is neck to neck with FEC alone while ARQ is the most profuse among them (Vuran and Akyildiz, 2009). Although there are many previous works addressing ECC in WSN, very little works have been done toward quantifying multimedia transmission, especially for still image transfer.

The work presented here brings about the discussion of image transmission performance between two sensor motes platform which is obtained through test bed measurement. The specific technique being used in this work is FEC, particularly utilizing Reed Solomon code. The channel code implementation is assumed to be soft-implemented in a personal computer connected to a wireless sensor mote. The goals of this study are to quantify image transmission performance reliability in WSN and indicates what schemes should be favored given the channel condition.

Link level performance of WSN: As reported in (Zuniga and Krishnamachari, 2004), WSN has three different reception regions i.e., connected, transitional and disconnected region. The classification of those regions is based on Packet Reception Ratio (PRR). The relationship between PRR and Packet Error Rate (PER) is given as follows:

(1)

Connected region denoted by high ratio of PRR, while transitional constitutes the region with high varying PRR and disconnected region can be classified as the region where the link experiences mostly very low to zero PRR. When PRR is very low, the link experiences high connection dropping rate. This condition is illustrated in Fig. 1.

From Fig. 1 it can be seen that for typical outdoor deployment with medium obstacle, high PRR is obtained from 0 m up to the point around 75-80 m from transmitter. Thus the region with high PRR is referred as connected region. Meanwhile, point 80-150 m can be referred to as transitional region denoted by the dropping of PRR value. The packet which is transmitted in this region is likely experienced varying PER.

Fig. 1: PRR vs. range in outdoor with medium level of obstacle. The two graphs show the PRR of 40 and 70 Bytes payload packet, respectively and both are having transmission rate of 50 (p sec-1)

The range beyond 150 m can be referred to as disconnected region, although some packet can still be perceived by receiver but usually the chance to correctly receiving the packet is very low. PER is triggered when bad channel condition present during transmission period. Thus, if the channel is in bad state, it could result in error packet (if a portion of packet is affected) or lost (if deep fading affecting whole packet) (Ahmad, 2008).

From the situation explained above, it can be hypothesized that without data retransmission, it will be difficult to achieve transmission reliability as transitional region will incur random number packet loss. These lost packets cannot be possibly recovered by using bit level implemented FEC. Therefore, packet level FEC is preferable in this kind of situation since it basic operation allows lost packet to be recovered by decoding another received coded packet. This paper proposes a solution to the above problem by using Reed Solomon code which is designed in a way that it operates as a packet level FEC.

System configuration: This section explains about the implementation of FEC in WSN and Reed Solomon channel code design.

Soft implementation of FEC in sensor motes: One of the ways to implement FEC in WSN without making hardware modification is through soft implementation. Soft implementation FEC harnesses the protocol which is programmed inside sensor mote’s Microcontroller Unit (MCU). This approach was used in (Ahn et al., 2005; Busse et al., 2006; Jeong, 2009; Schmidt et al., 2009) and is illustrated in Fig. 2.

Fig. 2: Soft implementation of FEC

According to (Jeong, 2009), this approach requires rewriting the sensor motes network stack. As can be seen from Fig. 2, the modification is only required in the part which manages link layer control. Medium Access Control (MAC) layer which also belongs to data link layer, does not have direct interaction with error control since its main role is regulating the way the mote access the channel (e.g., sleep cycle control, CSMA, etc.). In this work, Reed Solomon encoding and decoding algorithms are implemented in Personal Computer workstation and thus minimizing the error caused by bug during implementation in sensor network platform. In other words, the Error Control FEC and Error Recovery process as appeared in Fig. 2 is done in PC workstation by using MATLAB™ software.

In this study, sensor motes based on CC2530 from Texas Instrument are used. The motes have integrated Cyclic Redundancy Check (CRC) making it easy to detect packet error. However, default firmware adheres to 802.15.4 standard whereby the corrupted packet is dropped and is not forwarded to higher layer (in this case network/application layer) (Ergen, 2004). In this system, the corrupted packet is forwarded to higher application layer for data recovery attempt.

Reed Solomon channel code design: RS code is of cyclic type non binary linear block coding. As the name suggests, the encoding and decoding of RS codes are performed in extension field called Galois Field (GF). Due to non-binary nature, RS code can be used generally as erasure code since error occurring in any symbol can be recovered regardless the number of bits forming the symbol. RS code is also excellent choice to combat burst error (Sklar, 2001). The encoding principle of (N, k (N-k)/2) RS code can be done as follows:

Generate GF(2m) where m is the number of bits one symbol of RS code represented with. Then, given a message sequence:

M(x) = Mk-1sk-1+...+M2x2+M1x+M0

where, Mk-1 is an m-bit message symbol εGF(2m)
Generator of RS code is defined as:

g(x) = (x-∝0)(x-∝1)(x-∝2)(x-∝t)

where, t = N-k-1, N denotes the codeword length and k denotes the message length
Modulo division of (M(x)xx(n-k)) with g(x) and appends the remainder of division r(x) to the trailer of original message to obtain systematic RS codes such that transmitted codeword CW(x) becomes:

CW(x) = M(x)xxn-k+r(x)

Decoding process of RS codes is depicted in Fig. 3. One of main setbacks of RS codes to be used in WSN is that of its decoding algorithm complexity is quite high.

The decoding process is started by evaluating received packet polynomial R(x) at each zero of the code (∝0,∝1,...∝t) to obtain syndrome S(x). Then finding coefficients for error locator polynomial σ(z) and finding its inverses of the roots to obtain the location of error. Finally, error value is calculated by using Forney’s algorithm (Morelos-Zaragoza, 2006). Next, to enable packet level FEC using Reed Solomon code, the data is interleaved before transmission. The process is shown in Fig. 4.

Referring to Fig. 4, the encoding blocks first take n numbers of message block and perform encoding to each of them separately, yielding parity symbol, P(x), at the trailer of packet. Interleaving matrix (n, N) is then used in order to transmit only specific TG at a time. Each TG packet comprises of symbols from different CW(x). If error occurs in any symbol within TG, then, by de-interleaving the received packet in receiver, the error is disseminated among CW(x).

Fig. 3: Decoding process of RS codes

Fig. 4: Grouping n code words and interleave them as transmission group L(n-k) to obtain RS erasure code

Measurement methodology: Two sensor motes each connected to a mobile workstation via UART RS-232 serial port cable are used during measurement. The measurement place is located along the laboratory corridor (outside) of Faculty of Electronics and Computers Engineering department, UTeM. Prior to measurement, the coverage is predicted by using log-distance pathloss model and is verified by measurement. The system configuration is given in Table 1.

Receiver sensitivity plays important role in determining the furthest communication distance. Furthermore, the operating frequency will also contribute to achievable range. The higher the frequency will result in greater path loss vice versa. In this paper, the mote range prediction can be calculated by using the following formula (Busse et al., 2006):

(2)

where, P0 represents the transmit power, Pr represent receiver sensitivity, FM represents fading margin, f represents the signal frequency operation and n is the pathloss exponent. Using the Eq. (1) and system configuration listed on Table 1, the RSL versus distance for n = 2, n = 2.1, n = 2.2 and n = 3 are depicted in Fig. 5 assuming fade margin 10 dB.

A receiver sensitivity value of -92 dBm gives the following range for each pathloss exponent; 220, 160, 125, 30 m for the value of n which equal to 2, 2.1, 2.2 and 3, respectively.

Table 1: System configuration

Fig. 5: Range prediction curve using log-distance pathloss model for four different n values

It is assumed that n = 2 represent the situation where communication takes place in open area without significant obstacle that possibly blocks the traverse signal. n = 2.1 represents open area with some minor obstacle. n = 2.2 represents open are with significant obstacle (which introduces Non Line of Sight communication). Meanwhile, n = 3 represents indoor area. Hence, judging from the measurement place where test bed will be conducted, n = 2.3 is chosen. Measurement places are depicted in Fig. 6.

For practical reason, the range is divided into 8 measurement points i.e., 25, 50, 65, 75, 85, 95, 100 and 125 m. Also, sample X-ray image which size is 52 kBytes is used during the measurement. The small size picture is considered for the sake of practicality. Additional measurement is conducted within the transitional region to obtain better understanding regarding the effect of transitional region to the image quality.

Before the transmission begins, the image is stored in workstation. The image is sliced into small parts that are small enough to be packed inside WSN packet payload field. The field itself can store at maximum 111 Bytes of data. We purposely assigned 1 byte for packet sequence numbering field as a means to aid decoding process of packet level Reed Solomon code. The rest 110 Bytes will be used to store either uncoded or coded packet.

Limited payload field in one packet has forced the system to transmit the data in a large number of packets, one after another (in a burst fashion). While the transmitted packets travel through the channel, it will experience noise that would make them corrupted and also the receiver would sometimes miss the packet due to deep fading. The receiver will check both DSN value as well as the sequence numbering field which purposely written in one of the payload data field byte slot.

Fig. 6: Measurement location along the corridor of laboratory building Universiti Teknikal Malaysia Melaka (UTeM), Melaka, Malaysia

Fig. 7: Equipment set up during test-bed

If there is a gap between the previously received packet and current packet, then the lost packets are erased. Meanwhile, if the 3 CRC failed, the whole packet will be erased. In the test bed, the payload field is changed with all zero value. To decode, the receiver will receive and subsequently retain the incoming packet up to n number before performing decoding (in coded case).

Equipment setup is shown in Fig. 7. CC2530 sensor platform support UART communication using RS-232 serial port. The port baud rate is assigned to 11520 baud/second. This speed is adequate for current over the air throughput which bit rate is roughly around 100 kbps.

An (n, k) RS code is capable of correcting (n-k)/2 random symbols error. For packet level (n, k) RS code, instead of correcting symbols, the code is equally capable of correcting (n-k)/2 erased packets within n received packets. In this work, RS (15, 9), RS (31, 15), RS (31, 21), RS (55,31), RS (110, 58) and RS (110, 68) that can correct 3, 8, 5, 12, 26 and 21 error respectively, are used in the test bed.

RESULTS AND DISCUSSION

Traces of Received Signal Level (RSL) value at respective measurement point are depicted in Fig. 8. It can be observed that as the distance between transmitter and receiver increase, the RSL is gradually decrease. The measurement point 25, 50 and 65 m shows good stability of RSL with fluctuation point roughly around 10 dB m. The stability due to Line of Sight (LOS) communication that makes direct wave becomes dominant part in the receiver. Measurement point at 85 m shows rather stable RSL. However during the last half part of the traces, it average value decrease significantly. Though decreasing, the fluctuation at this point did not exceed the receiver sensitivity threshold i.e., -92 dBm. Thus it is safe to say that there will be no packet dropping in this distance.

Fig. 8: Trace of RSL during transmission of data from transmitter to receiver at each range

Meanwhile, measurement point at 75 m shows surprisingly low RSL performance with noticeable packet dropping (denoted by the straight line with zero gradients). Although 75 m is closer to the transmitter as compared with 85 m, in fact, unpredicted reflection point incurs large pathloss. Hence, the location of sensor mote has important role in determining RSL value.

The traces for the rest measurement points i.e., 95, 100 and 125 m show low RSL value, comparable to 75 m. However, 100 and 125 m experience significant packet loss due to fading. If examined carefully, the gap (the period when deep fading occurs) has unpredictable period whereby it can be as small as 3 packet loss up to hundreds packet loss. While the gap gets bigger, erasure code which designed with fixed correction capability is no longer effective.

The result for uncoded and coded performance of image transmission obtained in every measurement places are depicted in Fig. 9, 10-15, respectively. Both uncoded and coded case shows good performance in the range within 25 to 65 m. Uncoded image suffers from noise in the position 75 m from transmitter (Fig. 9) while the coded scheme seems can recover the error (Fig. 10-15) almost perfectly. In the range of 85 meters from transmitter, both schemes show especially good performance.

Performance impairment generally begins at 95 m as can be witnessed in both schemes. Although the two schemes at this location show bad performance but uncoded performance shows better quality compared to coded counterpart. The impairment continues until the edge of coverage (125 m at most). Due to the utilization of interleaver/de-interleaver matrix, the noise in the coded scheme is condensed into several groups instead of randomly scattered around the picture.

Fig. 9(a-h): Received image quality in uncoded scheme obtained along the measurement point of (a) 25, (b) 50, (c) 65, (d) 75, (e) 85, (f) 95, (g) 100 and (h) 125 m

Fig. 10(a-h): Received image quality encoded with Reed Solomon Erasure (31, 21) code obtained along the measurement point of (a) 25, (b) 50, (c) 65, (d) 75, (e) 85, (f) 95, (g) 100 and (h) 125 m

Fig. 11(a-h): Received image quality encoded with Reed Solomon Erasure (15, 9) code obtained along the measurement point of (a) 25, (b) 50, (c) 65, (d) 75, (e) 85, (f) 95, (g) 100 and (h) 125 m

Fig. 12(a-h): Received image quality encoded with Reed Solomon Erasure (31, 15) code obtained along the measurement point of (a) 25, (b) 50, (c) 65, (d) 75, (e) 85, (f) 95, (g) 100 and (h) 125 m

Fig. 13(a-h): Received image quality encoded with Reed Solomon Erasure (55, 31) code obtained along the measurement point of (a) 25, (b) 50, (c) 65, (d) 75, (e) 85, (f) 95, (g) 100 and (h) 125 m

Fig. 14(a-h): Received image quality encoded with Reed Solomon Erasure (110, 58) code obtained along the measurement point of (a) 25, (b) 50, (c) 65, (d) 75, (e) 85, (f) 95, (g) 100 and (h) 125 m

Fig. 15(a-h): Received image quality encoded with Reed Solomon Erasure (110, 68) code obtained along the measurement point of (a) 25, (b) 50, (c) 65, (d) 75, (e) 85, (f) 95, (g) 100 and (h) 125 m

Table 2: PSNR comparison for different correction capability of reed Solomon erasure at measurement point 75 m

The noise in the picture could be triggered by channel noise or/and packet lost. Packet lost is detected by the receiver through counting the Data Sequence Number (DSN) given in the transmitted packet. Once the packet loss is detected (indicated by difference between expected value of DSN compared (counted by receiver) with the one from incoming packet), the whole packet is replaced by zero value (erasure). Erasure does not mean deleting the packet but rather, remembering the location of packet loss and replacing it with other value. The black pixels are the indication of zero value (distance 100 and 125 meter) which means during the transmission of those pixels, the packets are lost in the channel.

Figure 10-15 shows the image quality given different RS erasure correction capability. We further analyze the image quality at distance 75 m and comparing it with uncoded counterpart to obtain the PSNR (measured in dBm). The obtained PSNR value as listed in Table 2 shows that RS(15, 9) has lowest PSNR value while the highest PSNR 18.36 dBm is achieved by RS erasure having . To optimize the transmission, we may want to utilize the payload data field as maximum as possible while keeping the level of redundancy as low as possible. As can be observed from Fig. 10-15, the increased of error correction capability beyond 8 is no longer effective. This is denoted by relatively good quality at 75 m and also due to the fact that strong codes do not guarantee that it can recover the data which experience significant loss (Fig. 14 and 15).

Another important remark is that brute force by increasing code correction capability to correct error is not always the proper way. In contrast, uncoded performance (Fig. 9) shows especially comparable performance, excluding point 75 m. Therefore, this condition suggests that adjusting redundancy level of the code is equally important as knowing the expected number of error that the system will experience.

CONCLUSION

Standard implementation although enhanced with interleaving/de-interleaving technique seems suitable for WSN only for small quantity of packet loss. Bad channel condition that trigger high PER renders RS erasure ineffective. The reasons are; 1. Highly fluctuation of PRR value at certain ranges contributes to both packet loss and corrupted data at the same time, 2.Recent generation of sensor motes has already implemented Pseudo Noise code so that the transmitted data can better withstand the effect of channel noise, nullifying the benefit of having FEC in the system.

Despite seemingly ineffective, the use of RS erasure with (n-k)/2 can improve the image perceived quality from 18.19 up to 18.41 dB as compared with uncoded image. Meanwhile, the use of RS erasure with yields perfect recovery hence making recovered image becomes exactly verbatim copy of its original image.

The use of erasure code helps the system to achieve reliability in the RSL region lower than receiver sensitivity threshold i.e. the value below -92 dBm as can be seen in measurement point 75 m. Hence, we believe that the communication range can be improved by utilizing erasure code. However, it has to be noted that prolonged deep fading effect that produces burst lost packet cannot be effectively recovered by RS erasure.

REFERENCES

  • Akyildiz, I.F., T. Melodia and K.R. Chowdhury, 2007. A survey on wireless multimedia sensor networks. Comput. Networks, 51: 921-960.
    CrossRef    


  • Liu, Z., B. Wang and Q. Tang, 2010. Approximation two independent sets based connected dominating set construction algorithm for wireless sensor networks. Inform. Technol. J., 9: 864-876.
    CrossRef    Direct Link    


  • Li, Z., R. Li, Y. Wei and T. Pei, 2010. Survey of localization techniques in wireless sensor networks. Inform. Technol. J., 9: 1754-1757.
    CrossRef    Direct Link    


  • Wang, Y., T.L.X. Yang and D. Zhang, 2009. An energy efficient and balance hierarchical unequal clustering algorithm for large scale sensor networks. Inform. Technol. J., 8: 28-38.
    CrossRef    Direct Link    


  • Abidoye, A.P., N.A. Azeez, A.O. Adesina and K.K. Agbele, 2011. UDCA: Energy optimization in wireless sensor networks using uniform distributed clustering algorithms. Res. J. Inform. Technol., 3: 191-200.
    CrossRef    


  • Shanoon-Aiyal, A., T.C. Wan and S. Ramadass, 2011. Collective information transmission to improve connectivity of non uniform density wireless sensor networks. J. Applied Sci., 11: 3169-3176.
    CrossRef    


  • Zuniga, M. and B. Krishnamachari, 2004. Analyzing the transitional region in low power wireless links. Proceedings of the 1st Annual IEEE Communications Society Conference on Sensor and Ad Hoc Communications and Networks, October 4-7, 2004, Santa Clara, California, pp: 517-526.


  • Yang, X.L., Y.M. Chen and B. Zhou, 2010. Constructing error correcting codes for wireless sensor networks. Inform. Technol. J., 9: 1758-1760.
    CrossRef    Direct Link    


  • Vuran, M.C. and I.F. Akyildiz, 2009. Error control in wireless sensor networks: A cross layer analysis. IEEE/ACM Trans. Network., 17: 1186-1199.
    CrossRef    


  • Ahmad, M.R., 2008. Cooperative MIMO Communications in Wireless Sensor Networks. University of Wollongong, Australia


  • Jeong, J., 2009. Evaluation of network stack optimization techniques for wireless sensor networks. Int. J. Commun. Network Syst. Sci., 21: 720-731.


  • Busse, M., T. Haenselmann, T. King and W. Effelsberg, 2006. The impact of forward error correction on wireless sensor network performance. Proceedings of the ACM Workshop on Real-World Wireless Sensor Networks, June 19, 2006, Uppsala, Sweden -.


  • Ahn, J.S., S.W. Hong and J. Heidemann, 2005. An adaptive FEC code control algorithm for mobile wireless sensor networks. J. Commun. Networks, 7: 489-499.
    Direct Link    


  • Schmidt, D., M. Berning and N. Wehn, 2009. Error correction in single-hop wireless sensor networks: A case study. Proceedings of the Design, Automation and Test in Europe Conference and Exhibition, April 20-24, 2009, Nice, pp: 1296-1301.


  • Ergen, S.C., 2004. Zigbee/IEEE 802.15.4 summary. EECS. Berkeley, http://pages.cs.wisc.edu/~suman/courses/838/papers/zigbee.pdf.


  • Sklar, B., 2001. Digital Communications Fundamentals and Applications. Prentice-Hall, New Jersey


  • Morelos-Zaragoza, R.H., 2006. The Art of Error Correcting Coding. 2nd Edn., John Wiley and Sons, New York, ISBN: 9780470015582, Pages: 263

  • © Science Alert. All Rights Reserved