Video Encoder Spatial Variability Cost Adjustment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video encoding methods often result in suboptimal performance for encoding small moving objects in uniform backgrounds, leading to incorrect motion representation and increased bandwidth usage due to biases in intra- and inter-coding cost calculations.
Innovation Solution
A video encoder method that adjusts the cost function for inter-coding based on spatial variability, downweighting the cost of motion vectors for low variability blocks and upweighting for high variability blocks, and dynamically adjusting intra-coding costs based on spatial variability and compression levels to improve encoding accuracy and efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If predefined weights are used for calculating inter-coding costs, then the encoding process is simple and fast, but the encoding accuracy deteriorates for small moving objects in uniform backgrounds
Solution Approach 1:
The patent applies dynamics by making the cost function adaptive rather than static. The weights for motion vector cost and SAD are dynamically adjusted based on the spatial variability of each block, allowing the encoding system to adapt to different block characteristics (uniform vs. non-uniform backgrounds) and thereby improve encoding accuracy for small moving objects while maintaining reasonable complexity through threshold-based decision rules
Solution Approach 2:
The patent changes the parameters of the cost function based on block characteristics. Specifically, it modifies the weights w1 and w2 in the cost function C = w1 * cost(motion vector) + w2 * SAD according to the spatial variability of the block. For blocks with low spatial variability (uniform backgrounds), different weights are applied compared to blocks with high spatial variability, enabling accurate encoding across diverse scenarios
2Productivity
If the cost function heavily weights SAD values, then matching uniform backgrounds is efficient, but motion detection accuracy deteriorates for small moving objects
Solution Approach 1:
The patent changes the parameter weights in the cost function based on block characteristics. For blocks with low spatial variability (uniform backgrounds like clear sky or white walls), it adjusts the weights to emphasize motion vector cost over SAD, thereby improving motion detection reliability for small moving objects while maintaining encoding efficiency through the adaptive weighting mechanism
3Loss of energy
If zero motion vectors are selected for uniform blocks, then bandwidth usage is reduced, but encoding accuracy deteriorates for moving objects
Solution Approach 1:
The patent changes the intra-coding cost parameter based on block spatial variability. For blocks with low spatial variability, it adjusts the intra-coding cost to be more competitive relative to inter-coding, enabling the system to select intra-coding (which avoids zero motion vector issues) for uniform backgrounds while still achieving bandwidth efficiency. This parameter adjustment allows accurate encoding of moving objects by preventing erroneous zero motion vector selections
Data Source
AI summary
A video encoder receives a frame to be encoded and divides the current frame into blocks of pixels. For each block, a spatial variability is calculated and a cost function used to evaluate a cost for inter-coding the block of pixels is set to be dependent on the spatial variability. A ratio of a weight associated with a cost of encoding a motion vector and a weight associated with a sum of differences value is set to be lower if the spatial variability of the block of pixels in the current frame is below a first threshold compared to if the spatial variability is equal to or above the first threshold. The block is matched with a plurality of blocks in a reference frame, and a cost for inter-coding the block with reference to each of the plurality of blocks in a reference frame is evaluated according to the cost function.


