IP Library Granted Patent US 11,095,896
Granted Patent B2
US 11,095,896 · App. 16/155,344 · Granted Aug 17, 2021

Video coding with content adaptive spatially varying quantization

Inventors: Dmytro Rusanovskyy (San Diego, CA); Adarsh Krishnan Ramasubramonian (Irvine, CA)
Assignee: Qualcomm Incorporated
H04N19/126H04N19/14H04N19/176H04N19/186H04N19/197H04N19/198H04N19/36H04N19/463
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,095,896
App. No.
16/155,344
Granted
Aug 17, 2021
Kind
B2
Abstract

A video encoder may be configured to apply a multi-stage quantization process, where residuals are first quantized using an effective quantization parameter derived from the statistics of the samples of the block. The residual is then further quantized using a base quantization parameter that is uniform across a picture. A video decoder may be configured to decode the video data using the base quantization parameter. The video decoder may further be configured to estimate the effective quantization parameter from the statistics of the decoded samples of the block. The video decoder may then use the estimated effective quantization parameter for use in determining parameters for other coding tools, including filters.

Claims (80)

1. A method of decoding video data, the method comprising:

receiving an encoded block of the video data, the encoded block of the video data having been encoded using an effective quantization parameter and a base quantization parameter, wherein the effective quantization parameter is a function of a quantization parameter offset added to the base quantization parameter;

determining the base quantization parameter used to encode the encoded block of the video data;

decoding the encoded block of the video data using the base quantization parameter to create a decoded block of video data;

determining an estimate of the quantization parameter offset for the decoded block of the video data;

adding the estimate of the quantization parameter offset to the base quantization parameter to create an estimate of the effective quantization parameter; and

performing one or more filtering operations on the decoded block of video data as a function of the estimate of the effective quantization parameter.

2. The method of claim 1 , wherein the base quantization parameter is the same for all of the blocks of the video data.

3. The method of claim 1 , wherein sample values of the video data are defined by a high dynamic range video data color format.

4. The method of claim 1 , wherein determining the base quantization parameter comprises:

receiving a base quantization parameter syntax element in an encoded video bitstream, a value of the base quantization paymaster syntax element indicating the base quantization parameter.

5. The method of claim 1 , wherein decoding the encoded block of the video data comprises:

entropy decoding the encoded block of the video data to determine quantized transform coefficients;

inverse quantizing the quantized transform coefficient using the base quantization parameter to create transform coefficients;

inverse transforming the transform coefficients to create residual values; and

performing a prediction process on the residual values to create the decoded block of the video data.

6. The method of claim 1 , wherein determining the estimate of the quantization parameter offset for the decoded block of the video data comprises:

determining an average of sample values of the decoded block of the video data; and

determining the estimate of the quantization parameter offset for the decoded block of the video data using the average of the sample values of the decoded block of the video data.

7. The method of claim 6 , wherein determining the estimate of the quantization parameter offset comprises:

determining the estimate of the quantization parameter offset from a lookup table, wherein the average of the sample values is an input to the lookup table.

8. The method of claim 7 , further comprising:

determining the lookup table from a plurality of lookup tables.

9. The method of claim 1 , wherein performing the one or more filtering operations on the decoded block of the video data comprises:

applying a deblocking filter to the decoded block of video data using the effective quantization parameter.

10. The method of claim 1 , wherein performing the one or more filtering operations on the decoded block of the video data comprises:

applying a bilateral filter to the decoded block of video data using the effective quantization parameter.

11. The method of claim 1 , further comprising:

determining the estimate of the quantization parameter offset for the decoded block of the video data based on sample values of the decoded block of the video data.

12. The method of claim 11 , further comprising:

determining the estimate of the quantization parameter offset using a lookup table based on the sample values of the decoded block of the video data.

13. An apparatus configured to decode video data, the apparatus comprising:

a memory configured to store an encoded block of the video data; and

one or more processors in communication with the memory, the one or more processors configured to:

receive the encoded block of the video data, the encoded block of the video data having been encoded using an effective quantization parameter and a base quantization parameter, wherein the effective quantization parameter is a function of a quantization parameter offset added to the base quantization parameter;

determine the base quantization parameter used to encode the encoded block of the video data;

decode the encoded block of the video data using the base quantization parameter to create a decoded block of video data;

determine an estimate of the quantization parameter offset for the decoded block of the video data;

add the estimate of the quantization parameter offset to the base quantization parameter to create an estimate of the effective quantization parameter; and

perform one or more filtering operations on the decoded block of video data as a function of the estimate of the effective quantization parameter.

14. The apparatus of claim 13 , wherein the base quantization parameter is the same for all of the blocks of the video data.

