Video Decoder Motion Information Storage Simplification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In video coding, the existing techniques for storing motion information of a block unit in an image frame to predict multiple following blocks become complex when both merge candidates are stored for each sub-block, leading to inefficiencies in prediction.
Innovation Solution
A method and device for decoding a bitstream that determines a block unit, receives first and second motion information, and stores a predefined motion information for a sub-block based on the comparison of list flags, simplifying the storage and prediction process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If two merge candidates are stored for each sub-block in triangle partitioning mode and geometric partitioning mode, then the prediction accuracy for following blocks is improved, but the device complexity and storage requirements increase significantly
Solution Approach 1:
The patent applies local quality by differentiating storage strategies based on sub-block characteristics. Sub-blocks are categorized into first type (where both merge candidates are stored) and second type (where only one merge candidate is stored). This selective approach maintains prediction accuracy for blocks needing both candidates while reducing complexity for blocks where one candidate suffices.
Solution Approach 2:
The patent segments the block unit into multiple sub-blocks and further categorizes sub-blocks into different types based on their prediction requirements. This segmentation allows the system to apply different storage strategies to different segments, optimizing the balance between prediction accuracy and storage complexity.
2Measurement precision
If both merge candidates are stored for every sub-block, then all block components can be predicted with high accuracy, but the storage buffer requirements and processing complexity become excessive
Solution Approach 1:
The patent implements local quality by assigning different storage requirements to different sub-block types. First type sub-blocks (requiring both merge candidates) receive full storage, while second type sub-blocks (requiring only one merge candidate) receive reduced storage. This localized differentiation maintains prediction precision where needed while reducing overall storage buffer size.
3Device complexity
If only one merge candidate is stored per sub-block, then the storage complexity is reduced, but the prediction accuracy for blocks requiring both candidates deteriorates
Solution Approach 1:
The patent applies local quality by identifying which sub-blocks require both merge candidates (first type) and which can function with one (second type). This differentiation ensures that prediction reliability is maintained for sub-blocks where both candidates are necessary, while simplifying storage for sub-blocks where one candidate is sufficient.
Solution Approach 2:
The patent segments sub-blocks into different categories based on their prediction needs. This segmentation allows the system to maintain high prediction reliability for first type sub-blocks by storing both merge candidates, while reducing storage complexity for second type sub-blocks by storing only one candidate.
Data Source
AI summary
A non-transitory medium of a device that stores instructions is provided. The instructions, when executed by a processing unit of the device, cause the device to: receive first motion information having a first list flag for a first reference frame and second motion information having a second list flag for a second reference frame for a block unit; compare the two list flags when a sub-block is included in a specific one of block regions covering a split line of the block unit; store a predefined one of the first and the second motion information for the sub-block without checking whether the two reference frames are included in a list indicated by a value different from the two list flags when the two list flags are the same; and store the first and the second motion information together for the sub-block when the two list flags are different.


