Motion Compensation Filter for Video Coding Memory Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Recent video coding and decoding technologies face challenges with increased memory capacity needed for filter coefficients due to higher motion compensation accuracy, and higher code amounts for difference vectors, which do not necessarily improve coding efficiency.

Innovation Solution

A prediction image generation device that performs motion compensation on a reference image using a filter unit with weighted average filter coefficients, and a motion vector derivation unit that switches the accuracy of motion vectors based on prediction block size or quantization parameter.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If motion compensation accuracy is increased, then prediction quality is improved, but memory capacity needed for filter coefficients increases

Engineering Contradiction:
Improvemotion compensation accuracyVSAvoidmemory capacity for filter coefficients
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent applies different filter types (e.g., half-pel filters, quarter-pel filters) to different regions or blocks within the image based on local characteristics. This allows high accuracy where needed while using simpler filters elsewhere, reducing overall memory requirements for filter coefficients while maintaining prediction quality in critical areas.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent dynamically changes filter parameters (such as filter taps, filter coefficients, or filter application regions) based on image content characteristics, motion complexity, or block size. This adaptive approach ensures high motion compensation accuracy when necessary while reducing memory usage by applying complex filters only where required.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If motion vector accuracy is increased, then prediction quality is improved, but code amount of difference vector increases

Engineering Contradiction:
Improvemotion vector accuracyVSAvoidcode amount of difference vector
Core Design Contradiction:
Measurement precisionVSLoss of information

Solution Approach 1:

The patent dynamically adjusts motion vector precision (e.g., half-pel, quarter-pel, eighth-pel accuracy) based on local image characteristics, motion complexity, or block size. This allows high motion vector accuracy to be applied selectively only where it provides significant benefit, reducing the overall code amount for difference vectors while maintaining prediction quality in critical regions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent divides the image into multiple blocks or regions and applies different motion vector accuracies to different segments. This segmentation allows the system to use high-precision motion vectors only for blocks requiring it (e.g., high-motion areas) while using lower-precision vectors for other blocks, thereby reducing total code amount while maintaining overall prediction quality.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250159247A1Prediction image generation device, moving image decoding device, and moving image coding device
Publication Date: 2025.05.15 GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
  • US20250159247A1 patent drawing
  • US20250159247A1 patent drawing
  • US20250159247A1 patent drawing

AI summary

Coding efficiency is improved. A motion compensation filter unit acts on a motion vector applied image obtained by acting a motion vector on a reference image. The motion compensation filter unit causes filter coefficients mcFilter[i][k] designated by a phase i and a filter coefficient position k to act on the motion vector applied image. The filter coefficients mcFilter[i][k] includes filter coefficients calculated by using filter coefficients mcFilter[p][k](p≠i) and filter coefficients mcFilter[q][k](q≠i).