# US 10,484,713 B2 · Method and device for predicting and restoring a video signal using palette entry and palette escape mode

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

- Number: US 10,484,713 B2
- Document ID: US10484713B2
- Status: Granted
- Kind: B2
- Application number: 15/562,016
- Filed: 2016-03-28
- Published: 2018-04-19
- Granted: 2019-11-19
- Earliest claimed: 2015-04-02
- Assignees: Kt Corporation
- Applicants: Kt Corporation
- Inventors: Bae Keun Lee; Joo Young Kim
- Web page: https://patentgrep.com/patent/US10484713B2

## CPC

- H04N 19/186: the unit being a colour or a chrominance component
- G06T 11/10: Texturing; Colouring; Generation of textures or colours (retouching, inpainting or scratch removal G06T5/77)
- H04N 19/103: Selection of coding mode or of prediction mode
- H04N 19/50: using predictive coding (H04N19/61 takes precedence)
- H04N 19/593: involving spatial prediction techniques
- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- H04N 19/93: Run-length coding
- H04N 19/94: Vector quantisation
- G06F 3/1475: {with conversion of CRT control signals to flat panel control signals, e.g. adapting the palette memory}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Provided is a method for decoding a video signal. Such a method may include obtaining at least one palette entry of a current block from a palette map of a previous block, constructing a palette map of the current block including the obtained palette entry, deriving a palette index of the current block by using palette index information and information about palette index run related to the current block, and reconstructing the current block by using the palette map of the current block and the palette index.

## Claims

### Claim 1

A method of decoding a video signal, the method comprising:
obtaining at least one palette entry of a current block from a palette map of a previous block;
constructing a palette map of the current block including the obtained palette entry;
deriving a palette index on a sample-by-sample basis of the current block by using palette index number information and information about palette index run related to the current block; and
reconstructing the current block by using the palette map of the current block and the palette index,
wherein the information about palette index run includes first index run information and second index run information,
wherein the first index run information is used to determine a repeated number of times of same palette index in a predetermined scan order, and the second index run information is used to determine whether same palette index occurs from the current sample to the last sample in the predetermined scan order,
wherein the reconstructing the current block further comprises
obtaining an escape present flag indicating whether an escape mode is applied to at least one sample in the current block, wherein the escape present flag is obtained when a number of the palette entries included in the palette map is one or more, and
determining whether a value of the derived palette index for a current sample in the current block is equal to a maximum value of palette index while the obtained escape present flag indicates the escape mode applied to the current block,
obtaining a palette escape value for the current sample in the current block, if the value of the derived palette index for the current sample is equal to the maximum value of palette index, and
wherein the palette index is derived using at least one of an index mode and a copy mode, the index mode is a method of deriving a palette index based on information about palette index run, and the copy mode is a method of deriving a palette index of the current sample using a palette index of a neighboring sample,
wherein when at least one sample of the current block uses the index mode, the palette index is derived using the information about palette index run indicating the number of consecutive sample locations with same palette index, and
wherein a value of the palette index run was entropy encoded and selected from one of two encoded types based on a number of bits used,
as a first encoded type, a value of the palette index run is derived from a single encoded element that represents the value of the palette index run as is,
as a second encoded type, a value of the palette index run is derived from two encoded elements that represent a most significant bit (MSB) value as is and refinement bits as is of the value of the palette index run.

### Claim 2 (depends on 1)

The method of claim 1, wherein the palette index number information is derived by subtracting 1 from a number of palette indices encoded for the current block.

### Claim 3 (depends on 2)

The method of claim 2, wherein the first index run information is selectively derived based on a last palette mode type flag indicating a palette index mode used for a last sample in the current block in the scan order.

### Claim 4 (depends on 3)

The method of claim 3, wherein the first index run information is derived from a bitstream when a palette index mode related to a current sample is different from a palette index mode according to the last palette mode type flag or when a number of remaining palette indices is one or more.

### Claim 5 (depends on 1)

The method of claim 1, wherein the palette entry comprises at least one of a predicted palette entry and a signaled palette entry, and
wherein the predicted palette entry means a palette entry reused in the current block among palette entries included in the palette map of the previous block, and the signaled palette entry indicates a palette entry not included in the palette map of the previous block among the palette entries used by the current block.

### Claim 6 (depends on 5)

The method of claim 5, wherein the predicted palette entry is derived from information about palette entry run, the information about palette entry run is used to determine a number of zeros that precede a non-zero entry in palette entries in the previous block.

### Claim 7 (depends on 5)

The method of claim 5, wherein when the palette index is encoded in a copy mode, the palette index is derived from information about copy run, the information about copy run is used to determine whether palette indices of current samples are copied from palette indices in the row above.

### Claim 8

A method of encoding a video signal, the method comprising:
obtaining at least one palette entry of a current block from a palette map of a previous block;
constructing a palette map of the current block including the obtained palette entry;
determining a palette index on a sample-by-sample basis of the current block by using palette index number information and information about palette index run related to the current block; and
reconstructing the current block by using the palette map of the current block and the palette index,
wherein the information about palette index run includes first index run information and second index run information,
wherein the first index run information is used to determine a repeated number of times of same palette index in a predetermined scan order, and the second index run information is used to determine whether same palette index occurs from the current sample to the last sample in the predetermined scan order, and
wherein the method further comprises
determining whether an escape present flag is encoded, the escape present flag indicating whether an escape mode is applied to at least one sample in the current block, wherein the escape present flag is encoded when a number of the palette entries included in the palette map is one or more, and
determining whether a value of the derived palette index for a current sample in the current block is equal to a maximum value of palette index while the determined escape present flag indicates the escape mode applied to the current block,
encoding a palette escape value for the current sample in the current block, if the value of the derived palette index for the current sample is equal to the maximum value of palette index, and
wherein the palette index is derived using at least one of an index mode and a copy mode, the index mode is a method of deriving a palette index based on information about palette index run, and the copy mode is a method of deriving a palette index of the current sample using a palette index of a neighboring sample,
wherein when at least one sample of the current block uses the index mode, the palette index is derived using the information about palette index run indicating the number of consecutive sample locations with same palette index, and
wherein a value of the palette index run was entropy encoded and selected from one of two encoded types based on a number of bits used,
as a first encoded type, a value of the palette index run is derived from a single encoded element that represents the value of the palette index run as is,
as a second encoded type, a value of the palette index run is derived from two encoded elements that represent a most significant bit (MSB) value as is and refinement bits as is of the value of the palette index run.

### Claim 9 (depends on 8)

The method of claim 8, wherein the palette index number information is encoded with a value subtracting 1 from a number of palette indices encoded for the current block.

### Claim 10 (depends on 9)

The method of claim 9, wherein the first index run information is selectively encoded based on a last palette mode type flag indicating a palette index mode used for a last sample in the current block in the scan order.

### Claim 11 (depends on 10)

The method of claim 10, wherein the first index run information is encoded when a palette index mode related to a current sample is different from a palette index mode according to the last palette mode type flag or when a number of remaining palette indices is one or more.
