ITUT Recommendation H'261 - PowerPoint PPT Presentation

1 / 36
About This Presentation
Title:

ITUT Recommendation H'261

Description:

For each 16 16 macroblock (MB), ME searches the best match in the referenced ... MBA stuffing. TCOEFF. EOB. Fixed length. Variable length. H.263 ... – PowerPoint PPT presentation

Number of Views:133
Avg rating:3.0/5.0
Slides: 37
Provided by: vcCsNt
Category:

less

Transcript and Presenter's Notes

Title: ITUT Recommendation H'261


1
ITU-T Recommendation H.261
2
H.261
  • The Recommendation H.261 describes the video
    coding and decoding methods for the moving
    picture component of audiovisual services
    (videophone, videoconference, etc.) at the rates
    of p64 kbit/s, where p is in the range 1 to 30.

3
H.261 Coder
Video in
DCT
Q
Inverse DCT
Motion Compensation
Loop Filter
4
Motion Estimation
  • For each 16?16 macroblock (MB), ME searches the
    best match in the referenced frame, and returns a
    motion vector MV (X,Y).
  • Both X and Y have integer value not exceeding
    15.
  • Only the difference (residuals) between the MB
    and the best match is DCT encoded

5
Coding of Motion Vectors
  • DPCM
  • Example
  • 14 -13 12
  • -1 -27 25

011 00001010 00000111
6
Scan Line Order, MB by MB
  • Scan Line Order
  • Search Range

Frame n-1
Frame n
7
Motion Compensation Motion Estimation
  • MC is optional for each MB
  • Only one MV for each MB
  • The ME compares a 16x16 macroblock in the
    luminance block (Y) throughout a small search
    area of the previously transmitted frame
  • Both horizontal and vertical components of these
    motion vectors have integer values not exceeding
    15.
  • The MV is used for all 4 Y blocks. The MV for
    both Cb and Cr is derived by halving the
    component values of the MB MV.
  • The displacement with the smallest absolute
    macroblock difference, determined by the sum of
    the absolute values of the pel-to-pel difference
    throughout the block, is considered the MV for
    the particular MB

8
  • Compare the difference between two blocks (one is
    in the current frame, and the other is in the
    reference frame)

p 1, sum of absolute difference p 2, mean
square error

p
-
Current block
Candidate block
9
Quantization
  • Within a MB, the same quantizer is used for all
    coefficient excepts the INTRA dc one
  • of quantizers is 1 for INTRA dc coefficient and
    31 for all other coefficients
  • MB quantization factor, Q, sometimes termed
    MQUANT
  • C(u,v) F(u,v) / 2Q if Q is odd
  • C(u,v) (F(u,v) 1)/2Q if Q is even (Fgt0
    ?, Flt0?-)
  • Quantization for INTRA dc term
  • C (F4) / 8 with inverse F 8C

?2,4, , 62
10
Loop Filter (FIL)
  • The filter is separable into one-dimensional
    horizontal and vertical functions.
  • The function is non-recursive with coefficients
    of ¼, ½, ¼ except at block edges.
  • The function has coefficients of 0, 1, 0 at block
    edges.
  • The filter is switched on/off for all 6 blocks in
    a MB according to MTYPE.

11
H.261 Decoder
Intra
Inverse DCT
Inter
Motion Compensation
Loop Filter
12
H.261 Video Formats
Y pixel
Cb, Cr pixel
Block boundary
13
Arrangement of H.261
352
176
176
176
48
48
288
QCIF
CIF
14
Arrangements of H.261
176
176
144
48
GOB (Group Of Block)
QCIF picture
8
8
16
8
8
16
MB (Macro Block)
15
Positioning of luminance and chrominance samples
Y pixel
Cb, Cr pixel
Block boundary
16
Data Structure of Compressed Bitstream in H.261
Picture Layer
GOB Layer
MB Layer
Block Layer
Fixed Length Code
Variable Length Code
17
Structure of picture layer
  • Picture start code (PSC) (20 bits)
  • 0000 0000 0000 0001 0000
  • Temporal reference (TR) (5 bits)
  • It is formed by incrementing its value in the
    previously transmitted picture header by one plus
    the number of non-transmitted pictures since that
    last transmitted one. (Only the five LSBs used)

18
Structure of picture layer
  • Type information (PTYPE) (6 bits)
  • Bit 1 Split screen indicator
  • Bit 2 Document camera indicator, 0 off, 1 on
  • Bit 3 Freeze picture release, 0 off, 1 on
  • Bit 4 Source format, 0 QCIF, 1 CIF
  • Bit 5 Optional still image model HI_RES, 0 on,
    1 off
  • Bit 6 Spare
  • where Bit 1 is MSB
  • Extra insertion information (PEI) (1 bit)
  • 1 signals the presence of the following
    optional data field.

19
GOB Layer
  • Group of blocks start code (GBSC) (16 bits)
  • 0000 0000 0000 0001 (if 0000 followed, then it
    is treated as a PSC)
  • Group number (GN) (4 bits)
  • GN indicates the position of the group of blocks.
    13, 14 and 15 are reserved for future use. 0
    (0000) is used in the PSC.

