Multi-quantizer method for image and video compression
An example method of video coding includes receiving a video bitstream comprising a plurality of blocks and a plurality of quantized transform coefficients, and determining a quantized level for a quantized transform coefficient of the plurality of quantized transform coefficients. The method also includes selecting a quantizer from a set of three or more quantizers based on the quantized level, and deriving, using the selected quantizer, a dequantized transform coefficient for a first quantized transform coefficient of the plurality of quantized transform coefficients. The method further includes reconstructing a first block using the dequantized transform value.
1 . A method of video decoding performed at a computing system having memory and one or more processors, the method comprising:
receiving a video bitstream comprising a plurality of blocks and a plurality of quantized transform coefficients;
determining a quantized level for a quantized transform coefficient of the plurality of quantized transform coefficients;
selecting a quantizer from a set of three or more quantizers based on the quantized level using a state machine having more than four states, wherein the state machine includes four branches originating from each state, and wherein a transition direction to a next state is determined based on a mod function of the quantized level;
deriving, using the quantizer, a dequantized transform coefficient for a first quantized transform coefficient of the plurality of quantized transform coefficients; and
reconstructing a first block using the dequantized transform value.
2 . The method of claim 1 , wherein the quantizer is selected based on coded information.
3 . The method of claim 1 , wherein the quantizer is selected in accordance with a syntax element signaled in the video bitstream.
4 . The method of claim 1 , wherein reconstruction values for the quantized level corresponding to respective quantizers of the set of three or more quantizers are uniformly distributed.
5 . The method of claim 1 , wherein reconstruction values for the quantized level corresponding to respective quantizers of the set of three or more quantizers are non-uniformly distributed.
6 . The method of claim 5 , wherein one or more parameters for determining a reconstruction value are signaled in the video bitstream.
7 . The method of claim 1 , wherein the quantizer is selected based on a current state index.
8 . The method of claim 7 , wherein the current state index is expressed relative to a number of states in the state machine.
9 . The method of claim 1 , wherein the quantizer is selected based on a next state index.
10 . The method of claim 1 , wherein the quantizer is selected using a lookup table for the state machine.
11 . The method of claim 10 , wherein the lookup table is predefined.
12 . The method of claim 10 , wherein the lookup table is signaled in the video bitstream.
13 . The method of claim 1 , wherein a transition is determined based on which range of a plurality of ranges the quantized level is within.
14 . The method of claim 13 , wherein the plurality of ranges are based on a current state index.
15 . The method of claim 13 , wherein the transition is further based on a current state index.
16 . A method of video encoding performed at a computing system having memory and one or more processors, the method comprising:
receiving video data comprising a plurality of blocks;
determining a quantized level for a transform coefficient of a plurality of transform coefficients;
selecting a quantizer from a set of three or more quantizers based on the quantized level using a state machine having more than four states, wherein the state machine includes four branches originating from each state, and wherein a transition direction to a next state is determined based on a mod function of the quantized level;
deriving, using the selected quantizer, a quantized transform coefficient for a first transform coefficient of the plurality of transform coefficients; and
signaling the quantized transform coefficient in a video bitstream.
17 . A non-transitory computer-readable storage medium storing one or more instructions and a video bitstream that is generated by a video encoding method, the one or more instructions when executed by a processor, cause a computing system to perform the video encoding method, the video encoding method comprising:
receiving video data comprising a plurality of blocks;
determining a quantized level for a transform coefficient of a plurality of transform coefficients;
selecting a quantizer from a set of three or more quantizers based on the quantized level using a state machine having more than four states, wherein the state machine includes four branches originating from each state, and wherein a transition direction to a next state is determined based on a mod function of the quantized level;
deriving, using the selected quantizer, a quantized transform coefficient for a first transform coefficient of the plurality of transform coefficients; and
signaling the quantized transform coefficient in the video bitstream.
18 . The method of claim 1 , wherein the state machine is an 8-state machine.
19 . The method of claim 1 , wherein each quantizer of the set of three or more quantizers is assigned to a respective state transition branch to maximize a distance between reconstruction values joining at a same state.
20 . The method of claim 1 , wherein transform coefficients are reconstructed in a scanning order corresponding to an entropy decoding order.