Variable-Length Integer Coding for Small-Value Biased Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing encoding techniques, such as Golomb-Rice encoding, face challenges in achieving low average bit counts for series of integer values significantly biased towards small values, including non-zero values, leading to decreased compression performance.

Innovation Solution

The proposed solution involves an encoding apparatus and method that uses a combination of code trees or correspondence tables to allocate codes to non-negative integer values, allowing for efficient encoding and decoding of series with distributions biased towards small values, by employing a variable-length encoding scheme that adapts to the specific distribution of values.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If Golomb-Rice encoding is used for series of integer values biased towards small values, then the encoding simplicity is maintained, but the compression performance deteriorates due to increased average bit count

Engineering Contradiction:
Improveencoding simplicityVSAvoidcompression performance
Core Design Contradiction:
Ease of manufactureVSLoss of substance

Solution Approach 1:

The patent changes the encoding parameter from fixed Golomb-Rice parameters to variable code tree structures that adapt to the distribution characteristics of the input data. By selecting different code trees based on the bias parameter α, the encoding scheme optimizes the average bit count for different data distributions while maintaining systematic encoding simplicity.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces dynamic adaptability by allowing the encoder to select from multiple code trees (T0, T1, T2) based on the distribution characteristics of the input data. This dynamic selection enables the encoding scheme to adapt to different bias levels (α values) and achieve optimal compression performance for each case.

Inventive Principle:
Principle #15Dynamics

2Loss of substance

If variable-length codes are allocated to optimize compression performance, then the expected bit length decreases, but the decodability restriction increases due to the need for long codes for certain integer values

Engineering Contradiction:
Improveexpected bit lengthVSAvoiddecodability restriction
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The patent performs preliminary classification of integer values into multiple ranges (0 to 2^k-1, 2^k to 2^(k+1)-1, etc.) and pre-defines corresponding code trees for each range. This preliminary organization allows the decoder to efficiently determine which code tree to use based on the value range, reducing decoding complexity while maintaining optimal variable-length coding.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the integer value space into multiple ranges and assigns different code trees to different segments. This segmentation allows each code tree to be optimized for its specific range, achieving better overall compression while making decoding more manageable through range-based selection.

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If fixed Golomb parameter s is used, then the encoding process is simplified, but the adaptability to different value distributions deteriorates

Engineering Contradiction:
Improveencoding processVSAvoiddistribution adaptability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal encoding framework that incorporates multiple code trees (T0, T1, T2, ...) each optimized for different distribution characteristics. The encoder can universally handle various bias parameters α by selecting the appropriate code tree, making the system multi-functional and adaptable to different data distributions while maintaining a systematic encoding process.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP3859976B1Coding device, decoding device, code string data structure, coding method, decoding method, coding program, and decoding program
Publication Date: 2023.10.11 NIPPON TELEGRAPH & TELEPHONE CORP
  • EP3859976B1 patent drawingFigure 1
  • EP3859976B1 patent drawingFigure 2~3
  • EP3859976B1 patent drawingFigure 4

AI summary

Provided is an encoding/decoding technique according to which it is possible to perform encoding with a small average bit count, even for a series of integer values with a distribution that is significantly biased to a small value, including small values that are not zero values. The present invention includes an integer encoding unit that, for an input series of non-negative values xn, n ∈ {1, 2, ..., N} (hereinafter referred to as "integer series"), obtains a one-bit code with a bit value of "x" as a code corresponding to L consecutive integer values 0 included in the integer series, L being an integer that is 2 or more, and obtains a Kxxn-bit or a K×xn+1-bit code that includes at least one bit value "x" and at least one bit value "y" in the first bit to the K-th bit and in which the bit values of the K×(xn-1) bits from the end are "y", as a code corresponding to a set composed of 0 to L-1 consecutive integer values 0 included in the integer series and one integer value xn other than 0.