IP Library › Granted Patent US 11,388,443
Granted Patent B2
US 11,388,443 · App. 17/024,458 · Granted Jul 12, 2022

Harmonization of deblocking conditions in video coding

Inventors: Bappaditya Ray (La Jolla, CA); Geert Van der Auwera (Del Mar, CA); Marta Karczewicz (San Diego, CA)
Assignee: Qualcomm Incorporated
H04N19/82H04N19/176H04N19/186
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,388,443
App. No.
17/024,458
Granted
Jul 12, 2022
Kind
B2
Abstract

A video coder determines whether a coding mode of a first block of the video data is in a set of applicable coding modes. The set of applicable coding modes includes at least one of a block-based delta pulse code modulation mode, a transform skip mode, or a palette mode. The video coder determines whether a coding mode of a second block of the video data is in the set of applicable coding modes, wherein the second block is adjacent to the first block. The video coder determines that a deblocking filter is disabled for a color component of at least one of the first block or the second block based on at least one of: the coding mode of the first block being in the set of applicable coding modes or the coding mode of the second block being in the set of applicable coding modes.

Claims (93)

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

determining a value of a first variable that indicates whether a coding mode of a first block of the video data is in a set of applicable coding modes, wherein determining the value of the first variable comprises determining that the value of the first variable indicates that the coding mode of the first block is not in the set of applicable coding modes based on a determination that the coding mode of the first block is not a block-based delta pulse code modulation (BDPCM) mode, a determination that the coding mode of the first block is not a transform skip mode, and a determination that the coding mode of the first block is not a palette mode;

determining a value of a second variable that indicates whether a coding mode of a second block of the video data is in the set of applicable coding modes, wherein the second block is adjacent to the first block and determining the value of the second variable comprises determining that the value of the second variable indicates that the coding mode of the second block is not in the set of applicable coding modes based on a determination that the coding mode of the second block is not the BDPCM mode, a determination that the coding mode of the second block is not the transform skip mode, and a determination that the coding mode of the second block is not the palette mode; and

determining that a deblocking filter is disabled for a color component of at least one of the first block or the second block based on at least one of: the value of the first variable indicating that the coding mode of the first block is in the set of applicable coding modes or the value of the second variable indicating that the coding mode of the second block is in the set of applicable coding modes.

2. The method of claim 1 , further comprising:

determining a value of a third variable that indicates whether a coding mode of a third block of the video data is in the set of applicable coding modes, wherein determining the value of the third variable comprises determining that the value of the third variable indicates that the coding mode of the third block is in the set of applicable coding modes based on a determination that the coding mode of the third block is one of a block-based delta pulse code modulation (BDPCM) mode, a transform skip mode, or a palette mode;

determining a value of a fourth variable that indicates whether a coding mode of a fourth block of the video data is in the set of applicable coding modes, wherein the fourth block is adjacent to the third block and determining the value of the fourth variable comprises determining that the value of the fourth variable indicates that the coding mode of the fourth block based on a determination that the coding mode of the fourth block is one of the BDPCM mode, the transform skip mode, or the palette mode; and

determining that the deblocking filter is disabled for the color component of the third block and the fourth block based on either the value of the third variable indicating that the coding mode of the third block is in the set of applicable coding modes or the value of the fourth variable indicating that the coding mode of the fourth block is in the set of applicable coding modes.

3. The method of claim 1 , further comprising:

determining a value of a third variable that indicates whether a coding mode of a third block of the video data is in the set of applicable coding modes, wherein determining the value of the third variable comprises determining that the value of the third variable indicates that the coding mode of the third block is in the set of applicable coding modes based on a determination that the coding mode of the third block is one of a block-based delta pulse code modulation (BDPCM) mode, a transform skip mode, or a palette mode;

determining a value of a fourth variable that indicates whether a coding mode of a fourth block of the video data is in the set of applicable coding modes, wherein the fourth block is adjacent to the third block and determining the value of the fourth variable comprises determining that the value of the fourth variable indicates that the coding mode of the fourth block based on a determination that the coding mode of the fourth block is one of the BDPCM mode, the transform skip mode, or the palette mode; and

