Transform Coefficient Coding for Video Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video coding standards like AVS face inefficiencies due to long runs and high overhead of EOB flags, which lead to increased computational complexity and reduced compression efficiency, especially in blocks with many non-zero coefficients, and the decoder lacks a priori knowledge of coefficient locations until all data is decoded.

Innovation Solution

The method involves partitioning transform blocks into non-overlapping coefficient groups, signaling the last non-zero coefficient group and its position, and encoding level, run, and sign data within these groups, eliminating the need for EOB flags and enabling context-adaptive entropy coding, with a doubly-linked list for rate-distortion optimization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If coefficients are coded using level, run, sign, and EOB flag in reverse zig-zag direction, then compression is achieved, but long runs result in increased number of bins to be coded and high overhead from EOB flags

Engineering Contradiction:
Improvedata compression efficiencyVSAvoidcomputational complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The transform block is divided into multiple coefficient groups (e.g., four 4x4 groups in a 16x16 block). Each coefficient group is independently coded with its own last-coefficient-position flag, allowing the coding process to be segmented and parallelized, reducing the computational burden on long runs spanning multiple groups.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The last-coefficient-position flag for each coefficient group is determined and prepared in advance during the encoding process. This preliminary action allows the decoder to know the position of the last non-zero coefficient in each group before actual decoding, eliminating the need to process all possible bins and reducing computational complexity.

Inventive Principle:
Principle #10Preliminary action

2Loss of information

If EOB flags are used to mark the end of non-zero coefficients, then coefficient positioning is tracked, but overhead increases significantly especially in blocks with many non-zero coefficients

Engineering Contradiction:
Improvecoefficient location trackingVSAvoidcompression efficiency
Core Design Contradiction:
Loss of informationVSLoss of substance

Solution Approach 1:

The EOB flag function is extracted and replaced by the last-coefficient-position flag mechanism. Instead of using EOB flags throughout the coefficient sequence, the invention extracts the essential information (position of last non-zero coefficient) and encodes it directly, eliminating the overhead of multiple EOB flags while maintaining coefficient location tracking.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of marking the end of non-zero coefficients with EOB flags in the traditional forward direction, the invention inverts the approach by directly specifying the position of the last non-zero coefficient. This inversion eliminates the need for continuous EOB flagging and reduces overhead significantly.

Inventive Principle:
Principle #13The other way round (Inversion)

3Loss of substance

If coding is performed in reverse zig-zag direction from the last non-zero coefficient, then compression is achieved, but the decoder lacks a priori knowledge of coefficient locations until all data is decoded

Engineering Contradiction:
Improvedata compressionVSAvoidcoefficient location information
Core Design Contradiction:
Loss of substanceVSLoss of information

Solution Approach 1:

The last-coefficient-position flag for each coefficient group is determined and encoded in advance, providing the decoder with a priori knowledge of coefficient locations. This preliminary encoding of position information allows the decoder to optimize its processing without having to wait for all data to be decoded.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The last-coefficient-position flag acts as an intermediary that carries location information from the encoder to the decoder. This intermediary element provides the decoder with advance knowledge of coefficient positions, enabling optimized decoding without requiring full data decoding first.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10412396B2Transform coefficient coding for context-adaptive binary entropy coding of video
Publication Date: 2019.09.10 MALIKIE INNOVATIONS LTD
  • US10412396B2 patent drawing
  • US10412396B2 patent drawing
  • US10412396B2 patent drawing

AI summary

Methods and devices for encoding and decoding video are described that partition transform blocks into coefficient groups. The coefficients within non-zero coefficients are run-length coded in a reverse scan order within the group. Prior to coefficient coding, data is encoded indicating which coefficient group in group scan order is the last to contain a non-zero coefficient. Then data is encoded indicating the position within that last non-zero coefficient group of the last non-zero coefficient in scan order inside the coefficient group. Thus the decoder is able to decode run-length data knowing the positions of the coefficients and eliminating the need for end-of-block flags.