Motion Vector Predictor Candidate Selection for Video Coding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing moving picture coding systems using motion compensation, such as MPEG-4 AVC/H.264, face inefficiencies in coding motion vectors due to limited prediction accuracy and increased coding amounts, particularly when dealing with blocks of varying sizes and shapes.
Innovation Solution
A moving picture coding and decoding technology that generates multiple motion vector predictor candidates based on neighboring blocks, removes redundant candidates, and selects an optimal predictor to reduce the coding amount of motion vector differences, thereby improving coding efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If motion vector prediction is performed using neighboring blocks in AVC, then coding amount of motion vectors is reduced, but prediction accuracy deteriorates when block sizes or shapes differ
Solution Approach 1:
The patent segments the motion vector prediction process into multiple candidate generation stages. Instead of using a single prediction method, it generates multiple motion vector predictor candidates from different neighboring blocks (left, upper, upper-right blocks) and selects the most appropriate one, thereby maintaining prediction accuracy while still reducing coding amount compared to transmitting full motion vectors.
Solution Approach 2:
The patent changes the parameter of motion vector prediction by introducing multiple predictor candidates with different derivation methods. When block sizes or shapes differ, the system can switch between different prediction candidates rather than being constrained to a single prediction method, thus adapting to varying block configurations while maintaining compression efficiency.
2Measurement precision
If multiple motion vector predictor candidates are generated, then prediction accuracy is improved, but device complexity increases
Solution Approach 1:
The patent implements a dynamic selection mechanism where the coding device chooses the most appropriate motion vector predictor candidate based on the specific block configuration and neighboring block availability. The system dynamically adjusts which prediction candidate to use rather than always processing all candidates, thereby improving prediction accuracy while controlling device complexity through adaptive decision-making.
Solution Approach 2:
The patent generates multiple motion vector predictor candidates but does not necessarily process or transmit all of them. Instead, it selects the most relevant candidate(s) based on the coding context, performing partial action rather than exhaustive processing. This approach improves prediction accuracy when needed while avoiding the full complexity cost of handling all possible candidates in every situation.
3Loss of information
If motion vector difference is coded instead of full motion vector, then coding amount is reduced, but prediction accuracy must be maintained
Solution Approach 1:
The patent introduces motion vector predictor candidates as intermediary elements between the full motion vector and the final coded representation. By using these intermediate predictor values derived from neighboring blocks, the system can code only the difference (residual) rather than the full motion vector, thereby reducing coding amount while maintaining accuracy through the intermediary prediction step.
Solution Approach 2:
The patent creates copies of motion vector information from neighboring blocks to serve as prediction candidates. Instead of transmitting redundant full motion vectors, it copies and adapts motion vector data from spatially adjacent blocks, then codes only the difference from these copied values, achieving compression while preserving accuracy through intelligent copying rather than direct transmission.
Data Source
AI summary
A motion vector predictor candidate generating unit makes a prediction based on a motion vector of one of coded neighboring blocks that are neighboring to a coding target block in space or time and generates a plurality of motion vector predictor candidates. A motion vector predictor redundant candidate removing unit removes the motion vector predictor candidates having identity among the motion vector predictor candidates predicted based on a coded neighboring block that is neighboring in space from a motion vector predictor candidate list with at least one being left. A motion vector predictor selecting unit selects a motion vector predictor from the plurality of motion vector predictor candidates. A first bitstream generating unit codes information representing the selected motion vector predictor.


