Adaptive Search Range for Motion Estimation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current motion estimation techniques in video coding face inefficiencies in determining search ranges for motion vectors, particularly when encoding bi-predictive frames, as they often require extensive searches across multiple reference frames without adequate bounding, leading to increased computational complexity and reduced performance.
Innovation Solution
The proposed solution involves determining a search range vector using adaptive processing functions that utilize mean values of motion vectors from neighboring blocks or reference frames, allowing for efficient derivation of motion vectors through mirror and projective motion estimation methods, which can be applied at both block and picture levels, thereby bounding the search extent and improving estimation efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional motion estimation is performed across multiple reference frames without adequate search range bounding, then motion vector accuracy may be improved, but computational complexity increases significantly
Solution Approach 1:
The patent applies preliminary action by determining a bounded search range before performing motion estimation. The search range is calculated using motion vectors from neighboring blocks and reference frames, establishing boundaries that constrain the subsequent motion search. This preliminary bounding reduces the computational search space while maintaining accuracy, as the search is confined to regions most likely to contain the optimal motion vector.
Solution Approach 2:
The patent implements dynamics by adaptively adjusting the search range boundaries based on local motion characteristics. The search range is not fixed but dynamically determined using motion vectors from neighboring blocks and temporal reference frames. This adaptive approach allows the search to expand or contract based on actual motion patterns in different regions, optimizing the balance between accuracy and computational complexity.
2Measurement precision
If extensive search across multiple reference frames is performed for bi-predictive frames, then prediction accuracy improves, but processing time increases
Solution Approach 1:
The patent applies preliminary action by pre-calculating search range boundaries using motion vectors from neighboring blocks and reference frames before performing the actual motion estimation for bi-predictive frames. This preliminary bounding prevents exhaustive searches across entire reference frames, significantly reducing processing time while maintaining prediction accuracy within the constrained search regions.
Solution Approach 2:
The patent applies partial action by performing motion estimation only within the calculated bounded search ranges rather than across entire reference frames. For bi-predictive frames, this means searching only in the relevant portions of forward and backward reference frames where motion is likely to occur, based on neighboring block information, thus reducing processing time while maintaining sufficient prediction accuracy.
3Device complexity
If search range is fixed for all blocks, then device complexity is reduced, but motion estimation accuracy deteriorates
Solution Approach 1:
The patent applies local quality by determining customized search ranges for different blocks based on their local motion characteristics. Instead of using a uniform search range for all blocks, the patent calculates individual search ranges using motion vectors from neighboring blocks and temporal reference frames. This allows each block to have a search range optimized for its specific motion pattern, improving motion estimation accuracy without significantly increasing overall device complexity.
Solution Approach 2:
The patent applies parameter changes by dynamically adjusting search range parameters (boundaries and extents) based on motion vector information from neighboring blocks and reference frames. The search range parameters are modified adaptively for different blocks and temporal locations, allowing the system to optimize motion estimation accuracy by matching search range characteristics to local motion characteristics rather than using fixed parameters.
Data Source
AI summary
Systems, methods, and computer program products that can be used to determine a search range (SR) when performing motion estimation at, for example, a video encoder or decoder. Determining a motion vector for a current block during motion estimation may involve searching within a search window that may reside in a reference frame, or in a previously decoded block that spatially or temporally neighbors the current block. Such a search seeks a motion vector that minimizes a metric, such as a sum of absolute differences between corresponding blocks of reference frames. A motion vector that minimizes such a metric may be a good candidate for use in motion estimation. The search may become more efficient if a search range is determined such that the extent of the search is bounded. A search range may be determined at the block level or at the picture level.