determining that the deblocking filter is disabled for the color component of the third block and the fourth block based on both the value of the third variable indicating that the coding mode of the third block is in the set of applicable coding modes and the value of the fourth variable indicating that the coding mode of the fourth block is in the set of applicable coding modes.

4. The method of claim 1 , further comprising:

determining a value of a third variable that indicates whether a coding mode of a third block of the video data is in the set of applicable coding modes, wherein determining the value of the third variable comprises determining that the value of the third variable indicates that the coding mode of the third block is in the set of applicable coding modes based on a determination that the coding mode of the first third block is one of a block-based delta pulse code modulation (BDPCM) mode, a transform skip mode, or a palette mode;

determining a value of a fourth variable that indicates whether a coding mode of a fourth block of the video data is in the set of applicable coding modes, wherein the fourth block is adjacent to the third block and determining the value of the fourth variable comprises determining that the value of the fourth variable indicates that the coding mode of the fourth block based on a determination that the coding mode of the fourth block is one of the BDPCM mode, the transform skip mode, or the palette mode; and

determining that the deblocking filter is disabled for the color component of the third block based on the value of the third variable indicating that the coding mode of the third block is in the set of applicable coding mode and determining that the value of the fourth variable indicates that the deblocking filter is disabled for the fourth block based on the value of the fourth variable indicating that the coding mode of the fourth block is in the set of applicable coding modes.

5. The method of claim 1 , wherein:

the color component is a luma component,

the coding mode of the first block is a coding mode for the luma component of the first block,

the coding mode of the second block is a coding mode for the luma component of the second block,

the method further comprises:

determining whether a coding mode of a chroma component of the first block is in the set of applicable coding modes;

determining whether a coding mode of the chroma component of the second block is in the set of applicable coding modes; and

determining that the deblocking filter is disabled for at least one of the chroma component of the first block and the chroma component of the second block based on at least one of: the coding mode of the chroma component of the first block being in the set of applicable coding modes and the coding mode of the chroma component of the second block being in the set of applicable coding modes.

6. The method of claim 1 , wherein the set of applicable coding modes includes an intra coded transform skip mode and not an inter coded transform skip mode.

7. The method of claim 1 , wherein the set of applicable coding modes includes one or more coding modes that do not use transform skip.

8. The method of claim 7 , wherein the one or more coding modes that do not use transform skip include an intra block copy mode.

9. The method of claim 1 , further comprising determining not to disable a step of determining that the deblocking filter is disabled for the color component of at least one of the first block or the second block based on one or more of:

a syntax element in a sequence parameter set, a picture parameter set, or a slice,

a quantization parameter of the slice, the picture parameter set, or the sequence parameter set,

a slice type, or

a block size of the first block or the second block.

10. The method of claim 1 , wherein:

coding comprises decoding, and

the method further comprises:

obtaining a bitstream that includes an encoded representation of the first block and an encoded representation of the second block; and

reconstructing the first block and the second block based on the encoded representation of the first block and the encoded representation of the second block.

11. The method of claim 1 , wherein:

coding comprises encoding, and

the method further comprises including an encoded representation of the first block and an encoded representation of the second block in a bitstream that includes an encoded representation of the video data.

12. A device for coding video data, the device comprising:

a memory to store the video data; and

one or more processors implemented in circuitry, the one or more processors configured to:

determine a value of a first variable that indicates whether a coding mode of a first block of the video data is in a set of applicable coding modes, wherein determining the value of the first variable comprises determining that the value of the first variable indicates that the coding mode of the first block is not in the set of applicable coding modes based on a determination that the coding mode of the first block is not a block-based delta pulse code modulation (BDPCM) mode, a determination that the coding mode of the first block is not a transform skip mode, and a determination that the coding mode of the first block is not a palette mode;

determine a value of a second variable that indicates whether a coding mode of a second block of the video data is in the set of applicable coding modes, wherein the second block is adjacent to the first block and determining the value of the second variable comprises determining that the value of the second variable indicates that the coding mode of the second block is not in the set of applicable coding modes based on a determination that the coding mode of the second block is not the BDPCM mode, a determination that the coding mode of the second block is not the transform skip mode, and a determination that the coding mode of the second block is not the palette mode; and

