Image Entropy Coding with Local Probability Contexts for Parallel Decoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video encoders, such as those using CABAC, face inefficiencies due to lack of local probability matching during entropy encoding, leading to reduced compression performance and sequential decoding limitations, which hinder parallel decoding capabilities.

Innovation Solution

The method involves generating sub-sequences of symbols with a predetermined encoding order, using a multidimensional neighborhood for probability initialization and updating, and storing probabilities for subsequent sub-sequences to enable parallel decoding without loss of compression performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If sequential raster-scan encoding is used for entropy encoding, then the encoding process is simple to implement, but the probability matching is poor and compression performance deteriorates

Engineering Contradiction:
Improveencoding implementation simplicityVSAvoidcompression performance
Core Design Contradiction:
Ease of manufactureVSLoss of information

Solution Approach 1:

The image is divided into multiple independently decodable slices, where each slice can be decoded separately without requiring sequential processing of the entire image. This segmentation enables parallel decoding while maintaining probability matching within each slice context.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The probability model is adapted locally to each slice and its neighboring context, rather than using a global sequential model. This allows the encoder to capture local spatial correlations within slices while enabling parallel processing across different slices.

Inventive Principle:
Principle #3Local quality

2Reliability

If sequential decoding is used to maintain probability learning consistency, then the probability model remains accurate, but parallel decoding capability is lost

Engineering Contradiction:
Improveprobability model accuracyVSAvoidparallel decoding capability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The encoded image stream is divided into multiple slices that can be decoded in parallel. Each slice contains sufficient context information within its boundaries to maintain probability model accuracy independently, while the overall image quality is preserved through the combination of all slices.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Probability models are pre-initialized for each slice based on expected statistical characteristics before decoding begins. This preliminary setup allows each slice to be decoded independently with accurate probability matching, eliminating the need for sequential probability updates across the entire image.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If probability learning is performed globally across the entire image, then comprehensive statistical information is available, but local probability variations are not captured

Engineering Contradiction:
Improvestatistical information volumeVSAvoidlocal probability matching accuracy
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The probability model is adapted to local regions (slices) rather than applied uniformly across the entire image. Each slice maintains its own probability context that reflects local statistical characteristics, improving the accuracy of probability matching for local features while still benefiting from the overall structure provided by the slicing approach.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9287894B2Methods for encoding and decoding images, corresponding encoding and decoding devices and computer programs
Publication Date: 2016.03.15 ORANGE SA
  • US9287894B2 patent drawing
  • US9287894B2 patent drawing
  • US9287894B2 patent drawing

AI summary

A method is provided for encoding an image represented by a sequence of symbols. The method includes the following steps: defining subsequences within the sequence; and going through the subsequences applying the following sub-steps for a routine subsequence: determining an adjacent routine encoded group including two previously encoded subsequences, one of which belongs to an adjacent encoded group associated with a subsequence that is separate from the routine subsequence; initializing a routine probability of occurrence of a symbol, taking into account two known probabilities of occurrence of the symbol, relating to two previously encoded subsequences of the adjacent routine encoded group; the consecutive entropic encoding of the symbols, and updating the routine probability of occurrence; and storing the routine probability of occurrence after encoding the last symbol.