Performance and bandwidth efficient fractional motion estimation

US10021387B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10021387-B2
Application numberUS-201213995564-A
CountryUS
Kind codeB2
Filing dateApr 26, 2012
Priority dateApr 20, 2012
Publication dateJul 10, 2018
Grant dateJul 10, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Described herein are techniques related to motion estimation for video encoding. In particular, integer estimation is performed on a reference video frame, and a best size macro block is determined. A fractional estimation is performed on that best size macro block. Based on the fractional estimation, a determination is made if an improvement occurs over the macro block from the integer estimation. If such an improvement occurs, then all sub shapes of the best size macro block from the integer search/estimation are updated. Furthermore, the new sub macro block is chosen as the final macro block to be used for video encoding.

First claim

Opening claim text (preview).

What is claimed is: 1. A device comprising: one or more processors; a memory communicatively coupled to the one or more processors; and an encoder communicatively coupled to the one or more processors and the memory, and comprising: an integer motion estimator component configured to perform an initial integer search and to determine a largest macro block with a lowest distortion from among a plurality of macro blocks of a reference frame; a fractional motion estimator configured to perform a fractional prediction and to interpolate fractional locations on current pixels of only the determined largest macro block; a database of shapes configured to: store a record of shapes, be updated based on the determined largest macro block to provide an updated macro block, and be updated based on the fractional prediction and the fractional location interpolation on the current pixels of the largest macro block to provide an updated sub macro block, wherein the integer motion estimator further being configured to perform a distortion-comparison between the updated macro block and the updated sub macro block; and a partitioner configured to provide the updated macro block or the updated sub macro block based on the performed distortion-comparison. 2. The device of claim 1 , wherein the integer motion estimator performs the initial integer search based initially on the largest macro block of a video encoding standard. 3. The device of claim 1 , wherein the integer motion estimator searches for the largest macro block based at least on the macro block with the lowest distortion. 4. The device of claim 1 , wherein the fractional motion estimator checks underlying pixels of the largest macro block as to the sub macro blocks. 5. The device of claim 1 , wherein the fractional motion estimator interactively interpolates the fractional locations to determine an improvement as to the sub macro block of the largest macro block with the lowest distortion. 6. The device of claim 1 , wherein the database of shapes includes different databases for different macro blocks and sub macro blocks, wherein the different databases are updated at a same time. 7. The device of claim 1 , wherein the encoder is comprised within central processor comprised within an application specific integrated circuit, or is implemented on a separate circuit. 8. A video encoder comprising: an integer motion estimator configured to perform an integer estimation and to determine a largest macro block with a lowest distortion from among a plurality of macro blocks of a reference frame; a database of shapes configured to store a record of shapes, and to be updated based on the determined largest macro block to provide an updated macro block; a fractional motion estimator configured to perform a fractional estimation and to interpolate fractional locations of only the determined largest macro block, and to determine if an improvement occurs on sub macro blocks of the determined largest macro block, wherein the database of shapes is updated based on the fractional motion estimation and the fractional location interpolation of the determined largest macro block to provide an updated sub macro block, the integer motion estimator further being configured to perform a distortion-comparison between the updated macro block and the updated sub macro block; and a partitioner configured to provide the updated macro block or the updated sub macro block based on the performed distortion-comparison. 9. The video encoder of claim 8 , wherein the integer motion estimator initially searches the macro block based at least on the largest macro block with lowest distortion. 10. The video encoder of claim 8 , wherein the partitioner provides the updated macro block based on the fractional estimation. 11. The video encoder of claim 8 , wherein the fractional motion estimator checks underlying pixels of the determined largest macro block as to sub macro blocks. 12. The video encoder of claim 8 , wherein the fractional motion estimator interactively interpolates the fractional locations to determine the improvement as to sub macro block of the determined largest macro block. 13. The video encoder of claim 8 , wherein the database of shapes includes different databases for different macro blocks and sub macro blocks, wherein the different databases are updated at a same time. 14. The video encoder of claim 11 , wherein the video encoder is comprised within a central processor, comprised within an application specific integrated circuit, or is implemented on a separate circuit. 15. A method of fractional motion estimation comprising: performing an integer search and determining a largest macro block with a lowest distortion from among a plurality of macro blocks of a reference video frame; performing a fractional search only on the determined largest macro block and sub macro blocks of the largest macro block; updating a database of shapes for the largest macro block and sub macro blocks to provide an updated macro block and updated sub macro blocks; comparing distortions between the updated macro block and the updated sub macro blocks; and choosing the updated macro block or the updated sub macro block for video encoding based on the distortion-comparison. 16. The method of claim 15 , wherein the reference video frame is from a digital video source to be compressed and encoded. 17. The method of claim 15 , wherein the updating of the database of shapes for the largest macro block and the sub macro blocks is performed at a same time on one or more databases. 18. The method of claim 15 , wherein the performing of the fractional search includes changing a mode selection and a macro block size during the fractional searching. 19. The method of claim 15 , further comprising: an interactive interpolation of fractional locations to determine an improvement as to the sub macro blocks of the determined largest macro block. 20. The method of claim 15 , wherein the method is performed by a codec.

Assignees

Inventors

Classifications

  • Electricity · mapped topic

  • H04N19/56Primary

    Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search · CPC title

  • H04N19/51Primary

    Motion estimation or motion compensation · CPC title

  • Motion estimation characterised by a search window with variable size or shape · CPC title

  • with sub-pixel accuracy · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10021387B2 cover?
Described herein are techniques related to motion estimation for video encoding. In particular, integer estimation is performed on a reference video frame, and a best size macro block is determined. A fractional estimation is performed on that best size macro block. Based on the fractional estimation, a determination is made if an improvement occurs over the macro block from the integer estimat…
Who is the assignee on this patent?
Lee Sang Hee, Tanner Jason D, Intel Corp
What technology area does this patent fall under?
Primary CPC classification H04N19/00733. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jul 10 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).