25
Tammam Tillo, Macro Grangetto, and Gabriella Olmo CSVT, Jan 2008 1

Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

  • Upload
    penda

  • View
    29

  • Download
    0

Embed Size (px)

DESCRIPTION

Redundant Slice Optimal Allocation for H.264 Multiple Description Coding. Tammam Tillo, Macro Grangetto, and Gabriella Olmo. CSVT, Jan 2008. Outline. Introduction Multiple description coding Redundant slice Proposed Algorithm Optimal Allocation Problem Algorithm Implementation - PowerPoint PPT Presentation

Citation preview

Page 1: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Tammam Tillo, Macro Grangetto, and Gabriella Olmo

CSVT, Jan 2008

1

Page 2: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Introduction◦ Multiple description coding◦ Redundant slice

Proposed Algorithm Optimal Allocation Problem Algorithm Implementation Experimental Results

2

Page 3: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Multiple Description Coding (MDC)◦ Single source Multiple Descriptions

◦ D0 < D1, D2

◦ Rsingle_description = R1 + R2 – Rredundancy

Encoder 1

Encoder 2

Central decoder

Side decoder 1

Side decoder 2

Channel I

Channel 2

R1

R2

D1

D2

D0S

S’1

S’2

S’3

Introduced by MD coding 3

I I2i+1

2i

Example

Page 4: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Redundant slice in H.264◦ A slice can be encoded and transmitted twice Called primary slice and redundant slice

◦ QPp < QPr ◦ The redundant slice is used at the decoder side if

the primary slice is lost

QPr

QPp Primary slice

redundant slice

Encoder Decoder

4

Page 5: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

MDC with redundant slices

◦ Simple post and pre-processing + H.264 decoder

I P P I

Primary Slice

Redundant Slice

Source

I P P I Description 1

Description 2

5

Page 6: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Redundant slice◦ QPr > QPp

◦ Not for reference◦ Interlaced with primary slices◦ Drift problem◦ QPr drift redundancy◦ QPr drift (under loss rate p) Dtotal = (1-p)dprimary_slice + p(1-p)(dredundant_slice+dpropagation) + p2dall_loss Rtotal = Rprimary_slice(QPp) + Rredundant_slice(QPr)

6

Page 7: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Impact of loss of a primary slice k on the total distortion of the current GOP with size N ◦

N

ijkmkrkt jddd

