Adaptive Motion Compensation Search Range for Faster Block Matching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing motion compensation methods suffer from high search complexity and long search times due to fixed search ranges when determining motion vectors, leading to ineffective searches.
Innovation Solution
A method that adjusts the search range based on the motion vector of an initial search point and an adjacent block, allowing for the determination of a target pixel within this adjusted range for motion compensation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a fixed search range is used when searching for matching blocks, then the search process is simple to implement, but the search complexity increases and search time becomes long
Solution Approach 1:
The patent applies dynamics by making the search range adaptive rather than fixed. The search range is dynamically adjusted based on the motion vector magnitude of adjacent blocks, allowing the system to automatically expand or contract the search area according to the actual motion characteristics of the video content, thereby improving search efficiency without sacrificing implementation simplicity
Solution Approach 2:
The patent changes the parameter of search range size based on motion vector analysis. By calculating the motion vector magnitude of adjacent blocks and using it to determine an appropriate search range for the current block, the system adapts the search parameters to the local motion characteristics, reducing unnecessary searches in areas with small motion while ensuring adequate coverage in areas with large motion
2Ease of manufacture
If a fixed search range is used when searching for matching blocks, then the search algorithm is easy to implement, but the search time increases
Solution Approach 1:
The patent applies preliminary action by performing motion vector analysis on adjacent blocks before conducting the full search for the current block. This preliminary analysis provides information about the expected motion in the area, allowing the search algorithm to be guided from the beginning with an appropriately sized search range centered on the predicted match location, thereby reducing the total number of comparisons needed
Solution Approach 2:
The search time is reduced by changing the search range parameter based on preliminary motion analysis. The system calculates motion vectors for adjacent blocks and uses these to determine an optimized search range for the current block, avoiding both overly large fixed ranges that waste time and overly small ranges that may miss the match
3Device complexity
If motion vectors are determined without considering adjacent blocks, then the processing is simpler, but the motion compensation accuracy decreases
Solution Approach 1:
The patent applies local quality by treating each block's motion estimation with consideration of its local context (adjacent blocks). Rather than applying a uniform approach to all blocks, the system uses the motion characteristics of neighboring blocks to inform the search for the current block, recognizing that motion patterns tend to be spatially correlated and that local information can improve local estimation accuracy
Solution Approach 2:
The motion vectors of adjacent blocks serve as an intermediary that mediates between the simple fixed-range search and the desired accurate motion estimation. By using adjacent block motion vectors to guide the search range and initial position, the system leverages the already-computed motion information as a bridge to achieve better accuracy without requiring complex joint optimization algorithms
Data Source
AI summary
A motion compensation method, includes acquiring a motion vector of an initial search point in a reference frame of an adjacent block to a to-be-processed block in a to-be-processed image and a motion vector of the adjacent block; determining a search range in the reference frame based on the motion vector of the initial search point and the motion vector of the adjacent block; determining a target pixel in the search range; and performing motion compensation on the to-be-processed block based on the motion vector of the target pixel.


