Motion Line Buffer Layout for Accurate CTU Boundary Prediction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding technologies face challenges in efficiently managing motion vector data storage and access, particularly in scenarios with limited bandwidth and memory resources, leading to increased data requirements and potential inaccuracies in motion prediction.
Innovation Solution
A method for deriving motion information for a current block in video coding that involves determining the position of spatial motion information candidates within a motion buffer, using different division factors based on whether neighboring blocks are within the same coding tree unit (CTU) or not, and employing an affine motion model to optimize motion vector storage and access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If motion vector data is accessed in the unit of a 4 x 16 grid, then the line buffer size is reduced, but the access precision and motion prediction accuracy deteriorate
Solution Approach 1:
The patent divides the motion buffer into multiple line buffers, each storing motion information for a specific row of CTUs. This segmentation allows the system to access only the necessary line buffer for the current processing row, reducing the active buffer size while maintaining precise access to motion vectors at the original 4x4 block level within each line buffer.
Solution Approach 2:
The patent introduces a new dimensional organization by storing motion information in a line buffer structure where each line buffer corresponds to a specific CTU row. This dimensional reorganization allows efficient row-by-row processing while preserving the original spatial resolution of motion vectors, effectively separating the buffer management dimension from the motion vector precision dimension.
2Device complexity
If motion information is inherited across CTU boundaries, then the device complexity is reduced, but the reliability of motion vector derivation deteriorates
Solution Approach 1:
The patent applies different access patterns and division factors depending on whether the current block and neighboring block are in the same CTU or across CTU boundaries. Within the same CTU, a finer division factor is used for precise motion vector derivation, while across CTU boundaries, a coarser division factor is applied. This local differentiation maintains reliability where needed while reducing complexity at boundaries.
Solution Approach 2:
The patent dynamically changes the division factor parameter based on the spatial relationship between blocks. When accessing motion information within the same CTU, a first division factor is used; when accessing across CTU boundaries, a second division factor is used. This parameter adaptation allows the system to balance between inheritance simplicity and derivation accuracy based on local conditions.
3Ease of operation
If a unified division factor is used for all motion buffer accesses, then the ease of operation is improved, but the manufacturing precision of motion vector storage deteriorates
Solution Approach 1:
The patent implements a dynamic division factor selection mechanism where the system automatically chooses between a first division factor and a second division factor based on the spatial relationship between the current block and the block being accessed. This dynamic adaptation maintains operational simplicity through automated selection while achieving precise motion vector storage through context-appropriate division factors.
Solution Approach 2:
The patent creates multiple line buffer copies, each storing motion information with different division factors appropriate for different spatial contexts. This copying strategy allows the system to maintain simple unified access operations while storing motion vectors with the precision appropriate for their specific spatial location by selecting the correct buffer copy.
Data Source
Figure 1A
Figure 1B
Figure 2
AI summary
A method for deriving motion information for a current block, comprising: determining whether the current block and a top neighboring block of the current block are in a same coding tree unit, CTU, or not; obtaining a position of a spatial motion information candidate for the current block; obtaining motion information corresponding to the position of the spatial motion information candidate, depending on the result of whether the current block and top neighboring block of the current block are in the same CTU; adding the obtained motion information to a motion information candidate list for the current block; obtaining a value of a first index of motion information candidate; deriving motion information of the current block based on the motion information candidate list and the value of the first index.