IP Library › Granted Patent US 11,375,187
Granted Patent B2
US 11,375,187 · App. 17/203,261 · Granted Jun 28, 2022

Apparatus and method for filtering in video coding with look-up table selected based on bitstream information

Inventors: Sergey Yurievich Ikonin (Moscow, RU); Victor Alexeevich Stepin (Moscow, RU); Alexander Alexandrovich Karabutov (Moscow, RU); Elena Alexandrovna Alshina (Munich, DE); Roman Igorevich Chernyak (Moscow, RU); Jianle Chen (San Diego, CA); Dmitry Yurievich Kuryshev (Moscow, RU)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
H04N19/117H04N19/176H04N19/184H04N19/70H04N19/82
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,375,187
App. No.
17/203,261
Granted
Jun 28, 2022
Kind
B2
Abstract

A filter is configured for processing a reconstructed frame for generation of a filtered reconstructed frame, and wherein the reconstructed frame comprises a plurality of pixels. The filter includes one or more processor configured to scan a current pixel of the reconstructed block and its neighboring pixels of the current pixel according to a predefined scan template, obtain spectrum components by performing transform for the current pixel and its neighboring pixels, obtain filtered spectrum components based on a filtering parameter and the spectrum components, obtain filtered pixels by performing inverse transform for the filtered spectrum components, and generate a filtered reconstructed block based on the filtered pixels.

Claims (46)

1. An encoding device, comprising:

a processor; and

a memory coupled to the processor and configured to store instructions that, when executed by the processor, cause the encoding device to be configured to:

determine whether a transform domain filter is enabled according to one or more conditions;

generate a bitstream including a syntax element that indicates whether the transform domain filter is enabled; and

derive a table index of a look-up table (LUT) by clipping a first operation on an adjusted index when the transform domain filter is disabled, wherein the adjusted index is based on a base index and an index offset.

2. The encoding device of claim 1 , wherein the syntax element is based on at least one of a sequence parameter set (SPS) level, a picture parameter set (PPS) level, a slice header, coding tree unit (CTU) syntax, or coding unit (CU) syntax.

3. The encoding device of claim 1 , wherein the bitstream further includes information for adjusting a table selection process of the transform domain filter for a current block or includes the index offset.

4. The encoding device of claim 3 , wherein an adjusted table index is based on a derived base index and the index offset.

5. The encoding device of claim 4 , wherein the adjusted table index is based on the derived base index and the index offset when the syntax element indicates the transform domain filter is disabled.

6. The encoding device of claim 4 , wherein the adjusted table index indicates a first LUT from a set of LUTs or the adjusted table index determines, from the set of LUTs, a second LUT used for the transform domain filter of the current block.

7. The encoding device of claim 3 , wherein the index offset indicates a first LUT from a set of LUTs or the index offset determines, from the set of LUTs, a second LUT used for the transform domain filter of the current block.

8. The encoding device of claim 1 , wherein when the transform domain filter is enabled, the instructions further cause the encoding device to be configured to:

derive a second table index by clipping a second operation on a first shifted quantization parameter (QP) value when the one or more conditions are met, wherein the first shifted QP value is based on a block QP value or a slice QP value, otherwise; and

derive the second table index by clipping a third operation on a second shifted QP value when the one or more conditions are not met, wherein the second shifted QP value is based on the block QP value or the slice QP value.

9. The encoding device of claim 1 , wherein the instructions further cause the encoding device to be configured to derive the base index by clipping a second operation on a first shifted quantization parameter (QP) value or a second shifted QP value, and wherein the first shifted QP value or the second shifted QP value is based on a block QP value or a slice QP value.

10. The encoding device of claim 1 , wherein when the transform domain filter is disabled, the instructions further cause the encoding device to be configured to:

derive the table index of the LUT by clipping the first operation on the adjusted index when the one or more conditions are met, wherein the adjusted index is based on a first shifted quantization parameter (QP) value and the index offset, and wherein the first shifted QP value is based on a block QP value or a slice QP value; and

derive the table index of the LUT by clipping a second operation on the adjusted index when the one or more conditions are not met, wherein the adjusted index is based on a second shifted QP value and the index offset, and wherein the second shifted QP value is based on the block QP value or the slice QP value.

11. A decoding device, comprising:

a processor; and

a memory coupled to the processor and configured to store instructions that, when executed by the processor, cause the decoding device to be configured to:

parse a syntax element of a bitstream to determine whether a transform domain filter is enabled according to one or more conditions, wherein the syntax element indicates whether the transform domain filter is enabled;

enable the transform domain filter for a current block when the transform domain filter is enabled;

disable the transform domain filter for the current block when the transform domain filter is disabled; and

