In the name of Allah the compassionate, the merciful p , f D D - - PowerPoint PPT Presentation

in the name of allah
SMART_READER_LITE
LIVE PREVIEW

In the name of Allah the compassionate, the merciful p , f D D - - PowerPoint PPT Presentation

In the name of Allah the compassionate, the merciful p , f D D IGITAL V IDEO P ROCESSING V P S. Kasaei Room: CE 307 Department of Computer Engineering Sharif University of Technology Sh if U i it f T h l E-Mail: skasaei@sharif.edu


slide-1
SLIDE 1
slide-2
SLIDE 2

In the name of Allah

the compassionate, the merciful p , f

slide-3
SLIDE 3

D V P DIGITAL VIDEO PROCESSING

  • S. Kasaei

Room: CE 307 Department of Computer Engineering Sh if U i it f T h l Sharif University of Technology E-Mail: skasaei@sharif.edu Webpage: http://sharif.edu/~skasaei Webpage: http://sharif.edu/ skasaei

  • Lab. Website: http://ipl.ce.sharif.edu
slide-4
SLIDE 4

ACKNOWLEDGMENT ACKNOWLEDGMENT

Most of the slides used in this course have been provided by: Prof Yao Wang (Polytechnic provided by: Prof. Yao Wang (Polytechnic University, Brooklyn) based on the book: Video Processing & Communications g by: Yao Wang, Jom Ostermann, & Ya-Oin Zhang Prentice Hall, 1st edition, 2001, ISBN: 0130175471. [SUT Code: TK 5105 2 W36 2001] [SUT Code: TK 5105 .2 .W36 2001].

slide-5
SLIDE 5

CHAPTER 14

Error Control in Video Communications

slide-6
SLIDE 6

OUTLINE OUTLINE

Necessity & challenge for error control

Kas

y g

Characteristics of typical applications & networks Overview of techniques

saei

Error resilient encoding Error concealment decoding Encoder-decoder-network interactive error control

6

slide-7
SLIDE 7

VIDEO COMMUNICATION SYSTEM VIDEO COMMUNICATION SYSTEM

Kasaei

A typical video communication system.

7

slide-8
SLIDE 8

CHALLENGE FOR VIDEO COMMUNICATIONS COMMUNICATIONS

Effective video communication includes:

Kas

Reduction of video data rate. Handling errors & losses in communication networks.

Data communications are not usually subject to

saei

Data communications are not usually subject to

strict delay constraints.

Can be handled using network protocols; that use

resubmission to ensure error-free delivery. y

Transmission error categories include:

Random bit errors.

Caused by imperfections of physical channels;

bit inversion/insertion/deletion.

Erasure errors.

C d b k t l t i k t t k l b t

Caused by packet lost in packet networks, long burst errors

in storage media due to physical defects, system failures/link downs, random bit errors in VLC coded streams.

8

slide-9
SLIDE 9

CHALLENGE FOR VIDEO COMMUNICATIONS COMMUNICATIONS

Real networks are unreliable

Kas

In wireless networks: random bit errors, long burst

errors, & possibly link downs.

In the Internet: packet loss & variable delay due to

saei

In the Internet: packet loss & variable delay due to network congestion.

For real-time applications:

Excessive delay = loss Excessive delay = loss.

Real networks are heterogeneous in bandwidth

& reliability & reliability.

Video signals are delay-sensitive:

O l i i f

One cannot rely on retransmission for error

control because of the stringent delay requirement!

9

slide-10
SLIDE 10

DIFFICULTIES OF CONVENTIONAL SOURCE CODING TECHNIQUE CONVENTIONAL SOURCE CODING TECHNIQUE

Conventional source coding techniques difficulties:

Kas

g q

Optimal performance is obtained only for fixed rates &

perfect channels.

saei

It results in a poor reconstruction quality when parts of

coded data are lost.

10

slide-11
SLIDE 11

DIFFICULTIES OF CONVENTIONAL SOURCE CODING TECHNIQUE CONVENTIONAL SOURCE CODING TECHNIQUE

Compressed video data is very sensitive to

Kas

p y transmission errors because of utilizing:

Variable length coding (VLC). Temporal predictive coding. saei

p p g

Spatial predictive coding.

All contribute to error propagation within the All contribute to error propagation within the

same frame as well as the following frames:

One bit error or packet loss can render the following

received data useless received data useless.

11

slide-12
SLIDE 12

SPATIOTEMPORAL ERROR PROPAGATION SPATIOTEMPORAL ERROR PROPAGATION

Kasaei

Illustration of spatiotemporal error propagation Illustration of spatiotemporal error propagation.

12

slide-13
SLIDE 13

DRIFT PROBLEM (REFERENCE MISMATCH) (REFERENCE MISMATCH)

Motion compensated temporal prediction

Kas

Motion compensated temporal prediction

should be retained to preserve the coding efficiency.

saei

efficiency.

But, loss in a previous frame can cause

mismatch between the reference frame used in the encoder & that in the decoder.

Encoder & decoder will be out of sync.

13

slide-14
SLIDE 14

DRIFT PROBLEM (REFERENCE MISMATCH) (REFERENCE MISMATCH)

Kasaei

Di t ti

refere

Satellite dish

Distortion

ref ence

Transmission

ference encoder decoder

14

slide-15
SLIDE 15

EFFECT OF TRANSMISSION ERRORS EFFECT OF TRANSMISSION ERRORS

Kasaei

coded, no loss 3% loss 5% loss 10% loss

15

Reconstructed video frames using a H.263 coded sequence, subject to packet losses.

slide-16
SLIDE 16

CHANNEL CODING BASICS CHANNEL CODING BASICS

Channel coding: forward error correction

Kas

C g f (FEC):

Adding redundancy bits on compressed source

bit to e able e

  • detectio & co

ectio

saei

bits to enable error detection & correction.

Simple example:

Adding a parity check bit at the end of a block of data

stream can detect all single bit errors.

Channel coding rate:

For every k source bits, add l channel bits, to create

n=k+l bits channel coding rate r=k/n.

Well designed code (e.g., Reed-Solomon (RS) code) can

correct t=l/2 error bits in each n-bit block.

16

slide-17
SLIDE 17

CHANNEL CODING BASICS CHANNEL CODING BASICS

Classical Shannon information theory states that:

Kas

One can separately design the source & channel coders

to achieve error-free delivery of a compressed bit stream, as long as the source is represented by a rate below the channel capacity

saei

below the channel capacity.

Source coding minimizes the bitrate necessary to satisfy a

distortion criterion (Shannon rate-distortion theory).

Channel coding adds just enough redundancy bits to

d th h l t t th itt d l l reduce the raw channel error rate to the permitted level.

Such ideal error-free delivery requires infinite

delays in implementing FEC delays in implementing FEC.

It is only valid for stationary source & channel. Requires processing of infinitely long blocks of data.

Delay = infinity! Delay = infinity! 17

slide-18
SLIDE 18

FEC FOR VIDEO TRANSMISSION FEC FOR VIDEO TRANSMISSION

For wireless networks, FEC is necessary to reduce raw bit

error rates

Kas

error rates.

For the Internet, errors are mainly due to congestion-

caused packet losses.

FEC can be applied across packets to correct/detect packet

losses

saei

losses.

Unequal error protection (UEP): Using stronger channel codes (r=k/n smaller) for more

“important” bit streams (base layer).

Best implemented with rate compatible punctured Best implemented with rate-compatible punctured

convolutional (RCPC) code.

18

slide-19
SLIDE 19

TRANSMISSION ERROR RESILIENCE TRANSMISSION ERROR RESILIENCE

Joint source & channel coding is often a

Kas

g more riable scheme.

Which allocates a total amount of redundancy

between the source & channel coding.

saei

g

All error resilient encoding methods work

d thi i under this promise.

This is usually accomplished by carefully This is usually accomplished by carefully

designing both the predictive coding loop & the VLC, to limit the extend of error propagation propagation.

19

slide-20
SLIDE 20

ERROR CONCEALMENT ERROR CONCEALMENT

When a part of image is missing due to

i i h d d i h

Kas

transmission errors, the decoder estimates them based on surrounding received samples.

This is accomplished by using the inherent correlation

among spatially & temporally adjacent samples

saei

among spatially & temporally adjacent samples.

It does not employ any additional bitrates. ☺

But adds computational complexity at the decoder But, adds computational complexity at the decoder.

To facilitate error concealment in the decoder, the

codec & the network transmission protocol must p

  • cooperate. For example:

Important parts should be assigned as a more stringent

set of QoS parameters. N t k id f db k h l

Network may provide a feedback channel.

The encoder does not use this part for prediction.

20

slide-21
SLIDE 21

TYPICAL VIDEO APPLICATIONS & COMMUNICATION NETWORKS & COMMUNICATION NETWORKS

Some basic definitions:

Kas

Latency: maximally allowed average end-to-end delay. Jitter: delay variation.

R l ti d li d d t t f d t

saei

Real-time delivery: compressed data are transferred at

a speed that matches the coded video source rate.

21

slide-22
SLIDE 22

QOS REQUIREMENTS

OF TYPICAL VIDEO APPLICATIONS OF TYPICAL VIDEO APPLICATIONS

Video applications consist of:

Kas

pp

Interactive two-way visual communications. One-way video streaming.

O id d l di

saei

One-way video downloading.

No difference from file downloading.

22

slide-23
SLIDE 23

INTERACTIVE TWO-WAY VISUAL COMMUNICATIONS COMMUNICATIONS

Examples include:

T l f i Vid l h Vi l l

Kas

Teleconferencing, Video telephony, Virtual classrooms. They have very stringent delay requirements.

saei

The latency & jitter must be kept within a certain

limit.

For intercontinental telephone conversations (&

video conferencing), the ITU-T G.114 standard recommends:

<=150 ms (one way) desired <=150 ms (one way) desired. 150-400 ms can be acceptable. >400 ms not acceptable. Audio & video must be in sync to maintain lip

h i ti synchronization.

Both encoding & decoding must be completed in real-time.

23

slide-24
SLIDE 24

INTERACTIVE TWO-WAY VISUAL COMMUNICATIONS COMMUNICATIONS

Only low-to-intermediate video quality is

Kas

O y q y required: ☺

QCIF at 5-10 fps acceptable for video telephony.

CIF f i f f id

saei

CIF at 10-20 fps satisfactory for video

conferencing.

Moderate amount of compression/transmission

p artifacts can be tolerated.

R

id h li it d ti i t

Raw video has limited motion easier to

code & conceal errors. ☺

24

slide-25
SLIDE 25

ONE-WAY VIDEO STREAMING ONE WAY VIDEO STREAMING

Examples include:

Kas

p

TV broadcasting, Multicast of a conference/

event, Video streaming over the Internet.

saei

Except for live broadcast/multicast/

unicast, it can precompress the video, but decoding must be done in real-time decoding must be done in real-time.

Initial play-out delay can be up to a few

seconds: seconds:

Receiver uses a large smoothing buffer to store

several seconds of video frames before starting to display the first received frame to display the first received frame.

25

slide-26
SLIDE 26

ONE-WAY VIDEO STREAMING ONE WAY VIDEO STREAMING

Bitrate (video quality) can vary widely

Kas

( q y) y y depending on the application.

saei

Recipients of the same video source may

be connected to the network with different access links (e g wireless modem to 100 access links (e.g., wireless modem to 100 mbps fast Ethernet) & the receiving terminal may have varying computing power (palm vs. laptop vs. desktop):

Scalable coding is desired.

26

slide-27
SLIDE 27

ONE-WAY VIDEO DOWNLOADING ONE WAY VIDEO DOWNLOADING

Precoded video (& audio) is downloaded to a

Kas

( ) destination.

saei

Receiving terminal starts to play the

material when the entire video has arrived.

It is the least demanding application in

terms of delay requirement terms of delay requirement.

However, excessive delay may cause the

receiver to abort downloading.

27

slide-28
SLIDE 28

ONE-WAY VIDEO DOWNLOADING ONE WAY VIDEO DOWNLOADING

Scalable coding & progressive transmission

Kas

g p g are desirable.

saei

Retransmission can be used to handle any

lost or erroneously delivered part of the data data.

No special error control mechanisms are No special error control mechanisms are

necessary beyond those typically used for data transfer.

28

slide-29
SLIDE 29

MAJOR TYPES

OF COMMUNICATION NETWORKS OF COMMUNICATION NETWORKS

Public switched telephone network (PSTN):

Kas

p ( )

Modem link, 56 kbps, QCIF. Asymmetric digital subcarrier loop (ADSL):

saei

Asymmetric digital subcarrier loop (ADSL): Streaming MPEG-1 & MPEG-2 movies through

video-on-demand services.

Integrated service digital network (ISDN): Circuit switching (a particular conversation once Circuit switching (a particular conversation once

the connection is established), very reliable, px64 kbps (p=1-24), QCIF @ 5-10 fps for videophone, CIF@ 15-30 fps for video conferencing CIF@ 15-30 fps for video conferencing.

29

slide-30
SLIDE 30

MAJOR TYPES

OF COMMUNICATION NETWORKS OF COMMUNICATION NETWORKS

Broadband ISDN (B-ISDN):

Kas

( )

Virtual ATM packet-switching using fixed-size small cells,

quite reliable.

Cell loss rate (CLR) 10-6 -10 -4, >=155 mbps, real-time

saei

( ) , p , applications. Internet:

Is composed of multiple physical networks interconnected

by computers (routers).

Most widely used physical network for supporting local

area network (LAN) is the Ethernet which has a rate of 10-100 mbps.

Interconnected LANs in a local region form a metropolitan

area network (MAN) area network (MAN).

Several interconnected MANs form a wide area network

(WAN).

30

slide-31
SLIDE 31

MAJOR TYPES

OF COMMUNICATION NETWORKS OF COMMUNICATION NETWORKS

Internet:

Kas

Transport of packets is governed by the TCP/IP protocol

suite which includes:

Internet protocol (IP); the lower layer protocol on top of

saei

Internet protocol (IP); the lower layer protocol on top of

which UDP & TCP operate.

User datagram protocol (UDP); for unreliable

connectionless packet-delivery service. p y

Transmission control protocol (TCP); for reliable stream

service.

Guarantees delivery by using automatic retransmission request

(ARQ) (ARQ).

31

slide-32
SLIDE 32

MAJOR TYPES

OF COMMUNICATION NETWORKS OF COMMUNICATION NETWORKS

Internet:

Kas

The Internet & its associated TCP/IP protocol was

  • riginally designed for data communications which are

not delay sensitive.

saei

y

For real-time applications the retransmission

mechanism in TCP is not appropriate.

New protocols have been developed for real-time data

p p transport:

Real-time transport protocol (RTP) & its companion

real-time control protocol (RTCP); which are periodically f db k h l b h k sent across a feedback channel to probe the network status.

Real-time streaming protocol (RTSP).

Et

Etc.

32

slide-33
SLIDE 33

MAJOR TYPES

OF COMMUNICATION NETWORKS OF COMMUNICATION NETWORKS

Wireless networks:

Kas

W

Cellular networks: mobile voice, wireless

modems, under 20 kbps, can be connected to a packet based wireless data network (64 384

saei

packet-based wireless data network (64-384 kbps) [vehicular].

Wireless LAN: mobile IP, wireless ATM, IEEE

802 11b 11 b 802 11 56 b [i d ] 802.11b: 11 mbps, 802.11a: 56 mbps [indoor].

Broadband wireless IP networks: access to the

Internet through small rooftop antennas communicating to a base station using microwave radio, multichannel multipoint distribution service (MMDS): 1mbps, local multipoint distribution service (LMDS): 100-600 mbps [indoor].

33

slide-34
SLIDE 34

CHARACTERISTICS OF MAJOR VIDEO COMMUNICATIONS APPLICATIONS COMMUNICATIONS APPLICATIONS

Kasaei

34

H.262: MPEG-2, H.222.0: MPEG2 systems, BER: bit-error rate.

slide-35
SLIDE 35

ERROR CONTROL TECHNIQUES

IN VIDEO COMMUNICATIONS IN VIDEO COMMUNICATIONS

Error control techniques include:

Kas

Error control techniques include: Transport-level error control. Error-resilient encoding (ERE).

saei

g ( )

Decoder error concealment (DEC). Encoder-decoder-network interactive error

control (EDNIER). control (EDNIER).

Decoder

(Error Concealment)

Encoder

(Error Resilient)

Network

(Transport)

35

slide-36
SLIDE 36

TRANSPORT-LEVEL ERROR CONTROL TRANSPORT LEVEL ERROR CONTROL

Transport-level error control techniques:

Kas

Transport level error control techniques:

Applied on coded video streams. Forward error correction (FEC):

  • Error detection & correction through FEC; increases

saei

g ; transmission overhead.

Error-resilient packetization & multiplexing:

  • Error can be isolated within a small region, unequal-sized

packets. packets.

FEC & error-resilient techniques are low level error

control mechanisms.

36

slide-37
SLIDE 37

TRANSPORT-LEVEL ERROR CONTROL TRANSPORT LEVEL ERROR CONTROL

Delay-constrained retransmission:

Kas

y

  • Retransmission of lost packets.
  • For non-real-time data transmission:

Automatic retransmission request (ARQ).

  • For real-time data transmission:

saei

  • For real-time data transmission:

Delay-constrained retransmission. Combination of layered coding with prioritized retransmission.

By placing base layer packets in front of the transmission queue

to increase the number of retransmission trials for the base layer. y

Sending multiple copies of a lost packet.

Unequal error protection:

  • Picture header & other side information are protected to be

delivered with a much lower error rate delivered with a much lower error rate.

  • Retransmission & strong FEC can be applied on the base

layer.

  • Using different transport protocols.

37

slide-38
SLIDE 38

ERROR-RESILIENT ENCODING ERROR RESILIENT ENCODING

Error resilient encoding (ERE) techniques:

Kas

Error-resilient encoding (ERE) techniques: Source coding methods (robust to transmission errors):

saei Basic idea: intentionally insert redundancy in source

coding to help the decoder to recover bit errors.

Design goal: minimize the redundancy to achieve a

g g y desired level of resilience.

These techniques include:

Error isolation (part of H.263/MPEG-4):

(p )

Inserting resynchronization markers, data partitioning. Robust binary encoding (part of H.263/MPEG-4): Error resilient entropy coding (EREC), reversible VLC

(RVLC).

38

slide-39
SLIDE 39

ERROR-RESILIENT ENCODING ERROR RESILIENT ENCODING

Kasaei

RVLC codewords can be parsed in both forward & backward directions (making it possible to recover more data from a corrupted data stream). MPEG-4 syntax is assumed in the figure, but the basic principle holds true for

39

  • ther RVLC-coded data as well.
slide-40
SLIDE 40

ERROR-RESILIENT ENCODING ERROR RESILIENT ENCODING

Error-resilient prediction (part of H.263/MPEG-4):

Kas

Insertion of intra-blocks or frames, independent segment

prediction (spatiotemporal prediction within same segments).

Joint source & channel coding:

Q ti ti d t di g t th d & FEC

saei

Quantization and entropy coding at the source coder & FEC

and modulation schemes at the channel coder.

40

slide-41
SLIDE 41

ERROR-RESILIENT ENCODING ERROR RESILIENT ENCODING

Layered coding with unequal error protection:

Kas

y g q p

The most promising approach for combating channel

errors.

Base layer provides acceptable quality, enhancement saei

layer refines the quality.

Base layer transmitted in error-free channel (strong

FEC + ARQ).

Good for a network with differentiated service

(do NOT exist today over the Internet, may become part of emerging wireless standards).

Problems: Problems:

  • Any error in the base layer causes severe

degradation.

  • Repetitive ARQ may incur unacceptable delay,

Repetitive ARQ may incur unacceptable delay, strong FEC may be too complex or cause extra delay.

  • The enhancement layer is useless by itself.

41

slide-42
SLIDE 42

ERROR-RESILIENT ENCODING ERROR RESILIENT ENCODING

Kasaei

Block diagram of a system using layered coding & prioritized transport.

42

slide-43
SLIDE 43

ERROR-RESILIENT ENCODING

(GENERIC TWO DESCRIPTION CODER) (GENERIC TWO DESCRIPTION CODER)

Kasaei

Decoder 1

Decoded Signal S1

MDC Encoder Channel 1 Decoder Ch l 2

Source Signal

from S1 (D1). D d d S1 (R1)

Decoder Channel 2

Decoded Signal from S1 & S2 (D0). S2 (R2)

Decoder 2

Decoded Signal from S2 (D2) Balanced MDC: R1=R2, D1=D2. R: bitrate, D: distortion, S: signal. 43 (D2).

MDC Decoder

R: bitrate, D: distortion, S: signal.

slide-44
SLIDE 44

ERROR-RESILIENT ENCODING ERROR RESILIENT ENCODING

Multiple-description (bit stream) coding (MDC):

Kas Several correlated descriptions (bit streams) of the

same source signal are generated & transmitted over separate channels.

Any description provides low but acceptable quality. saei Additional descriptions provide incremental

improvements.

No retransmission required low delay ☺ But, less correlation reduced coding efficiency

But, less correlation reduced coding efficiency

Design goal: maximize the robustness to channel

errors at a permissible level of redundancy.

Assumptions:

  • Existence of multiple channels between source & destination
  • Existence of multiple channels between source & destination.
  • Independent error & failure events.
  • Probability that all channels fail simultaneously is low.
  • Good model for the Internet & wireless networks when data

are properly packetized & interleaved. p p y p

44

slide-45
SLIDE 45

REDUNDANCY RATE-DISTORTION REDUNDANCY RATE DISTORTION

Kas

D0 D1

saei

Rate-Distortion (RD) Function

D1

Redundancy Rate-Distortion (RRD) Function

D0

*

D R

*( )

(SDC) D R

0 ( ) (MDC)

ρ D D

1

( ; )

*

ρ Design criteria for MD coders:

R R* R

D R

0 ( ) (SDC)

ρ ρ Design criteria for MD coders:

Minimize D1 for a given ρ, for fixed R* or D0

*.

Minimizing the average distortion given channel loss rates, for

a given total rate a given total rate.

Can easily vary the ρ vs. D1 trade-off to match

network conditions.

45

slide-46
SLIDE 46

CHALLENGE IN DESIGNING MD VIDEO CODER CHALLENGE IN DESIGNING MD VIDEO CODER

To achieve a high coding efficiency, the

Kas

g g y, encoder should retain the temporal prediction loop. Sh ld h di i b b d

saei

Should the prediction be based on

reconstruction from both descriptions or individual descriptions? individual descriptions?

Prediction based on two-description

reconstruction:

Higher prediction efficiency. Mismatch problem at decoder.

46

slide-47
SLIDE 47

CHALLENGE IN DESIGNING MD VIDEO CODER CHALLENGE IN DESIGNING MD VIDEO CODER

Prediction based on single-description

Kas

g p reconstruction:

Lower prediction efficiency.

N i h bl

saei

No mismatch problem. How to provide a proper trade-off between

prediction efficiency & mismatch: prediction efficiency & mismatch:

Predict based on two-description

reconstruction, but explicitly code the i t h mismatch error.

47

slide-48
SLIDE 48

VIDEO REDUNDANCY CODING

IN H.263+ IN H.263+

Coding even frames & odd frames as separate

Kas

Coding even frames & odd frames as separate

threads:

High redundancy (~30%) due to reduced prediction

i b f l di t b t f

saei

gain; because of longer distance between frames.

Hard to vary the redundancy based on channel loss

characteristics.

Even frames Even frames.

48

Odd frames.

slide-49
SLIDE 49

MULTIPLE DESCRIPTION MOTION COMPENSATION (MDMC) (WANG & LIN 2001) COMPENSATION (MDMC) (WANG & LIN, 2001)

A description contains even (or odd) frames only,

but each frame is predicted (central predictor) from

Kas

but each frame is predicted (central predictor) from both even & odd past frames.

Code the central prediction error:

saei

Code the central prediction error:

Sufficient if both descriptions are received.

To avoid mismatch a side predictor for even frames To avoid mismatch, a side predictor for even frames

predicts only from the past even frame, & the mismatch signal (difference between central & side prediction) is also coded.

The predictors & the mismatch error quantizer

control the redundancy of the coder, & can be designed based on the channel loss characteristics. designed based on the channel loss characteristics.

49

slide-50
SLIDE 50

SPECIAL CASE: TWO-TAP PREDICTOR

Kas

MV1

1

a MV2 ,

2

a

saei

~ ) ( ˆ ) ( : error prediction Central ) 2 ( ~ ) 1 ( ~ ) ( ˆ : predictor Central

2 1

→ − = − + − = (n) e n n (n) e n a n a n ψ ψ ψ ψ ψ MV1 ,

1

a MV2 MV1 ~ ~ : Send ~ ) ( ˆ ) ( ˆ : error Mismatch ) 2 ( ~ ) ( ˆ : predictor Side ) ( ) ( p

1 1 1 1 3 1

→ − − = − = (n) e (n) e (n) e (n) q n n (n) e n a n ( ) ( ) ψ ψ ψ ψ ψ ψ

n-3 n-2 n-1 n

1 , 1 : predictor leaky

  • Non

MV2 MV1, , , : Send

3 2 1 1

= = + a a a (n) e (n) e

)) 2 ( ) 1 ( b th (h i d d i ti b th If

MV2 ,

3

a

)) 2 (

  • nly

(have received is n descriptio

  • ne

If ) ( ) ( ~ ) ( ˆ ) ( )) 2 ( ), 1 ( both (have received ns descriptio both If

1

n n q n (n) e n n n n − + = + = − − ψ ψ ψ ψ ψ ψ

50

) ( ) ( ~ ~ ) ( ˆ ) (

1 1 1 1

n q n (n) e (n) e n n + = + + = ψ ψ ψ

slide-51
SLIDE 51

RRD PERFORMANCE

OF VRC & MDMC OF VRC & MDMC

Kasaei

51

slide-52
SLIDE 52

SAMPLE RECONSTRUCTED FRAMES

(10% RANDOM PACKET LOSS) (10% RANDOM PACKET LOSS)

Kasaei

MDMC

52

VRC

slide-53
SLIDE 53

DECODER ERROR CONCEALMENT DECODER ERROR CONCEALMENT

Decoder error concealment (DEC):

Kas

Decoder error concealment (DEC):

Due to various constrains (coding delay,

implementation complexity, availability of a good d l) d d id bi ill

saei

source model) a coded video bit stream still possesses a certain degree of statistical redundancy.

Error concealment recovers lost/damaged regions

based on image/video characteristics & human visual system (HVS) properties at the decoder. y ( ) p p

Decoder optimization issue, is not a part of video

coding standard! D d th k t diff i th i

Decoders on the market differ in their error

concealment capabilities.

53

slide-54
SLIDE 54

DECODER ERROR CONCEALMENT DECODER ERROR CONCEALMENT

Kasaei

Without concealment. With concealment.

54

slide-55
SLIDE 55

DECODER ERROR CONCEALMENT DECODER ERROR CONCEALMENT

Basic idea:

Kas Recover damaged regions by interpolating from

surrounding (in the same frame & in nearby frames) regions.

Basic error concealment techniques include: saei Basic error concealment techniques include:

Recovery of texture information: motion-compensated

temporal interpolation, spatial interpolation, maximally smooth recovery (spatiotemporally smoothly connected pels). pels).

Motion-compensated temporal interpolation:

  • Replaces a damaged MB by its corresponding MB in the

reference frame. If the MV is also lost it has to estimate the MV first;

  • If the MV is also lost, it has to estimate the MV first;

typically by copying the MV of the MB above.

  • Simple & quite effective, if the data was appropriately

partitioned.

Maximally smooth recovery (Wang/Zhu 1993): Maximally smooth recovery (Wang/Zhu, 1993):

  • Estimates the missing DCT coefficients in a block so

that a combination of spatial & temporal smoothness measure is maximized.

55

slide-56
SLIDE 56

DECODER ERROR CONCEALMENT DECODER ERROR CONCEALMENT

Recovery of coding modes & motion vectors:

Kas Mean, median, set to zero.

Syntax-based repair:

Directly detects & repairs errors in the bit stream (due saei

to few valid combinations of codewords).

56

slide-57
SLIDE 57

ENCODER-DECODER-NETWORK ERROR CONTROL ERROR CONTROL

Encoder-decoder-network interactive error control

Kas

Encoder decoder network interactive error control

(EDNIER):

Sender & receiver cooperate in the process of error

control using a backward channel from the decoder to

saei

g the encoder.

It can be realized at either the source coding or the

transport-level.

At the source coder, coding parameters can be adapted

based on the feedback information from the decoder.

At the transport-level, the feedback information can be

employed to change the percentage of the total employed to change the percentage of the total bandwidth used for FEC or retransmission.

Feedback message is not a part of the video syntax but

is transmitted in a different layer of the protocol stack (in which control information is exchanged) (in which control information is exchanged).

Feedback channel not necessarily involves extra

coding delay.

57

slide-58
SLIDE 58

ENCODER-DECODER-NETWORK ERROR CONTROL ERROR CONTROL

B i d d d t k i t ti t l

Kas

Basic encoder-decoder-network interactive error control

techniques include:

Coding-parameter adaptation based on

h l di i i di ll i &

saei

channel conditions: periodically estimate & update the QoS parameters (bandwidth, delay, packet loss rates), appropriately y, p ), pp p y determine the coding parameters (intra- block rate, frequency of synchronization markers range of prediction) markers, range of prediction).

