IP Library Granted Patent US 9,172,973
Granted Patent B2
US 9,172,973 · App. 11/096,825 · Granted Oct 27, 2015

Method and system for motion estimation in a video encoder

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 9,172,973
App. No.
11/096,825
Granted
Oct 27, 2015
Kind
B2
Abstract

Described herein is a method and system for motion estimation in a video encoder. There are two parts to the motion estimation. Coarse motion estimation generates a set of motion vectors for a current picture and at least one reference picture. Typically, coarse motion estimation operates on sub-sampled pictures. Fine motion estimation can refine coarse motion estimation results by searching interpolated video data in a region defined by the motion vectors from the coarse motion estimation.

Claims (48)

1. A method for motion estimation in a video encoder, said method comprising:

sub-sampling a current picture, wherein sub-sampling comprises:

decimating the current picture by averaging adjacent pixels, thereby producing the sub-sampled current picture; and

correlating a sub-sampled current picture with a sub-sampled reference picture, thereby producing a first set of motion vectors in said video encoder;

selecting one or more candidate motion vectors from the first set of motion vectors;

correlating a portion of a current picture with a region of a reference picture, wherein the region of the reference picture corresponds to the one or more candidate motion vectors;

producing a second set of motion vectors in response to correlating the portion of the current picture with the region of the reference picture; and

producing costs associated with the second set of motion vectors.

2. The method of claim 1 , further comprising:

decimating the reference picture by averaging adjacent pixels, thereby producing the sub-sampled reference picture.

3. The method of claim 1 , wherein correlating the portion of the current picture with the region of the reference picture further comprises:

evaluating a cost for estimating the portion of the current picture with a portion of the reference picture; wherein the portion of the reference picture is within the region of the reference picture that corresponds to the one or more candidate motion vectors.

4. The method of claim 1 , wherein the region of the reference picture comprises:

a set of pixels in the reference picture with coordinates corresponding to the portion of the current picture; and

for each particular motion vector in the one or more candidate motion vectors, a set of pixels in the reference picture with coordinates corresponding to the portion of the current picture offset by the particular motion vector.

5. The method of claim 4 , wherein the region of the reference picture also comprises pixels near the sets of pixels.

6. The method of claim 1 , wherein costs are produced for the second set of motion vectors by interpolating the current picture.

7. A system for motion estimation in a video encoder, said system comprising:

a coarse motion estimator for generating a search region within a reference picture, wherein the coarse motion estimator further comprises:

a decimation engine for sub-sampling a current picture and sub-sampling the reference picture, wherein sub-sampling further comprises:

decimating the reference picture by averaging adjacent pixels, thereby producing a sub-sampled reference picture; and

a coarse search engine for evaluating a correlation between a sub-sampled current picture and the sub-sampled reference picture and producing a set of motion vectors;

wherein one or more motion vectors of the set of motion vectors, associated with a macroblock containing a portion of the current picture, define the search region;

a fine motion estimator for correlating the portion of a current picture with the search region; and

a motion mode evaluator configured to make a sub-macroblock partition mode decision for each reference picture; before a uni-directional prediction among multiple reference pictures.

8. The system of claim 7 , wherein the portion of the current picture is a macroblock partition.

9. The system of claim 7 , further comprising:

decimating the reference picture by averaging adjacent pixels, thereby producing the sub-sampled reference picture.

10. The system of claim 7 , further comprising a costing engine to determine a cost for the set of motion vectors that describe a displacement from a section of the sub-sampled reference picture to a macroblock in the sub-sampled current picture.

11. The system of claim 7 , wherein the set of motion vectors correspond to the macroblock and neighboring macroblocks.

12. The system of claim 7 , wherein the fine motion estimator correlates a portion of the sub-sampled current picture with the search region.

13. The system of claim 7 , wherein the coarse search engine is non-synchronous with the fine motion estimator.

14. The system of claim 7 , further comprising a motion mode evaluator configured to make mode decisions in the following order:

a) a sub-macroblock partition mode for each reference picture,

b) a uni-directional prediction among multiple reference pictures,

c) a bi-direction prediction among reference picture pairs,

d) an overall prediction between uni-direction and bi-direction predictions, and

e) a macroblock partition mode.

15. The system of claim 7 , wherein the motion mode evaluator is configured to make a uni-directional prediction among multiple reference pictures before a bi-direction prediction among reference picture pairs.

16. The system of claim 15 , wherein the motion mode evaluator is configured to make a bi-direction prediction among reference picture pairs before an overall prediction between uni-direction and bi-direction predictions.

17. The system of claim 16 , wherein the motion mode evaluator is configured to make an overall prediction between uni-direction and bi-direction predictions before a macroblock partition mode decision.

18. An integrated circuit for video encoding, said integrated circuit comprising:

a memory for storing a current picture and a reference picture, wherein the current picture comprises a macroblock partition; and

a circuit operable for:

decimating the current picture by averaging neighboring pixels, thereby producing a sub-sampled current picture;

determining a search region in the reference picture by averaging neighboring pixels based on the sub-sampled current picture; and correlating the macroblock partition with the search region;

interpolating a portion of the search region, thereby producing an interpolated reference; and

evaluating a cost for estimating an interpolated macroblock partition with the interpolated reference.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2009
From: BROADCOM ADVANCED COMPRESSION GROUP, LLC
To: BROADCOM CORPORATION
Reel/Frame 022299/0916 →