IP Library Granted Patent US 12,316,874
Granted Patent B2
US 12,316,874 · App. 17/632,957 · Granted May 27, 2025

Secondary transform for video encoding and decoding

Inventors: Fabrice Leleannec (Betton, FR); Karam Naser (Mouazé, FR); Tangi Poirier (Thorigné-Fouillard, FR); Franck Galpin (Thorigne-Fouillard, FR)
Assignee: InterDigital CE Patent Holdings, SAS
H04N19/625H04N19/11H04N19/119H04N19/122H04N19/176
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 12,316,874
App. No.
17/632,957
Granted
May 27, 2025
Kind
B2
Abstract

A method and apparatus for encoding/decoding a picture use a secondary transform for video encoding and decoding in INTRA mode and more particularly use a secondary transform for the transform units of a coding unit in intra sub partition mode. Different signaling and selection variants are proposed according to various parameters of the coding unit and transform unit.

Claims (90)

1. A video encoding method comprising:

splitting an intra coding block into a plurality of transform blocks;

obtaining a decision whether a second transform is to be applied and a selection of an index of a selected transform in a list of transforms, the second transform being a Low-Frequency-Non-Separable Transform;

when the decision is that the second transform is to be applied:

performing a first transform on all of the plurality of transform blocks, wherein the first transform is a two-dimensional (2D) discrete cosine transform (DCT) 2 transform; and

performing the second transform on all of the plurality of transform blocks of the intra coding block using the selected transform; and

when the decision is that the second transform is not to be applied:

selecting a null value as the index for the second transform in the list of transforms; and

performing a first transform on all of the plurality of transform blocks, the first transform being selected in a set of transforms; and

encoding the intra coding block with signaling information representative of the index of the second transform.

2. The method of claim 1 , wherein the second transform is applied when:

the size of the intra coding block is greater than a threshold in at least one of width or height;

the size of the intra coding block is smaller than a threshold in width and height;

the size of a transform block of the plurality of transform blocks is greater than a threshold in at least one of width or height; or

the size of a transform block of the plurality of transform blocks is smaller than a threshold in width and height.

3. The method of claim 1 , wherein the plurality of transform blocks have different sizes, and wherein the second transform is performed based on a largest transform block of the plurality of transform blocks.

4. A video decoding method for a coding block that is split into a plurality of transform blocks, comprising:

obtaining information representative of an index of a second transform;

when the index is a null value:

performing an inverse of a first transform on all of the plurality of transform blocks of the coding block, the first transform being selected in a set of transforms; and

when the index is not a null value:

performing an inverse of the second transform on all of the plurality of transform blocks of the coding block using a second transform selected identified by the index in a list of second transforms, the second transform being a Low-Frequency-Non-Separable Transform; and

performing an inverse of a first transform on all of the plurality of transform blocks of the coding block, wherein the first transform is a two-dimensional (2D) discrete cosine transform (DCT) 2 transform; and

decoding the inversed transform blocks.

5. The method of claim 4 , wherein the second transform is to be applied when:

the size of the coding block is greater than a threshold in at least one of width or height;

the size of the coding block is smaller than a threshold in width and height;

the size of a transform block of the plurality of transform blocks is greater than a threshold in at least one of width or height; or

the size of a transform block of the plurality of transform blocks is smaller than a threshold in width and height.

6. The method of claim 4 , wherein the plurality of transform blocks have different sizes, and wherein the second transform is performed based on a largest transform block of the plurality of transform blocks.

7. A video encoding apparatus comprising a processor configured to:

split an intra coding block into a plurality of transform blocks;

obtain a decision whether a second transform is to be applied and a selection of an index of a selected transform in a list of transforms, the second transform being a Low-Frequency-Non-Separable Transform;

when the decision is that the second transform is to be applied:

perform a first transform on all of the plurality of transform blocks, the first transform being a two-dimensional (2D) discrete cosine transform (DCT) 2 transform; and

perform the second transform on all the transform blocks of the plurality of transform blocks of the intra coding block using the selected transform; and

when the decision is that the second transform is not to be applied:

selecting a null value as the index for the second transform in the list of transforms; and

performing a first transform on all of the plurality of transform blocks, the first transform being selected in a set of transforms; and

encode the intra coding block with signaling information representative of the index of the second transform.

8. A video decoding apparatus for a coding block that is split into a plurality of transform blocks, the apparatus comprising a processor configured to:

obtain information representative of an index of a second transform;

when the index is a null value:

perform an inverse of a first transform on all of the plurality of transform blocks of the coding block, the first transform being selected in a set of transforms; and

when the index is not a null value:

perform an inverse of the second transform on all the transform blocks of the plurality of transform blocks of the coding block using a second transform selected identified by the index in a list of second transforms, the second transform being a Low-Frequency-Non-Separable Transform; and

perform an inverse of a first transform on all of the plurality of transform blocks of the coding block, wherein the first transform is a two-dimensional (2D) discrete cosine transform (DCT) 2 transform; and

decode the inversed transform blocks.

9. A non-transitory computer-readable storage medium having stored instructions that, when executed by a processor, cause the processor to:

split an intra coding block into a plurality of transform blocks;

obtain a decision whether a second transform is to be applied and a selection of an index of a selected transform in a list of transforms, the second transform being a Low-Frequency-Non-Separable Transform;

when the decision is that the second transform is to be applied:

perform a first transform on all of the plurality of transform blocks, the first transform being a two-dimensional (2D) discrete cosine transform (DCT) 2 transform; and

perform the second transform on all the transform blocks of the plurality of transform blocks of the intra coding block using the selected transform; and

when the decision is that the second transform is not to be applied:

selecting a null value as the index for the second transform in the list of transforms; and

