IP Library Patent Application 13070007
Patent Application
App. No. 13/070,007

Method and System for Video and Image Coding Using Pattern Matching for Intra-Prediction

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 None
App. No.
13/070,007
Abstract

A method and system are provided in which a device can determine, for a current block of pixels, a first intra-prediction based on reconstructed neighboring pixels and a second intra-prediction based on a pattern match with a reconstructed block of pixels. One of the two intra-predictions may be selected to generate a compressed bit stream comprising information of the current block of pixels. The intra-prediction selection may be performed on a block-by-block basis. An indication may be generated as to which of the two intra-predictions was selected for a particular block of pixels. When pattern matching is selected, a positional relationship of the reconstructed block of pixels with the matching pattern may be encoded and embedded into the compressed bit stream. The same device or another device may be operable to receive a compressed bit stream comprising intra-prediction selection and/or positional relationship information to reconstruct a current block of pixels.

Claims (68)

1 . A method, comprising:

in a device that is operable to process one or both of video images and still images:

determining a first intra-prediction of a current block of pixels based on reconstructed pixels neighboring the current block of pixels;

determining a second intra-prediction of the current block of pixels based on a match between a pattern in a reconstructed block of pixels and a pattern in the current block of pixels;

selecting one of the first intra-prediction of the current block of pixels and the second intra-prediction of the current block of pixels based on results from the determination of the first intra-prediction of the current block of pixels and the determination of the second intra-prediction of the current block of pixels; and

generating a bit stream comprising a difference between uncompressed pixels of the current block of pixels and intra-predicted pixels of the current block of pixels predicted utilizing the selected intra-prediction.

2 . The method of claim 1 , comprising:

generating an indication that the second intra-prediction of the current block of pixels is selected; and

embedding the generated indication for the current block of pixels into the generated bit stream.

3 . The method of claim 1 , wherein a size of the current block of pixels is one of 16×16, 8×16, 16×8, 8×8, 8×4, 4×8, and 4×4.

4 . The method of claim 1 , wherein when the second intra-prediction of the current block of pixels is selected, the method comprises:

encoding a positional relationship between the current block of pixels and the reconstructed block of pixels.

5 . The method of claim 1 , wherein the selecting comprises determining a cost metric for each of the determination of the first intra-prediction of the current block of pixels and the determination of the second intra-prediction of the current block of pixels.

6 . The method of claim 1 , comprising:

determining the second intra-prediction of the current block of pixels based on a match between a pattern in a sub-block of the reconstructed block of pixels and a pattern in a sub-block of the current block of pixels; and

encoding a positional relationship between the sub-block of the reconstructed block of pixels and the sub-block of the current block of pixels.

7 . The method of claim 1 , comprising:

determining a first intra-prediction of a next block of pixels based on reconstructed pixels neighboring the next block of pixels;

determining a second intra-prediction of the next block of pixels based on a match between a pattern in a reconstructed block of pixels and a pattern in the next block of pixels;

selecting one of the first intra-prediction of the next block of pixels and the second intra-prediction of the next block of pixels based on results from the determination of the first intra-prediction of the next bock of pixels and the determination of the second intra-prediction of the next block of pixels, wherein the generated bit stream comprises a difference between uncompressed pixels of the next block of pixels and intra-predicted pixels of the next block of pixels predicted utilizing the selected intra-prediction;

generating an indication of which intra-prediction of the next block of pixels is selected; and

embedding the generated indication for the next block of pixels into the generated bit stream.

8 . A method, comprising:

in a device that is operable to process one or both of video images and still images:

receiving an indication that an intra-prediction of a current block of pixels is based on a match between a pattern in the current block of pixels and a pattern in a reconstructed block of pixels;

receiving a positional relationship between the current block of pixels and the reconstructed block of pixels;

generating the intra-prediction of the current block of pixels based on the received positional relationship; and

reconstructing the current block of pixels based on the generated intra-prediction of the current block of pixels.

9 . The method of claim 8 , wherein a size of the current block of pixels is one of 16×16, 8×16, 16×8, 8×8, 8×4, 4×8, and 4×4.

10 . The method of claim 8 , wherein a pattern in a sub-block of the current block matches a pattern in a sub-block of the reconstructed block of pixels, the method comprising:

receiving a positional relationship between the sub-block of the current block of pixels and the sub-block of the reconstructed block of pixels.; and

generating the intra-prediction of the current block of pixels based on the received sub-block positional relationship.

11 . A system, comprising:

one or more processors and/or circuits that are operable to:

determine a first intra-prediction of a current block of pixels based on reconstructed pixels neighboring the current block of pixels;

determine a second intra-prediction of the current block of pixels based on a match between a pattern in a reconstructed block of pixels and a pattern in the current block of pixels;

select one of the first intra-prediction of the current block of pixels and the second intra-prediction of the current block of pixels based on results from the determination of the first intra-prediction of the current block of pixels and the determination of the second intra-prediction of the current block of pixels; and

generate a bit stream comprising a difference between uncompressed pixels of the current block of pixels and intra-predicted pixels of the current block of pixels predicted utilizing the selected intra-prediction.

12 . The system of claim 11 , wherein the one or more processors and/or circuits are operable to:

generate an indication that the second intra-prediction of the current block of pixels is selected; and

embed the generated indication for the current block of pixels into the generated bit stream.

13 . The system of claim 11 , wherein the current block of pixels is one of a 16×16 block of pixels, an 8×8 block of pixels, and a 4×4 block of pixels.

14 . The system of claim 11 , wherein when the second intra-prediction of the current block of pixels is selected, the one or more processors and/or circuits are operable to:

encode a positional relationship between the current block of pixels and the reconstructed block of pixels.

15 . The system of claim 11 , wherein the one or more processors and/or circuits are operable to:

determine a cost metric for each of the determination of the first intra-prediction of the current block of pixels and the determination of the second intra-prediction of the current block of pixels; and

select one of the first intra-prediction of the current block of pixels and the second intra-prediction of the current block of pixels based on the cost metrics.

16 . The system of claim 11 , wherein the one or more processors and/or circuits are operable to:

determine the second intra-prediction of the current block of pixels based on a match between a pattern in a sub-block of a reconstructed block of pixels and a pattern in a sub-block of the current block of pixels; and

encode a positional relationship between the sub-block of the reconstructed block of pixels and the sub-block of the current block of pixels.

17 . The system of claim 11 , wherein the one or more processors and/or circuits are operable to:

determine a first intra-prediction of a next block of pixels based on reconstructed pixels neighboring the next block of pixels;

determine a second intra-prediction of the next block of pixels based on a match between a pattern in a reconstructed block of pixels and a pattern in the next block of pixels;

select one of the first intra-prediction of the next block of pixels and the second intra-prediction of the next block of pixels based on results from the determination of the first intra-prediction of the next block of pixels and the determination of the second intra-prediction of the next block of pixels, wherein the generated bit stream comprises a difference between uncompressed pixels of the next block of pixels and intra-predicted pixels of the next block of pixels predicted utilizing the selected intra-predictions;

generate an indication of which intra-prediction of the next block of pixels is selected; and

embed the generated indication for the next block of pixels into the generated bit stream.

18 . A system, comprising:

one or more processors and/or circuits that are operable to:

receive an indication that an intra-prediction of a current block of pixels is based on a match of a pattern in the current block of pixels and a pattern in a reconstructed block of pixels;

receive a positional relationship between the current block of pixels and the reconstructed block of pixels;

generate the intra-prediction of the current block of pixels based on the positional relationship; and

reconstruct the current block of pixels based on the generated intra-prediction of the current block of pixels.

19 . The system of claim 18 , wherein the current block of pixels is one of a 16×16 block of pixels, an 8×8 block of pixels, and a 4×4 block of pixels.

20 . The system of claim 18 , wherein:

a pattern in a sub-block of the current block matches a pattern in a sub-block of the reconstructed block of pixels; and

the one or more processors and/or circuits that are operable to:

receive a positional relationship between the sub-block of the current block of pixels and the sub-block of the reconstructed block of pixels.; and

generate the intra-prediction of the current block of pixels based on the received sub-block positional relationship.

Assignments (4)
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 Apr 13, 2011
From: ZHANG, LEI
To: BROADCOM CORPORATION
Reel/Frame 026114/0794 →