Video Encoder Subblock Partitioning to Reduce Grid Artifacts
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Compression of video streams often results in grid artifacts, which degrade the quality of video streams and are displeasing to viewers.
Innovation Solution
A video encoder divides video frames into superblocks, evaluates different partitioning schemes to determine the optimal combination of subblocks for encoding, and selects a partitioning scheme to reduce grid artifacts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If video streams are compressed to reduce bandwidth usage and storage requirements, then transmission efficiency is improved, but grid artifacts are generated that degrade video quality
Solution Approach 1:
The video frame is divided into multiple superblocks, and each superblock is further partitioned into subblocks using different partitioning schemes (e.g., 4×4, 8×8, 16×16). This segmentation allows the encoder to selectively apply different block sizes to different regions, reducing the visibility of grid artifacts while maintaining compression efficiency.
Solution Approach 2:
Different partitioning schemes are applied to different superblocks based on local content characteristics. Regions with high spatial frequency or complex textures use finer partitioning to avoid grid artifacts, while smooth regions use coarser partitioning to maintain compression efficiency. This local adaptation resolves the contradiction between compression and quality.
2Device complexity
If traditional uniform block partitioning is used for encoding, then encoding complexity is reduced, but grid artifacts are generated due to mismatched block boundaries with content structures
Solution Approach 1:
The frame is segmented into superblocks that are further divided into subblocks using multiple partitioning schemes. This hierarchical segmentation allows the system to evaluate different partitioning options without requiring complete redesign of the encoding architecture, balancing complexity and artifact reduction.
Solution Approach 2:
Multiple candidate partitioning schemes are evaluated in advance for each superblock before final encoding. This preliminary evaluation identifies the optimal partitioning that minimizes grid artifacts, allowing the encoder to make informed decisions without increasing real-time complexity during the actual encoding process.
3Object-affected harmful factors
If multiple partitioning schemes are evaluated for each superblock to reduce grid artifacts, then video quality is improved, but encoding complexity increases
Solution Approach 1:
Instead of evaluating all possible partitioning schemes exhaustively, the encoder evaluates a limited set of candidate schemes (e.g., 4×4, 8×8, 16×16) for each superblock. This partial evaluation approach achieves sufficient artifact reduction without the computational burden of exhaustive search, balancing quality improvement with encoding complexity.
Solution Approach 2:
The encoder varies partitioning parameters (block size, partitioning pattern) across different superblocks based on local content characteristics. By changing these parameters adaptively rather than uniformly, the system improves video quality while managing encoding complexity through selective optimization.
Data Source
AI summary
In one example, a video encoder divides a superblock of a video frame into subblocks. The dividing includes dividing the superblock according to a first and second partitioning schemes to generate a first and second combination of subblocks, respectively. The number of non-zero residuals in each subblock in the first and second combinations of subblocks is less than a corresponding threshold set for a size of the subblock. The encoder determines the subblocks for the superblock as the first combination of subblocks based on a first cost value associated with the first combination of subblocks being lower than a second cost value associated with the second combination of subblocks. The encoder further encodes the superblock into a video bitstream representing the video by encoding the subblocks.


