# US 5,703,966 A · Block selection using motion estimation error

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 5,703,966 A
- Document ID: US5703966A
- Status: Granted
- Kind: A
- Application number: 08/495,098
- Filed: 1995-06-27
- Granted: 1997-12-30
- Earliest claimed: 1995-06-27
- Assignees: Intel Corporation
- Inventors: Brian Astle
- Web page: https://patentgrep.com/patent/US5703966A

## CPC

- H04N 19/577: Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
- H04N 11/20: Conversion of the manner in which the individual colour picture signal components are combined, e.g. conversion of colour television standards
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A computer-implemented method and apparatus for encoding a current block of pixels of a current picture of a sequence of pictures, the sequence of pictures comprising a previous picture having a previous reference block and a subsequent picture having a subsequent reference block. A previous residual error is determined between the current block and the previous reference block, and a subsequent residual error is determined between the current block and the previous reference block. At least one interpolated picture interpolated between the previous and subsequent pictures is defined, the interpolated picture having an interpolated reference block. An interpolated residual error is determined between the current block and the at least one interpolated reference block from the previous and subsequent residual errors.

## Claims

### Claim 1

A computer-implemented method for encoding a current block of pixels of a current picture of a sequence of pictures, the sequence of pictures comprising a previous picture having a previous reference block and a subsequent picture having a subsequent reference block, the method comprising the steps of:
(a) determining a previous residual error between the current block and the previous reference block;
(b) determining a subsequent residual error between the current block and the subsequent reference block;
(c) defining at least one interpolated picture interpolated between the previous and subsequent pictures, the interpolated picture having an interpolated reference block; and
(d) determining, from the previous and subsequent residual errors, an interpolated residual error between the current block and the at least one interpolated reference block, wherein the interpolated residual error is for reproducing said current block from said interpolated reference block.

### Claim 2 (depends on 1)

The method of claim 1, wherein the previous, subsequent, and interpolated residual errors are mean absolute errors.

### Claim 3 (depends on 2)

The method of claim 2, wherein the mean absolute errors are determined with reference to differences between luminance pixels of the current block and luminance pixels of the respective reference blocks.

### Claim 4 (depends on 1)

The method of claim 1, wherein the previous, subsequent, and interpolated residual errors are mean square errors.

### Claim 5 (depends on 4)

The method of claim 4, wherein the mean square errors are determined with reference to differences between luminance pixels of the current block and luminance pixels of the respective reference blocks.

### Claim 6 (depends on 1)

The method of claim 1, wherein:
step (a) comprises the step of calculating the previous residual error f.sup.2 in accordance with the formula f.sup.2 =.SIGMA.(p-t).sup.2, wherein t are luminance pixel values of the current block and p are luminance pixel values of the previous reference block; and
step (b) comprises the step of calculating the subsequent residual error b.sup.2 in accordance with the formula b.sup.2 =.SIGMA.(n-t.sup.2)!(n-t).sup.2, wherein n are luminance pixel values of the subsequent reference block.

### Claim 7 (depends on 6)

The method of claim 6, wherein step (d) comprises the step of estimating the interpolated residual error e.sup.2 in accordance with the formula e.sup.2 =1/4f.sup.2 +1/4b.sup.2.

### Claim 8 (depends on 1)

The method of claim 1, wherein:
step (a) comprises the step of calculating the previous residual error f in accordance with the formula f=.SIGMA..vertline.p-t.vertline., wherein t are luminance pixel values of the current block and p are luminance pixel values of the previous reference block; and
step (b) comprises the step of calculating the subsequent residual error b in accordance with the formula b=.SIGMA..vertline.n-t.vertline., wherein n are luminance pixel values of the subsequent reference block.

### Claim 9 (depends on 8)

The method of claim 8, wherein step (d) comprises the step of estimating the interpolated residual error e in accordance with the formula e=1/2.sqroot.(f.sup.2 +b.sup.2).

### Claim 10 (depends on 1)

The method of claim 1, further comprising the step of:
(e) selecting one of the reference blocks in accordance with the residual errors for use in prediction-encoding the current block.

### Claim 11 (depends on 10)

The method of claim 10, wherein step (e) comprises the step of selecting the reference block having the lowest residual error.

### Claim 12 (depends on 10)

The method of claim 10, wherein step (e) comprises the step of selecting the interpolated reference block if the previous residual error and subsequent residual error are within a predetermined ratio of one another.

### Claim 13

An apparatus for encoding a current block of pixels of a current picture of a sequence of pictures, the sequence of pictures comprises a previous picture having a previous reference block and a subsequent picture having a subsequent reference block, the apparatus comprises:
(a) means for determining a previous residual error between the current block and the previous reference block;
(b) means for determining a subsequent residual error between the current block and the subsequent reference block;
(c) means for defining at least one interpolated picture interpolated between the previous and subsequent pictures, the interpolated picture having an interpolated reference block; and
(d) means for determining, from the previous and subsequent residual errors, an interpolated residual error between the current block and the at least one interpolated reference block, wherein the interpolated residual error is for reproducing said current block from the said interpolated reference block.

### Claim 14 (depends on 13)

The apparatus of claim 13, wherein the previous, subsequent, and interpolated residual errors are mean absolute errors.

### Claim 15 (depends on 14)

The apparatus of claim 14, wherein the mean absolute errors are determined with reference to differences between luminance pixels of the current block and luminance pixels of the respective reference blocks.

### Claim 16 (depends on 13)

The apparatus of claim 13, wherein the previous, subsequent, and interpolated residual errors are mean square errors.

### Claim 17 (depends on 16)