20
GOB Layer
  • Quantizer information (GQUANT) (5 bits)
  • The quantizer to be used in the GOB until
    overridden by any subsequent MQUENT.
  • Extra insertion information (GEI) (1 bit)
  • 1 signals the presence of the following
    optional data field.
  • Spare information (GSPARE) (0/8/16 bits)
  • If GEI 1, then the following 8-bits data is
    GSPARE.

21
MB Layer
  • Macroblock address(MBA) (Variable length TABLE
    1)
  • MBA indicates the position of a MB within a GOB.
    It is the difference between the absolute
    addresses of the MB and the last transmitted MB.
  • Type information (MTYPE) (Variable length TABLE
    2)

22
MB Layer
  • Quantizer (MQUANT) (5 bits)
  • MQUANT is present only if so indicated by MTYPE
    (1, 3, 6, 9).

23
MB Layer
  • Motion vector data (MVD) (Variable length TABLE
    3)
  • MVD is obtained from the MV (for the MB) by
    subtracting the vector of the preceding MB. The
    vector of the preceding MB is regarded as zero in
    the following three situations
  • 1) evaluating MVD for MB 1, 12, 23.
  • 2)evaluating MVD for MBs in which MBA does not
    represent a difference of 1
  • 3) MTYPE of the previous MB was not MC.
  • Only one of the pair will yield a MV falling
    within the permitted range.

24
MB Layer
  • Coded block pattern (CBP) (Variable length TABLE
    4)
  • CBP is present if indicated by MTYPE (2, 3, 5, 6,
    8, 9). The codeword gives a pattern number
    signifying those blocks in the MB for which at
    least one transform coefficient is transmitted.
  • CBP 32P1 16P2 8P3 4P4 2P5 P6
  • where Pn 1 if any coefficient is present for
    block n, else 0.

Cb
Cr
Y
25
Block Layer
  • Transform coefficients (TCOEFF) (Variable length
    TABLE 5)
  • TCOEFF is always present for all six blocks in a
    MB when MTYPE indicates INTRA. In other cases
    MTYPE and CBP signal which blocks have
    coefficient data transmitted for them.
  • The most commonly occurring combination of
    successive zeros (RUN) and the following value
    (LEVEL) are encoded with variable length codes in
    TABLE 5. Other combinations of (RUN, LEVEL) are
    encoded with a 20-bit word consisting of 6 bits
    ESCAPE, 6 bits RUN and 8 bits LEVEL.

(Run, Level)
26
Block Layer
  • There are two code tables in TABLE 5
  • 1) Being used for the first transmitted LEVEL in
    INTER, INTERMC, and INTERMCFIL blocks. (EOB is
    not included).
  • 2) Being used for all other LEVELs (EOB is
    included) except the first one in INTRA blocks
    which is fixed length coded with 8 bits.
  • Coefficients after the last non-zero one are not
    transmitted. EOB is always the last item in
    blocks for which coefficients are transmitted.

27
Structure of H.261 Bitstream
28
Coding of H.261 Bitstream
Picture Layer
PSC
TR
PTYPE
PEI
PSPARE
GOB Layer
GBSC
GN
GQUANT
GEI
GSPARE
MB Layer
29
Coding of H.261 Bitstream
TCOEFF
EOB
Fixed length
Variable length
30
H.263
  • H.263 (H.261) (MPEG-like features)
  • Compared to H.261
  • More allowable picture formats
  • Half-pixel motion estimation, no loop filter
  • Different VLC tables at macroblock and block
    levels
  • Four negotiable options
  • 34 dB better PSNR than H.261 at lt64 kbps

31
H.263 Video Formats
32
Four Negotiable Options
  • Unrestricted Motion Vector motion vectors can
    point outside the picture,
  • -31.5 to 31.5 instead of 16 to 15.5
  • Advanced Prediction Mode 8 ? 8 motion vectors,
    overlapped block motion compensation, and motion
    vectors can point outside the picture
  • Syntax-based Arithmetic Coding (about 5
    decreasing in bit-rate)
  • PB-frame

33
H.263 12 Optional Modes
  • Annex D New Unrestricted Motion Vector (mv range
    up to /- 256)
  • Annex I Advanced Intra Coding
  • Annex J Deblocking Filter
  • Annex M Improved PB-Frame
  • Annex O Temporal, Spatial, and SNR Scalability
  • Annex P Reference Picture Resampling
  • Annex Q Reduced Resolution Update

34
H.263 Optional Modes
  • Annex S Alternative Inter VLC
  • Annex I Modified Quantization
  • Error Resilience
  • Annex K Slice Structured
  • Annex R Independent Segment Decoding
  • Annex N Reference Picture Selection

35
Codec Implementation Issues
  • Fast algorithm for motion estimation
  • Fast algorithm for DCT/IDCT
  • Huffman table implementation
  • Program design
  • Program diagram
  • Memory assess (frame stores)
  • Register assignment
  • Program redundancy

36
Supplemental Enhancement Information
  • Enhanced features
  • Picture freeze and release
  • Tagging information
  • Snapshot
  • Video segment start/end
  • Progressive refinement start/end
  • Chroma key
  • Can be discarded by decoders that do not
    understand
Write a Comment
User Comments (0)
About PowerShow.com