Energy Efficient Distributed JPEG2000 Image Compression in Multihop Wireless Networks Huaming Wu & Alhussein A. Abouzeid Dept. of Electrical, Computer and Systems Engineering Rensselaer Polytechnic Institute Troy, New York 12180, USA rpi.edu/~abouza/
Outline � Motivations � Distributed Image Compression � Energy Model � Simulation � Conclusion and Future Work 2
Motivations � Recently, Visual Sensor Network is emerging for applications such as surveillance, environmental monitoring, security and interactive environments. � It consists of tiny wireless-enabled battery- operated cameras. 3
Challenges and Objective � Sensor networks will undergo a transition similar to the Internet transition from text- based to multimedia. � Visual data incur high computation and communication energy � Sensors will remain relatively resource constrained � “divide and conquer” � Distributed image compression enables the sharing of computation load among sensors. 4
Assumptions � Nodes, some of which are camera-equipped � Cluster-based routing mechanism � Contention-free and error-free � Session: a source sending one image to a destination, in response to receiving a request from the destination � In the request, Q (bit rate of compressed image) and L (wavelet decomposition level) are specified 5
Background on Image Compression � Objective: Reduce Redundancy � JPEG2000: wavelet-based, error resilience, progressive, multi-resolution � Wavelet-based image coding: Forward Entropy Wavelet Quantization Coding Transform (a) Encoder Inverse Entropy Dequantization Wavelet Decoding Transform (b) Decoder 6
Wavelet Decomposition � Octave-band decomposition: � 1D-DWT applied to vertical and horizontal direction line by line: 2D-DWT. � The LL band is recursively decomposed, first vertically, and then horizontally. LL LH Image in L H spatial domain HL HH 1 level LH LH LH LH HL HH HL HH HL HH HL HH 7 3 level 2 level
Distributed Image Compression � Wavelet transform consumes most energy in image compression. � Basic idea: distributing the workload of wavelet transform to several groups of nodes along the path � Data (raw image or intermediate results between decomposition levels) exchange is of key importance due the incurred wireless communication energy 8
Data Exchange Method 1 � Traditional data partitioning in parallel wavelet transform � Data is divided in rows/columns � Each node applies 1D-DWT � No image quality loss, but 2D- 9 DWT needs twice data exchange
Example of Method 1 C 1 collects 1D-DWT results Q i Sending level1 2D-DWT results J i to C 2 Source distributes compressed rows R i to Query and get node set info from cluster head C 1 distributes I i to processing nodes processing nodes Repeat for LL subband of level 1 data and compress Repeat for LL subband of level 2 data and compress In this way, compressed image reaches d other subbands to next cluster head other subbands to next cluster head s p 14 C 2 C 1 p 11 p 24 p 13 C 3 p 12 p 21 p 34 p 23 p 22 p 31 p 33 Control data p 32 Raw image data d Level 1 data Level 2 data C 4 Compressed data Level 3 data 10
Data Exchange Method 2 � Tiling: � Node does 2D DWT independently � Rate-distortion loss and blocking artifacts increase with number of tiles 11
Example of Perceptual Image Quality with tiling � Image quality loss and blocking artifacts are small if Number of tiles is � small or Not very low bit rate � � Still applicable for distributed image compression Top left: Without tiling. 0.1bpp,PSNR=29.30dB Top right: Tile 64x64. 0.1bpp,PSNR=25.12dB Btm. left: Tile 256x256. 0.1bpp,PSNR=29.12dB 12 Btm. right: Tile 64x64. 0.5bpp,PSNR =35.67dB
Example of Method 2 S query and get processing node info from C 1 S distributes tiles to processing nodes. Repeat for LL subband of level 1 and compress Repeat for LL subband of level 2 and compress Running 2D-DWT independently on each Send 2D-DWT results of each tile to next cluster head other subbands other subbands node. s p 14 C 2 C 1 p 11 p 24 p 13 C 3 p 12 p 21 p 34 p 23 p 22 p 31 p 33 Control data p 32 Raw image data d Level 1 data Level 2 data C 4 Compressed data Level 3 data 13
Other Issues � To save communication energy, entropy coding is applied before data exchange � Randomly rotation of processing nodes in each cluster among sessions. 14
Energy Model � Communication: � E TX =e e +e a d a (Transmission) Joule per bit � E RX =e e (Receiving) � e e : startup energy parameter � e a : amplifier energy parameter � a: path loss exponent � d: distance between transmitter and receiver � Computation: (Estimated by JouleTrack on Jasper) � E DWT = ? (1 level of 2D-DWT) Joule per raw image bit � E ENT = d (Quantization and entropy coding) JouleTrack: http://www-mtl.mit.edu/research/anantha/jouletrack/JouleTrack/index.html 15 JasPer: http://www.ece.uvic.ca/~mdadams/jasper/
Metrics � Total energy: includes both computation and communication energy � System lifetime: time when the first node in the network fails due to depleted energy. 16
Simulations � 500 nodes � Transmission radius=10m � JPEG2000 code (in C) from Jasper 17
Total Energy Consumption (1) 800 Method 1 (L=1) Normalized total energy consumption per raw image bit (nJ) Method 2 (L=1) Centralized (L=1) Method 1 (L=5) 700 Method 2 (L=5) Centralized (L=5) 600 500 400 300 200 0 5 10 15 20 25 Distance between source and destination (hop) Total (comp.+comm) energy consumption per raw image bit versus distance between source and destination for different desired decomposition level L. 18 Q=1bpp.
Total Energy Consumption (2) 800 Method 1 (1bpp) Normalized total energy consumption per raw image bit (nJ) Method 2 (1bpp) Centralized (1bpp) Method 1 (0.1bpp) 700 Method 2 (0.1bpp) Centralized (0.1bpp) 600 500 400 300 200 0 5 10 15 20 25 Distance between source and destination (hop) Normalized total energy dissipation per raw image bit versus distance between source and destination for different Q. L=5. 19
System Lifetime (1) 8 7 Distributed (L=1) Centralized (L=1) 6 Distributed (L=3) System lifetime (session) Centralized (L=3) Distributed (L=5) 5 Centralized (L=5) 4 3 2 1 0 50 100 150 200 250 300 350 400 450 500 Number of nodes distributed (method2) versus centralized for different desired 20 decomposition level L. Q=1bpp.
System Lifetime (2) 8 7 Distributed (1bpp) 6 Centralized (1bpp) System lifetime (session) Distributed (0.5bpp) Centralized (0.5bpp) 5 Distributed (0.1bpp) Centralized (0.1bpp) 4 3 2 1 0 50 100 150 200 250 300 350 400 450 500 Number of nodes System lifetime comparison: distributed versus centralized 21 for different Q. L=5.
Conclusion � In terms of total energy consumption: Method 1 is much higher than the other two (method 2 and � centralized) � Method 2 is slightly higher than centralized image compression � Method 2 extends the system lifetime by up to 4 times � Simple and easy to implement 22
Future Work � Impact of wireless link errors � Effect of node failure � Dynamic number of processing nodes � Multipath routing 23
Error Robust Distributed Image Transmission � Sensor networks: error prone. Wireless link errors and node failures. -> Need mechanisms to provide reliability � Distributed way is preferred for WSN � Add spatial redundancy (e.g. FEC, multipath) not temporal redundancy (e.g. ARQ) to image/video surveillance: real time applications. 24
Network Assumptions � Average wireless channel error probability: P e � Sensor node failure probability: P(off) � No failure detection service to predict node failure � Both can be modeled by a Markov chain: � Good “1” or bad “0” state for wireless channels � On “1” or off “0” state for nodes 25
Error Robust Distributed Image Transmission � 2 components: FEC-based unequal error protection and path diversity � Choose Reed-Solomon (RS) code. UEP by selecting different k for RS(n,k) code � Randomly choose multiple forwarding nodes in a cluster � Combining multiple copies of coefficients from different nodes Information bits Redundancy bits 26
Example C 2 p 25 X C 3 p 20 fails p 20 p 24 p 23 p 21 p 22 Cluster head C 2 sends 2 copies of level 1 data of tile 0 to p 20 and p 21 Cluster head C 2 sends 2 copies of level 1 data of tile 1 to p 24 and p 25 Cluster head C 3 gets level 2 data of tile 0 from p 21 27 Cluster head C 3 combines level 2 data of tile 1 from p 24 and p 25
Simulations � Image quality: PSNR � Overhead: energy consumption per node � 4 schemes: � (A) no error protection � (B) only FEC code � (C) only path diversity � (D) our proposed scheme (FEC+multiple nodes) 28
Relative energy consumption 1.5 Scheme (A) 1.4 Scheme (B) 1.3 Scheme (C) Scheme (D) 1.2 1.1 1 0.9 0.8 0.7 0.6 0.5 29 4 8 12 16 20 Distance between source and destination (hop)
Image quality vs. distance between source and destination P e =0.001, P(off)=0.1 35 Scheme (A) Scheme (B) 30 Scheme (C) PSNR of received image (dB) Scheme (D) 25 20 15 10 5 0 4 6 8 10 12 14 16 18 20 30 Distance between source and destination (hop)
Recommend
More recommend