IP Library Granted Patent US 7,660,471
Granted Patent B2
US 7,660,471 · App. 10/997,925 · Granted Feb 9, 2010

Method for correcting interpolated pixel values

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,660,471
App. No.
10/997,925
Granted
Feb 9, 2010
Kind
B2
Abstract

The invention is related to video compression systems, and in particular to compression/decompression in digital video systems. The present invention discloses a method for compensating the rounding and truncation error when calculating ½ and ¼ position pixels for motion vector prediction. According to the invention, the rounding/truncation offset is attenuated by properly shifting up or down the result of the calculation of the ½ position pixel values. A method alternating occurrences of converting up and converting down interpolated pixel values to nearest integers in the cases where the pixel values are decimals with fractions of 0.5. In a preferred embodiment, each motion vector is assigned either a first or a second notation, so that converting up or down in a predicted block depends on the assignment of the motion vector corresponding to the prediction block. The present invention is particularly useful in the coding standard H.264/AVC.

Claims (13)

1. A method in video coding or decoding executed at a video compression apparatus for calculating interpolation ½ position pixel values and ¼ position pixel values located between integer pixel positions when determining a prediction of a first pixel block in a video picture from a second pixel block in a previous decoded video picture with a spatial offset relative to the first pixel block according to a motion vector in a set of motion vectors, said method comprising:

calculating, at the video compressing apparatus, the ½ position pixel values by a six-tap filter on neighboring integer pixel position values including a rounding addition value of 16/32 or calculating the ½ position pixel values by a four-tap filter on neighboring integer pixel position values including a rounding addition value 4/8,

calculating, at the video compressing apparatus, the ¼ position pixel values by averaging two neighboring ½ position pixel values or one neighboring ½ position pixel value and one integer position pixel value followed by rounding or truncation, and

adjusting, at the video compressing apparatus, previously calculated ½ position pixel values by a negative or positive shift to compensate for an error introduced by rounding or truncating calculated ¼ position pixel values by reducing the rounding addition value to a value less than 16/32 if the six-tap filter is used and reducing the rounding addition value to a value less than 4/8 if the four-tap filter is used.

2. A method in video coding or decoding executed at a video compression apparatus for calculating interpolation ½ position pixel values and ¼ position pixel values located between integer pixel positions when determining a prediction of a first pixel block in a video picture from a second pixel block in a previous decoded video picture with a spatial offset relative to the first pixel block according to a motion vector in a set of motion vectors, said method comprising the steps of:

calculating, at the video compressing apparatus, the ½ position pixel values by an 6-tap filter on neighboring integer pixel position values including a rounding addition value, wherein the 6-tap filter has an impulse response of ( 1/32, − 5/32, 20/32, 20/32, − 5/32, 1/32),

calculating, at the video compressing apparatus, the ¼ position pixel values by averaging two neighboring ½ position pixel values or one neighboring ½ position pixel value and one integer position pixel value followed by rounding or truncation, and

adjusting, at the video compressing apparatus, previously calculated ½ position pixel values by a negative or positive shift to compensate for an error introduced by rounding or truncating calculated ¼ position pixel values by reducing the rounding addition value from 16/32 to 6/32.

3. A method in video coding or decoding executed at a video compressing apparatus for calculating interpolation ½ position pixel values and ¼ position pixel values located between integer pixel positions when determining a prediction of a first pixel block in a video picture from a second pixel block in a previous decoded video picture with a spatial offset relative to the first pixel block according to a motion vector in a set of motion vectors, said method comprising the steps of:

calculating, at the video compressing apparatus, the ½ position pixel values by an 4-tap filter on neighboring integer pixel position values including a rounding addition value, wherein the 4-tap filter has an impulse response of (−⅛, ⅝, ⅝, −⅛),

calculating, at the video compressing apparatus, the ¼ position pixel values by averaging two neighboring ½ position pixel values or one neighboring ½ position pixel value and one integer position pixel value followed by rounding or truncation, and

adjusting, at the video compressing apparatus, previously calculated ½ position pixel values by a negative or positive shift to compensate for an error introduced by rounding or truncating calculated ¼ position pixel values by reducing the rounding addition value from 4/8 to ⅛.

4. The method according to one of the claims 1 , 2 , and 3 , wherein the video pictures are encoded according to the coding standard H.264/AVC.

Assignments (2)
CONFIRMATORY ASSIGNMENT Recorded Dec 1, 2011
From: TANDBERG TELECOM AS; CISCO SYSTEMS INTERNATIONAL SARL
To: CISCO TECHNOLOGY, INC.
Reel/Frame 027307/0451 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2005
From: BJONTEGAARD, GISLE
To: TANDBERG TELECOM AS
Reel/Frame 016262/0727 →