IP Library Granted Patent US 9,942,565
Granted Patent B2
US 9,942,565 · App. 14/871,274 · Granted Apr 10, 2018

Low-complexity intra prediction for video coding

Inventors: Frank Jan Bossen (Mountain View, CA); Thiow Keng Tan (Jalan Sindor, MY)
Assignee: NTT DOCOMO, INC.
H04N19/593H04N19/11H04N19/176H04N19/61H04N19/82
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,942,565
App. No.
14/871,274
Granted
Apr 10, 2018
Kind
B2
Abstract

The present invention provides a unique intra prediction process which improves the efficiency of video coding. H.264/AVC uses reference pixels in a horizontal boundary located immediately above a target block to be predicted and reference pixels in a vertical boundary located immediately left of the target block. In the present invention, at least some of one of an array of horizontal boundary pixels and an array of vertical boundary pixels are retrieved. Then, the retrieved pixels are added to the other boundary pixels to extend the array thereof. Intra prediction is performed, based solely on the extended array of boundary pixels.

Claims (56)

1. A video encoding method comprising computer executable steps executed by a processor of a video encoder to implement an intra-prediction operation that derives a prediction block of a target block with boundary pixels of the target block interpolated along an intra prediction angle, wherein the boundary pixels comprise a horizontal array of horizontal boundary pixels and a vertical array of vertical boundary pixels, the intra-prediction operation comprises: a step of executing, based on prediction mode information indicating prediction mode, either

a first process including:

obtaining a value of an inverse angle parameter, corresponding to the intra prediction angle, from a look-up table which lists values of inverse angle parameters in relation, respectively, to a plurality of different intra prediction angles;

identifying at least some of the vertical boundary pixels located in the vertical array at positions which are a function of multiplication between the obtained value of the inverse angle parameter and a value of a horizontal location identifier which is a variable representing positions in an extension of an extended horizontal array;

adding the identified at least some of the vertical boundary pixels as horizontal boundary pixels to the extension of the extended horizontal array; and

using only the horizontal boundary pixels in the extended horizontal array, without using the vertical boundary pixels, to derive the prediction block of the target block,

or

a second process including:

obtaining a value of an inverse angle parameter, corresponding to the intra prediction angle, from a look-up table which lists values of inverse angle parameters in relation, respectively, to a plurality of different intra prediction angles;

identifying at least some of the horizontal boundary pixels located in the horizontal array at positions which are a function of multiplication between the obtained value of the inverse angle parameter and a value of a vertical location identifier which is a variable representing positions in an extension of an extended vertical array;

adding the identified at least some of the horizontal boundary pixels as vertical boundary pixels to the extension of the extended vertical array; and

using only the vertical boundary pixels in the extended vertical array, without using the horizontal boundary pixels, to derive the prediction block of the target block.

2. The video encoding method according to claim 1 , wherein the prediction mode information is information representing one of prediction directions.

3. A video decoding method comprising computer executable steps executed by a processor of a video decoder to implement an intra-prediction operation that derives a prediction block of a target block with boundary pixels of the target block interpolated along an intra prediction angle, wherein the boundary pixels comprise a horizontal array of horizontal boundary pixels and a vertical array of vertical boundary pixels, the intra-prediction operation comprises:

a prediction mode decoding step of decoding prediction mode information indicating prediction mode from encoded video signals; and

an executing step of executing, based on the prediction mode information decoded in the prediction mode decoding step, either

a first process including:

obtaining a value of an inverse angle parameter, corresponding to the intra prediction angle, from a look-up table which lists values of inverse angle parameters in relation, respectively, to a plurality of different intra prediction angles;

identifying at least some of the vertical boundary pixels located in the vertical array at positions which are a function of multiplication between the obtained value of the inverse angle parameter and a value of a horizontal location identifier which is a variable representing positions in an extension of an extended horizontal array;

adding the identified at least some of the vertical boundary pixels as horizontal boundary pixels to the extension of the extended horizontal array; and

using only the horizontal boundary pixels in the extended horizontal array, without using the vertical boundary pixels, to derive the prediction block of the target block,

or

a second process including:

obtaining a value of an inverse angle parameter, corresponding to the intra prediction angle, from a look-up table which lists values of inverse angle parameters in relation, respectively, to a plurality of different intra prediction angles;

identifying at least some of the horizontal boundary pixels located in the vertical array at positions which are a function of multiplication between the obtained value of the inverse angle parameter and a value of a vertical location identifier which is a variable representing positions in an extension of an extended vertical array;

adding the identified at least some of the horizontal boundary pixels as vertical boundary pixels to the extension of the extended vertical array; and

using only the vertical boundary pixels in the extended vertical array, without using the horizontal boundary pixels, to derive the prediction block of the target block.

4. The video decoding method according to claim 3 , wherein the prediction mode information is information representing one of prediction directions.

5. A video encoder comprising a processor of a computer system and a memory that stores programs executable by the processor to implement an intra-prediction operation that derives a prediction block of a target block with boundary pixels of the target block interpolated along an intra prediction angle, wherein the boundary pixels comprise a horizontal array of horizontal boundary pixels and a vertical array of vertical boundary pixels, the intra-prediction operation implemented by the processor to:

execute a step of executing, based on prediction mode information indicating prediction mode, either

a first process including:

obtaining a value of an inverse angle parameter, corresponding to the intra predicition angle, from a look-up table which lists values of inverse angle parameters in relation, respectively, to a plurality of different intra prediction angles;

identifying at least some of one of the vertical boundary pixels located in the vertical array at positions which are a function of multiplication between the obtained value of the inverse angle parameter and a value of a horizontal location identifier which is a variable representing positions in an extension of an extended horizontal array;

adding the identified at least some of the vertical boundary pixels as horizontal boundary pixels to the extension of the extended horizontal array; and

using only the horizontal boundary pixels in the extended horizontal array, without using the vertical boundary pixels, to derive the prediction block of the target block,

or

a second process including:

obtaining a value of an inverse angle parameter, corresponding to the intra predicition angle, from a look-up table which lists values of inverse angle parameters in relation, respectively, to a plurality of different intra prediction angles;

identifying at least some of one of the horizontal boundary pixels located in the horizontal array at positions which are a function of multiplication between the obtained value of the inverse angle parameter and a value of a vertical location identifier which is a variable representing positions in an extension of an extended vertical array;

adding the identified at least some of the horizontal boundary pixels as vertical boundary pixels to the extension of the extended vertical array; and

using only the vertical boundary pixels in the extended vertical array, without using the horizontal boundary pixels, to derive the prediction block of the target block.

6. A video decoder comprising a processor of a computer system and a memory that stores programs executable by the processor to implement an intra-prediction operation that derives a prediction block of a target block with boundary pixels of the target block interpolated along an intra prediction angle, wherein the boundary pixels comprise a horizontal array of horizontal boundary pixels and a vertical array of vertical boundary pixels, the intra-prediction operation implemented by the processor to:

execute:

a prediction mode decoding step of decoding prediction mode information indicating prediction mode from encoded video signals; and

an executing step of executing, based on the prediction mode information decoded in the prediction mode decoding step, either

a first process including:

obtaining a value of an inverse angle parameter, corresponding to the intra predicition angle, from a look-up table which lists values of inverse angle parameters in relation, respectively, to a plurality of different intra prediction angles;

identifying at least some of the vertical boundary pixels located in the vertical array at positions which are a function of multiplication between the obtained value of the inverse angle parameter and a value of a horizontal location identifier which is a variable representing positions in an extension of an extended horizontal array;

adding the identified at least some of the vertical pixels as horizontal boundary pixels to the extension of the extended horizontal array; and

using only the horizontal boundary pixels in the extended horizontal array, without using the vertical boundary pixels, to derive the prediction block of the target block,

or

a second process including:

obtaining a value of an inverse angle parameter, corresponding to the intra predicition angle, from a look-up table which lists values of inverse angle parameters in relation, respectively, to a plurality of different intra prediction angles;

identifying at least some of the horizontal boundary pixels located in the horizontal array at positions which are a function of multiplication between the obtained value of the inverse angle parameter and a value of a vertical location identifier which is a variable representing positions in an extension of an extended vertical array;

adding the identified at least some of the horizontal pixels as vertical boundary pixels to the extension of the extended vertical array; and

using only the vertical boundary pixels in the extended vertical array, without using the horizontal boundary pixels, to derive the prediction block of the target block.

Continuity (4)
Continuation 13809511
Provisional Application 61388541 · Sep 30, 2010
Provisional Application 61364322 · Jul 14, 2010
Related Publication 20160021392A1 · Jan 21, 2016