# US 2021/0243451 A1 · Smoothed directional and dc intra prediction

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0243451 A1
- Document ID: US20210243451A1
- Status: Published application
- Kind: A1
- Application number: 16/834,693
- Filed: 2020-03-30
- Published: 2021-08-05
- Earliest claimed: 2020-02-05
- Assignees: Apple Inc.
- Applicants: Apple Inc.
- Inventors: Mei Guo; Jun Xin; Hsi-Jung Wu; Alexandros Tourapis; Krishnakanth Rapaka
- Web page: https://patentgrep.com/patent/US20210243451A1

## CPC

- H04N 19/105: Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
- H04N 19/159: Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
- H04N 19/11: among a plurality of spatial predictive coding modes
- H04N 19/117: Filters, e.g. for pre-processing or post-processing (sub-band filter banks H04N19/635)
- H04N 19/136: Incoming video signal characteristics or properties
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/182: the unit being a pixel
- H04N 19/593: involving spatial prediction techniques
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Techniques are disclosed for deriving prediction pixel blocks for use in intra-coding video and combined inter- and intra-coding video. In a first aspect, the techniques may include deriving value(s) for pixel location(s) of the prediction pixel block by, when a prediction direction vector assigned to the prediction vector points to quadrants I or III of a Cartesian plane, deriving the pixel location's value from pixel values in two regions of previously-decoded pixel data intercepted by extending the prediction direction vector in two opposite directions through the pixel location. When the prediction direction vector points toward quadrants II of the Cartesian plane, deriving the pixel location's value from pixel values in one region intercepted by the prediction direction vector through the pixel location, and from a second region intercepted by a vector that is orthogonal to the prediction direction vector.

## Claims

### Claim 1

An image coding method, comprising:
deriving a prediction pixel block for use in predictive coding in which a value for at least one pixel location of the prediction pixel block is derived according to:
when a prediction direction vector assigned to the prediction pixel block points toward the quadrants I or III of a Cartesian plane, deriving the pixel location's value from pixel values in two regions of previously-decoded pixel data intercepted by extending the prediction direction vector in two opposite directions through the pixel location,
when the prediction direction vector points toward quadrants II of the Cartesian plane, deriving the pixel location's value from pixel values in one region intercepted by the prediction direction vector through the pixel location, and from a second region intercepted by a vector that is orthogonal to the prediction direction vector; and
coding an input pixel block differentially with reference to the prediction pixel block.

### Claim 2

An image decoding method, comprising:
deriving a prediction pixel block for use in predictive coding in which a value for at least one pixel location of the prediction pixel block is derived according to:
when a prediction direction vector assigned to the prediction pixel block points toward the quadrants I or III of a Cartesian plane, deriving the pixel location's value from pixel values in two regions of previously-decoded pixel data intercepted by extending the prediction direction vector in two opposite directions through the pixel location,
when the prediction direction vector points toward quadrants II of the Cartesian plane, deriving the pixel location's value from pixel values in one region intercepted by the prediction direction vector through the pixel location, and from a second region intercepted by a vector that is orthogonal to the prediction direction vector; and
decoding coded pixel block differentially with reference to the prediction pixel block.

### Claim 3 (depends on 2)

The method of claim 2, wherein at least one of the regions is a row of previously-decoded pixel data bordering an edge of the prediction pixel block.

### Claim 4 (depends on 2)

The method of claim 2, wherein at least one of the regions is a column of previously-decoded pixel data bordering an edge of the prediction pixel block.

### Claim 5 (depends on 2)

The method of claim 2, wherein at least one of the regions is a two-dimensional array of previously-decoded pixel data bordering an edge of the prediction pixel block.

### Claim 6 (depends on 2)

The method of claim 2, wherein the orthogonal vector extends through the pixel location.

### Claim 7 (depends on 2)

The method of claim 2, wherein the orthogonal vector extends from a location where the prediction vector intercepts an edge of the prediction pixel block.

### Claim 8

A computer readable medium storing program instruction that, when executed by a processing device, cause the processing device to execute an image decoding method, comprising:
deriving a prediction pixel block for use in predictive coding in which a value for at least one pixel location of the prediction pixel block is derived according to:
when a prediction direction vector assigned to the prediction pixel block points toward the quadrants I or III of a Cartesian plane, deriving the pixel location's value from pixel values in two regions of previously-decoded pixel data intercepted by extending the prediction direction vector in two opposite directions through the pixel location,
when the prediction direction vector points toward quadrants II of the Cartesian plane, deriving the pixel location's value from pixel values in one region intercepted by the prediction direction vector through the pixel location, and from a second region intercepted by a vector that is orthogonal to the prediction direction vector; and
decoding coded pixel block differentially with reference to the prediction pixel block.

### Claim 9

A decoding system, comprising:
a video decoder, having an input for coded pixel blocks, an input for a prediction pixel block, and an output for decoded pixel blocks,
a reference picture buffer to store decoded data assembled from the decoded pixel blocks, and
a predictor that, for pixel blocks to be coded by intra-coding, generates a prediction pixel block, wherein the prediction pixel block has a value for at least one pixel location of the prediction pixel block that is derived according to:
when a prediction direction vector assigned to the prediction pixel block points toward the quadrants I or III of a Cartesian plane, deriving the pixel location's value from pixel values in two regions of previously-decoded pixel data intercepted by extending the prediction direction vector in two opposite directions through the pixel location,
when the prediction direction vector points toward quadrants II of the Cartesian plane, deriving the pixel location's value from pixel values in one region intercepted by the prediction direction vector through the pixel location, and from a second region intercepted by a vector that is orthogonal to the prediction direction vector.

### Claim 10

An image coding method, comprising:
deriving a prediction pixel block for use in predictive coding in which a value for at least one pixel location of the prediction pixel block is derived from a predicted DC value of the prediction pixel block and at least one source pixel selected from a region of previously-decoded pixel data closest to the pixel location,
coding an input pixel block differentially with reference to the prediction pixel block.

### Claim 11 (depends on 10)

The method of claim 10, wherein, when the pixel location is within a first threshold distance of a top edge of the prediction pixel block, the source pixel is selected as a pixel in a bottom-most row of previously decoded pixel data in a common column as the pixel location.

### Claim 12 (depends on 10)

The method of claim 10, wherein, when the pixel location is within a second threshold distance of a left edge of the prediction pixel block, the source pixel is selected as a pixel in a right-most column of previously decoded pixel data in a common row as the pixel location.

### Claim 13 (depends on 10)

The method of claim 10, wherein, when the pixel location is within threshold distances of both a top row of the prediction pixel block and a left-most column of the prediction pixel block, the value for the one pixel location is derived from a first source pixel in a bottom-most row of previously decoded pixel data in a common column as the pixel location and a second source pixel in a right-most column of previously decoded pixel data in a common row as the pixel location.

### Claim 14 (depends on 10)

The method of claim 10, wherein relative contributions of the predicted DC value and the source pixel are weighted according to a distance between the pixel location and a location of the source pixel.

### Claim 15

An image decoding method, comprising:
deriving a prediction pixel block for use in predictive coding in which a value for at least one pixel location of the prediction pixel block is derived from a predicted DC value of the prediction pixel block and at least one source pixel selected from a region of previously-decoded pixel data closest to the pixel location,
decoding a coded pixel block predictively with reference to the prediction pixel block.

### Claim 16 (depends on 15)

The method of claim 15, wherein, when the pixel location is within a first threshold distance of a top edge of the prediction pixel block, the source pixel is selected as a pixel in a bottom-most row of previously decoded pixel data in a common column as the pixel location.

### Claim 17 (depends on 15)

The method of claim 15, wherein, when the pixel location is within a second threshold distance of a left edge of the prediction pixel block, the source pixel is selected as a pixel in a right-most column of previously decoded pixel data in a common row as the pixel location.

### Claim 18 (depends on 15)

The method of claim 15, wherein, when the pixel location is within threshold distances of both a top row of the prediction pixel block and a left-most column of the prediction pixel block, the value for the one pixel location is derived from a first source pixel in a bottom-most row of previously decoded pixel data in a common column as the pixel location and a second source pixel in a right-most column of previously decoded pixel data in a common row as the pixel location.

### Claim 19 (depends on 15)

The method of claim 15, wherein relative contributions of the predicted DC value and the source pixel are weighted according to a distance between the pixel location and a location of the source pixel.

### Claim 20

A computer readable medium storing program instruction that, when executed by a processing device, cause the processing device to execute an image decoding method, comprising:
deriving a prediction pixel block for use in predictive coding in which a value for at least one pixel location of the prediction pixel block is derived from a predicted DC value of the prediction pixel block and at least one source pixel selected from a region of previously-decoded pixel data closest to the pixel location,
decoding a coded pixel block predictively with reference to the prediction pixel block.

### Claim 21

A decoding system, comprising:
a video decoder, having an input for coded pixel blocks, an input for a prediction pixel block, and an output for decoded pixel blocks,
a reference picture buffer to store decoded data assembled from the decoded pixel blocks, and
a predictor that, for pixel blocks to be coded by intra-coding, generates a prediction pixel block, wherein the prediction pixel block has a value for at least one pixel location of the prediction pixel block that is derived from a predicted DC value of the prediction pixel block and at least one source pixel selected from a region of previously-decoded pixel data closest to the pixel location.
