EP1589766B1

Object-based video decompression process employing arbitrarily shaped features

Abstract

This record has no abstract on file.

EP1589766B1, drawing sheet 1
Sheet 1 of 47

Term

Term ended

Expired 4 October 2016, 10 years ago.

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

17 claims: 10 independent, 7 dependent

  1. 1
    A method of decoding plural video objects in a video sequence, for use in an object-based video decoder, the method comprising:receiving encoded data for the plural video objects in the video sequence, wherein the plural video objects include a first video object and a second video object, and wherein the encoded data includes: intra-coded data for the first video object, wherein the intra-coded data for the first video object comprises a sprite, wherein the sprite comprises a bitmap formed as a combination of pixel values for pixels of the first video object at plural different times in the video sequence such that the bitmap represents portions of the first video object that are visible at some but not necessarily all of the plural different times;one or more masks that define shape for the first video object;one or more trajectory parameters for the first video object at one or more of the plural different times, wherein the one or more trajectory parameters indicate transformations to compute pixel values for pixels of the first video object from the sprite;intra-coded data for the second video object;one or more masks that define shape for the second video object;for at least one of the plural different times, one or more motion parameters that indicate transformations to compute pixel values for pixels of the second video object;and one or more error signals for the second video object for at least one of the plural different times;decoding the sprite for the first video object;decoding the first video object at a first time of the plural different times, including using one or more trajectory parameters for the first video object at the first time to compute pixel values for pixels of the first video object at the first time from the sprite for the first video object, wherein the one or more masks that define shape for the first video object indicate which pixels are part of the first video object at the first time;decoding the second video object at the first time, wherein the one or more masks that define shape for the second video object indicate which pixels are part of the second video object at the first time;and decoding the second video object at a second time of the plural different times, including using one or more motion parameters for the second video object at the second time to compute pixel values for pixels of the second video object at the second time from the decoded second video object at the first time, and further including combining the computed pixel values for pixels of the second video object at the second time with an error signal for the second video object at the second time, wherein the one or more masks that define shape for the second video object indicate which pixels are part of the second video object at the second time.
  2. 6
    A method of processing encoded data for plural video objects in a video sequence, wherein the plural video objects include a first video object and a second video object, the method comprising:processing intra-coded data for the first video object, wherein the intra-coded data for the first video object comprises a sprite, wherein the sprite comprises a bitmap formed as a combination of pixel values for pixels of the first video object at plural different times in the video sequence such that the bitmap represents portions of the first video object that are visible at some but not necessarily all of the plural different times;processing one or more masks that define shape for the first video object;processing one or more trajectory parameters for the first video object at one or more of the plural different times, wherein the one or more trajectory parameters indicate transformations to compute pixel values for pixels of the first video object from the sprite;processing intra-coded data for the second video object;processing one or more masks that define shape for the second video object;processing, for at least one of the plural different times, one or more motion parameters that indicate transformations to compute pixel values for pixels of the second video object;and processing one or more error signals for the second video object for at least one of the plural different times;wherein the encoded data is formatted for decoding by an object-based video decoder by: decoding the sprite for the first video object;decoding the first video object at a first time of the plural different times, including using one or more trajectory parameters for the first video object at the first time to compute pixel values for pixels of the first video object at the first time from the sprite for the first video object, wherein the one or more masks that define shape for the first video object indicate which pixels are part of the first video object at the first time;decoding the second video object at the first time, wherein the one or more masks that define shape for the second video object indicate which pixels are part of the second video object at the first time;and decoding the second video object at a second time of the plural different times, including using one or more motion parameters for the second video object at the second time to compute pixel values for pixels of the second video object at the second time from the decoded second video object at the first time, and further including combining the computed pixel values for pixels of the second video object at the second time with an error signal for the second video object at the second time, wherein the one or more masks that define shape for the second video object indicate which pixels are part of the second video object at the second time.
  3. 8
    The method of any preceding claim, wherein the one or more masks that define shape for the first video object and the one or more masks that define shape for the second video object are binary masks.
  4. 9
    The method of any preceding claim, wherein the one or more masks that define shape for the first video object and the one or more masks that define shape for the second video object are multi-bit alpha channel masks.
  5. 10
    The method of any preceding claim, wherein the first video object represents background in the video sequence and the second video object represents a foreground object in the video sequence.
  6. 11
    The method of any preceding claim, wherein the second video object is divided into blocks, and wherein the one or more motion parameters are for the blocks of the second video object.
  7. 12
    The method of any preceding claim, wherein the one or more motion parameters for the second video object are trajectory parameters.
  8. 13
    The method of any preceding claim, wherein the intra-coded data for the second video object includes a sprite for the second video object, and wherein the decoding the second video object at the first time includes decoding the sprite for the second video object.
  9. 14
    The method of any preceding claim, wherein the one or more trajectory parameters for the first video object are coded in terms of pixel coordinates.
  10. 15
    The method of any preceding claim, wherein the one or more masks that define shape for the first video object are in terms of the sprite for the first video object.