JVET-Q0445 AHG9/Non-CE2: On predictor palette initialization [J. Luo, Y. Ye, R. Liao, M. Sarwer, J. Chen (Alibaba)]
In VVC draft 7, the predictor palette is reset when the coding CTU is the first CTU of a slice or a tile, or the first CTU of a CTU row when entropy_coding_sync_enabled_flag is equal to 1. It is asserted that the reset of predictor palette interrupts the palette propagation and may cause undesirable coding performance loss. The contribution proposed to initialize the predictor palette with customized predictor palette signalled in APS. When a customized predictor palette is not present, the predictor palette size is reset to 0. It is reportedly shown the proposed change provide gains over VTM-7.1 in the following tests:
Test case 1: WPP synchronization is on
DualTree on : -0.19%(AI), -0.39%(RA) and -0.39%(LDB) BD rate saving
DualTree off: -0.95%(AI), -0.61%(RA) and -0.50%(LDB) BD rate saving
Test case 2: 1 CTU per tile
DualTree on : -0.78%(AI), -0.84%(RA) and -0.73%(LDB) BD rate saving
DualTree off: -2.74%(AI), -1.54%(RA) and -0.90%(LDB) BD rate saving
It is noted that the gain is relatively low, which may indicate that it might be difficult to find 64 values as predictor table which are representative for the entire picture.
DT off WPP loses 1.15%/1.62%/2.02% for AI/RA/LB
For AI, most of that loss is recovered by the proposal.
The question arises whether it is reasonable to define a new APS for a realtively specific use case (combination of palette with APS, and two-pass coding), and a gain of 0.95% for AI is relatively for the case screen content. The size of that APS is in a similar range as for ALF, which would need to be stored locally.
Part of the loss could also be recovered by the approach of JVET-Q0501, which is somewhat simpler, requires less memory, and no 2-pass encoding.
Test case 2 appears relatively unrealistic. It would be interesting to see how much loss the test cases without the change are causing to judge the benefit.
See further notes under JVET-Q0702.