Motion Vector Predictor Candidate Limiting for Video Decoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing moving picture coding schemes, such as MPEG-4 AVC/H.264, face challenges in improving coding efficiency due to low prediction accuracy of motion vector predictors, leading to increased coding amounts and reduced compression efficiency.
Innovation Solution
A moving picture coding device and method that derive multiple motion vector predictor candidates from neighboring blocks within the same and different pictures, select and limit the candidates based on specific conditions, and code the position of the selected predictor to enhance coding efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If multiple motion vector predictor candidates are derived and selected from neighboring blocks, then prediction accuracy is improved, but device complexity and processing overhead increase
Solution Approach 1:
The motion vector prediction process is segmented into multiple candidate derivation steps, where different neighboring blocks (A, B, C) are processed separately to generate individual motion vector predictors, which are then combined into a candidate list. This segmentation allows systematic exploration of multiple prediction sources while maintaining organized processing.
Solution Approach 2:
The motion vector predictor candidate list is made dynamic and adaptive. The list is constructed by selectively adding candidates from different neighboring blocks based on their availability and relevance. The decoding device can adaptively select from multiple candidates depending on the specific block configuration and neighboring block availability, optimizing prediction accuracy for each case.
2Loss of information
If motion vector predictor candidates are limited to a certain number, then coding amount is reduced, but prediction accuracy may deteriorate
Solution Approach 1:
Instead of deriving and coding all possible motion vector predictors from all neighboring blocks, the invention applies partial action by selectively deriving candidates from specific neighboring blocks (A, B, C) and limiting the final candidate list to a manageable number (e.g., up to 3 candidates). This partial derivation approach balances coding efficiency with sufficient prediction accuracy.
Solution Approach 2:
The invention changes the parameter of candidate list size from potentially unlimited to a controlled maximum number. By setting a maximum candidate number and selectively adding candidates based on neighboring block availability, the coding amount is optimized while maintaining adequate prediction accuracy through intelligent candidate selection.
3Productivity
If motion vector difference is coded instead of full motion vector, then coding efficiency is improved, but prediction accuracy requirement increases
Solution Approach 1:
The invention performs preliminary action by deriving multiple motion vector predictor candidates from neighboring blocks before calculating the motion vector difference. This preliminary candidate derivation ensures that the final selected predictor is as accurate as possible, which in turn minimizes the motion vector difference that needs to be coded, thereby improving overall coding efficiency.
Solution Approach 2:
The motion vector prediction process uses feedback from neighboring block motion vectors to construct the predictor candidate list. The decoded motion vectors from neighboring blocks serve as feedback to generate accurate predictors for the current block, ensuring that the prediction closely matches the actual motion and reducing the residual information that needs to be transmitted.
Data Source
AI summary
A motion vector predictor candidate constructing unit performs prediction based on a motion vector of one of coded blocks neighboring a coding target block in the same picture as the coding target block, constructs a plurality of motion vector predictor candidates, and adds the motion vector predictor candidates to a motion vector predictor candidate list. A motion vector predictor candidate number limiting unit limits the number of motion vector predictor candidates added to the motion vector predictor candidate list to a maximum candidate number according to a size of a prediction block. A motion vector predictor selecting unit selects a motion vector predictor from the motion vector predictor candidate list. A coding unit codes information representing an index of the selected motion vector predictor in the motion vector predictor candidate list.


