Back to Search Document details
6th Meeting: Hobart, March 2017 2017-03-23 20:30
EE2-JVET-E0032 Bilateral filter Test 1, Test2
Abstract
This document describes the result of the EE2 activity on reducing the size of the look-up table (LUT) used to implement the bilateral filter from JVET-E0032. This work is divided into two parts; test 1 and test 2. For test 1, the contribution describes techniques to reduce the LUT while retaining bit exact behavior of the algorithm. The BD rate differences of test 1 against JEM 5.0.1 are reported to be 0.4% / 0.5% / 0.5% / 0.6% for AI/RA/LD/LDP. A LUT size of 56148 bytes is reported in this case. For test 2, the bilateral filter coefficients are stored with 5-bit precision resulting in a stated LUT size of 2202 bytes. The BD rate figures are reported to be 0.4% / 0.5% / 0.5% / 0.6% for test 2. Reported encoding complexity for test 2 is 106% / 102% / 102% / 104% and reported decoding complexity is 103% / 99% / 100% / 101%.
JVET-F0034 EE2-JVET-E0032 Bilateral filter Test 1, Test2 [J. Ström, K. Andersson, P. Wennersten, M. Pettersson, J. Enhorn, R. Sjöberg (Ericsson)]

This document describes the result of the EE2 activity on reducing the size of the look-up table (LUT) used to implement the bilateral filter from JVET-E0032. This work is divided into two parts; test 1 and test 2. For test 1, the contribution describes techniques to reduce the LUT while retaining bit exact behaviour of the algorithm. The BD rate differences of test 1 against JEM 5.0.1 are reported to be −0.4% / −0.5% / −0.5% / −0.6% for AI/RA/LD/LDP. A LUT size of 56148 bytes is reported in this case. For test 2, the bilateral filter coefficients are stored with 5-bit precision resulting in a stated LUT size of 2202 bytes. The BD rate figures are reported to be −0.4% / −0.5% / −0.5% / −0.6% for test 2. Reported encoding complexity for test 2 is 106% / 102% / 102% / 104% and reported decoding complexity is 103% / 99% / 100% / 101%.

The bilateral filter operation is suggested to be performed on decoded sample values directly after the inverse transform. The proposed bilateral filter is a five-tap filter in the shape of a plus sign.

,

The strength of the filter is based on coded mode (intra/inter), TU size and QP. The size of the table is 56148 bytes (16 bits precision of filter coefficients). The filter is automatically disabled when there are no non-zero transforms coefficients. LUT operation implementation is used to reduce the complexity of the described operations. No additional parameters are determined during encoding and no new syntax elements are proposed. LUT operation makes complexity manageable.

Questions recommended to be answered during EE tests.

[Q]: What the size of the lookup table would be?

[A]: Test 1 examines the performance of the original proposal (LUT size 56148 bytes). Test 2 examines performance of the algorithm for reduced size of LUT 2202 bytes (5 bits precision per coefficient).

LUT size = 56148 bytes

LUT size = 2202 bytes

Y

U

V

Enc

Dec

Y

U

V

Enc

Dec

AI

−0.4

0.1

0.1

106%

104%

−0.4

0.2

0.1

106%

103%

RA

−0.5

0.1

0.1

103%

98%

−0.5

−0.2

−0.2

102%

99%

LD

−0.5

0.4

0.2

103%

100%

−0.5

0.3

0.2

102%

100%

LDP

−0.6

0.1

0.3

104%

101%

−0.6

0.4

0.4

104%

101%

[Q]: It is recommended to further reduce the size of LUT

[A]: Test 2 was designed for those purposes.

Summary from EE report: 0.4%, 0.5%, 0.5% and 0.6% gain is observed for AI, RA, LD and LD-P respectively from bi-lateral filtering after inverse transformation with LUT size 2202 bytes. Encoder run-time increment ranges from 2% to 6% and decoder run time increment ranges from 0% to 3%.

The LUT table size has been significantly reduced, without significant loss in compression as compared to previous reported results. During initial review, it was verbally reported that another even more simplified version exists which avoids divisions but increases the table size by another 1000 bytes. A new input document was to be registered with software attached, Qualcomm planned to perform a crosscheck. Bitstreams were to be made available upon request to interested parties.

Generally, it was expressed by several experts that the method provides some interesting gain without significantly increasing encoder runtime. It was, however, pointed out that most of the gain is obtained in intra mode, where this would be yet another step in the prediction pipeline between neighbouring blocks.

It was also proposed by one expert that the interdependency with block boundary filtering might be an aspect to be further investigated.

References:
JVET-E0032
PATENTS:
US10834396B2 0.71 2020-11-10 EP3488610B1 0.34 2025-11-26 JP7665772B2 0.32 2025-04-21 US20200140290A1 0.30 2020-05-07 WO2023076948A1 0.28 2023-05-04 US12270810B2 0.24 2025-04-08 US10721469B2 0.22 2020-07-21 US10694181B2 0.20 2020-06-23
Decisions
It was also proposed by one expert that the interdependency with block boundary filtering might be an aspect to be further investigated.
Citation