Page 77 - Video Coding for Mobile Communications Efficiency, Complexity, and Resilience
P. 77

54                                      Chapter 3.  Video Coding:  Standards


            3.4.4  Decoding Process
            3.4.4.1  Motion Vector Decoding
            For  each  TRANSMITTED  INTER  MB,  the  decoder  calculates  the  same
            motion  vector  predictor  MVP  used  at  the  encoder  and  adds  it  to  the
            decoded  motion  vector  di1erence  MVD  to  obtain  the  decoded  motion  vec-
            tor MV. The motion vector  of  a SKIPPED INTER MB is set to  0.

            3.4.4.2  Motion Compensation

            The  decoded  motion  vector  is  used  to  compensate  the  four  Y  blocks  in  the


            MB.  Motion  vectors  for  both  C and  C blocks  are  derived  by  dividing  the
                                              B
                                       R
            component  values  of  the  decoded  motion  vector  by  2.  The  resulting  quarter-
            pel  resolution  components  are  modi/ed  toward  the  nearest  half-pel  resolution
            (both  0.25  and  0.75  are  rounded  to  0.5).  If  motion  compensation  requires
            accessing half-pel positions, then bilinear interpolation is used to calculate the
            pel values at those  positions.
            3.4.4.3  Inverse Quantization
            As already discussed, quantization is achieved by dividing the transform coef-
            /cient  by  a  quantization  step  size  and  rounding  the  result  (refer  to  Equations
                                  4
            (2.8) and (2.10)). Inverse quantization is the process of reconstructing an ap-
            proximation of the original coe,cient by multiplying the quantized coe,cient
            by the same step size (refer to Equations (2.9) and (2.11)). The reconstructed
            coe,cients  are  then  clipped  to  the  range  [−2048; +2047]  and  inverse  zigzag
            scanned to put them in an 8 × 8 block.

            3.4.4.4  Inverse Transform

            The reconstructed block of coe,cients is processed by a separable 2-D 8 × 8
            inverse  DCT.  The  arithmetic  procedures  for  computing  the  inverse  DCT  are
            not de/ned by the standard, but should  meet a de/ned error  tolerance.

            3.4.4.5  Reconstruction of Blocks

            For INTRA blocks, the reconstructed block is equal to the result of the inverse
            DCT.  For  INTER  blocks,  the  reconstructed  block  is  formed  by  summing  the
            motion-compensated prediction and the result of the inverse DCT. The recon-
            structed values are  clipped to the range  [0; 255].



              4 It  should  be  emphasised  that  the  term  inverse  here  does  not  mean  that  quantization  is  a
            reversible process. Quantization is irreversible since  rounding  leads  to loss of  information.
   72   73   74   75   76   77   78   79   80   81   82