JVET-P0163 CE5-related: SAO encoder-only improvements [C.-Y. Lai, C.-Y. Chen, T.-D. Chuang, O. Chubach, Y.-W. Huang, S.-M. Lei (MediaTek)]
In this contribution, three encoder-only improvements for sample adaptive offset (SAO) are reported. First, the greedy SAO merge encoding algorithm, which is in VTM6.0 but disabled in common test conditions (CTC), is enabled to optimize SAO parameters for multiple coding tree units (CTUs) within one CTU row. Second, to explore more SAO merge possibilities across CTU rows, a picture-based SAO merge encoding algorithm is proposed. For each picture, the best SAO parameters, derived by either the picture-based SAO merge encoding algorithm or the greedy SAO merge encoding algorithm, are signalled. Third, the SAO picture-level on-off decision algorithm for the current picture using statistics from a previous picture, which is enabled in VTM6.0CTC, is disabled, and it is proposed to further allow changing the picture-level decision from on to off after SAO is tested for all CTUs in the picture. YCbCr BD-rates (using the AHG13 YCbCr BD-rate calculation method: (BD-Rate_Y*8+ BD-Rate_U+ BD-Rate_V)/10) under adaptive loop filter (ALF) on/off cases are summarized as follows.
Anchor: VTM6.0 + SAO off + ALF on
Test: anchor + SAO on
AI: -0.04%; RA: -0.13%; LB: -0.24%; LP: -0.26%
Anchor: VTM6.0 + SAO off + ALF on
Test: anchor + SAO on + SAO encoder-only improvements
AI: -0.15%; RA: -0.29%; LB: -0.52%; LP: -0.52%
Anchor: VTM6.0 + SAO off + ALF off
Test: anchor + SAO on
AI: -0.36%; RA: -0.78%; LB: -1.21%; LP: -2.74%
Anchor: VTM6.0 + SAO off + ALF off
Test: anchor + SAO on + SAO encoder-only improvements
AI: -0.56%; RA: -1.10%; LB: -1.70%; LP: -3.35%
It is known that SAO and ALF overlap in coding gains. Small coding losses are observed by disabling SAO when ALF is on, while large coding losses are observed by disabling SAO when ALF is off. Given that SAO has low complexity and is deployed in one billion HEVC devices per year, it is asserted that keeping SAO is beneficial for VVC, especially for real-time low complexity encoding applications.