Adaptive VLC Table Selection for Video Block Coding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing digital video coding techniques face inefficiencies in coding coded block patterns (CBPs) due to the lack of adaptive methods that exploit spatial redundancy within video frames, particularly in scalable video coding (SVC) where enhancement layers require more efficient compression.

Innovation Solution

The implementation of variable length coding (VLC) tables that are dynamically selected based on the number of neighboring video blocks with non-zero transform coefficients, allowing for more efficient coding of CBPs by using shorter codes for more likely patterns and longer codes for less likely patterns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If variable length coding is used to compress video blocks, then bit rate is reduced, but coding complexity increases due to multiple VLC tables and adaptive selection mechanisms

Engineering Contradiction:
Improvebit rateVSAvoidcoding complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The patent implements dynamic VLC table selection where the encoder and decoder adaptively choose different VLC tables based on the CBP pattern of the current block. This allows the coding system to transition from static to dynamic behavior, selecting the most appropriate VLC table (e.g., VLC table 0, 1, or 2) based on the actual coefficient distribution, thereby achieving better compression without requiring complex adaptive mechanisms for every parameter

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of VLC table selection based on the CBP pattern characteristics. By monitoring the CBP value and selecting corresponding VLC tables pre-defined for different CBP patterns, the system optimizes compression efficiency while maintaining manageable complexity through parameter-based table selection rather than full adaptive reconstruction

Inventive Principle:
Principle #35Parameter changes

2Productivity

If multiple VLC tables are used to code different CBP patterns, then coding efficiency is improved, but device complexity increases due to storing and managing multiple tables

Engineering Contradiction:
Improvecoding efficiencyVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the CBP coding space into multiple categories, each associated with a specific VLC table. Different CBP patterns (e.g., CBP=0, CBP=1, CBP=2, etc.) are mapped to different VLC tables (VLC table 0, 1, or 2), allowing efficient coding of different coefficient distribution patterns while maintaining clear segmentation that simplifies table selection logic

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary organization of multiple VLC tables during system initialization or standard definition, pre-defining which VLC table should be used for each CBP pattern type. This preliminary action eliminates the need for complex real-time analysis during encoding/decoding, as the table selection is determined by simple CBP pattern matching against pre-established rules

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8335261B2Variable length coding techniques for coded block patterns
Publication Date: 2012.12.18 QUALCOMM INC
  • US8335261B2 patent drawing
  • US8335261B2 patent drawing
  • US8335261B2 patent drawing

AI summary

Variable length coding (VLC) techniques are described for coded block patterns (CBPs) used in block-based video coding. In VLC of CBPs, patterns of transform coefficients that are more likely to occur are coded with shorter codes, while patterns of coefficients that are less likely to occur are coded with longer codes. According to the techniques of this disclosure, several different VLC tables are stored in the coding devices. During the encoding and decoding processes, one of the VLC tables is selected and used to perform the coding of CBPs for a given video block. The table may be selected based on a number of neighboring video blocks to the current video block that include non-zero transform coefficients. The techniques may be particularly useful in the coding of video blocks of enhancement layers in scalable video coding (SVC).