Date post: | 21-Dec-2015 |
Category: |
Documents |
View: | 219 times |
Download: | 0 times |
1
Scalable Image Transmission Using UEP Optimized LDPC Codes
Charly Poulliat, Inbar Fijalkow, David Declercq
International Symposium on Image/Video Communications over Fixed and Mobile Networks (ISIVC), July 2004
2
Outline
Introduction Scalable Image Transmission LDPC Code Design for UEP Channels Simulation Results Conclusion
3
IntroductionUEP – Unequal Error Protection
Data of different importance from source encoder
Multimedia: Network/Transport Layer Headers I/P/B Frames & Motion Vectors
Different protection classes/levels provided by: Physical Layer: modulation Network Layer: protocols Channel Coding
C1 C3 C4C2
4
IntroductionIrregular LDPC Codes
Inherent UEP: Highly connected nodes are protected better.
More parity-check equations.
Most connected variable nodes assigned to most important class.
Maximizes average connection degree of variable nodes in each class.
5
IntroductionIrregular LDPC Codes
6
IntroductionOptimization of Irregularity
Optimized for a specific channel: Binary Erasure Channel (BEC) Additive White Gaussian Noise Channel (AWGN
Channel) Optimized globally. Every bit in the codeword has the same average error
probability. Do not necessarily ensure a good UEP capacity.
7
IntroductionOptimization of Irregularity
Optimized by modeling the UEP transmission scheme as a specific channel. Optimized locally (within class). Provides a better UEP capacity.
Enhanced UEP: The error probability within a class is minimized by:
maximizing the average connection degree. maximizing the minimum degree of its variable
nodes.
8
IntroductionUEP properties
Interprets the UEP properties of LDPC code as different local convergence speeds.
The most protected class: Be assigned to the bits in the codeword which
converge to their right value in the minimum number of decoding iterations.
9
Scalable Image Transmission
Consider an JPEG2000 codestream compressed into Nc – 1 progressive quality layers. Source bitstream is encoded into codewords:
Length N, each containing K information bits.
Codewords are transmitted over an AWGN channel. Do not consider joint source. Consider a source with fixed classes number that requires di
fferent protection levels.
Different schemes will be compared.
10
Scalable Image Transmission
Equal Error Protection (EEP) Scheme: EEP: Entire JPEG2000 bitstream is directly encoded b
y a systematic LDPC encoder, block by block.bitstream
codewords
11
Scalable Image Transmission
Unequal Error Protection Scheme: (UEP)-AWGN opt: Use the irregularity of the code.
Nc – 1 quality layers are distributed over all the codewords.
bitstream
codewords
12
Scalable Image Transmission
Unequal Error Protection Scheme: (UEP)-UEP opt: Use the irregularity of the code.
Nc – 1 quality layers are distributed over all the codewords.
bitstream
codewords
13
LDPC Code Design for UEP Channel
UEP parameter description and notations The transmission scheme consists of sending a
UEP coded bitstream: Under given UEP constraints Over AWGN channel Binary input Noise variance parameter: σ2
14
LDPC Code Design for UEP Channel
UEP parameter description and notations A channel codeword of a rate R LDPC code divided into Nc classes o
rdered in decreasing order of their error sensitivity.
Considering the set of Nc classes:
C1 : highest required protection level
C Nc : highest required protection level
:1 | Ck NkC
C1 C3 C4C2
Information bits Redundancy bits
15
LDPC Code Design for UEP Channel
UEP parameter description and notations A channel codeword of a rate R LDPC code divided into Nc classes o
rdered in decreasing order of their error sensitivity.
Let the proportions be the normalized len
gths of each class, corresponding to the info bit with:
The proportions distribution of the bits in the channel codewords
belonging to each classes is given by:
}1:1|{ C
Nkk
1
1
1CN
kk
C
NkCk :1|
} )1( , ..., , { 11 RRRp Nc
C1 C3 C4C2
Information bits Redundancy bits
16
LDPC Code Design for UEP Channel
UEP parameter description and notations Generating function of check nodes degree distribution:
Fraction of edges emanating from variable nodes of
degree i:
Maximum check node connection degree:
Assuming is the same for each class.)(x
max
2
1)(rt
j
jj xx
maxrtj
17
LDPC Code Design for UEP Channel
UEP parameter description and notations Generating function of variable nodes degree
distribution:
Fraction of edges emanating from variable nodes of
degree i:
Maximum variable node connection degree:
max
2
1)(ct
i
ii xx
maxcti
18
LDPC Code Design for UEP Channel
UEP parameter description and notations Define and optimize variable node distribution
for each class Ck :
Maximum variable node connection degree in class Ck :
)(
max)(
2
1)( )(
kc
kCk
t
i
ii
C xx
)(
max
kct
19
LDPC Code Design for UEP Channel
UEP parameter description and notations Generating function of variable nodes degree
distribution:
)()(
...
...)(
)()(
2)(3
2)(3
)(2
)(2
232
21
2121
xx
xxxx
xxx
CC
CCCC
max
2
1)(ct
i
ii xx
20
LDPC Code Design for UEP Channel
UEP parameter description and notations
} 5.0 ,3.0 ,2.0 {
21
LDPC Code Design for UEP Channel
UEP parameter description and notations
32)(
21
4
21
3)(1 xxxC
22
LDPC Code Design for UEP Channel
UEP parameter description and notations
1)(
21
6)(2 xxC
23
LDPC Code Design for UEP Channel
UEP parameter description and notations
10)(
21
6
21
2)(3 xxxC
24
LDPC Code Design for UEP Channel
UEP parameter description and notations
3210
3210
10132
)()()(
0.19050.14290.57140.0952
21
4
21
3
21
66
21
2
)21
6
21
2()
21
6()
21
4
21
3(
)()()()( 321
xxxx
xxxx
xxxxx
xxxx CCC
25
LDPC Code Design for UEP Channel
UEP parameter description and notations
43
4321
2
1
2321.07619.0
21
5
21
1600
)(max
xx
xxxx
xxrt
j
jj
26
LDPC Code Design for UEP Channel
UEP parameter description and notations Some others notations (1/2):
CNktt k
cc ..., ,1 ,)max( )(
maxmax
1: one valued vector
TT ] 1
..., ,2
1 [
1 ,]
1..., ,
2
1 [
1
maxmax rrcc tttt
27
LDPC Code Design for UEP Channel
UEP parameter description and notations Some others notations (2/2):
Vector form association:
A LDPC Code is then parameterized by .
T)()(3
)(2
)( ] ..., , , [ )(
max
kk
c
kkk C
t
CCC )()( xkC
)(x
T)()()( ] ..., , , [ 21 cNCCC )(x
) , , ( p
28
LDPC Code Design for UEP Channel
Hierarchical optimization algorithm We will consider the LDPC codes that converge to a
vanishing bit error probability at a given threshold:
The threshold of the optimized LDPC irregularity
without UEP constraints: The threshold of the optimized LDPC irregularity
with UEP constraints: greater than
0N
Eb
the code threshold
(worst threshold)
29
LDPC Code Design for UEP Channel
Hierarchical optimization algorithm To ensure the UEP constraints would not lead to a too-la
rge degradation of the threshold, we limit the set of possible LDPC codes to those whose convergence threshold lies within:
: a small constant fixed in the optimization algorithm.
] ,[
30
LDPC Code Design for UEP Channel
Hierarchical optimization algorithm Optimization is done class after class.
Most important class first.
Objective function: Maximize the average variable node’s connection degree within a class,
subjecting to a minimum degree of its variable nodes within a class.
Constraints: C1: Rate constraint
C2: Proportion distribution constraints
C3: Convergence constraint
C4: Stability condition
C5: Minimum variable node degree constraint
C6: Previous optimizations constraints
Linear programming.
31
LDPC Code Design for UEP Channel
Hierarchical optimization algorithm Given parameters:
for each class k, starting with the most important class initialization: while optimization failure (any
constraints is not fulfilled) maximize average connection
degree of Ck:
fulfilling constraints C1 to C6
end while end for
k = k+1
maxmin
)(C
kC tt
start
k=1
yes
T)(max kC
C1 to C6
success?
1)()(
minmin k
Ck
C tt
no
k == NC -1
yes
stop
maxmin
)(C
kC tt
no
, , ),( ,max
xtC
maxmin
)(C
kC tt
T)(max kC
1)()(
minmin k
Ck
C tt
32
LDPC Code Design for UEP Channel
Hierarchical optimization algorithm Constraints (1/2):
[C1] Rate constraint: (global constraint)
[C2] Proportion distribution constraints: (global constraint)
(i)
(ii)
rCk
C
tRtk
1
1
11 TT)(
k
Ck 11T)(
} 1..., ,1 { CNk
rk
C
C
tR
R
tk
1
1
1 TT)(
33
LDPC Code Design for UEP Channel
Hierarchical optimization algorithm Constraints (2/2):
[C3] Convergence constraint: (global constraint)
[C4] Stability condition: (global constraint)
[C5] Minimum variable node degree constraint: (class constraint)
[C6] Previous optimizations constraints:
xx ) , ,F( 2
k
t
jj
Cr
k jemax
2
2
2
1)(
2 )1(/
0 , )()(
min kC
ik
cti
fixed is , ' )( 'kCkk
34
LDPC Code Design for UEP Channel
Hierarchical optimization algorithm example:
35
LDPC Code Design for UEP Channel
Performance analysis for short length codewords Simulation results for finite length codewords are given f
or the decoding iteration . Optimization parameters:
The offset is arbitrary set to 0.05 dB.
6l
30
9563.00.0437)(
dB 05.0
) 5.0 ,25.0 ,25.0 (
4
max
87
c
C
t
xxx
N
0N
Eb
36
LDPC Code Design for UEP Channel
Performance analysis for short length codewords Designed codes have the following parameters:
(K = 2048, N = 4094): (UEP)-AWGN opt code.
(K = 2047, N = 4095): (UEP)- UEP opt code. These codes are both used in the following when scalable image transm
ission is considered.
For (UEP)-AWGN opt code: Assign the information bits which belong to the class to the mos
t connected variable nodes. Assign the information bits which belong to the class to the mos
t connected variable nodes … and so up to class.
The redundancy bits are associated to the remaining (1 – R) variable nodes.
2
1R
R1
R2
1C
2C1CN
) class (CNC
37
LDPC Code Design for UEP Channel
Hierarchical optimization algorithm example:
297642 2943.01587.00870.00541.01945.02114.0)( xxxxxxx
38
LDPC Code Design for UEP Channel
Hierarchical optimization algorithm
39
Simulation Results
Consider the image “Lena” compressed into a JPEG2000 bitstream with three progressive quality layers.
Progressive bit rates: B = (0.125 bpp, 0.250 bpp, 0.5 bpp)
We then consider the (UEP) UEP-opt code with optimization parameters:
Channel coding rate: R = 1/2
The results are given for 100 independent Monte-Carlo runs using Verification Model version 8.6 as source decoder.
) 5.0 ,25.0 ,25.0 (
40
Simulation Results
Two performance criteria:
Decoding failure:
Headers are not protected by any additional forward error protection code, they may be erroneous and decoding failure can occur.
PSNR:
The average PSNR of the reconstructed image versus the EB/N0 for a given iteration number would be studied.
41
Simulation ResultsDecoding failure
42
Simulation ResultsPSNR vs. EB/N0
43
Conclusion
Evaluate performance improvement by UEP optimized LDPC codes. In terms of average PSNR and decoding failure for a low
iteration number.
Underline the importance for data block interleaving into codeword to fully benefit from LDPC irregularity.
44
Thank you
References:
C. Poulliat, D. Declercq, and I. Fijalkow, “Enhancement of Unequal Error Protection Properties of LDPC Codes,” EURASIP Journal on Wireless Communication and networking, 2007.
Neele von Deetzen, “Unequal Error Protection Turbo and LDPC Codes, ” Class Note for Summer Academy, School of Engineer and Science, Jacobs University Bremen, Germany, 2007.
P. S. Guinand, D. Boudreau, and R. Kerr, “Construction of UEP Codes Suitable for Iterative Decoding,” in Proceedings of the 6th Canadian Workshop on Information Theory, pp. 17-20, Kingston, Ontario, Canada, June, 1999.
T. J. Richardson, M. A. Shokrollahi, and R. L. Urbanke, “Design of Capacity-Approaching Irregular Low-Density Parity-Check Codes,” IEEE Transactions on Information Theory, vol. 47, no. 2, pp.619-637, 2001.
45
Supplementary
Variable node degree distribution:
Fraction of edges emanating from variable nodes of degree i:
Assume the code has n variable nodes, the number of variable nodes of degree i is then:
max
2
1)(ct
i
ii xx
i
1
02)(
/
/
/
dxx
in
j
in i
jj
i
46
Supplementary
So E, the total number of edges emanating from all variable nodes, is equal to:
Also, assuming the code has m check nodes, total number of edges emanating from all check nodes, is equal to:
1
02
1
0)(
1
)(
/
dxxn
dxx
ini
i
i
1
0)(
1
dxxm
47
Supplementary
Equating these two expressions for E, we conclude that:
We see that the design rate is equal to:
1
0
1
0
)(
)(
dxx
dxxnm
1
0
1
0
)(
)(11
dxx
dxx
n
m
n
mnR
48
Supplementary
We see that the design rate R is equal to:
Rate constraints:
1
0
1
0
)(
)(11
dxx
dxx
n
m
n
mnR
rCk
C
tRtk
1
1
11 TT)(
49
Supplementary
We see that the design rate R is equal to:
1
0
1
0
)(
)(11
dxx
dxx
n
m
n
mnR
1
0
1
0
1
0
1
0
)(1
1)(
1)(
)(
dxxR
dxx
Rdxx
dxx
50
Supplementary
22
)(
22
1
0
1
0
/1
1/
/1
1/
)(1
1)(
jj
k j
C
jj
jj
jR
j
jR
j
dxxR
dxx
k
j
rCk
C
tRtk
1
1
11 TT)(
[C1] Rate constraints:
51
Supplementary
3 5, 12
12)(
12
6
12
6)(
3
21
mn
xx
xxx
3
61
41
41
5
312/6
212/6
212/6
5
Number of degree 2 variable nodes:cc
cxx
xx
dxxjj
j
6
1
4
1
3
1
2
1
2
1
2
1
)2
1
2
1(
)(/
1
0
32
1
0
21
1
02
52
Supplementary
By using:
Gaussian assumption for Log Density Ratio (LDR) message
Independence assumption between LDR messages
give the evolution of the Mutual Information (MI) associated with the mean of the LDR messages for one decoding iteration.
We denote the Mutual Information associated with LDR messages at the input of :
variable nodes:
check nodes:
at the lth decoding iteration.
)(lux
)(lvx
53
Supplementary
Assuming Gaussian approximation:
check node message update:
variable node message update:
with being the Mutual Information function:
max
2
11-)1( ) )1(J )1( J(1rt
j
lvj
lu xjx
C c
k
N
k
t
i
lu
Ci
lv xix
1 2
)1(1-2
)()(max
) )(J)1(2
J(
) (J ) )1(log E(1)(J 2
xem
of a Gaussian random variable:
) 2 , (~ mmx
(2)
(1)
54
Supplementary
Combining (1) and (2) gives the EXIT Chart of the LDPC code:
The initial condition is given by .
The condition:
ensures the convergence of BP algorithm to an error-free codeword.
) , , ( 2)1()( lv
lv xFx
0)0( vx
1) ,0 [ ,) , , ( 2 xxxF
55
Supplementary
EXIT Chart associated with LDPC code: EXtrinsic Information Transfer Chart, a technique to aid the construction
of iteratively-decoded error-correcting codes (LDPC codes and Turbo codes).
Depicted the explicit relation of the MI from iteration l – 1 to iteration l.
If there are two components which exchange messages, the behavior of the decoder can be plotted on a two-dimensional chart. One component:
Input: horizontal axis Output: vertical axis
The other component: Input: vertical axis Output: horizontal axis
56
Supplementary
57
Supplementary
For a successful decoding, there must be a clear swath between the curves so that:
Iterative decoding can proceed from 0 bits of extrinsic information to 1 bit of extrinsic information.