Intra/inter mode decision for predictive frame encoding

US9560350B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9560350-B2
Application numberUS-75121110-A
CountryUS
Kind codeB2
Filing dateMar 31, 2010
Priority dateMar 31, 2009
Publication dateJan 31, 2017
Grant dateJan 31, 2017

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.

This invention predicts that intra mode prediction is more effective for the macro blocks where motion estimation in inter mode prediction fails. This failure is indicated by a large value of the inter mode SAD. This invention performs intra mode prediction for only macro blocks have larger inter mode SADs. The definition of a large inter mode SAD differs for different content. This invention compares the inter mode SAD of a current macroblock with an adaptive threshold. This adaptive threshold depends on the average and variance of the SADs of the previous predicted frame. An adaptive threshold is calculated for each new predictive frame.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of transforming a video into an encoded, compressed video comprising the steps of: receiving an input video in the form of a plurality of sequential frames; dividing each frame into a plurality of macroblocks; for each macroblock in each frame of the video calculating a best measure of similarity for inter mode predictive coding of the macroblock, comparing the calculated best measure of similarity for inter mode predictive coding with a predetermined threshold, if the calculated best measure of similarity for inter mode predictive coding is less than the predetermined threshold, then inter mode predictive coding the macroblock, if the calculated best measure of similarity for inter mode predictive coding is not less than the predetermined threshold, then calculating a best measure of similarity for intra mode predictive coding of the macroblock, comparing the calculated best measure of similarity for inter mode predictive coding with the best measure of similarity for intra mode predictive coding, if the calculated best measure of similarity for inter mode predictive coding is less than the best measure of similarity for intra mode predictive coding, then inter mode predictive coding the macroblock, if the calculated best measure of similarity for inter mode predictive coding is not less than the predetermined threshold, then intra mode predictive coding the macroblock; outputting an output video having the thus encoded macroblocks; upon completion of a frame, calculating a new predetermined threshold for a next frame including calculating an average SAD (avg_sad) over the frame as follows avg_sad = 1 M ⁢ ∑ i = 1 M ⁢ ⁢ sad ⁡ [ i ] where: M is a number of macroblocks in the frame; and sad[i] is the calculated inter mode SAD for the i-th macroblock, calculating a variance in average SAD over the frame (var_sad) as follows: var_sad = 1 M ⁢ ∑ i = 1 M ⁢ ⁢ ( sad ⁡ [ i ] - ave_sad ) 2 , calculating an average SAD per pixel (avg_sad_pp) as follows: avg_sad ⁢ _pp = avg_sad N , calculating an average variance in SAD per pixel (var_sad_pp) as follows: var_sad ⁢ _pp = var_sad N 2 where: N is a number of pixels per macroblock, and calculating a new value of the predetermined threshold for a next frame as follows: FastIntraThrehold[ n ]=(1−QF*var_sad_pp[ n− 1])*avg_sad_pp[ n− 1] where: QF is an empirical quality factor. 2. The method of claim 1 , wherein: the quality factor is selected from a set { 0 , 1 , 2 , 3 , 4 , 5 }; and a quality factor level 0 eliminates intra mode SAD computations for all macroblocks. 3. The method of claim 1 , wherein: the quality factor is selected from a set { 0 , 1 , 2 , 3 , 4 , 5 }; and a quality factor level 5 causes intra mode SAD calculation for every macroblock. 4. An apparatus transforming a video into an encoded, compressed video comprising: a memory receiving and storing an input video in the form of a plurality of sequential frames; a digital signal processor connected to said memory programmed to divide each frame stored in said memory into a plurality of macroblocks; for each macroblock in each frame of said video calculate a best measure of similarity for inter mode predictive coding of said macroblock, compare said calculated best measure of similarity for inter mode predictive coding with a predetermined threshold, if said calculated best measure of similarity for inter mode predictive coding is less than the predetermined threshold, then inter mode predictive code said macroblock, if said calculated best measure of similarity for inter mode predictive coding is not less than the predetermined threshold, then calculate a best measure of similarity for intra mode predictive coding of said macroblock, compare said calculated best measure of similarity for inter mode predictive coding with the best measure of similarity for intra mode predictive coding, if said calculated best measure of similarity for inter mode predictive coding is less than said best measure of similarity for intra mode predictive coding, then inter mode predictive code the macroblock, if said calculated best measure of similarity for inter mode predictive coding is not less than said predetermined threshold, then intra mode predictive code the macroblock; output an output video having the thus encoded macroblocks; said digital signal processor is further programmed to calculate a new predetermined threshold for a next frame upon completion of said frame including calculate an average SAD (avg_sad) over said frame as follows avg_sad = 1 M ⁢ ∑ i = 1 M ⁢ ⁢

Assignees

Inventors

Classifications

  • the region being a block, e.g. a macroblock · CPC title

  • according to rate distortion criteria (rate-distortion as a criterion for motion estimation H04N19/567) · CPC title

  • H04N19/107Primary

    between spatial and temporal predictive coding, e.g. picture refresh · CPC title

  • Electricity · mapped topic

  • using predictive coding (H04N19/61 takes precedence) · 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 US9560350B2 cover?
This invention predicts that intra mode prediction is more effective for the macro blocks where motion estimation in inter mode prediction fails. This failure is indicated by a large value of the inter mode SAD. This invention performs intra mode prediction for only macro blocks have larger inter mode SADs. The definition of a large inter mode SAD differs for different content. This invention c…
Who is the assignee on this patent?
Nagori Soyeb, Mathew Manu, Swami Pramod Kumar, and 1 more
What technology area does this patent fall under?
Primary CPC classification H04N19/107. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 31 2017 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).