determine that a deblocking filter is disabled for a color component of at least one of the first block or the second block based on at least one of: the value of the first variable indicating that the coding mode of the first block is in the set of applicable coding modes or the value of the second variable indicating that the coding mode of the second block is in the set of applicable coding modes.

13. The device of claim 12 , wherein the one or more processors are further configured to:

determine a value of a third variable that indicates whether a coding mode of a third block of the video data is in the set of applicable coding modes, wherein determining the value of the third variable comprises determining that the value of the third variable indicates that the coding mode of the third block is in the set of applicable coding modes based on a determination that the coding mode of the third block is one of a block-based delta pulse code modulation (BDPCM) mode, a transform skip mode, or a palette mode;

determine a value of a fourth variable that indicates whether a coding mode of a fourth block of the video data is in the set of applicable coding modes, wherein the fourth block is adjacent to the third block and determining the value of the fourth variable comprises determining that the value of the fourth variable indicates that the coding mode of the fourth block based on a determination that the coding mode of the fourth block is one of the BDPCM mode, the transform skip mode, or the palette mode; and

determine that the deblocking filter is disabled for the color component of the third block and the fourth block based on either the value of the third variable indicating that the coding mode of the third block is in the set of applicable coding modes or the value of the fourth variable indicating that the coding mode of the fourth block is in the set of applicable coding modes.

14. The device of claim 12 , wherein the one or more processors are further configured to:

determine a value of a third variable that indicates whether a coding mode of a third block of the video data is in the set of applicable coding modes, wherein determining the value of the third variable comprises determining that the value of the third variable indicates that the coding mode of the third block is in the set of applicable coding modes based on a determination that the coding mode of the third block is one of a block-based delta pulse code modulation (BDPCM) mode, a transform skip mode, or a palette mode;

determine a value of a fourth variable that indicates whether a coding mode of a fourth block of the video data is in the set of applicable coding modes, wherein the fourth block is adjacent to the third block and determining the value of the fourth variable comprises determining that the value of the fourth variable indicates that the coding mode of the fourth block based on a determination that the coding mode of the fourth block is one of the BDPCM mode, the transform skip mode, or the palette mode; and

determine that the deblocking filter is disabled for the color component of the third block and the fourth block based on both the value of the third variable indicating that the coding mode of the third block is in the set of applicable coding modes and the value of the fourth variable indicating that the coding mode of the fourth block is in the set of applicable coding modes.

15. The device of claim 12 , wherein the one or more processors are further configured to:

determine a value of a third variable that indicates whether a coding mode of a third block of the video data is in the set of applicable coding modes, wherein determining the value of the third variable comprises determining that the value of the third variable indicates that the coding mode of the third block is in the set of applicable coding modes based on a determination that the coding mode of the third block is one of a block-based delta pulse code modulation (BDPCM) mode, a transform skip mode, or a palette mode;

determine a value of a fourth variable that indicates whether a coding mode of a fourth block of the video data is in the set of applicable coding modes, wherein the fourth block is adjacent to the third block and determining the value of the fourth variable comprises determining that the value of the fourth variable indicates that the coding mode of the fourth block based on a determination that the coding mode of the fourth block is one of the BDPCM mode, the transform skip mode, or the palette mode; and

determine that the deblocking filter is disabled for the color component of the first third block based on the value of the third variable indicating that the coding mode of the first third block being in the set of applicable coding mode and determining that the value of the fourth variable indicates that the deblocking filter is disabled for the fourth block based on the value of the fourth variable indicating that the coding mode of the fourth block is in the set of applicable coding modes.

16. The device of claim 12 , wherein:

the color component is a luma component,

the coding mode of the first block is a coding mode for the luma component of the first block,

the coding mode of the second block is a coding mode for the luma component of the second block,

the one or more processors are further configured to:

determine whether a coding mode of a chroma component of the first block is in the set of applicable coding modes;

determine whether a coding mode of the chroma component of the second block is in the set of applicable coding modes; and

determine that the deblocking filter is disabled for at least one of the chroma component of the first block and the chroma component of the second block based on at least one of: the coding mode of the chroma component of the first block being in the set of applicable coding modes and the coding mode of the chroma component of the second block being in the set of applicable coding modes.

17. The device of claim 12 , wherein the set of applicable coding modes includes an intra coded transform skip mode and not an inter coded transform skip mode.