Changes intra-rate based on average loss rates.

58

slide-59
SLIDE 59

ENCODER-DECODER-NETWORK ERROR CONTROL ERROR CONTROL

Reference picture selection based on feedback

Kas

Reference picture selection based on feedback

information (part of H.263/MPEG-4): decides to code the next P-frame relative not to the most recent frame:

Following a damaged frame (feedback info from

i ) d g d i f

saei

receiver), uses undamaged previous frame as reference frame for temporal prediction.

Error tracking based on feedback information:

determines which MBs are affected following a lost MB (feedback info), avoids using those MBs as reference pixels.

Requires a feedback channel, not necessarily involving

extra coding delay. g y

Retransmission without waiting. Multiple path transport with multiple bit stream coding.

59

slide-60
SLIDE 60

ENCODER-DECODER-NETWORK ERROR CONTROL ERROR CONTROL

Kasaei

Illustration of error propagation when error tracking is used & damaged blocks are intra-coded upon the receipt of the negative acknowledgement (NACK) information .

60

slide-61
SLIDE 61

VIDEO TRANSPORT USING PATH DIVERSITY VIDEO TRANSPORT USING PATH DIVERSITY

Kas

Wireless ad hoc networks

saei

Wireless ad hoc networks, cellular/WLAN with MIMO antennas, Internet with different relay servers.

