Palette Coding Partitioning for Video Compression Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video coding technologies face challenges in achieving efficient compression and decompression of video data, particularly with limited network resources and the need for higher video quality, where existing methods often compromise on compression ratio or picture quality.

Innovation Solution

The implementation of a method that considers the partitioning type of a coding unit (CU) during palette coding, allowing for efficient syntax signaling and decoding by separating palette coding information for luma and chroma components, enabling more efficient encoding and decoding processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If separate tree partitioning is used to improve compression efficiency, then compression ratio is improved, but device complexity increases due to separate luma and chroma partitioning trees

Engineering Contradiction:
Improvecompression ratioVSAvoidpartitioning structure complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the coding unit partitioning into separate luma and chroma trees. The luma CU and chroma CU are partitioned independently using separate quad-tree structures, allowing each component to be optimized separately for compression efficiency while maintaining manageable complexity through modular organization.

Inventive Principle:
Principle #1Segmentation

2Productivity

If palette coding information is signaled separately for luma and chroma components in separate tree partitioning, then encoding efficiency is improved, but syntax complexity increases

Engineering Contradiction:
Improveencoding efficiencyVSAvoidsyntax structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies local quality by allowing different palette coding parameters (PaletteModeFlag, palette_entries, palette_colors) to be independently configured and signaled for luma and chroma components. This enables each color component to use optimization strategies tailored to its specific characteristics, improving overall encoding efficiency.

Inventive Principle:
Principle #3Local quality

3Productivity

If video data is compressed to reduce data size for limited bandwidth, then transmission efficiency is improved, but picture quality may be compromised

Engineering Contradiction:
Improvetransmission efficiencyVSAvoidpicture quality
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent applies parameter changes by dynamically adjusting palette coding parameters such as the number of palette entries and the selection of representative colors based on the specific characteristics of each coding unit. This allows the encoder to adapt the compression level and method to preserve important visual information while achieving efficient compression for transmission.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP3797517B1An encoder, a decoder and corresponding methods using a palette coding
Publication Date: 2023.08.16 HUAWEI TECH CO LTD
  • EP3797517B1 patent drawingFigure 1A
  • EP3797517B1 patent drawingFigure 1B
  • EP3797517B1 patent drawingFigure 2

AI summary

The present disclosure relates to decoding and encoding methods as well as to decoding and encoding apparatuses and to a program. In particular, a partitioning type of a subject coding unit, CU, is determined. The partitioning type is either a single partitioning type, in which a subject coding unit is partitioned into a single CU including one luma coding block, CB, and two chroma CBs, or a separate partitioning type, in which a subject coding unit is partitioned into a separate luma CU including a luma CB only and a chroma CU including two chroma CBs only. Based on the partitioning type of the subject CU, the subject CU and an associated palette coding information are decoded from a bitstream (in case of the decoding method /apparatus) or inserted into the bitstream (in case of the encoding method /apparatus).