IP Library Granted Patent US 8,437,401
Granted Patent B2
US 8,437,401 · App. 13/415,003 · Granted May 7, 2013

Refinement of motion vectors in hierarchical motion estimation

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 8,437,401
App. No.
13/415,003
Granted
May 7, 2013
Kind
B2
Abstract

A method of motion estimation (ME) refinement. The method generally includes the steps of (A) generating an initial motion vector (MV) by conducting a first ME on an initial block in a picture, the initial block covering an initial area of the picture, (B) generating a current MV by conducting a second ME on a current block in the picture, (i) the current block covering a subset of the initial area and (ii) the second ME being seeded by the initial MV, (C) generating at least one additional MV by conducting at least one third ME on the current block, the at least one third ME being seeded respectively by at least one neighboring MV spatially adjacent to the current MV and (D) generating a refined MV of the current block by storing in a memory a best among the current MV and the additional MV.

Claims (31)

1. A method of motion estimation refinement, comprising the steps of:

(A) generating an initial motion vector by conducting a first motion estimation on an initial block;

(B) generating a plurality of current motion vectors by conducting a plurality of second motion estimations on a current block, wherein (i) said current block is a spatial subset of said initial block and (ii) said second motion estimations are seeded by said initial motion vector and one or more neighboring motion vectors; and

(C) writing a best of said current motion vectors in a memory.

2. The method according to claim 1 , wherein (i) said first motion estimation is conducted at a given one of a plurality of layers in a hierarchical motion estimation and (ii) said second motion estimations are conducted below said given layer.

3. The method according to claim 1 , wherein (i) said current block comprises a partition of said initial block and (ii) all of said first motion estimation and said second motion estimations are conducted at a same resolution.

4. The method according to claim 1 , wherein (i) said neighboring motion vectors comprise a first motion vector of a first block spatially adjoining said current block and (ii) said first motion vector is not copied from said initial motion vector.

5. The method according to claim 4 , wherein (i) said neighboring motion vectors further comprise a second motion vector of a second block spatially adjoining said current block, (ii) said second block is different than said first block and (iii) said second motion vector is not copied from said initial motion vector.

6. The method according to claim 5 , wherein (i) said neighboring motion vectors further comprise a third motion vector of a third block spatially diagonal to said current block, (ii) said third block is different than both said first block and said second block and (iii) said third motion vector is not copied from said initial motion vector.

7. The method according to claim 1 , further comprising the step of:

identifying one of said neighboring motion vectors as a particular one of a plurality of candidate motion vectors of a plurality of candidate blocks spatially adjacent to said current block such that said particular motion vector is spatially furthest from said current motion vector.

8. The method according to claim 1 , further comprising the step of:

identifying said neighboring motion vectors as at least two particular ones of a plurality of candidate motion vectors of a plurality of candidate blocks adjacent to said current block such that said particular motion vectors cover a largest search area among said candidate motion vectors.

9. The method according to claim 1 , further comprising the step of:

refining said neighboring motion vectors before seeding said second motion estimations.

10. The method according to claim 1 , wherein at least one of said neighboring motion vectors is not refined before seeding said second motion estimations.

11. An apparatus comprising:

a memory; and

a circuit configured to (i) generate an initial motion vector by conducting a first motion estimation on an initial block, (ii) generate a plurality of current motion vectors by conducting a plurality of second motion estimations on a current block, wherein (a) said current block is a spatial subset of said initial block and (b) said second motion estimations are seeded by said initial motion vector and one or more neighboring motion vectors, and (iii) write a best of said current motion vectors in said memory.

12. The apparatus according to claim 11 , wherein (i) said first motion estimation is conducted at a given one of a plurality of layers in a hierarchical motion estimation and (ii) said second motion estimations are conducted below said given layer.

13. The apparatus according to claim 11 , wherein (i) said current block comprises a partition of said initial block and (ii) all of said first motion estimation and said second motion estimations are conducted at a same resolution.

14. The apparatus according to claim 11 , wherein (i) said neighboring motion vectors comprise a first motion vector of a first block spatially adjoining said current block and (ii) said first motion vector is not copied from said initial motion vector.

15. The apparatus according to claim 14 , wherein (i) said neighboring motion vectors further comprise a second motion vector of a second block spatially adjoining said current block, (ii) said second block is different than said first block and (iii) said second motion vector is not copied from said initial motion vector.

16. The apparatus according to claim 15 , wherein (i) said neighboring motion vectors further comprise a third motion vector of a third block spatially diagonal to said current block, (ii) said third block is different than both said first block and said second block and (iii) said third motion vector is not copied from said initial motion vector.

17. The apparatus according to claim 11 , wherein said circuit is further configured to identify one of said neighboring motion vectors as a particular one of a plurality of candidate motion vectors of a plurality of candidate blocks spatially adjacent to said current block such that said particular motion vector is spatially furthest from said current motion vector.

18. The apparatus according to claim 11 , wherein said circuit is further configured to identify said neighboring motion vectors as at least two particular ones of a plurality of candidate motion vectors of a plurality of candidate blocks adjacent to said current block such that said particular motion vectors cover a largest search area among said candidate motion vectors.

19. The apparatus according to claim 11 , wherein said circuit is further configured to refine said neighboring motion vectors before seeding said second motion estimations.

20. An apparatus comprising:

means for storing;

means for generating an initial motion vector by conducting a first motion estimation on an initial block, (ii) generating a plurality of current motion vectors by conducting a plurality of second motion estimations on a current block, wherein (a) said current block is a spatial subset of said initial block and (b) said second motion estimations are seeded by said initial motion vector and one or more neighboring motion vectors; and

means for writing a best of said current motion vectors in said means for storing.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER TO 09/05/2018 PREVIOUSLY RECORDED AT REEL: 047230 FRAME: 0133. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047630/0456 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047230/0133 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →