# US 2018/0027233 A1 · Effective wedgelet partition coding

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

- Number: US 2018/0027233 A1
- Document ID: US20180027233A1
- Status: Published application
- Kind: A1
- Application number: 15/723,327
- Filed: 2017-10-03
- Published: 2018-01-25
- Earliest claimed: 2011-11-11
- Assignees: Ge Video Compression, LLC
- Applicants: Ge Video Compression, LLC
- Inventors: Philipp MERKLE; Christian BARTNIK; Haricharan LAKSHMAN; Detlev MARPE; Karsten MUELLER; Thomas WIEGAND; Gerhard TECH
- Web page: https://patentgrep.com/patent/US20180027233A1

## 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/119: Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
- H04N 19/124: Quantisation
- H04N 19/157: Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N 19/167: Position within a video image, e.g. region of interest [ROI]
- H04N 19/174: the region being a slice, e.g. a line of blocks or a group of blocks
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/44: Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
- H04N 19/46: Embedding additional information in the video signal during the compression process (H04N19/517, H04N19/68, H04N19/70 take precedence)
- H04N 19/593: involving spatial prediction techniques
- H04N 19/597: specially adapted for multi-view video sequence encoding
- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- H04N 19/82: involving filtering within a prediction loop
- H04N 19/96: Tree coding, e.g. quad-tree coding
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Wedgelet separation lines of neighboring blocks are predicted from each other by aligning the wedgelet separation lines of such neighboring blocks to each other, thereby reducing the side information coding rate that may be used.

## Claims

### Claim 1

A decoder for reconstructing a sample array of a video from a data stream, the decoder configured to:
determine a set of wedgelet patterns to decode a block of the sample array of the video, wherein each wedgelet pattern of the set includes a line defined by a start position and an end position, the line dividing the corresponding wedgelet pattern into two wedgelet partitions and the start and end positions being on a boundary of the corresponding wedgelet pattern;
extract, from the data stream, an index value specifying one of the set of wedgelet patterns;
obtain the specified wedgelet pattern from the set of wedgelet patterns based on the index value; and
decode the block based at least on the two wedgelet partitions yielded by the line of the specified wedgelet pattern.

### Claim 2 (depends on 1)

The decoder of claim 1, wherein a size of each wedgelet pattern of the set is based on a size of the block.

### Claim 3 (depends on 1)

The decoder of claim 1, wherein a number of wedgelet patterns in the set is based on a size of the block.

### Claim 4 (depends on 1)

The decoder of claim 1, wherein the decoder is configured to determine a plurality of sets of wedgelet patterns, wherein each set of the plurality of sets corresponds to one of a plurality of sizes of blocks of the sample array of the video.

### Claim 5 (depends on 1)

The decoder of claim 1, wherein each wedgelet pattern of the set is a two-dimensional array including binary-valued elements.

### Claim 6 (depends on 1)

The decoder of claim 1, wherein the index value is represented in a fixed number of bits in the data stream, and the decoder is configured to decode the index value based on fixed-length coding.

### Claim 7 (depends on 1)

The decoder of claim 1, wherein the decoder is configured to:
extract, from the data stream, a mode syntax element; and
decode the mode syntax element to determine whether the index value is used to decode the block.

### Claim 8 (depends on 1)

The decoder of claim 1, wherein, to determine a first wedgelet pattern of the set of wedgelet patterns, wherein the first wedgelet pattern is an array having elements all with a first binary value, the decoder is configured to:
update first elements of the array from the first binary value to a second binary value, wherein the first elements form a line joining the start and end positions of the first wedgelet pattern;
determine whether an existing wedgelet pattern in the set of wedgelet patterns is identical to, or is an inverse of, the first wedgelet pattern based on a comparison of elements of the existing wedgelet pattern and the elements of the first wedgelet pattern; and
responsive to a determination that the existing wedgelet pattern is not identical to and is not an inverse of the first wedgelet pattern, add the first wedgelet pattern to the set of wedgelet patterns.

### Claim 9 (depends on 1)

The decoder of claim 1, wherein each wedgelet pattern of the set is associated with a resolution of the start and end positions of the corresponding wedgelet pattern, wherein the resolution is based on a size of the block.

### Claim 10 (depends on 1)

The decoder of claim 1, wherein the decoder is configured to, in decoding the block,
predict the block by assigning a first constant partition value to samples of the sample array positioned within a first of the two wedgelet partitions and a second constant partition value to samples of the sample array positioned within a second of the two wedgelet partitions.

### Claim 11 (depends on 10)

The decoder of claim 10, wherein the sample array is a depth map, and the decoder is configured to use a reference quantization step size in order to reconstruct a texture sample array from the data stream, with which the depth map is associated.

### Claim 12 (depends on 1)

The decoder of claim 1, further configured to use the block as a reference in a prediction loop of the decoder.

### Claim 13

An encoder for encoding a sample array of a video into a data stream, the encoder configured to:
determine a set of wedgelet patterns, wherein each wedgelet pattern of the set includes a line defined by a start position and an end position, the line dividing the corresponding wedgelet pattern into two wedgelet partitions and the start and end positions being on a boundary of the corresponding wedgelet pattern;
select, for a block of the sample array of the video, a wedgelet pattern from the set of wedgelet patterns;
insert, into the data stream, an index value identifying the selected wedgelet pattern in the set of wedgelet patterns; and
encode the block based at least on the two wedgelet partitions yielded by the line of the selected wedgelet pattern.

### Claim 14 (depends on 13)

The encoder of claim 13, wherein a size of each wedgelet pattern of the set is based on a size of the block.

### Claim 15 (depends on 13)

The encoder of claim 13, wherein a number of wedgelet patterns in the set is based on a size of the block.

### Claim 16 (depends on 13)

The encoder of claim 13, wherein the encoder is configured to determine a plurality of sets of wedgelet patterns, wherein each set of the plurality of sets corresponds to one of a plurality of sizes of blocks of the sample array of the video.

### Claim 17 (depends on 13)

The encoder of claim 13, wherein the index value is represented in a fixed number of bits in the data stream, and the encoder is configured to encode the index value based on fixed-length coding.

### Claim 18 (depends on 13)

The encoder of claim 13, wherein the encoder is configured to insert, into the data stream, a mode syntax element indicating the index value is used to encode the block.

### Claim 19 (depends on 13)

The encoder of claim 13, wherein, to determine a first wedgelet pattern of the set of wedgelet patterns, wherein the first wedgelet pattern is an array having elements all with a first binary value, the encoder is configured to:
update first elements of the array from the first binary value to a second binary value, wherein the first elements form a line joining the start and end positions of the first wedgelet pattern;
determine whether an existing wedgelet pattern in the set of wedgelet patterns is identical to, or is an inverse of, the first wedgelet pattern based on a comparison of elements of the existing wedgelet pattern and the elements of the first wedgelet pattern; and
responsive to a determination that the existing wedgelet pattern is not identical to and is not an inverse of the first wedgelet pattern, add the first wedgelet pattern to the set of wedgelet patterns.

### Claim 20

A non-transitory computer-readable medium for storing data associated with a video, comprising:
a data stream stored in the non-transitory computer-readable medium, the data stream comprising encoded information regarding a block of the video and an index value identifying a wedgelet pattern in a set of wedgelet patterns, the identified wedgelet pattern corresponding to the block of the video, wherein the set of wedgelet patterns is determined to encode or decode the block, wherein each wedgelet pattern of the set includes a line defined by a start position and an end position, the line dividing the corresponding wedgelet pattern into two wedgelet partitions and the start and end positions being on a boundary of the corresponding wedgelet pattern, and wherein the identified wedgelet pattern is selected from the set of wedgelet patterns and the block is encoded based at least on the two wedgelet partitions of yielded by the line of the identified wedgelet pattern.