L a p t o p c o m p u t e r L a p t o p c o m p u t e r

A

MD/Layered Encoder

L a p t o p c o m p u t e r L a p t o p c o m p u t e r L a p t o p c o m p u t e r

A B

MD/Layered Decoder

61

L a p t o p c o m p u t e r

slide-62
SLIDE 62

WHY USING MULTIPLE PATHS WHY USING MULTIPLE PATHS

Enables sending high bandwidth signal

Kas

g g g (video) that exceeds the capacity of a single path (e.g., low bandwidth wireless links).

saei

Can withstand individual path failures in

wireless networks or excessive delay due to ti ti l th i th congestion on a particular path in the Internet.

Enables traffic dispersion & load balancing,

which in turn helps to reduce congestion & consequently packet losses consequently packet losses.

62

slide-63
SLIDE 63

WHY USING MULTIPLE PATHS WHY USING MULTIPLE PATHS

If one path is known to be better than the

Kas

If one path is known to be better than the

  • ther, or if it is feasible to set up such a

path, use layered coding.

saei

If the paths are symmetric in QoS & no

p y Q reliable path can be set up, use MDC.

63

slide-64
SLIDE 64

VIDEO OVER AD HOC NETWORKS

JOINT WORK WITH SHIVENDRA PANWAR SHUNAN LIN SHIWEN MAO JOINT WORK WITH SHIVENDRA PANWAR, SHUNAN LIN, SHIWEN MAO

