EP2323402A1

Improved video coding method and apparatus

Abstract

Video coding methods and apparatuses are provided that make use of various models and/or modes to significantly improve coding efficiency especially for high/complex motion sequences. The methods and apparatuses take advantage of the temporal and/or spatial correlations that may exist within portions of the frames, e.g., at the Macroblock level, etc. The methods and apparatuses tend to significantly reduce the amount of data required for encoding motion information while retaining or even improving video image quality.

EP2323402A1, drawing sheet 1
Sheet 1 of 33

Term

Term ended

Projected expiry passed 14 January 2023, 3.7 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

15 claims: 7 independent, 8 dependent

  1. 1
    A method of encoding video, the method comprising:with a video encoder, encoding a current predictive (P) frame of video to produce encoded video in a bit stream, wherein the encoding includes: selecting a macroblock mode from among plural macroblock modes possible for the current P frame, wherein the plural macroblock modes include: an INTRA mode in which a current macroblock of the current P frame is intra coded;a first INTER mode in which the current macroblock is encoded with motion compensation relative to a reference frame using motion vector information that is encoded in the bit stream, wherein, according to the first INTER mode, the motion vector information for the current macroblock is encoded in the bit stream as differential motion vector information;and a second INTER mode in which the current macroblock is encoded with motion compensation relative to the reference frame using predicted motion vector information that is not encoded in the bit stream for the current macroblock, wherein the predicted motion vector information for the current macroblock is determined from motion vector information of one or more surrounding macroblocks in the current P frame;and encoding the current macroblock according to the selected macroblock mode;and from the video encoder, outputting the encoded video in the bit stream.
  2. 4
    A method of decoding video, the method comprising:receiving encoded video in a bit stream;and with a video decoder, decoding a current predictive (P) frame using the encoded video, wherein the decoding includes: selecting a macroblock mode from among plural macroblock modes possible for the current P frame, wherein the plural macroblock modes include: an INTRA mode in which a current macroblock of the current P frame is intra decoded;a first INTER mode in which the current macroblock is decoded with motion compensation relative to a reference frame using motion vector information that is decoded from the bit stream, wherein, according to the first INTER mode, the motion vector information for the current macroblock is encoded in the bit stream as differential motion vector information;and a second INTER mode in which the current macroblock is decoded with motion compensation relative to the reference frame using predicted motion vector information that is not decoded from the bit stream for the current macroblock, wherein the predicted motion vector information for the current macroblock is determined from motion vector information of one or more surrounding macroblocks in the current P frame;and decoding the current macroblock according to the selected macroblock mode.
  3. 7
    The method of any of claims 1-6 wherein the reference frame is a first reference frame among plural reference frames, the plural reference frames further including a second reference frame different than the first reference frame, and wherein the plural macroblock modes possible for the current P frame further include:a third INTER mode in which the current macroblock is encoded or decoded relative to the first reference frame using no motion vector information;and a fourth INTER mode in which the current macroblock is encoded or decoded relative to the second reference frame using no motion vector information.
  4. 8
    The method of any of claims 1-6 wherein the plural macroblock modes possible for the current P frame further include a third INTER mode in which the current macroblock is encoded or decoded with motion compensation relative to the reference frame using predicted motion vector information that is not encoded in the bit stream for the current macroblock, wherein the predicted motion vector information for the third INTER mode is different than the predicted motion vector information for the second INTER mode,
  5. 10
    The method of any of claims 1-6 wherein the encoded video in the bit stream includes macroblock mode information that indicates the selected macroblock mode.
  6. 11
    A method of encoding video, the method comprising:with a video encoder, encoding a current predictive (P) frame of video to produce encoded video in a bit stream, wherein the encoding includes: selecting a macroblock mode from among plural macroblock modes possible for the current P frame, wherein the plural macroblock modes include: a first INTER mode in which a current macroblock of the current P frame is encoded with motion compensation relative to a reference frame using motion vector information that is encoded in the bit stream, wherein, according to the first INTER mode, the motion vector information for the current macroblock is encoded in the bit stream as differential motion vector information;a second INTER mode in which the current macroblock is encoded with motion compensation relative to the reference frame using predicted motion vector information that is not encoded in the bit stream for the current macroblock, wherein, according to the second INTER mode, the predicted motion vector information for the current macroblock is determined from motion vector information of one or more surrounding macroblocks in the current P frame;and a third INTER mode in which the current macroblock is encoded with motion compensation relative to the reference frame using predicted motion vector information that is not encoded in the bit stream for the current macroblock, wherein the predicted motion vector information for the third INTER mode is different than the predicted motion vector information for the second INTER mode;and encoding the current macroblock according to the selected macroblock mode;and from the video encoder, outputting the encoded video in the bit stream.
  7. 12
    A method of decoding video, the method comprising:receiving encoded video in a bit stream;and with a video decoder, decoding a current predictive (P) frame using the encoded video, wherein the decoding includes: selecting a macroblock mode from among plural macroblock modes possible for the current P frame, wherein the plural macroblock modes include: a first INTER mode in which a current macroblock of the current P frame is decoded with motion compensation relative to a reference frame using motion vector information that is decoded from the bit stream, wherein, according to the first INTER mode, the motion vector information for the current macroblock is encoded in the bit stream as differential motion vector information;a second INTER mode in which, the current macroblock is decoded with motion compensation relative to the reference frame using predicted motion vector information that is not decoded from the bit stream for the current macroblock, wherein, according to the second INTER mode, the predicted motion vector information for the current macroblock is determined from motion vector information of one or more surrounding macroblocks in the current P frame;and a third INTER mode in which the current macroblock is decoded with motion compensation relative to the reference frame using predicted motion vector information that is not decoded from the bit stream for the current macroblock, wherein the predicted motion vector information for the third INTER mode is different than the predicted motion vector information for the second INTER mode;and decoding the current macroblock according to the selected macroblock mode,
  8. 13
    A method of encoding video, the method comprising:with a video encoder, encoding a current predictive (P) frame of video to produce encoded video in a bit stream, wherein the encoding includes: selecting a macroblock mode from among plural macroblock modes possible for the current P frame, wherein the plural macroblock modes include: an INTRA mode in which a current macroblock of the current P frame is intra coded;a first INTER mode in which the current macroblock is encoded relative to a reference frame using no motion vector information;a second INTER mode in which the current macroblock is encoded with motion compensation relative to the reference frame using predicted motion vector information that is not encoded in the bit stream for the current macroblock;and a third INTER mode according to which the current macroblock is encoded as four blocks with motion compensation relative to the reference frame using motion vector information for the four blocks, respectively, wherein, according to the third INTER mode, the motion vector information for the respective blocks can be encoded in the bit stream as differential motion vector information;and encoding the current macroblock according to the selected macroblock mode;and from the video encoder, outputting the encoded video in the bit stream.
  9. 14
    A method of decoding video, the method comprising:receiving encoded video in a bit stream;and with a video decoder, decoding a current predictive (P) frame using the encoded video, wherein the decoding includes: selecting a macroblock mode from among plural macroblock modes possible for the current P frame, wherein the plural macroblock modes include: an INTRA mode in which a current macroblock of the current P frame is intra decoded;a first INTER mode in which the current macroblock is decoded relative to a reference frame using no motion vector information;a second INTER mode in which the current macroblock is decoded with motion compensation relative to the reference frame using predicted motion vector information that is not decoded from the bit stream for the current macroblock;and a third INTER mode according to which the current macroblock is decoded as four blocks with motion compensation relative to the reference frame using motion vector information for the four blocks, respectively, wherein, according to the third INTER mode, the motion vector information for the respective blocks can be encoded in the bit stream as differential motion vector information;and decoding the current macroblock according to the selected macroblock mode.
  10. 15
    A video processing tool adapted to perform the method of any preceding claim.