Image coding apparatus, image coding method, storage medium, image decoding apparatus, image decoding method, and storage medium
US-2017332091-A1 · Nov 16, 2017 · US
US10362333B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10362333-B2 |
| Application number | US-201414586820-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 30, 2014 |
| Priority date | Jan 2, 2014 |
| Publication date | Jul 23, 2019 |
| Grant date | Jul 23, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In palette-based coding, a video coder may form a so-called “palette” as a table of colors representing the video data of a given block. The video coder may code index values for one or more pixels values of a current block of video data, where the index values indicate entries in the palette that represent the pixel values of the current block. A method includes determining a palette for a block of video data, identifying escape pixel(s) not associated with any palette entries, identifying a single quantization parameter (QP) value for all escape pixels of the block for a given color channel using a QP value for non-palette based coding of transform coefficients, dequantizing each escape pixel using the identified QP value, and determining pixel values of the block using the dequantized escape pixels and index values for any pixel(s) associated with any palette entries.
Opening claim text (preview).
What is claimed is: 1. A method of decoding video data, the method comprising: receiving an encoded video bitstream that includes data representing encoded video data to be decoded; determining a palette used to represent pixel values of a palette-based encoded block of the encoded video data, the palette including one or more entries, wherein any two entries included in the palette vary by at least a palette error limit, the palette error limit being directly proportional to a palette quantization parameter (QP) value associated with the palette-based encoded block; identifying, among the pixel values of the palette-based encoded block, one or more escape pixels, based on each escape pixel of the identified one or more escape pixels not being associated with any entry of the one or more entries included in the palette; determining, for each escape pixel identified in the palette-based encoded block, a respective color channel based on at least one of luma information for the respective escape pixel or chroma information for the respective escape pixel; transform coefficient decoding a non-palette based encoded block of the encoded video data, the non-palette based encoded block including one or more pixels that belong to a given color channel; identifying a single QP value for all escape pixels that belong to the given color channel, such that the identified single QP is based on a corresponding QP value used for the transform coefficient decoding of the one or more pixels of the non-palette based encoded block that belong to the given color channel; dequantizing each respective escape pixel that belongs to the given color channel using the single QP value that is identified based on the corresponding QP value used for the transform coefficient decoding of the one or more pixels of the non-palette based encoded block that belong to the given color channel; determining the pixel values of the palette-based encoded block based on respective color information of the dequantized escape pixels and based on respective index values received for one or more pixels in the palette-based encoded block that are associated with the one or more entries included in the palette; and reconstructing the palette-based encoded block using the pixel values determined for the dequantized escape pixels and for the one or more pixels of the palette-based encoded block that are associated with the one or more entries of the palette. 2. The method of claim 1 , wherein identifying the one or more escape pixels comprises: receiving, in the encoded video bitstream, a respective one-bit flag associated with each respective pixel of the palette-based encoded block of video data; and determining, based on a value of each received one-bit flag, that each of the one or more escape pixels is not associated with any of the entries of the palette. 3. The method of claim 2 , wherein determining that each of the one or more escape pixels is not associated with any of the entries of the palette comprises determining that each of the one or more escape pixels is not associated with any of the entries of the palette based on the value of each received one-bit flag and without decoding a pre-defined index value associated with escape pixels. 4. A method of encoding video data, the method comprising: determining a palette used to represent pixel values of a block of video data to be encoded according to a palette-based coding mode, the palette including one or more entries, wherein any two entries included in the palette vary by at least a palette error limit; determining that the palette error limit is directly proportional to a quantization parameter (QP) value associated with the pixels in the block of video data to be encoded according to the palette-based coding mode that are associated with the one or more entries in the palette; identifying, among the pixel values of the block of video data to be encoded according to the palette-based coding mode, one or more escape pixels, based on each escape pixel of the identified one or more escape pixels not being associated with any entry of the one or more entries included in the palette; determining, for each escape pixel identified in the block of video data to be encoded, a respective color channel based on at least one of luma information for the respective escape pixel or chroma information for the respective escape pixel; transform coefficient encoding a non-palette coded block of the video data, the non-palette based coded block including one or more pixels that belong to a given color channel; identifying a single QP value for all escape pixels identified with the given color channel, such that the identified single QP is based on a corresponding QP value used for the transform coefficient encoding of the one or more pixels of the non-palette based coded block that belong to the given color channel; quantizing each respective escape pixel that belongs to the given color channel using the single QP value that is identified based on the corresponding QP value used for the transform coefficient encoding of the one or more pixels of the non-palette based coded block that belong to the given color channel; and encoding the pixel values of the block of video data to be encoded according to the palette-based coding mode including the quantized escape pixels and index values for one or more pixels in the block of video data to be encoded according to the palette-based coding mode that are associated with the one or more entries in the palette to form a palette-based encoded block; and signaling the palette-based encoded block in an encoded video bitstream. 5. The method of claim 4 , wherein identifying the single QP value comprises: determining that the single QP value is equal to the corresponding QP value; and determining that the corresponding QP value is used for the traditional coefficient encoding of the one or more pixels of the non-palette based coded block that belong to the given color channel. 6. The method of claim 4 , wherein determining the palette error limit comprises: identifying the palette error limit using a table that maps the palette error limit to the QP value associated with the pixels in the block of video data to be encoded according to the palette-based coding mode that are associated with the one or more entries in the palette. 7. The method of claim 4 , further comprising: encoding a one-bit flag associated with each of the one or more escape pixels without encoding a pre-defined index value associated with escape pixels, wherein a value of each one-bit flag indicates that a respective one of the one or more escape pixels is not associated with any entry of the entries included in the palette. 8. The method of claim 4 , wherein quantizing each respective escape pixel that belongs to the given color channel using the identified single QP value comprises solving a function that is based on the identified single QP value. 9. The method of claim 8 , wherein solving the function comprises performing a right-shift operation that is based on the identified single QP value. 10. A device for decoding encoded video data, the device comprising: a memory configured to store an encoded video bitstream that includes data representing encoded video data to be decoded; and one or more processors in communication with the memory, the one or more processors being configured to: determine a palette used to represent pixel values of a palette-based encoded block of the stored encoded video data to be decoded, the palette including one or more entries, wherein any two entries included in the palette vary by at least a palette error limit, the palette error limit being directly pr
Vector quantisation · CPC title
Run-length coding · CPC title
involving spatial prediction techniques · CPC title
Motion compensation with overlapping blocks · CPC title
Embedding additional information in the video signal during the compression process (H04N19/517, H04N19/68, H04N19/70 take precedence) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.