EP1529401B1

System and method for rate-distortion optimized data partitioning for video coding using backward adaptation

Abstract

A system and method are disclosed that provide a simple and efficient layered video coding technique using a backward adaptive rate-distortion optimized data partitioning (RD-DP) of DCT coefficients. The video coding system may include an rate-distortion optimized data partitioning encoder and decoder. The RD-DP encoder adapts the partition point block-by-block which greatly improves the coding efficiency of the base layer bit stream without explicit transmission thereby saving the bandwidth significantly. The RD-DP decoder can also find the partition location in backward-fashion from the decoded data.

EP1529401B1, drawing sheet 1
Sheet 1 of 60

Term

Term ended

Expired 31 July 2023, 3.2 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

30 claims: 4 independent, 26 dependent

  1. 1
    A data partitioning method for a scalable video encoder (110), the method comprising the steps of:- receiving video data;- determining DCT coefficients for a plurality of macroblocks of a video frame;- quantizing the DCT coefficients;- converting the quantized DCT coefficients into (run, level) pairs;for each of the plurality of macroblocks in the video frame, for successive (run, level) pairs in the macroblocks determining a respective ratio | X i k | 2 / L i k , where a k-th (run, level) pair for an i-th block has a code length of L i k bits and has a coefficient value of X i k ;and up to and including the first time the respective ratio | X i k | 2 / L i k is less than a value λ putting the associated successive (run, level) pair into a base layer (121);and putting the remaining successive (run, level) pairs into an enhancement layer (122-124), where λ is a Lagrangian multiplier determined in accordance with a Lagrangian calculation.
  2. 15
    A method for determining a boundary between a base layer (121) and at least one enhancement layer (122) in a scalable video decoder (130), the comprising the steps of:- receiving the base layer (121) and the at least one enhancement layer (122), the base layer and enhancement layer including data representing successive (run, level) pairs for a plurality of macroblocks in a video frame;for each the plurality of macroblocks in the video frame, for successive (run, level) pairs in the macroblocks determining a respective ratio | X i k | 2 / L i k , where a k-th (run, level) pair for an i-th block has a code length of L i k bits and has a coefficient value of X i k ;and up to and including the first time the respective ratio | X i k | 2 / L i k is less than a value λ reading the associated successive (run, level) pair from the base layer (121);and reading the remaining successive (run, level) pairs from the enhancement layer (122-124), where λ is a Lagrangian multiplier determined by decoding side information.
  3. 27
    A scalable decoder (130) capable of merging data from a base layer (121) and at least one enhancement layer (122), the apparatus comprising:- a memory (20) which stores computer-executable process steps;and - a processor (38) arranged to execute the process steps stored in the memory to realize: (1) receiving the base layer and the at least one enhancement layer, the base layer and enhancement layer including data representing (run, level) pairs for a plurality of macroblocks in a video frame, (2) for each the plurality of macroblocks in the video frame, for successive (run, level) pairs in the macroblocks determining a respective ratio | X i k | 2 / L i k , where a k-th (run, level) pair for an i-th block has a code length of L i k bits and has a coefficient value of X i k ;and up to and including the first time the respective ratio | X i k | 2 / L i k is less than a value λ reading the associated successive (run, level) pair from the base layer (121);and reading the remaining successive (run, level) pairs from the enhancement layer (122-124), where λ is a Lagrangian multiplier determined in accordance with Lagrangian calculation.
  4. 30
    A layered source encoder (101) comprising:- means for receiving video data;- means for determining DCT coefficients for a plurality of macroblocks of a video frame;- means for quantizing the DCT coefficients;- means for converting the quantized DCT coefficients into (run, level) pairs;- means for determining a respective ratio | X i k | 2 / L i k for successive (run, level) pairs, in each of the plurality of macroblocks in the video frame, where a k-th (run, level) pair for an i-th block has a code length of L i k bits and has a coefficient value of X i k ;and - means for, up to and including the first time the respective ratio | X i k | 2 / L i k is less than a value λ, putting the associated successive (run, level) pair into a base layer (121);and - means for putting the remaining successive (run, level) pairs into an enhancement layer (122-124), where λ is a Lagrangian multiplier determined in accordance with a Lagrangian calculation.