derive a table index of a look-up-table (LUT) by clipping a first operation on an adjusted index when the transform domain filter is disabled, wherein the adjusted index is based on a base index and an index offset.

12. The decoding device of claim 11 , wherein the syntax element is from any one of a sequence parameter set (SPS) level of the bitstream, a picture parameter set (PPS) level of the bitstream, a slice header, coding tree unit (CTU) syntax, or coding unit (CU) syntax.

13. The decoding device of claim 11 , wherein the instructions further cause the decoding device to be configured to parse the bitstream for information for adjusting a table selection process of the transform domain filter for the current block or parse the bitstream for the index offset.

14. The decoding device of claim 13 , wherein an adjusted table index is based on a derived base index and the index offset.

15. The decoding device of claim 14 , wherein the adjusted table index is based on the derived base index and the index offset when the syntax element indicates the transform domain filter is disabled.

16. The decoding device of claim 14 , wherein the adjusted table index indicates a first LUT from a set of LUTs, or the adjusted table index determines, from the set of LUTs, a second LUT used for the transform domain filter of the current block.

17. The decoding device of claim 13 , wherein the index offset indicates a first LUT from a set of LUTs or the index offset determines, from the set of LUTs, a second LUT used for the transform domain filter of the current block.

18. The decoding device of claim 11 , wherein when the syntax element indicates the transform domain filter is enabled or the syntax element is a second value, the instructions further cause the decoding device to be configured to:

derive a second table index by clipping a second operation on a first shifted quantization parameter (QP) value when the one or more conditions are met, wherein the first shifted QP value is based on a block QP value or a slice QP value; and

derive the second table index by clipping a third operation on a second shifted QP value when the one or more conditions are not met, wherein the second shifted QP value is based on the block QP value or the slice QP value.

19. The decoding device of claim 11 , wherein the instructions further cause the decoding device to be configured to derive the base index by clipping a second operation on a first shifted quantization parameter (QP) value or a second shifted QP value, and wherein the first shifted QP value or the second shifted QP value is based on a block QP value or a slice QP value.

20. The decoding device of claim 11 , wherein when the transform domain filter is enabled or the syntax element is a first value, the instructions further cause the decoding device to be configured to:

derive the table index of the LUT by clipping the first operation on the adjusted index when the one or more conditions are met, wherein the adjusted index is based on a first shifted quantization parameter (QP) value and the index offset, and wherein the first shifted QP value is based on a block QP value or a slice QP value; and

derive the table index of the LUT by clipping a second operation on the adjusted index when the one or more conditions are not met, wherein the adjusted index is based on a second shifted QP value and the index offset, and wherein the second shifted QP value is based on the block QP value or the slice QP value.

21. A computer program product comprising instructions that are stored on a non-transitory computer-readable medium and that, when executed by a processor, cause an apparatus to:

parse a syntax element from a bitstream to determine whether a transform domain filter is enabled, wherein the syntax element indicates whether the transform domain filter is enabled;

enable the transform domain filter for a current block when the transform domain filter is enabled;

disable the transform domain filter for the current block when the transform domain filter is disabled; and

derive a table index of a look-up-table (LUT) by clipping a first operation on an adjusted index when the transform domain filter is disabled, wherein the adjusted index is based on a base index and an index offset.

22. The computer program product of claim 21 , wherein the syntax element is from any one of a sequence parameter set (SPS) level of the bitstream, a picture parameter set (PPS) level of the bitstream, a slice header, coding tree unit (CTU) syntax, or coding unit (CU) syntax.

23. The computer program product of claim 21 , wherein the instructions that when executed by the processor further cause the apparatus to parse the bitstream for information for adjusting a table selection process of the transform domain filter for the current block or parse the bitstream for the index offset.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2022
From: IKONIN, SERGEY YURIEVICH; STEPIN, VICTOR ALEXEEVICH; KARABUTOV, ALEXANDER ALEXANDROVICH; ALSHINA, ELENA ALEXANDROVNA; CHERNYAK, ROMAN IGOREVICH; CHEN, JIANLE; KURYSHEV, DMITRY YURIEVICH
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 059087/0765 →
Priority Claims (1)
WO PCT/RU2019/050100 · Jul 2, 2019 · international
Continuity (7)
Continuation PCTRU2019050144 · Sep 10, 2019
Provisional Application 62793866 · Jan 17, 2019
Provisional Application 62757732 · Nov 8, 2018
Provisional Application 62735722 · Sep 24, 2018
Provisional Application 62731972 · Sep 17, 2018
Provisional Application 62731967 · Sep 16, 2018
Related Publication 20210211657A1 · Jul 8, 2021