Adaptive Loop Filter With Limited Chroma Alternatives
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing adaptive loop filters (ALF) in video coding, such as linear and non-linear extensions, lack flexibility and efficiency in managing memory usage and filter selection, particularly with the reintroduction of Adaptation Parameter Sets (APS) in VVC, leading to excessive memory requirements in hardware decoders.
Innovation Solution
Implementing a method to control the adaptive loop filter by signaling alternative chroma filters with a limited maximum number, using truncated unary binarization, and imposing limits on the number of filters per set or collectively, while sharing parameters between filters to reduce memory usage and enhance flexibility.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If multiple alternative chroma filters are signaled in the bitstream, then filtering quality is improved, but memory requirements and device complexity increase
Solution Approach 1:
The patent applies parameter changes by limiting the maximum number of alternative chroma filters that can be signaled (e.g., max_num_alt_chroma_filters constrained to values like 1, 2, or 4). This parameter constraint reduces the memory burden on decoders while preserving sufficient filtering quality through the use of truncated unary binarization for efficient encoding of filter indices.
Solution Approach 2:
The patent segments the filter selection process by introducing a limited set of alternative chroma filters (rather than allowing unlimited filters), and uses an index mechanism to select among them. This segmentation approach balances filtering quality with reduced memory requirements by dividing the filter space into manageable alternatives.
2Productivity
If the number of alternative chroma filters is increased, then coding efficiency is improved, but encoder and decoder complexity increase
Solution Approach 1:
The patent modifies the parameter of maximum alternative filters to a constrained set of values, which limits encoder complexity while maintaining coding efficiency gains. The truncated unary binarization method also reduces the bit cost of signaling filter indices, improving coding efficiency without proportionally increasing complexity.
Solution Approach 2:
The patent uses copying by referencing previously defined filter configurations through indices rather than redefining full filter sets. This allows efficient signaling of alternative chroma filters by copying reference information and applying transformations, reducing encoder complexity while maintaining filtering quality.
3Measurement precision
If alternative chroma filters are signaled with detailed parameters, then filtering precision is improved, but bitstream size and transmission overhead increase
Solution Approach 1:
The patent employs copying by using filter indices that reference pre-defined filter configurations. Instead of transmitting full filter parameters for each alternative chroma filter, the system copies reference information and signals only the selective indices, reducing bitstream overhead while preserving filtering precision through the indexed reference system.
Solution Approach 2:
The patent changes the parameter representation by using truncated unary binarization for filter indices, which reduces the average number of bits required to signal filter selections compared to fixed-length or variable-length binary coding. This parameter encoding change reduces bitstream overhead while maintaining the ability to precisely identify filtering configurations.
Data Source
AI summary
A method of controlling an Adaptive Loop Filter comprises obtaining for a slice containing one or more coding tree blocks, data indicating a number of available alternative chroma filters, obtaining for a coding tree block in the slice, an alternative filter index identifying one of the available alternative chroma filters, and selecting the alternative chroma filter identified by the index to filter chroma image data in the coding tree block.


