Features of base color index map mode for video and image coding and decoding
AssigneeMicrosoft Technology Licensing, LLC
InventorsBin Li, Feng Wu, Jizheng Xu
Life of this patent
Estimating the term…
Abstract
Innovations in the use of base color index map (“BCIM”) mode during encoding and/or decoding simplify implementation by reducing the number of modifications made to support BCIM mode and/or improve coding efficiency of BCIM mode. For example, some of the innovations involve reuse of a syntax structure that is adapted for transform coefficients to instead signal data for elements of an index map in BCIM mode. Other innovations relate to mapping of index values in BCIM mode or prediction of elements of an index map in BCIM mode. Still other innovations relate to handling of exception values in BCIM mode.
Claims20
One or more non-transitory computer-readable media having stored thereon computer-executable instructions for causing a computer system, when programmed thereby, to perform operations comprising:
- encoding a frame of a sequence, thereby producing encoded data, wherein the encoding the frame comprises, for a coding unit of the frame:
- setting a syntax element that indicates whether prediction mode for the coding unit is intra or inter;
- based at least in part on the prediction mode for the coding unit being intra, setting a flag value that indicates whether or not to use a base color index map mode for the coding unit;
- entropy coding the syntax element and the flag value;
- and
- encoding the coding unit using the base color index map mode, including:
- creating a base color table for the coding unit, the base color table having multiple index values, the base color table assigning one or more index values, among the multiple index values, to one or more corresponding base colors;
- creating an index map for the coding unit, the index map including at least one index value among the one or more index values, and the index map further including one or more exception values not representing any of the one or more corresponding base colors in the base color table, the one or more exception values being designated using a highest possible index value among the multiple index values of the base color table;
- encoding the base color table for the coding unit;
- and
- encoding the index map for the coding unit;
- and
- outputting the encoded data as part of a bitstream, wherein the encoded data includes the syntax element and the flag value.
A computer system comprising one or more processing units and memory, wherein the computer system implements a video decoder configured to perform operations comprising:
- receiving encoded data for a frame of a sequence;
- and
- decoding the frame using the encoded data, including, for a coding unit of the frame:
- entropy decoding a syntax element, from the encoded data, that indicates whether prediction mode for the coding unit is intra or inter;
- determining, based on the syntax element, that the prediction mode for the coding unit is intra;
- based at least in part on the prediction mode for the coding unit being intra, entropy decoding a flag value, from the encoded data, that indicates whether or not to use a base color index map mode for the coding unit;
- determining, based on the flag value, to use the base color index map mode for the coding unit;
- decoding the coding unit using the base color index map mode, including:
- decoding a base color table for the coding unit, the base color table having multiple index values, the base color table assigning one or more index values, among the multiple index values, to one or more corresponding base colors;
- decoding an index map for the coding unit, the index map including at least one index value among the one or more index values, and the index map further including one or more exception values not representing any of the one or more corresponding base colors in the base color table, the one or more exception values being designated using a highest possible index value among the multiple index values of the base color table;
- and
- using the index map and the base color table to reconstruct the coding unit.
A method implemented in a computer system, the method comprising:
- receiving encoded data for a frame of a sequence;
- and
- storing the encoded data, wherein the encoded data is usable to cause a computer-implemented video decoder, when processing the encoded data, to perform operations to decode the frame using the encoded data, the operations including, for a coding unit of the frame:
- entropy decoding a syntax element, from the encoded data, that indicates whether prediction mode for the coding unit is intra or inter;
- determining, based on the syntax element, that the prediction mode for the coding unit is intra;
- based at least in part on the prediction mode for the coding unit being intra, entropy decoding a flag value, from the encoded data, that indicates whether or not to use a base color index map mode for the coding unit;
- determining, based on the flag value, to use the base color index map mode for the coding unit;
- decoding the coding unit using the base color index map mode, including:
- decoding a base color table for the coding unit, the base color table having multiple index values, the base color table assigning one or more index values, among the multiple index values, to one or more corresponding base colors;
- decoding an index map for the coding unit, the index map including at least one index value among the one or more index values, and the index map further including one or more exception values not representing any of the one or more corresponding base colors in the base color table, the one or more exception values being designated using a highest possible index value among the multiple index values of the base color table;
- and
- using the index map and the base color table to reconstruct the coding unit.
Dependencies are inferred from the claim text.