Rice parameter derivation for transform-skip mode used in lossless/lossy video coding
AssigneeQUALCOMM Incorporated
InventorsMarta Karczewicz, Hongtao Wang, Muhammed Zeyd Coban
Life of this patent
Estimating the term…
Abstract
Embodiments are directed to systems and methods of using a Rice code in video coding. In one embodiment includes a method of encoding or decoding video data, e.g., on a video encoder or decoder. In particular, embodiments are directed to determining a Rice parameter for encoding or decoding syntax elements related to coefficient levels.
Claims19
A method of encoding or decoding video data of a transform block, the method comprising:
- coding one or more of a significance coefficient flag, a sign coefficient flag, a level greater than 1 flag, and a parity level flag that specifies the parity of the transform coefficient level at scanning position n, in a first pass;
- coding one or more flags which specify whether the absolute value of the transform coefficient level at the scanning position n is greater than a specified value, in a second pass;
- coding, in a third pass, one or more syntax elements indicating a remaining coefficient level using a Rice-Golomb code, comprising:
- determining available residual coefficients neighboring a current position in a transform unit of video data;
- determining a sum of at least two of the available residual coefficients;
- normalizing the sum based on the number of available residual coefficients;
- determining an offset based on a base level value;
- determining a rice parameter based on the sum and the offset;
- and
- coding a syntax element indicative of a residual coefficient in the transform block at the current position based on the determined rice parameter.
An apparatus for encoding or decoding video data of a transform block, the apparatus comprising:
- a memory configured to store a transform unit of a picture of video data;
- a video processor configured to:
- code one or more of a significance coefficient flag, a sign coefficient flag, a level greater than 1 flag, and a parity level flag that specifies the parity of the transform coefficient level at scanning position n, in a first pass;
- code one or more flags which specify whether the absolute value of the transform coefficient level at the scanning position n is greater than a specified value, in a second pass;
- code, in a third pass, one or more syntax elements indicating a remaining coefficient level using a Rice-Golomb code, wherein to code the one or more syntax elements in the third pass, the processor is further configured to:
- determine available residual coefficients neighboring a current position in a transform unit of video data;
- determine a sum of at least two of the available residual coefficients;
- normalize the sum based on the number of available residual coefficients;
- determine an offset based on a base level value;
- determine a rice parameter based on the sum and the offset;
- and
- code a syntax element indicative of a residual coefficient in the transform block at the current position based on the determined rice parameter.
An apparatus for encoding or decoding video data of a transform block, the apparatus comprising:
- a memory configured to store a transform unit of a picture of video data;
- a video processor configured to:
- code one or more of a significance coefficient flag, a sign coefficient flag, a level greater than 1 flag, and a parity level flag that specifies the parity of the transform coefficient level at scanning position n, in a first pass;
- code one or more flags which specify whether the absolute value of the transform coefficient level at the scanning position n is greater than a specified value, in a second pass;
- code, in a third pass, one or more syntax elements indicating a remaining coefficient level using a Rice-Golomb code, wherein to code the one or more syntax elements in the third pass, the processor is further configured to:
- determine available residual coefficients neighboring a current position in a transform unit of video data;
- determine a sum of at least two of the available residual coefficients;
- determine a base level based on whether one or both of the first or second pass is skipped for the specific coefficient based on whether a limit to the number of context coded bins for the transform block has been reached before the first or second encoding pass;
- determine an offset based on the base level value;
- determine a rice parameter based on the sum and the offset;
- and
- code a syntax element indicative of a residual coefficient in the transform block at the current position based on the determined rice parameter.
Dependencies are inferred from the claim text.