Loop Filter Parameter Sharing Across Slice Tile Boundaries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding systems face challenges in independent processing across slice or tile boundaries due to data dependency in sharing loop filter information, such as SAO and ALF parameters, which limits parallel processing and enhances coding artifacts.
Innovation Solution
Conditionally allowing sharing of loop filter parameters between adjacent blocks based on region partitioning or availability, using merge flags in the video bitstream to enable or disable parameter sharing, thereby enabling independent slice/tile processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If loop filter parameters are shared across slice or tile boundaries, then coding efficiency is improved, but data dependency increases preventing independent processing
Solution Approach 1:
The patent divides the picture into independent slices or tiles, and introduces a mechanism to segment the loop filter parameter sharing across these boundaries. By using slice/tile boundary detection and conditional parameter copying only within the same slice or tile, the patent enables independent processing of each slice or tile while maintaining parameter sharing benefits where applicable.
2Manufacturing precision
If loop filter parameters are shared across slice or tile boundaries, then coding artifacts are reduced, but parallel processing capability is lost
Solution Approach 1:
The patent segments the video picture into independent processing units (slices or tiles) and enforces parameter sharing boundaries at slice/tile boundaries. This segmentation allows each slice or tile to be processed independently in parallel while still benefiting from loop filter parameter sharing within the same slice or tile, thus maintaining picture quality without sacrificing parallel processing capability.
Solution Approach 2:
The patent applies different parameter sharing strategies based on location: within the same slice or tile, parameters are shared to improve local picture quality; across slice or tile boundaries, parameters are not shared to maintain independent processing capability. This local quality approach optimizes both picture quality and processing efficiency in different spatial regions.
3Manufacturing precision
If loop filter parameters are shared across slice or tile boundaries, then coding artifacts are reduced, but processing time increases
Solution Approach 1:
The patent segments the processing into independent slice or tile units with controlled parameter sharing. By preventing cross-boundary parameter sharing and enabling independent processing of each segment, the patent eliminates inter-segment dependencies that would require sequential processing, thus reducing overall processing time while maintaining picture quality within each segment.
Solution Approach 2:
The patent performs preliminary determination of slice or tile boundaries and establishes independent processing regions before the actual loop filter application. This preliminary segmentation allows subsequent parallel processing without runtime dependencies, reducing processing time while maintaining the picture quality benefits of loop filtering.
Data Source
AI summary
A method and apparatus for loop filter processing of video data in a video encoder or decoder are disclosed. Embodiments according to the present invention conditionally allow sharing of loop filter parameters. In one embodiment, sharing of loop filter information between the current block and a neighboring block is determined according to a condition. If the condition indicates that sharing of loop filter information is allowed, a merge flag is coded and incorporated in the video bitstream in an encoder, and a merge flag is parsed from the video bitstream and decoded in a decoder. In one embodiment, the condition depends on region partitioning of the picture, where region partitioning partitions the picture into regions and the region may correspond to a slice or a tile. The condition is set to indicate that sharing of loop filter information is allowed if the block and the neighboring block are in a same slice/tile.


