Video Syntax Context Trees for Precise Entropy Coding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video compression techniques face challenges in determining appropriate probability models for entropy coding, leading to increased computational costs and imprecise encoding/decoding due to exponential group increases and over-separation of syntax elements.

Innovation Solution

Utilizing a context tree to separate syntax elements based on context information, reducing computational costs by associating each element with a node in the tree that has an optimized probability model for encoding/decoding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If syntax elements are separated into multiple groups based on context information, then encoding precision is improved, but device complexity increases exponentially

Engineering Contradiction:
Improveencoding precisionVSAvoiddevice complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments syntax elements into multiple groups based on context information (e.g., intra-block copy flag, motion prediction mode, reference picture list). Each group is assigned a separate probability model, allowing precise encoding while managing complexity through structured organization of context categories.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different probability models are applied to different groups of syntax elements based on their specific context characteristics. This local differentiation allows each syntax element group to be encoded with the most appropriate model, improving precision without requiring a single complex model for all elements.

Inventive Principle:
Principle #3Local quality

2Measurement precision

If syntax elements are over-separated into many groups, then encoding precision is improved, but computational cost increases

Engineering Contradiction:
Improveencoding precisionVSAvoidcomputational cost
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies partial separation by selecting only the most significant context information for grouping syntax elements. Not all possible context combinations are used; instead, key contextual factors are identified to create meaningful groups that balance precision with computational efficiency.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent changes the parameters of probability models based on context groups (e.g., using CABAC with different context models for different syntax element groups). This parameter adaptation allows efficient encoding by matching model complexity to the actual information content of each syntax element group.

Inventive Principle:
Principle #35Parameter changes

3Manufacturing precision

If context information is extensively used for grouping syntax elements, then encoding accuracy is improved, but processing time increases

Engineering Contradiction:
Improveencoding accuracyVSAvoidprocessing time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent performs preliminary analysis to identify relevant context information before the actual encoding process. Context models are prepared and organized in advance based on expected syntax element patterns, allowing faster encoding execution without sacrificing accuracy during real-time processing.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3652946B1Coding video syntax elements using a context tree
Publication Date: 2025.07.02 GOOGLE LLC
  • EP3652946B1 patent drawingFigure 1
  • EP3652946B1 patent drawingFigure 2
  • EP3652946B1 patent drawingFigure 3

AI summary

Video syntax elements are coded using a context tree. Context information used for coding previously-coded syntax elements is identified. A context tree is produced by separating the previously-coded syntax elements into data groups based on the context information. The context tree includes nodes representing the data groups. Separating the previously-coded syntax elements can include applying separation criteria against values of the context information to produce at least some of the nodes. Context information is then identified for another set of syntax elements to be coded. One of the nodes of the context tree is identified based on values of the context information associated with one of the other set of syntax elements. That syntax element is then coded according to a probability model associated with the identified node. The context tree can be used to encode or decode syntax elements.