IP Library Granted Patent US 10,097,848
Granted Patent B2
US 10,097,848 · App. 15/312,420 · Granted Oct 9, 2018

Methods for palette size signaling and conditional palette escape flag signaling

Inventors: Tzu-Der Chuang (Zhubei, TW); Yu-Chen Sun (Keelung, TW); Yi-Wen Chen (Taichung, TW); Shan Liu (San Jose, CA)
Assignee: HFI INNOVATION INC.
H04N19/46H04N19/186H04N19/70
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,097,848
App. No.
15/312,420
Granted
Oct 9, 2018
Kind
B2
Abstract

Methods for palette coding of image and video data to avoid issues associated with zero-size palette or to improve performance by conditionally signaling CU (coding unit)-level escape pixel presence flag are disclosed. In one embodiment, size information related to palette size of a current palette table of the current CU is signaled conditionally based on the escape indication flag, where the escape indication flag indicates whether there is any sample in the current CU coded as an escape pixel. In another embodiment, the CU-level escape pixel presence flag is conditionally signaled according to the current palette size or both of the predicted palette size and the new palette size. Conditionally signaling the palette sharing flag may also be based on the palette sharing flag.

Claims (31)

1. A method of palette coding for a picture, wherein the picture is divided into multiple coding units (CUs), the method comprising:

receiving input data associated with a current coding unit (CU);

determining an escape indication flag regarding whether there is any sample in the current CU coded as an escape pixel, wherein the escape indication flag is asserted if there is any sample in the current CU coded as the escape pixel and the escape indication flag is not asserted if there is no sample in the current CU coded as the escape pixel; and

signaling size information related to palette size of a current palette table of the current CU conditionally based on the escape indication flag, wherein determining the escape indication flag is performed no later than determining the size information,

wherein if the escape indication flag is not asserted and predicted palette size is zero, then a size syntax representing new palette size minus one is signaled for the current palette table, wherein the predicted palette size indicates a first number of entries of the current palette table that are predicted by a palette predictor and the new palette size indicates a second number of entries of the current palette table that are not predicted by the palette predictor, and

wherein an actual new palette size corresponding to the second number of entries of the current palette table that are not predicted by the palette predictor is derived based on the size syntax parsed plus (numPredPreviousPalette ==0 && palette_escape_val_present_flag ==0), wherein numPredPreviousPalette corresponds to a first syntax representing the predicted palette size and palette_escape_val_present_flag corresponds to a second syntax representing the escape indication flag.

2. The method of claim 1 , wherein if the escape indication flag is not asserted, a syntax palette_size_minus_one signaled for the current palette table of the current CU is limited to a range from zero to a maximum palette size minus one inclusive, wherein the syntax palette_size_minus_one indicates a current palette size of the current palette table minus one.

3. The method of claim 2 , wherein the current palette size is reconstructed according to (palette_size_minus_one +one).

4. The method of claim 1 , wherein if the escape indication flag is not asserted and predicted palette size is zero, then new palette size related to the current palette table is restricted to be greater than zero, wherein the predicted palette size indicates a first number of entries of the current palette table that are predicted by a palette predictor and the new palette size indicates a second number of entries of the current palette table that are not predicted by the palette predictor.

5. The method of Claim 1 , wherein an actual new palette size corresponding to the second number of entries of the current palette table that are not predicted by the palette predictor is determined according to the size syntax parsed from a bitstream plus one, wherein the bitstream includes coded data of the current CU.

6. The method of claim 1 , wherein a size syntax representing new palette size minus one is signaled after the escape indication flag in a bitstream that includes coded data of the current CU.

7. The method of claim 1 , wherein a syntax numPredPreviousPalette representing a predicted palette size is signaled after the escape indication flag in a bitstream that includes coded data of the current CU, wherein the predicted palette size indicates a first number of entries of the current palette table that are predicted by a palette predictor.

8. The method of claim 1 , wherein the palette size of the current palette table of the current CU is directly restricted to be greater than one by an encoder.

9. The method of claim 8 , wherein if a bitstream that results in a decoded palette size of the current palette table being zero is determined as a non-conforming bitstream.

10. A method of palette coding for a picture, wherein the picture is divided into multiple coding units (CUs), the method comprising:

receiving input data associated with a current coding unit (CU);

determining current palette size of a current palette table of the current CU, or both predicted palette size and new palette size associated with the current palette table, wherein the predicted palette size indicates a first number of entries of the current palette table that are predicted by a palette predictor and the new palette size indicates a second number of entries of the current palette table that are not predicted by the palette predictor; and

performing one of:

determining whether or not to signal a CU-level escape pixel presence flag according to the current palette size or both of the predicted palette size and the new palette size and signaling a CU-level escape pixel presence flag according to the determination of whether or not to signal the CU-level escape pixel presence flag, wherein the CU-level escape pixel presence flag indicates whether there is any sample in the current CU coded as an escape pixel; and

determining whether or not to constrain the CU-level escape pixel presence flag to one according to the current palette size or both of the predicted palette size and the new palette size, and constrain the CU-level escape pixel presence flag to one according to the determination of whether or not to constrain the CU-level escape pixel presence flag to one.

11. The method of claim 10 , wherein the CU-level escape pixel presence flag is not signaled if the current palette size is zero or both the predicted palette size and the new palette size are zero.

12. The method of claim 11 , wherein the CU-level escape pixel presence flag is inferred as one.

13. The method of claim 10 , wherein the CU-level escape pixel presence flag is constrained to one if the current palette size is zero or both the predicted palette size and the new palette size are zero.

14. The method of claim 10 , wherein the current palette size of the current palette table is set to zero if both the predicted palette size and the new palette size are zero.

15. The method of claim 10 , wherein the current palette size of the current palette table relates to a previous palette table of a last palette-coded CU.

16. A video coding system implementing palette coding for a picture, wherein the picture is divided into multiple coding units (CUs), the system comprising:

a receiver configured to receive input data associated with a current coding unit (CU);

a processor configured to determine current palette size of a current palette table of the current CU, or both predicted palette size and new palette size associated with the current palette table, wherein the predicted palette size indicates a first number of entries of the current palette table that are predicted by a palette predictor and the new palette size indicates a second number of entries of the current palette table that are not predicted by the palette predictor; and

the processor further configured to perform one of:

determining whether or not to signal a CU-level escape pixel presence flag according to the current palette size or both of the predicted palette size and the new palette size and signaling a CU-level escape pixel presence flag according to the determination of whether or not to signal the CU-level escape pixel presence flag, wherein the CU-level escape pixel presence flag indicates whether there is any sample in the current CU coded as an escape pixel; and

determining whether or not to constrain the CU-level escape pixel presence flag to one according to the current palette size or both of the predicted palette size and the new palette size, and constrain the CU-level escape pixel presence flag to one according to the determination of whether or not to constrain the CU-level escape pixel presence flag to one.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2016
From: CHUANG, TZU-DER; SUN, YU-CHEN; CHEN, YI-WEN; LIU, SHAN
To: MEDIATEK INC.
Reel/Frame 040444/0799 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2016
From: MEDIATEK INC.
To: HFI INNOVATION INC.
Reel/Frame 040444/0818 →
Continuity (7)
Continuation In Part PCTCN2014087082 · Sep 22, 2014
Provisional Application 62040020 · Aug 21, 2014
Provisional Application 62035625 · Aug 11, 2014
Provisional Application 62030714 · Jul 30, 2014
Provisional Application 62014959 · Jun 20, 2014
Provisional Application 62002221 · May 23, 2014
Related Publication 20170127077A1 · May 4, 2017
Cited By (1)
US 12,231,680