# US 6,954,501 B2 · Method and apparatus for object based motion compensation

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

- Number: US 6,954,501 B2
- Document ID: US6954501B2
- Status: Granted
- Kind: B2
- Application number: 10/368,094
- Filed: 2003-02-17
- Published: 2004-08-19
- Granted: 2005-10-11
- Earliest claimed: 2003-02-17
- Assignees: XVD Corporation
- Inventors: Dmitry Skripin; Andrey Marsavin; Irina Bocharova; IIya Asnis; Andrei Morozov
- Web page: https://patentgrep.com/patent/US6954501B2

## CPC

- H04N 19/543: using regions
- G06T 7/254: involving subtraction of images
- H04N 5/145: {Movement estimation (for video coding H04N19/51)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

A method and apparatus for object based motion compensation forms objects from blocks of an input image based on motion similarity of the blocks in the input image and a reference image. In addition, object motion compensation vectors for each formed object and object relative block motion compensation vectors for each object's constituent blocks relative to the object's motion compensation vector are computed.

## Claims

### Claim 1

A method comprising:
receiving an input image and a reference image;
partitioning the input image into a plurality of unassigned blocks;
setting a search area for motion compensation based on the plurality of blocks;
defining a first object as those of the plurality of blocks with a motion compensation error within a given threshold relative to a motion compensation vector for the collective plurality of blocks;
reducing the search area for motion compensation based on a second plurality of blocks, which are those blocks of the first plurality that do not define the first object;
defining a second object with those of the second plurality of blocks with a second motion compensation error within the given threshold relative to a second motion compensation vector for the collection of second plurality of blocks; and
sending object motion compensation vectors for the first and second objects and object relative block motion compensation vectors for the first and second object's constituent blocks.

### Claim 2 (depends on 1)

The method of claim 1 further comprising:
computing a difference image from the reference and the input image;
determining whether the difference image exceeds a threshold; and
if the difference image does not exceed the threshold, then sending a flag indicating that the difference image does not exceed the threshold.

### Claim 3 (depends on 1)

The method of claim 1 wherein the sending is to a bit stream encoding unit.

### Claim 4 (depends on 1)

The method of claim 1 further comprising determining individual block motion vectors by summing the objective relative motion compensation vectors and the object motion compensation vector.

### Claim 5 (depends on 1)

The method of claim 1 further comprising:
generating an object map indicating which blocks belong to which objects; and
sending the object map with the object map.

### Claim 6

An apparatus comprising:
an object former unit to form objects;
an object motion vector estimator unit coupled with the object former;
an object map refiner and block motion estimator unit coupled with the object motion vector estimator unit;
an object map updating unit coupled with the object map refiner and block motion estimator unit and the object map former unit, the object map updating unit to update an object map and provide the updated object map to the object former unit and a motion compensation error analysis unit; and
a motion compensation error analysis unit coupled with the object map updating unit and the object map refiner and block motion estimator unit.

### Claim 7 (depends on 6)

The apparatus of claim 6 further comprising:
a residual image memory coupled with the object motion vector stimator unit and the object map refiner and block motion estimator unit, the residual image memory to store a residual image.

### Claim 8 (depends on 6)

The apparatus of claim 6 further comprising:
a bit stream encoding unit coupled with the object map refiner and block motion estimator unit, the bit stream encoding unit to receive object information, object relative block motion compensation vectors and object motion compensation vectors.

### Claim 9 (depends on 8)

The apparatus of claim 8 wherein the object information includes an object map and a number of objects.

### Claim 10

A machine-readable medium having a set of instruction which when executed, cause the following operations to be performed:
receiving an input image and a reference image;
partitioning the input image into a plurality of unassigned blocks;
setting a search area for motion compensation based on the plurality of blocks;
defining a first object as those of the plurality of blocks with a motion compensation error within a given threshold relative to a motion compensation vector for the collective plurality of blocks;
reducing the search area for motion compensation based on a second plurality of blocks, which are these blocks of the first plurality that do not define the first object;
defining a second object with those of the second plurality of blocks with a second motion compensation error within the given threshold relative to a second motion compensation vector for the collection of second plurality of blocks, and
sending object motion compensation vectors for the first and second onjects and object relative block motion comprensation vectors for the first and second object's constituent blocks.

### Claim 11 (depends on 10)

The machine-readable medium of claim 10 further comprising:
computing a difference image from the reference and the input image;
determining whether the difference image exceeds a threshold; and
if the difference image does not exceed the threshold, then sending a flag indicating that the difference image does not exceed the threshold.

### Claim 12 (depends on 10)

The machine-readable medium of claim 10 wherein the sending is to a bit stream encoding unit.

### Claim 13 (depends on 10)

The machine-readable medium of claim 10 further comprising
determining individual block motion vectors by summing the objective relative motion compensation vectors and the object motion compensation vector.

### Claim 14 (depends on 10)

The machine-readable medium of claim 10 further comprising:
generating an object map indicating which blocks belong to which objects; and
sending the object map with the object map.
