Video Coding De-Blocking Filter With Vertical-First Edge Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
De-blocking filters in video coding standards like HEVC are computationally intensive, increasing decoder/encoder complexity and requiring improved methods to reduce bit rate.
Innovation Solution
A de-blocking filter that estimates boundary strength indices at vertical and horizontal edges of blocks, filters vertical edges before horizontal edges, and uses strong, weak, or bypass filtering based on these indices and control parameters, reducing processing complexity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If de-blocking filters are applied to remove blocking artifacts in HEVC video coding, then video quality is improved, but processing complexity and computational load increase significantly
Solution Approach 1:
The de-blocking filter is divided into multiple independent filter engines (first filter engine, second filter engine, third filter engine) that process different blocks simultaneously. Each filter engine operates on a separate block of video data, enabling parallel processing that reduces overall computational complexity while maintaining video quality improvements.
Solution Approach 2:
Boundary strength values are pre-calculated and stored for each block boundary before the actual filtering operation. This preliminary computation allows the filter engines to quickly determine filtering parameters without performing complex calculations during the filtering stage, thereby reducing processing complexity while ensuring optimal video quality enhancement.
2Reliability
If de-blocking filters process all blocks in sequence, then filtering completeness is maintained, but processing time increases
Solution Approach 1:
The video data is segmented into multiple blocks that are processed by separate filter engines in parallel. The first filter engine processes a first block, the second filter engine processes a second block, and the third filter engine processes a third block simultaneously, ensuring all blocks are filtered completely while dramatically reducing total processing time through concurrent operations.
Solution Approach 2:
Multiple filter engines operate continuously and simultaneously on different blocks without waiting for sequential completion. This continuous parallel processing maintains filtering completeness across all blocks while eliminating idle time, thereby reducing overall processing time while ensuring every block receives the necessary de-blocking treatment.
Data Source
AI summary
A method of de-blocking filtering a processed video is provided. The processed video includes a plurality of blocks and each block includes a plurality of sub-blocks. A current block of the plurality of blocks includes vertical edges and horizontal edges. The processed video further includes a set of control parameters and reconstructed pixels corresponding to the current block. A boundary strength index is estimated at the vertical edges and at the horizontal edges of the current block. The set of control parameters, the reconstructed pixels corresponding to the current block and partially filtered pixels corresponding to a set of adjacent sub-blocks are loaded. The vertical edges and the horizontal edges of the current block are filtered based on the boundary strength index and the set of control parameters such that a vertical edge of the current block is filtered before filtering at least one horizontal edge of the current block.


