EP-4738820-A1 - VIRTUAL INTRA PREDICTION MODE SELECTION IN MULTIPLE TRANSFORM SET SELECTION
Abstract
A device (e.g., video encoder or video decoder) may determine transform sets for MTSS. For example, an MTSS indication (e.g., MTSS flag) may be obtained. The MTSS flag may be used to determine a transform set. A histogram of gradients (HoG) may be obtained. A VIPM (e.g., first VIPM) may be obtained, for example, based on the HoG. Whether the MTSS indication is enabled may be determined. Based on a determination that the MTSS indication is not enabled, a mode-specific transform set corresponding to VIPM may be obtained. Inverse transform may be performed based on the obtained transform set.
Inventors
- BONNINEAU, Charles
- PURI, Saurabh
- NASER, Karam
- LE LEANNEC, FABRICE
Assignees
- InterDigital CE Patent Holdings, SAS
Dates
- Publication Date
- 20260506
- Application Date
- 20241220
Claims (14)
- A video decoding method comprising: obtaining a histogram of gradients (HoG) associated with a block; obtaining a virtual intra prediction mode (VIPM) based on the HoG; obtaining a first transform set and a second transform set based on the obtained VIPM; select, from at least the first transform set and the second transform set, a transform set based on a multiple transform set selection (MTSS) indication associated with the block; and perform an inverse transformation based on the selected transform set.
- A video encoding method comprising: obtaining a histogram of gradients (HoG) associated with a block; obtaining a virtual intra prediction mode (VIPM) based on the HoG; obtaining a first transform set and a second transform set based on the obtained VIPM; select, from at least the first transform set and the second transform set, a transform set; perform a transformation based on the selected transform set; and include, in video data, a multiple transform set selection (MTSS) indication of the selected transform set.
- The method of claim 1 or 2, wherein a mode-specific transform set corresponding to the obtained VIPM is obtained as the first transform set, and wherein an angular mode transform set corresponding to the obtained VIPM is obtained as the second transform set.
- The method of claim 1 or 3, wherein based on a determination that the MTSS indication indicates to use the first transform set, a transform kernel associated with the first transform set is used to perform the inverse transformation, and based on a determination that the MTSS indication indicates to use the second transform set, a transform kernel associated with the second transform set is used to perform the inverse transformation.
- The method of any of claims 1 to 4, wherein the obtained VIPM is a first VIPM, and wherein the method further comprises: obtaining a second VIPM based on the HoG; determining whether a difference between the first VIPM and the second VIPM is less than a value; and based on a determination that the difference between the first VIPM and the second VIPM is less than the value, obtaining a third transform set based on the first VIPM, wherein the third transform set is selected as the selected transform set.
- The method of any of claims 1 to 4, wherein the obtained VIPM is a first VIPM, and wherein the method further comprises: obtaining a second VIPM based on the HoG; determining whether a difference between the first VIPM and the second VIPM is less than a value; and based on the determination that the difference between the first VIPM and the second VIPM is not less than the value, obtaining a third transform set based on the second VIPM, wherein the third transform set is selected as the selected transform set.
- The method of any of claims 1 to 4, wherein the obtained VIPM is a first VIPM, and wherein the method further comprises: obtaining a second VIPM based on the HoG; determining whether a difference between the first VIPM and the second VIPM is less than a value, wherein the transform set for performing the inverse transform is selected further based on whether the difference between the first VIPM and the second VIPM is less than the value, wherein: based on a determination that difference between the first VIPM and the second VIPM is less than the value, an angular mode transform set corresponding to the first VIPM is selected as the selected transform set, and based on a determination that the difference between the first VIPM and the second VIPM is not less than the threshold, a mode-specific transform set corresponding to the second VIPM is selected as the selected transform set.
- The method of any of claims 1 to 4, wherein the obtained VIPM is a first VIPM, and wherein the method further comprises: obtaining a second VIPM based on the HoG; determining whether a difference between the first VIPM and the second VIPM is less than a value; and determining a set of kernels based on the determination whether the difference between the first VIPM and the second VIPM is less than the value.
- The method of claim 8, wherein based on a determination that the difference between the first VIPM and the second VIPM is less than the value, the determined set of kernels comprises a subset of kernels associated with a mode-specific transform set corresponding to the first VIPM and comprises a subset of kernels associated with an angular transform set corresponding to the first VIPM.
- The method of any of claims 1 or 3 to 9, wherein the method is performed by a video decoding device.
- The method of any of claims 2, 3, or 5 to 9, wherein the method is performed by a video encoding device.
- Video data comprising information representative of an output associated with the transformation generated according to one of the methods of any of claims 2 to 3 or 5 to 9.
- A computer program product which is stored on a non-transitory computer readable medium and comprises program code instructions for implementing steps of a method according to at least one of claims 1 to 9 when executed by a processor.
- A computer program comprising program code instructions for implementing steps of a method according to at least one of claims 1 to 9 when executed by a processor.
Description
CROSS-REFERENCE TO RELATED APPLICATOINS The application claims the benefit of European Patent Application Number 24306863.2, filed November 5, 2024, the contents of which are incorporated by reference in their entirety herein. BACKGROUND The present application is related to video coding systems that may be used to compress digital video signals, e.g., to reduce the storage and/or transmission bandwidth needed for such signals. Video coding systems may include, for example, block-based, wavelet-based, and/or object-based systems. SUMMARY Systems, methods, and instrumentalities are configured for virtual intra prediction mode selection in multiple transform set selection. Multiple transform set selection (MTSS) may use mode-specific transform sets and/or virtual intra prediction mode (VIPM)-based transform sets. For example, transform set candidates may be derived based on the mode-specific transform set and/or based on an angular mode transform set, for example, using a VIPM. A device (e.g., video encoder or video decoder) may determine transform sets for MTSS. For example, an MTSS indication (e.g., MTSS flag) may be obtained. The MTSS flag may be used to determine a transform set. A histogram of gradients (HoG) may be obtained. A VIPM (e.g., first VIPM) may be obtained, for example, based on the HoG. Whether the MTSS indication is enabled may be determined. Based on a determination that the MTSS indication is not enabled, a mode-specific transform set corresponding to VIPM may be obtained. Inverse transform may be performed based on the obtained transform set. Based on a determination that the MTSS indication is enabled, an angular mode transform set corresponding to VIPM may be obtained. A second transform set may be obtained. The second transform set may be obtained based on a second VIPM obtained from the HoG. Whether a difference between the first VIPM and the second VIPM is greater than or equal to a threshold may be determined. The second transform set may be obtained based on whether the difference between the first VIPM and the second VIPM is greater than or equal to a threshold. For example, the second transform set may be obtained based on the second VIPM if the difference between the first VIPM and the second VIPM is greater than or equal to a threshold. The second transform set obtained based on the second VIPM may be from a mode-specific transform set. For example, the second transform set may be obtained based on the first VIPM if the difference is not greater than or equal to the threshold. The second transform set obtained based on the first VIPM may be from an angular transform set. A device (e.g., video encoder or video decoder) may determine transform sets for MTSS. The device may obtain a HoG associated with a block. The device may obtain a VIPM based on the HoG. The device may obtain a first transform set and a second transform set based on the obtained VIPM. For example, a mode-specific transform set corresponding to the obtained VIPM may be obtained as the first transform set. For example, an angular mode transform set corresponding to the obtained VIPM may be obtained as the second transform set. The device may select (e.g., from at least the first transform set and the second transform set) a transform set, for example, based on an MTSS indication associated with the block. For example, based on a determination to use the first transform set (e.g., based on an MTSS indication), a transform kernel associated with the first transform set may be used to perform the inverse transformation or transformation. For example, based on a determination to use the second transform set (e.g., based on an MTSS indication), a transform kernel associated with the second transform set may be used to perform the inverse transformation or transformation. The device may perform an inverse transformation or a transformation based on the selected transform set. The device (e.g., video encoder) may include (e.g., in video data) an MTSS indication of the selected transform set. The device may obtain a first VIPM based on the HoG and a second VIPM based on the VIPM. The device may determine whether a difference between the first VIPM and the second VIPM is less than a value. The device may obtain a third transform set based on the second VIPM, for example, based on a determination that the difference between the first VIPM and the second VIPM is less than the value. The device may obtain a third transform set based on the first VIPM, for example, based on a determination that the difference between the first VIPM and the second VIPM is not less than the value. The third transform set may be selected as the selected transform set. The device may obtain a first VIPM based on the HoG and a second VIPM based on the VIPM. The device may determine whether a difference between the first VIPM and the second VIPM is less than a value. An angular mode transform set corresponding to the first VIPM may be selected as t