18. The device of claim 12 , wherein the set of applicable coding modes includes one or more coding modes that do not use transform skip.

19. The device of claim 18 , wherein the one or more coding modes that do not use transform skip include an intra block copy mode.

20. The device of claim 12 , wherein the one or more processors are further configured to determine whether to disable a step of determining that the deblocking filter is disabled for the color component of at least one of the first block or the second block based on one or more of:

a syntax element in a sequence parameter set, a picture parameter set, or a slice,

a quantization parameter of the slice, the picture parameter set, or the sequence parameter set,

a slice type, or

a block size of the first block or the second block.

21. The device of claim 12 , wherein:

the device comprises a video decoder, and

the one or more processors are configured to:

obtain a bitstream that includes an encoded representation of the first block and an encoded representation of the second block; and

reconstruct the first block and the second block based on the encoded representation of the first block and the encoded representation of the second block.

22. The device of claim 12 , wherein:

the device comprises a video encoder, and

the one or more processors are configured to include an encoded representation of the first block and an encoded representation of the second block in a bitstream that includes an encoded representation of the video data.

23. The device of claim 12 , wherein the circuitry comprises an integrated circuit.

24. The device of claim 12 , further comprising a display configured to display decoded video data.

25. The device of claim 12 , wherein the device comprises one or more of a camera, a computer, a mobile device, a broadcast receiver device, or a set-top box.

26. A device for coding video data, the device comprising:

means for determining a value of a first variable that indicates whether a coding mode of a first block of the video data is in a set of applicable coding modes, wherein determining the value of the first variable comprises determining that the value of the first variable indicates that the coding mode of the first block is not in the set of applicable coding modes based on a determination that the coding mode of the first block is a block-based delta pulse code modulation (BDPCM) mode, a determination that the coding mode of the first block is not a transform skip mode, and a determination that the coding mode of the first block is not a palette mode;

means for determining a value of a second variable that indicates whether a coding mode of a second block of the video data is in the set of applicable coding modes, wherein the second block is adjacent to the first block and determining the value of the second variable comprises determining that the value of the second variable indicates that the coding mode of the second block is not in the set of applicable coding modes based on a determination that the coding mode of the second block is not the BDPCM mode, a determination that the coding mode of the second block is not the transform skip mode, and a determination that the coding mode of the second block is not the palette mode; and

means for determining that a deblocking filter is disabled for a color component of at least one of the first block or the second block based on at least one of: the value of the first variable indicating that the coding mode of the first block is in the set of applicable coding modes or the value of the second variable indicating that the coding mode of the second block is in the set of applicable coding modes.

27. A non-transitory computer-readable storage medium having stored thereon instructions that, when executed, cause one or more processors to:

determine a value of a first variable that indicates whether a coding mode of a first block of the video data is in a set of applicable coding modes, wherein determining the value of the first variable comprises determining that the value of the first variable indicates that the coding mode of the first block is not in the set of applicable coding modes based on a determination that the coding mode of the first block is not a block-based delta pulse code modulation (BDPCM) mode, a determination that the coding mode of the first block is not a transform skip mode, and a determination that the coding mode of the first block is not a palette mode;

determine a value of a second variable that indicates whether a coding mode of a second block of the video data is in the set of applicable coding modes, wherein the second block is adjacent to the first block and determining the value of the second variable comprises determining that the value of the second variable indicates that the coding mode of the second block is not in the set of applicable coding modes based on a determination that the coding mode of the second block is not the BDPCM mode, a determination that the coding mode of the second block is not the transform skip mode, and a determination that the coding mode of the second block is not the palette mode; and

determine that a deblocking filter is disabled for a color component of at least one of the first block or the second block based on at least one of: the value of the first variable indicating that the coding mode of the first block is in the set of applicable coding modes or the value of the second variable indicating that the coding mode of the second block is in the set of applicable coding modes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2021
From: RAY, BAPPADITYA; VAN DER AUWERA, GEERT; KARCZEWICZ, MARTA
To: QUALCOMM INCORPORATED
Reel/Frame 055648/0153 →
Continuity (2)
Provisional Application 62902122 · Sep 18, 2019
Related Publication 20210084341A1 · Mar 18, 2021