Motion Vector Predictor Candidate Generation for Video Encoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current moving picture encoding techniques face challenges in enhancing motion vector prediction accuracy and encode efficiency, particularly due to the limitations of using a single vector predictor, which results in low prediction accuracy and increased code lengths.
Innovation Solution
A moving picture encoding device that dynamically generates and selects motion vector predictor candidates based on block size, using both spatial and temporal predictors, and encodes the selected predictor information, optimizing the predictor candidate list generation and selection process to improve prediction accuracy and efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If multiple vector predictor candidates are used to improve prediction accuracy, then prediction accuracy is enhanced, but code length increases due to encoding indexes
Solution Approach 1:
The patent applies dynamics by making the vector predictor candidate list generation adaptive to block size. Different numbers of candidates are generated based on whether the block size is 16x16, 16x8, 8x16, or 8x8, allowing the system to dynamically adjust between prediction accuracy and code efficiency for different block configurations
Solution Approach 2:
The patent changes the parameter of the number of vector predictor candidates based on block size. For 16x16 blocks, up to 4 candidates are generated; for smaller blocks (16x8, 8x16, 8x8), only 1 candidate is generated. This parameter adaptation resolves the contradiction by optimizing the balance between accuracy and code length for each block type
2Productivity
If block size is reduced to enhance motion compensating prediction efficiency, then prediction efficiency is improved, but the number of motion vectors increases causing code length increase
Solution Approach 1:
The patent changes the parameter of vector predictor candidate count based on block size. Larger blocks (16x16) receive multiple candidates (up to 4) to maintain prediction efficiency, while smaller blocks (8x8, 16x8, 8x16) receive only 1 candidate to reduce code length, thus resolving the contradiction between prediction efficiency and code length
Solution Approach 2:
The patent applies local quality by providing different levels of vector predictor candidate generation for different block sizes. Instead of uniformly applying the same number of candidates to all blocks, the system tailors the candidate count to the specific block size, optimizing the local trade-off between prediction efficiency and code length for each block type
3Loss of information
If a single vector predictor is used to reduce code length, then code efficiency is improved, but prediction accuracy deteriorates
Solution Approach 1:
The patent makes the vector predictor system dynamic by conditionally generating multiple candidates for large blocks (16x16) while using a single candidate for smaller blocks. This dynamic approach allows the system to achieve high prediction accuracy when block size permits, while maintaining code efficiency for smaller blocks where multiple candidates would be less beneficial
Data Source
AI summary
A first vector predictor candidate list generating unit generates a first motion vector predictor candidate list from motion vectors of encoded neighboring blocks to blocks to be encoded. A second vector predictor candidate list generating unit generates a second motion vector predictor candidate list from motion vectors of blocks at the same positions as the blocks to be encoded in an encoded image and neighboring blocks to the blocks at the same positions. A combination determining unit determines whether to generate a third vector predictor candidate list combining the first and second vector predictor candidate lists by comparison of a block size of the blocks to be encoded and a threshold size. A vector predictor candidate list deciding unit generates the third vector predictor candidate list from the first vector predictor candidate list.