15. The apparatus of claim 13 , wherein sample values of the video data are defined by a high dynamic range video data color format.

16. The apparatus of claim 13 , wherein to determine the base quantization parameter, the one or more processors are further configured to:

receive a base quantization parameter syntax element in an encoded video bitstream, a value of the base quantization paymaster syntax element indicating the base quantization parameter.

17. The apparatus of claim 13 , wherein to decode the block of the video data, the one or more processors are further configured to:

entropy decode the encoded block of the video data to determine quantized transform coefficients;

inverse quantize the quantized transform coefficient using the base quantization parameter to create transform coefficients;

inverse transform the transform coefficients to create residual values; and

perform a prediction process on the residual values to create the decoded block of the video data.

18. The apparatus of claim 13 , wherein to determine the estimate of the quantization parameter offset for the decoded block of the video data, the one or more processors are further configured to:

determine an average of sample values of the decoded block of the video data; and

determine the estimate of the quantization parameter offset for the decoded block of the video data using the average of the sample values of the decoded block of the video data.

19. The apparatus of claim 18 , wherein to determine the estimate of the quantization parameter offset, the one or more processors are further configured to:

determine the estimate of the quantization parameter offset from a lookup table, wherein the average of the sample values is an input to the lookup table.

20. The apparatus of claim 18 , wherein the one or more processors are further configured to:

determine the lookup table from a plurality of lookup tables.

21. The apparatus of claim 13 , wherein to perform the one or more filtering operations on the decoded block of the video data, the one or more processors are further configured to:

apply a deblocking filter to the decoded block of video data using the effective quantization parameter.

22. The apparatus of claim 13 , wherein to perform the one or more filtering operations on the decoded block of the video data, the one or more processors are further configured to:

apply a bilateral filter to the decoded block of video data using the effective quantization parameter.

23. The apparatus of claim 13 , wherein the one or more processors are configured to determine the estimate of the quantization parameter offset for the decoded block of the video data based on sample values of the decoded block of the video data.

24. The apparatus of claim 23 , wherein the one or more processors are configured to determine the estimate of the quantization parameter offset using a lookup table stored in the memory.

25. An apparatus configured to decode video data, the apparatus comprising:

means for receiving an encoded block of the video data, the encoded block of video the data having been encoded using an effective quantization parameter and a base quantization parameter, wherein the effective quantization parameter is a function of a quantization parameter offset added to the base quantization parameter;

means for determining the base quantization parameter used to encode the encoded block of the video data;

means for decoding the encoded block of the video data using the base quantization parameter to create a decoded block of video data;

means for determining an estimate of the quantization parameter offset for the decoded block of the video data;

means for adding the estimate of the quantization parameter offset to the base quantization parameter to create an estimate of the effective quantization parameter; and

means for performing one or more filtering operations on the decoded block of video data as a function of the estimate of the effective quantization parameter.

26. The apparatus of claim 25 , wherein the one or more processors are configured to determine the estimate of the quantization parameter offset for the decoded block of the video data based on sample values of the decoded block of the video data.

27. The apparatus of claim 26 , wherein the one or more processors are configured to determine the estimate of the quantization parameter offset using a lookup table stored in the memory, based on the sample values of the decoded block of the video data.

28. A non-transitory computer-readable storage medium storing instructions that, when executed, cause one or more processors to:

receive an encoded block of video data, the encoded block of the video data having been encoded using an effective quantization parameter and a base quantization parameter, wherein the effective quantization parameter is a function of a quantization parameter offset added to the base quantization parameter;

determine the base quantization parameter used to encode the encoded block of the video data;

decode the encoded block of the video data using the base quantization parameter to create a decoded block of video data;

determine an estimate of the quantization parameter offset for the decoded block of the video data;

add the estimate of the quantization parameter offset to the base quantization parameter to create an estimate of the effective quantization parameter; and

perform one or more filtering operations on the decoded block of video data as a function of the estimate of the effective quantization parameter.

29. The non-transitory computer-readable storage medium of claim 28 , wherein the one or more processors are configured to determine the estimate of the quantization parameter offset for the decoded block of the video data based on sample values of the decoded block of the video data.

30. The non-transitory computer-readable storage medium of claim 29 , wherein the one or more processors are configured to determine the estimate of the quantization parameter offset using a lookup table based on the sample values of the decoded block of the video data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2018
From: RUSANOVSKYY, DMYTRO; RAMASUBRAMONIAN, ADARSH KRISHNAN
To: QUALCOMM INCORPORATED
Reel/Frame 047870/0821 →
Continuity (2)
Provisional Application 62571732 · Oct 12, 2017
Related Publication 20190116361A1 · Apr 18, 2019
Cited By (2)
US 12,395,640 US 12,425,595