EP1589765A2

Extrapolation of pixel values of a video object within a block boundary

Abstract

A computer readable medium stores computer executable instructions for causing a computer programmed thereby to perform a method of extrapolating values of pixels of a video object (402), so as to define values for at least one pixel (412) outside of the perimeter (408) of the video object (402), the at least one pixel (412) outside of the perimeter (408) being within a block boundary (406) around the video object (402). The method comprises: scanning a line of pixels within the block boundary (406), wherein the scanning identifies at least one pixel (412) outside of the perimeter (408), and wherein each identified pixel (412) is part of a segment with two end pixels, at least one of the two end pixels having a perimeter (408) pixel value; for each identified pixel (412), if both end pixels of the segment including the identified pixel (412) have perimeter (408) pixel values; assigning to the identified pixel (412) an average of the perimeter (408) pixel values, and, if only one end pixel of the segment including the identified pixel (412) has a perimeter (408) pixel value, assigning to the identified pixel (412) the perimeter (408) pixel value.

EP1589765A2, drawing sheet 1
Sheet 1 of 48

Term

Term ended

Projected expiry passed 4 October 2016, 10 years ago.

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

12 claims: 6 independent, 6 dependent

  1. 1
    In an object-based video decoder, a method of decoding plural video objects in a video sequence, 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, wherein each of the first and second video objects is divided into plural blocks each having normal size or quarter size, wherein four quarter size blocks are derived by sub-dividing a normal size block into four equal sub-blocks each having one half the height and one half the width of the sub-divided normal size block, and wherein the encoded data includes: inter-coded data for the first video object at a first time in the video sequence, wherein the plural blocks of the first video object include one or more normal size blocks each having motion information and at least four quarter size blocks each having motion information, and wherein the inter-coded data for the first video object includes the motion information for the one or more normal size blocks and the at least four quarter size blocks of the first video object;one or more masks that define shape for the first video object;inter-coded data for the second video object at the first time, wherein the plural blocks of the second video object include one or more normal size blocks each having motion information and at least four quarter size blocks each having motion information, and wherein the inter-coded data for the second video object includes the motion information for the one or more normal size blocks and the at least four quarter size blocks of the second video object;and one or more masks that define shape for the second video object;decoding the first video object at the first time, including using the motion information for the one or more normal size blocks and the at least four quarter size blocks of the first video object to predict pixel values of pixels of the fist video object at the first time from a previously decoded version of 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;and decoding the second video object at the fist time, including using the motion information for the one or more normal size blocks and the at least four quarter size blocks of the second video object to predict pixel values of pixels of the second video object at the fist time from a previously decoded version of the second video object, 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
  2. 5
    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, wherein each of the first and second video objects is divided into plural blocks each having normal size or quarter size, wherein four quarter size blocks are derived by sub-dividing a normal size block into four equal sub-blocks each having one half the height and one half the width of the sub-divided normal size block, the method comprising:processing inter-coded data for the first video object at a first time in the video sequence, wherein the plural blocks of the first video object include one or more normal size blocks each having motion information and at least four quarter size blocks each having motion information, and wherein the inter-coded data for the first video object includes the motion information for the one or more normal size blocks and the at least four quarter size blocks of the first video object;processing one or more masks that define shape for the first video object;processing inter-coded data for the second video object at the first time, wherein the plural blocks of the second video object include one or more normal size blocks each having motion information and at least four quarter size blocks each having motion information, and wherein the inter-coded data for the second video object includes the motion information for the one or more normal size blocks and the at least four quarter size blocks of the second video object;and processing one or more masks that define shape for the second video object;wherein the encoded data is formatted for decoding by an object-based video decoder by: decoding the first video object at the first time, including using the motion information for the one or more normal size blocks and the at least four quarter size blocks of the first video object to predict pixel values of pixels of the first video object at the first time from a previously decoded version of 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;and decoding the second video object at the first time, including using the motion information for the one or more normal size blocks and the at least four quarter size blocks of the second video object to predict pixel values of pixels of the second video object at the first time from a previously decoded version of the second video object, 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.
  3. 7
    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. 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 multi-bit alpha channel masks.
  5. 9
    The method of any preceding claim, wherein the motion information is coded in terms of pixel coordinates.
  6. 10
    The method of any preceding claim, wherein each of the plural blocks is a rectangular array.