Method and Apparatus for Palette Initialization and Management
US-2016323591-A1 · Nov 3, 2016 · US
US11323733B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11323733-B2 |
| Application number | US-201514719260-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 21, 2015 |
| Priority date | May 23, 2014 |
| Publication date | May 3, 2022 |
| Grant date | May 3, 2022 |
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 an example a method of processing video data includes determining a first palette for a first block of video data that is located in a first row of blocks, generating a predictor palette for constructing at least one second palette of at least one second block of video data in the first row of blocks coded, reinitializing the predictor palette for determining a third palette of a third block of video data that is located in a second row of blocks, wherein re-initializing the predictor palette comprises re-initializing the predictor palette based on the one or more palette entries of the first palette or an initial predictor palette generated after coding the first block, determining the third palette of the third block based on the re-initialized predictor palette, and coding the third block using the third palette.
Opening claim text (preview).
What is claimed is: 1. A method of processing video data, the method comprising: determining a palette for a first coding tree block (CTB) of video data that is located at the beginning of a first row of coding tree blocks (CTBs), wherein the palette for the first CTB comprises one or more palette entries each including a palette index that is associated with a color value for decoding the first CTB; generating, after decoding the first CTB and prior to decoding subsequent CTBs in the first row of CTBs, a previous predictor palette that contains one or more palette entries having non-zero values; reinitializing, based on wavefront parallel processing (WPP) being enabled and a second CTB of video data being located in a second row of CTBs that follows the first row of CTBs in a decoding order, a predictor palette for determining a palette for the second CTB of video data, wherein reinitializing the predictor palette comprises: removing all entries of the predictor palette, and copying entries from the previous predictor palette to the reinitialized predictor palette; determining the palette for the second CTB based on the reinitialized predictor palette; and decoding, based on an encoded bitstream and after decoding the first CTB, the second CTB using the palette for the second CTB, wherein decoding the second CTB using the palette for the second CTB comprises: obtaining, from the encoded bitstream, respective index values for one or more samples of the second CTB, wherein the respective index values identify an entry of the palette for the second CTB, and determining values for the one or more samples by matching one or more of the respective index values to at least one entry of the palette for the second CTB. 2. The method of claim 1 , wherein the first row of CTBs comprises a first wavefront of CTBs, wherein the second row of CTBs comprises a second wavefront of CTBs, wherein the first row of CTBs is positioned above the second row of CTBs in a picture, and wherein the first CTB is positioned above the second CTB. 3. A device for processing video data, the device comprising: a memory configured to store coding tree blocks (CTBs) of video data; and one or more processors configured to: determine a palette for a first coding tree block (CTB) of video data that is located at the beginning of a first row of the CTBs of video data, wherein the palette for the first CTB comprises one or more palette entries each including a palette index that is associated with a color value for decoding the first CTB; generate, after decoding the first CTB and prior to decoding subsequent CTBs in the first row of CTBs, a previous predictor palette that contains one or more palette entries having non-zero values; reinitialize, based on wavefront parallel processing (WPP) being enabled and a second CTB of video data being located in a second row of the CTBs of video data that follows the first row of CTBs in a decoding order, a predictor palette for determining a palette for the second CTB of video data, wherein to reinitialize the predictor palette, the one or more processors are configured to: remove all entries of the predictor palette, and copy entries from the previous predictor palette to the reinitialized predictor palette; determine the palette for the second CTB based on the reinitialized predictor palette; and decode, after decoding the first CTB, the second CTB using the palette for the second CTB, wherein to decode the second CTB using the palette for the second CTB, the one or more processors are configured to: obtain, from the encoded bitstream, respective index values for one or more samples of the second CTB, wherein the respective index values identify an entry of the palette for the second CTB, and determine values for the one or more samples by matching one or more of the respective index values to at least one entry of the palette for the second CTB. 4. The device of claim 3 , wherein the first row of CTBs comprises a first wavefront of CTBs, wherein the second row of CTBs comprises a second wavefront of CTBs, wherein the first row of CTBs is positioned above the second row of CTBs in a picture, and wherein the first CTB is positioned above the second CTB. 5. The device of claim 3 , further comprising a display configured to display the decoded CTBs of video data. 6. The device of claim 3 , wherein the device comprises at least one of: an integrated circuit; a microprocessor; or a wireless communication device. 7. A method of processing video data, the method comprising: determining a palette for a first coding tree block (CTB) of video data that is located at the beginning of a first row of coding tree blocks (CTBs), wherein the palette for the first CTB comprises one or more palette entries each including a palette index that is associated with a color value for encoding the CTB of video data; generating, after encoding the first CTB and prior to encoding subsequent CTBs in the first row of CTBs, a previous predictor palette that contains one or more palette entries having non-zero values; reinitializing, based on wavefront parallel processing (WPP) being enabled and a second CTB of video data being located in a second row of CTBs, a predictor palette for determining a palette for the second CTB of video data, wherein reinitializing the predictor palette comprises: removing all entries of the predictor palette, and copying entries from the previous predictor palette to the reinitialized predictor palette; determining the palette for the second CTB based on the reinitialized predictor palette; and encoding, after encoding the first CTB, the second CTB using the palette for the second CTB, wherein encoding the second CTB using the palette for the second CTB comprises: determining respective index values for one or more samples of the second CTB, wherein the respective index values identify an entry of the palette for the second CTB, and encoding the index values in an encoded bitstream. 8. A device for processing video data, the device comprising: a memory configured to store coding tree blocks (CTBs) of video data; and one or more processors configured to: determine a palette for a first coding tree block (CTB) of video data that is located at the beginning of a first row of the CTBs of video data, wherein the palette for the first CTB comprises one or more palette entries each including a palette index that is associated with a color value for encoding the CTB of video data; generate, after encoding the first CTB and prior to encoding subsequent CTBs in the first row of CTBs, a previous predictor palette that contains one or more palette entries having non-zero values; reinitialize, based on wavefront parallel processing (WPP) being enabled and a second CTB of video data being located in a second row of the CTBs of video data, a predictor palette for determining a palette for the second CTB of video data, wherein to reinitialize the predictor palette, the one or more processors are configured to: remove all entries of the predictor palette, and copy entries from the previous predictor palette to the reinitialized predictor palette; determine the palette for the second CTB based on the reinitialized predictor palette; encode, after encoding the first CTB, the second CTB using the palette for the second CTB, wherein to encode the second CTB the one or more processors are configured to: determine respective index values for one or more samples of the second CTB, wherein the respective index values identify an entry of the palette for the second CTB, and encode the index values in an encoded bitstream. 9. The device of claim 8 , wherein the first row of CTBs comprises a first
using predictive coding (H04N19/61 takes precedence) · CPC title
Tree coding, e.g. quad-tree coding · CPC title
the unit being a colour or a chrominance component · CPC title
the region being a block, e.g. a macroblock · CPC title
characterised by syntax aspects related to video coding, e.g. related to compression standards · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.