The apparatus of claim 16, wherein the mean square errors are determined with reference to differences between luminance pixels of the current block and luminance pixels of the respective reference blocks.

### Claim 18 (depends on 13)

The apparatus of claim 13, wherein:
means (a) comprises means for calculating the previous residual error f.sup.2 in accordance with the formula f.sup.2 =.SIGMA.(p-t).sup.2, wherein t are luminance pixel values of the current block and p are luminance pixel values of the previous reference block; and
means (b) comprises means for calculating the subsequent residual error b.sup.2 in accordance with the formula b.sup.2 =.SIGMA.(n-t.sup.2)!(n-t).sup.2, wherein n are luminance pixel values of the subsequent reference block.

### Claim 19 (depends on 18)

The apparatus of claim 18, wherein means (d) comprises means for estimating the interpolated residual error e.sup.2 in accordance with the formula e.sup.2 =1/4f.sup.2 +1/4b.sup.2.

### Claim 20 (depends on 13)

The apparatus of claim 13, wherein:
means (a) comprises means for calculating the previous residual error f in accordance with the formula f=.SIGMA..vertline.p-t.vertline., wherein t are luminance pixel values of the current block and p are luminance pixel values of the previous reference block; and
means (b) comprises means for calculating the subsequent residual error b in accordance with the formula b=.SIGMA..vertline.n-t.vertline., wherein n are luminance pixel values of the subsequent reference block.

### Claim 21 (depends on 20)

The apparatus of claim 20, wherein means (d) comprises means for estimating the interpolated residual error e in accordance with the formula e=1/2.sqroot.(f.sup.2 +b.sup.2).

### Claim 22 (depends on 13)

The apparatus of claim 13, further comprising:
(e) means for selecting one of the reference blocks in accordance with the residual errors for use in prediction-encoding the current block.

### Claim 23 (depends on 22)

The apparatus of claim 22, wherein means (e) comprises means for selecting the reference block having the lowest residual error.

### Claim 24 (depends on 22)

The apparatus of claim 22, wherein means (e) comprises means for selecting the interpolated reference block if the previous residual error and subsequent residual error are within a predetermined ratio of one another.

### Claim 25 (depends on 13)

The apparatus of claim 13, further comprising:
(e) a bus; and
(f) a memory device electrically connected to the bus.

### Claim 26

A storage medium encoded with machine-readable computer program code for encoding a current block of pixels of a current picture of a sequence of pictures, the sequence of pictures comprising a previous picture having a previous reference block and a subsequent picture having a subsequent reference block, the storage medium comprising:
(a) means for causing a computer to determine a previous residual error between the current block and the previous reference block;
(b) means for causing the computer to determine a subsequent residual error between the current block and the subsequent reference block; and
(c) means for causing the computer to determine, from the previous and subsequent residual errors, an interpolated residual error between the current block and an interpolated reference block of at least one interpolated picture interpolated between the previous and subsequent pictures, wherein the interpolated residual error is for reproducing said current block from said interpolated reference block.

### Claim 27 (depends on 26)

The storage medium of claim 26, wherein the previous, subsequent, and interpolated residual errors are mean absolute errors.

### Claim 28 (depends on 27)

The storage medium of claim 27, wherein the mean absolute errors are determined with reference to differences between luminance pixels of the current block and luminance pixels of the respective reference blocks.

### Claim 29 (depends on 26)

The storage medium of claim 26, wherein the previous, subsequent, and interpolated residual errors are mean square errors.

### Claim 30 (depends on 29)

The storage medium of claim 29, wherein the mean square errors are determined with reference to differences between luminance pixels of the current block and luminance pixels of the respective reference blocks.

### Claim 31 (depends on 26)

The storage medium of claim 26, wherein:
means (a) comprises means for causing the computer to calculate the previous residual error f.sup.2 in accordance with the formula f.sup.2 =.SIGMA.(p-t).sup.2, wherein t are luminance pixel values of the current block and p are luminance pixel values of the previous reference block; and
means (b) comprises means for causing the computer to calculate the subsequent residual error b.sup.2 in accordance with the formula b.sup.2 =.SIGMA.(n-t).sup.2, wherein n are luminance pixel values of the subsequent reference block.

### Claim 32 (depends on 31)

The storage medium of claim 31, wherein means (c) comprises means for causing the computer to estimate the interpolated residual error e.sup.2 in accordance with the formula e.sup.2 =1/4f.sup.2 +1/4b.sup.2.

### Claim 33 (depends on 26)

The storage medium of claim 26, wherein:
means (a) comprises means for causing the computer to calculate the previous residual error f in accordance with the formula f=.SIGMA..vertline.p-t.vertline., wherein t are luminance pixel values of the current block and p are luminance pixel values of the previous reference block; and
means (b) comprises means for causing the computer to calculate the subsequent residual error b in accordance with the formula b=.SIGMA..vertline.n-t.vertline., wherein n are luminance pixel values of the subsequent reference block.

### Claim 34 (depends on 33)

The storage medium of claim 33, wherein means (c) comprises means for causing the computer to estimate the interpolated residual error e in accordance with the formula e=1/2.sqroot.(f.sup.2 +b.sup.2).

### Claim 35 (depends on 26)

The storage medium of claim 26, further comprising:
(d) means for causing the computer to select one of the reference blocks in accordance with the residual errors for use in prediction-encoding the current block.

### Claim 36 (depends on 35)

The storage medium of claim 35, wherein means (d) comprises means for causing the computer to select the reference block having the lowest residual error.

### Claim 37 (depends on 35)

The storage medium of claim 35, wherein means (d) comprises means for causing the computer to select the interpolated reference block if the previous residual error and subsequent residual error are within a predetermined ratio of one another.
