Flexible Loop Filter Block Partitioning for Video Coding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video coding technologies, such as AV1 and VVC, limit loop filtering performance by partitioning pictures into equal-sized blocks, which can restrict the effectiveness of filtering processes.

Innovation Solution

Implement flexible partitioning of loop filtering blocks (LFBs) into varying sizes, allowing for improved filtering performance by adapting block sizes based on specific characteristics and needs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If loop filtering blocks are partitioned into equal sizes, then the implementation is simple and consistent, but the loop filtering performance is limited

Engineering Contradiction:
Improveloop filtering performanceVSAvoidpartitioning structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The loop filtering block is divided into multiple sub-blocks of different sizes (e.g., 4x4, 8x8, 16x16) rather than uniform partitions. This segmentation allows the filtering process to adapt to local image characteristics, improving filtering effectiveness while maintaining a manageable structural complexity through hierarchical organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different regions within the loop filtering block are assigned different filtering parameters and block sizes based on local image characteristics such as edge density, texture complexity, and gradient magnitude. This local adaptation enables optimized filtering for each region, enhancing overall performance without requiring complete redesign of the entire filtering structure.

Inventive Principle:
Principle #3Local quality

2Reliability

If flexible partitioning of loop filtering blocks is implemented, then loop filtering performance is improved, but the complexity of the filtering process increases

Engineering Contradiction:
Improveloop filtering performanceVSAvoidfiltering process
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent performs preliminary classification of loop filtering blocks into different types (e.g., smooth regions, edge regions, texture regions) before applying filtering. This pre-classification enables the selection of appropriate filtering strategies and block partitions in advance, reducing the computational complexity during the actual filtering process while maintaining high performance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The filtering block partitioning and parameters are made dynamic rather than static. The partition structure and filtering parameters are adapted based on local image characteristics, allowing the system to automatically adjust to different content types. This dynamic adaptation improves performance without requiring manual configuration for each scenario.

Inventive Principle:
Principle #15Dynamics

3Reliability

If equal-sized blocks are used for loop filtering, then the processing is computationally efficient, but the filtering effectiveness is reduced

Engineering Contradiction:
Improvefiltering effectivenessVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent changes key parameters of the loop filtering process, including block size, filtering strength, and filter type, based on local image characteristics. By dynamically adjusting these parameters rather than using fixed values, the system achieves both improved filtering effectiveness and maintained processing efficiency through adaptive parameter selection.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP3991301B1Loop filter block flexible partitioning
Publication Date: 2026.04.01 TENCENT AMERICA LLC
  • EP3991301B1 patent drawingFigure 1
  • EP3991301B1 patent drawingFigure 2A~2D
  • EP3991301B1 patent drawingFigure 3

AI summary

A method of loop filtering in a video coding process comprises receiving image data; analyzing the image data; flexibility partitioning the image data into loop filtering blocks (LFBs) to allow the size of LFBs in at least one of a fist row and a first column in a same frame to be smaller than other LFBs within the same frame; and applying a loop filter to the LFBs.