Transform Coefficient Coding With Joint Zero-Run Encoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional transform coding methods are inefficient for compressing wide dynamic range data, as they lack versatility and result in large entropy tables, high memory usage, and increased complexity due to the wide dynamic range of transform coefficients, which are not well-suited for encoding.

Innovation Solution

A digital media codec that adaptively encodes wide-range transform coefficients by grouping them into bins, using variable length entropy coding for the normalized coefficients and fixed length coding for the bin addresses, and dynamically adjusting the bin size based on the number of non-zero coefficients to resemble narrow range distributions, allowing for efficient encoding and decoding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional transform coding methods are used to compress wide dynamic range data, then the transform coefficients are generated, but the encoding efficiency deteriorates due to large entropy tables, high memory usage, and increased complexity

Engineering Contradiction:
Improveencoding efficiencyVSAvoidentropy table size and memory usage
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the wide dynamic range transform coefficients into multiple bins, where each bin represents a specific range of coefficient values. This segmentation transforms the encoding problem from handling a continuous wide range into managing discrete, manageable segments, thereby reducing entropy table size and memory requirements while maintaining encoding efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent dynamically adjusts the bin size parameter based on the actual distribution of non-zero coefficients in the transform block. By changing the bin size parameter adaptively, the system optimizes the balance between compression efficiency and computational complexity, reducing entropy table size when coefficient density is low while maintaining precision when needed

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If the bin size is made smaller to increase precision in representing transform coefficients, then the encoding precision is improved, but the number of bins increases leading to larger entropy tables and higher memory usage

Engineering Contradiction:
Improvecoefficient representation precisionVSAvoidnumber of bins and entropy table entries
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent implements dynamic bin sizing where the bin width is not fixed but adapts based on the local characteristics of the transform coefficients. The bin size is adjusted according to the number and distribution of non-zero coefficients, allowing finer precision in regions with dense coefficients while using coarser bins in sparse regions, thereby optimizing the trade-off between precision and memory usage

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Different bins are assigned different sizes and resolutions based on the local density of non-zero coefficients. Regions with high coefficient density receive finer binning for better precision, while sparse regions use coarser binning to reduce the overall number of bins and entropy table entries, achieving local optimization of the precision-memory trade-off

Inventive Principle:
Principle #3Local quality

3Productivity

If adaptive bin sizing is implemented to optimize compression for different coefficient distributions, then the compression efficiency is improved, but the encoding and decoding complexity increases

Engineering Contradiction:
Improvecompression efficiencyVSAvoidencoding and decoding complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs preliminary analysis of the transform coefficients to determine the optimal bin size and configuration before the actual encoding process. By pre-calculating the bin structure based on the distribution of non-zero coefficients, the system avoids complex adaptive adjustments during encoding, thereby reducing real-time computational complexity while maintaining high compression efficiency

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from the coefficient distribution analysis to automatically adjust bin sizing parameters. The encoder analyzes the actual coefficient patterns and adapts the bin configuration accordingly, creating a feedback loop that optimizes compression efficiency without requiring manual intervention or overly complex algorithms, as the adaptation is driven by observed data patterns

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP1913698B1Efficient coding and decoding of transform blocks
Publication Date: 2018.03.14 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP1913698B1 patent drawingFigure 1
  • EP1913698B1 patent drawingFigure 2~3
  • EP1913698B1 patent drawingFigure 4

AI summary

A block transform-based digital media codec more efficiently encodes transform coefficients by jointly-coding non-zero coefficients along with succeeding runs of zero-value coefficients (Fig. 14). When a non-zero coefficient is the last in its block, a last indicator is substituted for the run value in the symbol for that coefficient (Fig. 14, item 1435). Initial non-zero coefficients are indicated in a special symbol which jointly-codes the non-zero coefficient along with initial and subsequen runs of zeroes (Fig. 14, item 1440). The codec allows for multiple coding contexts by recognizing breaks in runs of non¬ zero coefficients and coding non-zero coefficients on either side of such a break separately (Fig. 14, item 1460). The codec also reduces code table size by indicating in each symbol whether a non-zero coefficient has absolute value greate than 1 and whether runs of zeros have positive value (Fig. 14, item 1475), and separately encodes the level of the coefficients and the length of the runs outside of the symbols (Fig. 14, item 1490).