1.,, ][Distortion caused by

loss of primary slice k

Distortion of redundant slice k at frame i

Propagated distortion cause by redundant slice k after frame i

...

i i+1

Loss occurs

k

N

7

Page 8: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Decay of propagated distortion [22]◦

dm,k = dr,k -dp,k dr,k when p,k << r,k

◦ f[n]: Power transfer function Representation of distortion attenuation Reasons

Spatial filter such as de-blocking filter Spatial interpolation such as fractional pel ME Intra blocks such as random intra replacement

iN

nkm

N

ijkm nfdjd

1,

1. ][][

]1[,, idd kmkm

...

i i+1

krd , kmd , ]1[, fd km ][, iNfd km

[22] N. Farber, K. Stuhlmuller, and B. Girod, “Analysis of error propagation in hybrid video coding with application to error resilience,” in ICIP, 1999. 8

Page 9: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Evaluation of dm,k ◦

◦ Aligned quantizer

deefeeEd km )(}{ 22,

e: Difference between the primary and redundant reconstruction (drift)f(e): pdf of e

n

jkpkp

kr

kp

kr

kp jejeeef1

,,,

,

,

, )]()([)()(

: Delta function

r

pe

Primary reconstruction

Redundant reconstruction

Source x

Source x

e

f(e)

)( prp je

p

)( prp je e = 0,p, 2p,…f(e) = p/r at p|e

9

Page 10: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Evaluation of dm,k ◦

◦ p,k << r,k dm,k dr,k

2

,

,2

,

1

2

,

3,

1,,

2

,

,2,

112

)]()([)(

kr

kpkr

n

jkr

kp

n

jkpkp

kr

kpkm

jc

dejejeedeefed

Assumption:r,k/p,k = 2n+1dr,k = r,k

2/12

10

Page 11: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Evaluation of dm,k ◦ Not aligned quantizer

r

p e

Reconstructed level

Reconstructed level

Source x

Source x

e

f(e)

r

r1

12

1)(

2,

2/

2/ ,

22,

,

,

kr

krkm

kr

kr

deedeefed

e can be any numberf(e) = 1/r

11

Page 12: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Accuracy of evaluated dm,k

Real distortion – evaluated dm,kReal distortion

12

Page 13: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Total GOP distortion dt,k ◦

Expected GOP distortion caused by loss of slice k at loss rate p◦

Expected GOP distortion caused by random loss of a slice◦

ikr

iN

nkr

iN

nkrkr

iN

nkmkrkt dnfdnfddnfddd .

0.

1.,

1.,, ][][][

ktkp

kktkpk

dppdp

dpdppdpd

,,

,02

,,

)1()1(

)1()1(

N

i

N

iiirip

kk DpDpdD

1 1,,)1(

f[0] = 1

iN

ni nf

0

][

low loss rate

Loss of primary sliceUsing primary slice Loss of primary and redundant slice

ik

krir dD ,,

ik

kpip dD ,,

Expected frame distortion

13

Page 14: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Optimization problem◦

◦ Lagrangian approach: min J = D + R ◦

Dmin

GOP1

,, )( subject to RRRN

iirip

0)1(

0)1(

,

,

.

,

,

.

ir

iri

ir

ip

ip

ip

R

Dpp

R

J

R

Dp

R

J

ir

iri

ip

ip

R

Dp

R

D

,

,

,

,

1,

1,1

,

,

1,

1,

1,

1,

r

r

iir

ir

r

ri

p

p

p

p

R

D

R

D

R

Dp

R

D

R

D

Since Dp,i/ Rp,i is independent of i

14

Page 15: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Optimal conditions◦

Redundant data < primary data i > i+1

1,

1,1

,

,

1,

1,

r

r

iir

ir

r

ri

p

p

R

D

R

D

R

Dp

R

D

15

Page 16: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Encoder

Decoder

QPp QPr,i

Post processing

Channel 1

Channel 2

Channel 1

Channel 2

Preprocessing

Merge

H.264 Standard decoding

Redundant slice

16

Page 17: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Determination of RD parameters◦

◦ H.264 reference software: QPp = QPr,1 + 3log(p1)

QPr,i = QPr,1 + 3log(1/i)

◦ In [22], assuming , deducing

Taking

3

12

285.0QP

RD1,

1,1

,

,

1,

1,

r

r

iir

ir

r

ri

p

p

R

D

R

D

R

Dp

R

D

-

nenf ][

yxyxuuyxtv ddHt ),(),(4

1][

2

22

22

1

1][ uv t

t

Variance of drift v[x,y,t]

Power spectral density of u[x,

y]= v[x,y,0]

Linear system (decoder)

)1()1( )1( ee iNi

Small for serious packet loss17

Page 18: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

(QPi) = QPr,i – QPp ◦ i QPr,i◦ p QPr,i◦ QPr,i

18

Page 19: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Parameters◦ H.264 reference software JM9.4◦ P-slice with 5 reference pictures◦ 5 slices for a CIF picture and 3 slices for a QCIF

picture◦ Bernoulli model for PLR = p ◦ foreman and coastguard at CIF and QCIF format

are used

19

Page 20: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Selection of ◦ Not sensitive to

20

Page 21: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

RD comparisons under different p and N (=0.4)◦ Shorter GOP size for larger PLR

p=0.01p=0.05

p=0.1

N=11

N=21N=45

21

Page 22: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Redundancy (=0.4)◦

i irip

i ir

RR

R

)( ,,

,

p

p

R

D

1,

1,

r

r

R

D

22

Page 23: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Comparisons with other MDC◦ Four descriptions by subsampling CIF to QCIF◦ Two descriptions by separating odd and even

rows Other MDC schemes:N = 21 with P and B picturesExtra computation is needed at the decoder side

23

Page 24: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Central decoder versus side decoder◦ p redundancy (central decoder) and (side

decoder)

No loss

24

Page 25: Redundant Slice Optimal Allocation for H.264 Multiple Description Coding

Central decoder versus side decoder (p=0.05)

25