Adaptive Loop Filter for Video Encoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional adaptive loop filtering in video coding does not account for variations in quantization parameters, leading to suboptimal filtering based on pixel activity alone, which affects the uncertainty and quality of pixel values.
Innovation Solution
The proposed solution involves categorizing pixel blocks based on an activity-related parameter that takes into account the quantization parameter, specifically by dividing the activity by a function of 2*ΔQP^6, to select appropriate filters for encoding and decoding, thereby adjusting filtering strength according to the uncertainty introduced by QP variations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If conventional adaptive loop filtering is used based on pixel activity alone, then filtering can be applied to reduce distortion, but filtering strength is not optimally adjusted for blocks with different quantization parameters
Solution Approach 1:
The patent applies local quality by making the filtering strength adaptive to local quantization parameter conditions. Different filtering strengths are applied to different blocks based on their specific QP values, rather than using a uniform filtering approach. This resolves the contradiction by allowing precise filtering adaptation to local QP variations while maintaining overall filtering effectiveness.
Solution Approach 2:
The patent introduces dynamics by making the filtering process adaptive and variable based on QP conditions. The filtering strength dynamically adjusts according to the quantization parameter of each block, transforming a static filtering approach into a dynamic one that responds to varying QP conditions throughout the video sequence.
2Reliability
If strong filtering is applied to blocks with high activity, then distortion can be reduced, but it may over-filter blocks with low uncertainty introduced by QP variations
Solution Approach 1:
The patent applies parameter changes by modifying the activity metric based on QP values. The activity parameter is scaled or adjusted according to the quantization parameter, allowing the filtering decision to account for QP-induced uncertainty. This resolves the contradiction by changing the parameter used for filtering decisions to reflect both activity and QP conditions.
Solution Approach 2:
The patent introduces feedback by using QP information to modulate the filtering process. The QP value feeds back into the activity calculation, creating a closed-loop system where filtering strength is adjusted based on the uncertainty characteristics of each block. This prevents over-filtering of blocks with low QP-induced uncertainty.
3Productivity
If adaptive quantization is used to optimize bitrate-quality tradeoff, then bitrate efficiency improves, but pixel uncertainty varies across blocks making uniform filtering suboptimal
Solution Approach 1:
The patent applies merging by combining the activity metric and QP information into a unified filtering decision process. Rather than treating activity and QP as separate factors, the patent integrates them into a single adaptive filtering mechanism that considers both aspects simultaneously, simplifying the overall decision process while maintaining effectiveness.
Data Source
AI summary
Embodiments of the disclosure provide methods, apparatus and computer programs for adaptive loop filtering in an encoder and in a decoder. One method, performed in an encoder, comprises: determining filter parameters for a plurality of filters to be used in encoding a frame or slice; determining respective activity values for each of a plurality of blocks in the frame or slice, wherein each block comprises a plurality of pixels; determining respective quantization parameters for each of the plurality of blocks; selecting, for each of the plurality of blocks, a filter from the plurality of determined filters based on the respective activity value and the respective quantization parameter; and applying the filter parameters for the respective selected filters to the plurality of blocks.