performing a first transform on all of the plurality of transform blocks, the first transform being selected in a set of transforms; and

encode the intra coding block with signaling information representative of the index of the second transform.

10. A non-transitory computer-readable storage medium having stored instructions that, when executed by a processor on a coding block that is split into a plurality of transform blocks, cause the processor to:

obtain information representative of an index of a second transform;

when the index is a null value:

perform an inverse of a first transform on all of the plurality of transform blocks of the coding block, the first transform being selected in a set of transforms; and

when the index is not a null value:

perform an inverse of the second transform on all the transform blocks of the plurality of transform blocks of the coding block using a second transform selected identified by the index in a list of second transforms, the second transform being a Low-Frequency-Non-Separable Transform; and

perform an inverse of a first transform on all of the plurality of transform blocks of the coding block, wherein the first transform is a two-dimensional (2D) discrete cosine transform (DCT) 2 transform; and

decode the inversed transform blocks.

11. The apparatus of claim 7 , wherein the second transform is applied when:

the size of the intra coding block is greater than a threshold in at least one of width or height;

the size of the intra coding block is smaller than a threshold in width and height;

the size of a transform block of the plurality of transform blocks is greater than a threshold in at least one of width or height; or

the size of a transform block of the plurality of transform blocks is smaller than a threshold in width and height.

12. The apparatus of claim 7 , wherein the plurality of transform blocks have different sizes, and wherein the second transform is performed based on a largest transform block of the plurality of transform blocks.

13. The apparatus of claim 8 , wherein the second transform is applied when:

the size of the intra coding block is greater than a threshold in at least one of width or height;

the size of the intra coding block is smaller than a threshold in width and height;

the size of a transform block of the plurality of transform blocks is greater than a threshold in at least one of width or height; or

the size of a transform block of the plurality of transform blocks is smaller than a threshold in width and height.

14. The apparatus of claim 8 , wherein the plurality of transform blocks have different sizes, and wherein the second transform is performed based on a largest transform block of the plurality of transform blocks.

15. The non-transitory computer-readable storage medium of claim 9 , wherein the second transform is applied when:

the size of the intra coding block is greater than a threshold in at least one of width or height;

the size of the intra coding block is smaller than a threshold in width and height;

the size of a transform block of the plurality of transform blocks is greater than a threshold in at least one of width or height; or

the size of a transform block of the plurality of transform blocks is smaller than a threshold in width and height.

16. The non-transitory computer-readable storage medium of claim 9 , wherein the plurality of transform blocks have different sizes, and wherein the second transform is performed based on a largest transform block of the plurality of transform blocks.

17. The non-transitory computer-readable storage medium of claim 10 , wherein the second transform is applied when:

the size of the intra coding block is greater than a threshold in at least one of width or height;

the size of the intra coding block is smaller than a threshold in width and height;

the size of a transform block of the plurality of transform blocks is greater than a threshold in at least one of width or height; or

the size of a transform block of the plurality of transform blocks is smaller than a threshold in width and height.

18. The non-transitory computer-readable storage medium of claim 10 , wherein the plurality of transform blocks have different sizes, and wherein the second transform is performed based on a largest transform block of the plurality of transform blocks.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2023
From: INTERDIGITAL VC HOLDINGS FRANCE, SAS
To: INTERDIGITAL CE PATENT HOLDINGS, SAS
Reel/Frame 064460/0921 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2022
From: LELEANNEC, FABRICE; NASER, KARAM; POIRIER, TANGI; GALPIN, FRANCK
To: INTERDIGITAL VC HOLDINGS FRANCE, SAS
Reel/Frame 058892/0431 →
Priority Claims (3)
EP 19306007 · Aug 6, 2019 · regional
EP 19306174 · Sep 23, 2019 · regional
EP 19306182 · Sep 24, 2019 · regional
Continuity (1)
Related Publication 20220345744A1 · Oct 27, 2022
References Cited (15)
US 10609367B2 · Zhao et al. · 2020 [cited by applicant]
US 20170094313A1 · Zhao · 2017 [cited by examiner]
US 20180103252A1 · Hsieh et al. · 2018 [cited by applicant]
US 20190104322A1 · Tsukuba · 2019 [cited by applicant]
US 20190149823A1 · Lim et al. · 2019 [cited by applicant]
US 20200322636A1 · Egilmez · 2020 [cited by examiner]
US 20210321134A1 · Koo · 2021 [cited by examiner]
CN 110024393A · 2019 [cited by applicant]
EP 3443746A1 · 2019 [cited by applicant]
WO 2019067907A1 · 2019 [cited by applicant]
Zhao et al., “CE6-related: Unified LFNST using block size independent kernel”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, Document: JVET-O0539-v2, 15th Meeting: Gothenburg, Sweden… [cited by applicant]
Wieckowski et al., “NextSoftware: An alternative implementation of the Joint Exploration Model (JEM)”, The Joint Video Exploration Team of ITU-T SG 16 and ISO/IEC JTC 1/SC 29/WG11, Document: JVET H0084, 8th Meeting, Mac… [cited by applicant]
Bross et al., “Versatile Video Coding (Draft 6)”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, Document: JVET-02001-vE, 15th Meeting: Gothenburg, Sweden, Jul. 3, 2019, 455 pages. [cited by applicant]
Chen et al, “Algorithm description for Versatile Video Coding and Test Model 5 (VTM 5)”, The Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, Document: JVET-N1002-v2, 14th Meeting, Gene… [cited by applicant]
JVET-O0094-R1, “CE6-2.1: Simplification of Low Frequency Non-Separable Transform”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, Jul. 3-12, 2019, 7 pages. [cited by applicant]