Video Encoder Inter Prediction Using Gradient Padding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current video coding technologies, such as High-Efficiency Video Coding (HEVC), face challenges in optimizing the inter prediction function for efficiently processing increasing amounts of digital video data, particularly in building predictions of current frames based on reference frames.
Innovation Solution
The proposed solution involves an encoder and decoder system that performs inter prediction by acquiring predicted images from reference pictures using motion compensation, deriving local motion estimation values, and generating a final prediction image through interpolation and padding processes, enhancing encoding and decoding efficiency and speed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional motion compensation is used for inter prediction, then the encoding process is simpler, but the encoding efficiency and processing speed are insufficient for increasing digital video data
Solution Approach 1:
The current block is divided into multiple sub-blocks, and motion estimation is performed separately for each sub-block to derive local motion estimation values. This segmentation allows the system to handle complex motion patterns more effectively while maintaining manageable computational complexity through localized processing.
Solution Approach 2:
Gradient images are pre-calculated from the predicted images before motion estimation. This preliminary action prepares the data in advance, enabling faster and more accurate local motion estimation without increasing the overall encoding complexity during the main processing stage.
2Measurement precision
If local motion estimation values are derived using gradient images and sub-blocks, then the prediction accuracy is improved, but the computational complexity increases
Solution Approach 1:
Different processing approaches are applied to different regions by dividing the block into sub-blocks. Each sub-block undergoes local motion estimation using gradient images, allowing the system to achieve high precision where needed while avoiding unnecessary computational complexity in regions where simpler methods would suffice.
Solution Approach 2:
Instead of performing full motion estimation across the entire block, the system applies local motion estimation only to specific sub-blocks where it is most beneficial. This partial action approach achieves sufficient prediction accuracy without the excessive computational complexity of complete block-level processing.
3Reliability
If multiple reference pictures are used for motion compensation, then the prediction quality improves, but the processing time increases
Solution Approach 1:
The use of multiple reference pictures is combined with sub-block segmentation, allowing the system to efficiently process multiple references by applying local motion estimation to each sub-block. This reduces the overall processing time compared to applying full motion estimation across the entire block for each reference picture.
Solution Approach 2:
Predicted images are pre-generated from multiple reference pictures using motion compensation before the local motion estimation stage. This preliminary action prepares the data structure in advance, enabling faster subsequent processing when deriving local motion estimation values from gradient images.
Data Source
AI summary
The present disclosure provides systems and methods for video coding. The systems include, for example, an image encoder comprising: circuitry; and a memory coupled to the circuitry, wherein the circuitry, in operation, performs the following: predicting a first block of prediction samples for a current block of a picture, wherein predicting the first block of prediction samples includes at least a prediction process with a motion vector from a different picture; padding the first block of prediction samples to form a second block of prediction samples, wherein the second block is larger than the first block; calculating at least a gradient using the second block of prediction samples; and encoding the current block using at least the calculated gradient.


