Basics of MPEG
Basics
of MPEG
Picture sizes: up to 4095 x 4095
Most algorithms are for the CCIR 601 format for video frames
Y-Cb-Cr color space
NTSC: 525 lines per frame at 60 fps, 720 x 480 pixel luminance frame, 360 x 480 pixel chrominance frame
PAL: 625 lines per frame at 50 fps, 720 x 576 pixel luminance frame, 360 x 576 pixel chrominance frame
SIF (source input format) for digital TV
Luminance resolution: 360 x 240 pixels at 30 fps or 360 x 288 pixels at 25 fps
Chrominance resolution: half the luminance resolution in both dimensions
Detour: Motion Vectors with Subpixel Accuracy
Basics of MPEG
Some highlights:
Interframe predictive coding (P-pictures)
For each macroblock the motion estimator produces the best matching macroblock
The two macroblocks are subtracted and the difference is DCT coded
Interframe interpolative coding (B-pictures)
The motion vector estimation is performed twice
The encoder forms a prediction error macroblock from either or from their average
The prediction error is encoded using a block-based DCT
The encoder needs to reorder pictures because B-frames always arrive late
Sequence layer: picture dimensions, pixel aspect ratio, picture rate, minimum buffer size, DCT quantization matrices
GOP layer: will have one I picture, start with I or B picture, end with I or P picture, has closed GOP flag, timing info, user data
Picture layer: temporal ref number, picture type, synchronization info, resolution, range of motion vectors
Slices: position of slice in picture, quantization scale factor
Macroblock: position, H and V motion vectors, which blocks are coded and transmitted
Picture sizes: up to 4095 x 4095
Most algorithms are for the CCIR 601 format for video frames
Y-Cb-Cr color space
NTSC: 525 lines per frame at 60 fps, 720 x 480 pixel luminance frame, 360 x 480 pixel chrominance frame
PAL: 625 lines per frame at 50 fps, 720 x 576 pixel luminance frame, 360 x 576 pixel chrominance frame
SIF (source input format) for digital TV
Luminance resolution: 360 x 240 pixels at 30 fps or 360 x 288 pixels at 25 fps
Chrominance resolution: half the luminance resolution in both dimensions
Detour: Motion Vectors with Subpixel Accuracy
Find motion vector (u,v) with integer pixel accuracy
Let the MAE be m0
Compute the MAE at its 4-neighbor pixels (m1 .. m4)
Horizontal pixels
Model with the function p(i)=a|i-b|+c
If 2(m3 – m0) < (m4 – m0), the i coordinate is to the left of the center
If (m3 – m0) > 2(m4 – m0), the i coordinate is to the right of the center
Otherwise it is along the center line
Similarly for the vertical direction
Let the MAE be m0
Compute the MAE at its 4-neighbor pixels (m1 .. m4)
Horizontal pixels
Model with the function p(i)=a|i-b|+c
If 2(m3 – m0) < (m4 – m0), the i coordinate is to the left of the center
If (m3 – m0) > 2(m4 – m0), the i coordinate is to the right of the center
Otherwise it is along the center line
Similarly for the vertical direction
Basics of MPEG
•Types
of pictures
–I
(intra) frame
•compressed
using only intraframe coding
•Moderate
compression but faster random access
–P
(predicted) frame
•Coded
with motion compression using past I frames or P frames
•Can
be used as reference pictures for additional motion compensation
–B
(bidirectional) frame
•Coded
by motion compensation by either past or future I or P frames
–D
(DC) frame
•Limited
use: encodes only DC components of intraframe coding
MPEG:
Video Encoding
•The
MPEG standards
–do not define an
encoding process
–define syntax of the
coded stream
– define a decoding
process
MPEG:
Video Encoding
Some highlights:
Interframe predictive coding (P-pictures)
For each macroblock the motion estimator produces the best matching macroblock
The two macroblocks are subtracted and the difference is DCT coded
Interframe interpolative coding (B-pictures)
The motion vector estimation is performed twice
The encoder forms a prediction error macroblock from either or from their average
The prediction error is encoded using a block-based DCT
The encoder needs to reorder pictures because B-frames always arrive late
MPEG:
Structure of the Coded Bit-Stream
Sequence layer: picture dimensions, pixel aspect ratio, picture rate, minimum buffer size, DCT quantization matrices
GOP layer: will have one I picture, start with I or B picture, end with I or P picture, has closed GOP flag, timing info, user data
Picture layer: temporal ref number, picture type, synchronization info, resolution, range of motion vectors
Slices: position of slice in picture, quantization scale factor
Macroblock: position, H and V motion vectors, which blocks are coded and transmitted
Comments
Post a Comment