Motion Vector Buffer Compression for Video Decoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video coding standards, such as H.264/AVC, face increased computational complexity and memory requirements due to high coding efficiency, leading to decreased encoding and decoding speeds, particularly in embedded systems, and require larger and more complex circuitry for accurate motion estimation.

Innovation Solution

The implementation of buffer compression techniques for motion vector competition, which reduces the number of candidate motion vectors by using flooring functions and limiting selection to inter-coded blocks, thereby reducing memory requirements and computational complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If buffer compression techniques are applied to reduce memory requirements, then memory usage decreases, but the complexity of the decoding process increases

Engineering Contradiction:
Improvememory usageVSAvoiddecoding process complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The motion vector derivation process is segmented into multiple stages: first deriving candidate motion vectors from reference pictures, then applying buffer compression to select a reduced set of candidates, and finally using these compressed candidates for motion vector prediction. This segmentation allows memory usage to be controlled at the candidate selection stage while maintaining the overall functionality of motion estimation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Candidate motion vectors are pre-derived and stored in a buffer before the buffer compression step. The compression algorithm then processes these pre-prepared candidates to select the final motion vector. This preliminary action allows the system to manage memory more efficiently by processing and selecting motion vectors in a controlled sequence rather than maintaining all possible candidates simultaneously.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If more candidate motion vectors are considered for accurate motion estimation, then motion estimation accuracy improves, but computational complexity increases

Engineering Contradiction:
Improvemotion estimation accuracyVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system derives more candidate motion vectors than strictly necessary (excessive action) and stores them in a buffer, then applies buffer compression to select a reduced subset. This approach ensures that sufficient candidates are available for accurate motion estimation while controlling the actual computational processing by limiting the number of candidates that need to be fully processed and compared.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The buffer compression algorithm changes the parameter of candidate motion vector selection by using flooring functions and inter-coding techniques to reduce the number of active candidates. This parameter change allows the system to maintain accuracy by preserving the most relevant motion vectors while reducing computational complexity through fewer candidates requiring full processing.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If larger memory buffers are used to store motion vectors, then motion estimation accuracy improves, but encoding and decoding speeds decrease

Engineering Contradiction:
Improvemotion estimation accuracyVSAvoidencoding and decoding speeds
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system dynamically manages the motion vector buffer by compressing it based on the current decoding context. Rather than using a fixed large buffer size, the buffer is actively compressed using flooring functions and inter-coding techniques to adapt its effective size, allowing fast processing when possible while maintaining accuracy when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Candidate motion vectors are pre-derived and buffered before the compression step, allowing the system to prepare data in advance. This preliminary buffering action enables efficient processing by having candidates ready for immediate selection without requiring large persistent memory buffers throughout the entire encoding/decoding process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240397094A1Method for deriving a motion vector
Publication Date: 2024.11.28 VELOS MEDIA LLC
  • US20240397094A1 patent drawing
  • US20240397094A1 patent drawing
  • US20240397094A1 patent drawing

AI summary

A method for decoding video includes creating a first list of motion vectors from at least one neighboring block in a current frame of the video and creating a second list of motion vectors from at least one previous block in a temporally earlier frame of the video. A third list of motion vectors is created based upon the first list and the second list. Based upon receiving a motion vector competition control parameter selecting one of the motion vectors from the third list, wherein the second list of motion vectors is further based upon a flooring function.