Wireless ad hoc networks:

Kas

Has no fixed infrastructure, peer to peer. Neighboring nodes are continuously changing.

saei

Multiple paths exit between two end users &

many proposed routing protocols return multiple paths to destination.

A path may become invalid during a connection

due to a link down.

Proposed solution: Integration of multistream

coding with multipath transport.

64

slide-65
SLIDE 65

VIDEO OVER AD HOC NETWORKS

JOINT WORK WITH SHIVENDRA PANWAR SHUNAN LIN SHIWEN MAO JOINT WORK WITH SHIVENDRA PANWAR, SHUNAN LIN, SHIWEN MAO

Scope of the Project:

Kas

p j

Set-up/update an active path set (Haas,

Cornell).

QoS monitoring of existing paths (Panwar

saei

QoS monitoring of existing paths (Panwar,

Poly).

MDC/LC based on QoS parameters of active

th (W P l ) paths (Wang, Poly).

Testbed development.

65

slide-66
SLIDE 66

PROPOSED SOLUTION: MULTISTREAM CODING + MULTIPATH MULTISTREAM CODING + MULTIPATH TRANSPORT

Kasaei

66

slide-67
SLIDE 67

HOW TO GENERATE MULTIPLE SOURCE

STREAMS? STREAMS?

Trade-off between coding efficiency (due to less

Kas

g y ( correlation) & error-resilience.

We examine 3 types of coding & transport

saei

yp g p schemes:

Multiple description coding. Layered coding with selective ARQ.

y g Q

Reference picture selection based on channel feedback. These schemes differ in:

Requirement for a feedback channel.

q

Delay. Buffer requirement. Video quality under different channel loss patterns.

67

slide-68
SLIDE 68

LAYERED CODING WITH SELECTIVE ARQ LAYERED CODING WITH SELECTIVE ARQ

Kas

Lost Base Layer

saei

Better Path

Base layer is sent on the better path, lost base layer packets are retransmitted over the enhancement layer path, while dropping the corresponding enhancement layer

68

  • packets. Redundancy is due to prediction using base layer reconstruction only.
slide-69
SLIDE 69

REFERENCE PICTURE SELECTION REFERENCE PICTURE SELECTION

Kas

E

saei

Even Frames

Referred to

Odd Frames

Not Referred to Referred to Even/odd frames are sent on separate paths. Predicts damaged frames based on NACK on each path & uses undamaged frames as reference pictures

69

frames as reference pictures. Compatible with the RPS option in H.263+ standard. ☺

slide-70
SLIDE 70

SIMULATION RESULTS

BASED ON MARKOV LINK MODELS BASED ON MARKOV LINK MODELS

Path model: Each path consists of 3 links, chosen

Kas

p , randomly from an available link pool.

Each link is modeled by a 3-state Markov chain (down,

poor, good).

saei

The path is updated frequently.

We run a large set of tests to compare the 3

schemes under different packet loss patterns. schemes under different packet loss patterns.

We investigate the influence of the following

channel characteristics:

Mea lo ate

Mean loss rate. Mean burst length. Symmetric vs. asymmetric paths.

70

slide-71
SLIDE 71

When no feedback or retransmission is allowed, MDC

is significantly better than LC.

Otherwise, LC+ARQ & RPS are better:

RPS is best at low loss rates.

LC ARQ i b tt t hi h l t ( t th f

LC+ARQ is better at higher loss rates (at the expense of

extra delay).

slide-72
SLIDE 72

Simulation Results based on Markov Link Models

Performance of all 3 schemes improves gradually when

Kas

Performance of all 3 schemes improves gradually when

the burst length increases:

When the loss rate is the same, longer bursts means fewer

f ff t d (b t i b tt th d

saei

frames are affected (bursty error is better than random error for compressed video!)

Longer burst lengths increase the diversity gain from using

2 th 2 paths.

This trend reverses when the burst length exceeds more

than 1 frame time.

When the average loss rate is the same, the 3 schemes

perform similar in the symmetric vs. asymmetric cases.

72

slide-73
SLIDE 73

OPNET SIMULATION RESULTS OPNET SIMULATION RESULTS

Kas

  • 16 nodes, 600 m by 600 m, 10 m/s, transmission range=250 m, multipath

ti d i ti (DSR)

saei

routing dynamic source routing (DSR):

73

Mobility can actually help!

slide-74
SLIDE 74

A WIRELESS VIDEO STREAMING TESTBED A WIRELESS VIDEO STREAMING TESTBED

Kasaei

74

The current testbed consists of 4 mobile nodes: 1 source, 1 destination, 2 relays.

slide-75
SLIDE 75

MORE ON THE TESTBED MORE ON THE TESTBED

Testbed Setup:

Kas

Testbed Setup:

Each mobile node is a Thinkpad notebook computer

equipped with IEEE 802.11b cards working in the ad hoc mode.

saei

The source node sends a pre-encoded compressed bit

stream (MDMC or LC) to the destination node via 2 separate relays. Th d ti ti d bl th i d th k t

The destination node assembles the received the packets

from 2 paths, decodes, displays the video in real-time (10 fps).

With the LC scheme the destination node detects & With the LC scheme, the destination node detects &

requests retransmission of lost BL packets, the source node resend appropriate BL packets & drops corresponding EL packets.

75

slide-76
SLIDE 76

MORE ON THE TESTBED MORE ON THE TESTBED

Results:

Kas

Results:

Tested when the nodes are placed in a Polytechnic

building.

With slow moving (walking) of the nodes & limited

saei

g ( g) interference from other traffic, we can get good video quality within both 2 s & 300 ms playout delay.

Results are fairly consistent with the simulations results

i th M k d l i ll ith th MDMC using the Markov model, especially with the MDMC scheme.

76

slide-77
SLIDE 77

SUMMARY OF THE VIDEO OVER AD HOC PROJECT AD HOC PROJECT

Multiple path transport is feasible &

Kas

p p p effective for increasing both throughput & reliability in ad hoc networks.

saei

The right source coding strategy depends

  • n application requirement & path

pp q p conditions:

MDC is effective when:

O t h diff ti l t t t i th

One cannot have differential treatment in the

network layer.

Delay constraint is very stringent & round trip delay

is long is long.

77

slide-78
SLIDE 78

SUMMARY OF THE VIDEO OVER AD HOC PROJECT AD HOC PROJECT

Layered coding is effective when the base layer

Kas

y g y can be transported reliably, through:

A reliable physical channel, if available. Retransmission, if delay is acceptable. saei

, y p

RPS is effective when a feedback channel is

available & channel loss rates are not too high.

But not suitable for video streaming applications But not suitable for video streaming applications

where video is pre-encoded.

Reference: S Mao S Lin YWang & S Panwar ``Video Transport over Ad Reference: S.Mao, S.Lin, Y.Wang, & S.Panwar, Video Transport over Ad

Hoc Networks: Multistream Coding with Multipath Transport,'' IEEE J.

  • Select. Areas Commun., Dec. 2003.

78

slide-79
SLIDE 79

SUMMARY SUMMARY

Transport-level error control:

Kas

p

Guarantees a basic level of quality. Retransmission is effective within the delay

t i t

saei

constraint.

Unequal error protection has practical

difficulties against separation of source coding & transport layer.

Error resilient encoding: Error-resilient encoding: Trade-off coding efficiency for error resilience. Some techniques are only useful for bit-error

q y dominated channels.

79

slide-80
SLIDE 80

SUMMARY SUMMARY

Decoder error concealment:

Kas

Does not involve extra redundancy, motion-

compensated temporal concealment is simple & yet offers visible improvements

saei

& yet offers visible improvements.

Encoder-decoder-network interactive error

control:

Requires feedback info, may not be available. Choice of techniques depends on

underlying application & network. underlying application & network.

80

slide-81
SLIDE 81

HOMEWORK 11 HOMEWORK 11

Reading assignment:

Kas

Reading assignment:

  • Chap. 14.

Computer assignment:

saei

Co pute ass g e t:

Course project.

81

slide-82
SLIDE 82

THE END