Integer Sequence Encoding for Biased Small-Value Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing encoding techniques, such as Golomb-Rice encoding, face challenges in efficiently compressing series of integer values significantly biased towards small values, leading to decreased compression performance and inability to achieve average bit counts less than 0.5 bits per integer value.

Innovation Solution

A novel encoding method that allocates specific bit codes to consecutive zero values and non-zero values, using predetermined code trees or correspondence tables to achieve a shorter bit length than traditional methods, ensuring decodability and optimal bit allocation based on the distribution of integer values.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If Golomb-Rice encoding is used for compressing integer series, then the encoding is simple and can be decoded, but the compression performance decreases when the integer series is significantly biased towards small values

Engineering Contradiction:
Improveencoding simplicityVSAvoidcompression performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent segments the encoding process into two distinct parts: (1) encoding the number of leading zero values using a fixed 1-bit code, and (2) encoding the non-zero value using a variable-length code based on its magnitude. This segmentation allows the encoder to optimize bit allocation for different value distributions, achieving better compression performance while maintaining decoding simplicity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different encoding strategies to different parts of the integer series based on local characteristics. Specifically, it uses a specialized code allocation scheme for leading zero values versus non-zero values, adapting the bit length and code structure to the local distribution pattern of zeros and non-zeros in the series.

Inventive Principle:
Principle #3Local quality

2Productivity

If traditional variable-length encoding is used, then short codes can be allocated to high-probability integer values, but long codes must be allocated to low-probability values to maintain decodability

Engineering Contradiction:
Improvecompression performanceVSAvoidcode length
Core Design Contradiction:
ProductivityVSLength of stationary object

Solution Approach 1:

The patent extracts the leading zero values from the integer series and encodes them separately using a dedicated 1-bit code. This extraction allows the remaining non-zero value to be encoded independently with optimized bit allocation, reducing the overall expected bit length while maintaining decodability through the separation of zero and non-zero encoding.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If the code allocation is optimized for exponential distribution, then minimum expected bit length is achieved, but the method cannot handle distributions with significant bias towards small values effectively

Engineering Contradiction:
Improveexpected bit lengthVSAvoiddistribution adaptability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a dynamic encoding approach where the code allocation adapts to the actual distribution characteristics of the integer series. By using a 1-bit code for leading zeros and variable-length codes for non-zero values, the system dynamically adjusts bit allocation based on the observed frequency and position of zero values, making it adaptable to various distributions including those with significant bias towards small values.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11438009B2Encoding apparatus, decoding apparatus, data structure of code sequence, encoding method, decoding method, encoding program, and decoding program
Publication Date: 2022.09.06 NIPPON TELEGRAPH & TELEPHONE CORP
  • US11438009B2 patent drawing
  • US11438009B2 patent drawing
  • US11438009B2 patent drawing

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 K×xn-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.