Residual Coefficient Coding With Selective CABAC and Transform Skip
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding technologies face inefficiencies in encoding and decoding processes due to inappropriate use of orthogonal transforms, leading to increased code amounts, processing complexity, and circuit scale, particularly when different encoding schemes are applied to blocks with and without orthogonal transforms.
Innovation Solution
Implementing context adaptive coding and Golomb-Rice coding to manage the number of processes and encode/decode subblock flags and coefficient information flags, regardless of orthogonal transform application, to balance code amount and processing delay.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If different encoding schemes are used for blocks with and without orthogonal transforms, then coding accuracy can be optimized for each case, but device complexity and processing difficulty increase
Solution Approach 1:
The patent merges the encoding processes for blocks with and without orthogonal transforms by using a unified syntax structure. The same syntax elements are used for both transform types, and the decoding process handles both cases through a single flow, reducing device complexity while maintaining coding accuracy through context-adaptive processing.
Solution Approach 2:
The patent creates a universal encoding framework where the same syntax elements and processing steps serve multiple functions for different transform types. The CABAC process and coefficient encoding mechanisms are designed to handle both orthogonal transform and skip transform cases, reducing the need for separate specialized circuits.
2Loss of substance
If context adaptive coding processes are increased to improve compression, then code amount reduction improves, but processing delay increases
Solution Approach 1:
The patent applies context adaptive binary arithmetic coding (CABAC) selectively based on the transform type. For skip transforms, the patent limits the number of CABAC processes to an allowable range, applying partial action only where beneficial. This prevents excessive processing delay while still achieving code amount reduction in appropriate scenarios.
Solution Approach 2:
The patent changes the parameter of CABAC process count based on transform type. When orthogonal transform is applied, full CABAC processing is used. When skip transform is used, the patent limits CABAC processes to an allowable range, dynamically adjusting the processing level to balance compression efficiency with processing delay.
3Measurement precision
If separate syntax is used for first type and second type residual coding, then coding precision for each type is optimized, but device complexity increases
Solution Approach 1:
The patent merges the syntax structures for first type (orthogonal transform) and second type (skip transform) residual coding. The same syntax elements are used for both types, and the decoding process uses a unified flow to interpret these syntax elements, significantly reducing device complexity while maintaining the ability to precisely encode both transform types.
4Productivity
If CABAC encoding is applied to all coefficient information flags, then coding efficiency improves, but processing complexity and delay increase
Solution Approach 1:
The patent applies CABAC encoding partially based on transform type. For skip transforms, the patent limits CABAC application to an allowable range of processes rather than applying it to all coefficient information flags. This partial action reduces processing complexity and delay while maintaining coding efficiency where it provides the most benefit.
Data Source
AI summary
An encoder includes circuitry and memory. In both of a first type of residual coding where an orthogonal transform is applied to a current block and a second type of residual coding where the orthogonal transform is skipped, wherein when a number of CABAC processes is within an allowable range, the circuitry encodes coefficient information flags by CABAC, each of the coefficient information flags relating to a coefficient included in the current block; and otherwise, the circuitry skips the encoding of the coefficient information flags; and the circuitry encodes a remainder value of the coefficient with Golomb-Rice code when the coefficient information flags are encoded; and the circuitry encodes a value of the coefficient with the Golomb-Rice code when the plurality of coefficient information flags are not encoded, wherein the coefficient information flags are partially different between the first type of residual coding and the second type of residual coding.


