Motion Vector Reference Selection via Frame Buffer Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In video compression, after coding each frame, the reference buffer is updated, leading to potential mismatches in reference frames between current and previously coded blocks, which affects the priority of motion vectors used for encoding, resulting in inefficient coding.

Innovation Solution

Storing reference frame identifiers with reference buffer indices for each frame and updating these indices to ensure that motion vectors from collocated blocks are treated as higher priority only when they reference identical frames, thereby advancing the most suitable motion vectors for encoding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the reference buffer is updated after coding each frame, then the reference frames are kept current for future predictions, but mismatches occur between reference frames used by current and previously coded blocks, affecting motion vector priority and encoding efficiency

Engineering Contradiction:
Improvereference frame consistencyVSAvoidencoding efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by storing the reference buffer index associated with each reference frame identifier before the reference buffer is updated. This allows the system to capture the state of reference frames at a specific point in time, ensuring that motion vector candidates from previously coded blocks can be correctly matched with their corresponding reference frames even after the buffer is updated. The stored index serves as a snapshot that preserves the relationship between blocks and their reference frames across update operations.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If motion vectors from collocated blocks are always treated as higher priority, then encoding speed improves, but incorrect reference frame matching occurs when the reference buffer has been updated, leading to degraded compression efficiency

Engineering Contradiction:
Improveencoding speedVSAvoidcompression efficiency
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent implements feedback by comparing the stored reference buffer index with the current reference buffer index of the reference frame associated with each motion vector candidate. This feedback mechanism determines whether a motion vector candidate from a previously coded block should be prioritized. Only when the indices match (indicating the reference frame is still valid) does the system advance the motion vector candidate to a higher priority position, ensuring both encoding speed and compression efficiency are maintained.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent changes the parameter of motion vector candidate priority based on the match between stored and current reference buffer indices. When a match is found, the priority parameter of the corresponding motion vector candidate is increased by advancing its position in the candidate list. This dynamic parameter adjustment ensures that only motion vectors referencing valid, unchanged frames are prioritized, maintaining both encoding speed and compression efficiency.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9866862B2Motion vector reference selection through reference frame buffer tracking
Publication Date: 2018.01.09 GOOGLE LLC
  • US9866862B2 patent drawing
  • US9866862B2 patent drawing
  • US9866862B2 patent drawing

AI summary

Encoding or decoding a video signal includes determining multiple candidate motion vectors for a current block, the candidate motion vectors including a first motion vector used to predict a collocated block within a first frame. A reference frame identifier associated with the first motion vector can be compared to a reference buffer index of a reference frame used to predict the current block of a second frame. On the condition that the reference frame identifier is the same as the reference buffer index, the first motion vector is advanced ahead of remaining ones of the multiple candidate motion vectors.