0% found this document useful (0 votes)
63 views8 pages

Multimedia Systems: CSC 461/561 Video Compression

This document discusses video compression techniques. It explains that video compression removes temporal redundancy between consecutive video frames by using motion estimation and motion compensation to encode the differences between frames. It provides examples of how motion vectors represent block movements between reference and current frames. It also gives an overview of video encoding and decoding processes and provides examples of early video compression standards like H.261 and H.263.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
63 views8 pages

Multimedia Systems: CSC 461/561 Video Compression

This document discusses video compression techniques. It explains that video compression removes temporal redundancy between consecutive video frames by using motion estimation and motion compensation to encode the differences between frames. It provides examples of how motion vectors represent block movements between reference and current frames. It also gives an overview of video encoding and decoding processes and provides examples of early video compression standards like H.261 and H.263.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

CSc 461/561

Multimedia Systems
Video compression

Jianping Pan
Spring 2006

1/27/06 CSc 461/561 1

Temporal redundancy
• Video is a sequence of images
– e.g., motion JPEG: M-JPEG
• Correlation between consecutive images
– “difference” due to object or camera motion

Frame i Frame i+1 Direct Difference


1/27/06 CSc 461/561 2

1
Motion estimation
• Macro-block: 16x16 pixels
– find a similar macro-block in the reference frame
– record the motion “vector”: (dx,dy)=(x1-x0,y1-y0)
– encode the “difference” between two macro-blocks

(x1, y1)
reference
frame
(x0, y0)

current
1/27/06 CSc 461/561 frame 3

Motion vector example

1/27/06 CSc 461/561 4

2
Macro-block similarity
• Similarity measures
– mean square error (MSE)
– mean absolute distance (MAD)

1/27/06 CSc 461/561 5

Search window
• Rectangle: x: [x0-p, x0+p]; y: [y0-p,y0+p]
• (2p+1)2 all possible reference macro-blocks
– need better search algorithms!

1/27/06 CSc 461/561 6

3
2-D Log motion search

1/27/06 CSc 461/561 7

Hierarchical motion search

1/27/06 CSc 461/561 8

4
Group of pictures
• B: bidirectionally interpolated frame
• P: predicted frame
• I: intra-coded frame

……

I P P P … P P P 1 2 3 4 5 6 7
I B B P B B P
1/27/06 CSc 461/561 9

Video encoder
Intra
Input DCT Entropy
Q
frame Coding
-1
Inter Q
Pred. error
I DCT
Intra Recon
Pred error
Prediction

Inter Recon.
MC Memory
Prediction

Motion vectors
ME Reconstructed
Previous frame
1/27/06 CSc 461/561 10

5
Video decoder
• Decoder is simpler than encoder
– usually only the decoder is standardized
– allow innovations at encoders
Intra Reconstructed frame
-1
Entropy Q I DCT
Decoding
Recon
Inter
Pred error MC Memory
Prediction
Motion vectors
Reconstructed
Previous frame
1/27/06 CSc 461/561 11

H.261
• H.261: p*64Kbps (p: 1~30)
– ITU-T recommendation (1990)
– real-time video telephony over ISDN (2B+D)
• end-to-end delay less than 150ms
– QCIF (required): 176x144, 4:2:0, ~30fps,3 GOB
– CIF (optional): 352x288, 4:2:0, ~30fps, 12GOB
– GOB: group of 3x11 macro-blocks
• 1 macro-block: 4 Y block, 1 Cr block, 1 Cb block
• 1 block: 8x8 pixel (e.g., in luminance)
1/27/06 CSc 461/561 12

6
H.261: more
• I-frame (JPEG-like)
– RGB=>YUV, 8x8 blocks
– DCT
– Scalar quantization
– ZigZag scanning, DC/AC encoding, entropy encoding
• P-frame
– search window p=15 ……
– pixel precision
I P P P … P P P
1/27/06 CSc 461/561 13

H.263
• H.263: initially < 64Kbps; later higher bps
– ITU-T Rec (1995); v2(1998); v3 (2000)
• More video formats
– sub-QCIF, QCIF, CIF, 4CIF, 16CIF
• More motion estimation techniques
– half-pixel precision
– modes: unrestricted motion vector, arithmetic
coding, advanced prediction, PB-frames, etc
1/27/06 CSc 461/561 14

7
This lecture
• Video compression
– motion vector
• how to find a similar macro-block
– generic video encoder/decoder
– examples: H.261/263
• Explore further
– H.263v2 (H.263+) and H.263v3 (H.263++)

1/27/06 CSc 461/561 15

Next lecture
• Multimedia manipulation
– video compression standards
[Ref: Li&Drew Chap 11-12]
• MPEG-1/2/4 [11.2-3, 12.1-2]
• H.264 [12.5]

1/27/06 CSc 461/561 16

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy