Pools of transforms for local selection of a set of transforms in video coding
Abstract
A method and apparatus for improving the performance of video encoders and decoders involves selecting a set of transforms from among a plurality of sets of transforms that can be used for coding blocks in a region of a video image. Within a region, selection of a particular transform from among a plurality of transforms comprising the selected set of transforms is used to encoder or decode at least one block in the region. Associated indices representing the set of transforms to be used within a region and the selected transform for a block can be sent in a bitstream. In an alternate embodiment, a default set of transforms is complemented by selection of an additional set of transforms on a block or region basis.
Claims
exact text as granted — not AI-modifiedThe invention claimed is:
1. A method, comprising:
selecting a set of transforms from among a plurality of sets of transforms to be used for encoding blocks within a region of a video picture of a video sequence, wherein multiple respective sets of transforms are considered for selection for each temporal level in the video sequence, and wherein the plurality of sets of transforms, which are associated with a first temporal layer, are a subset of the plurality of sets of transforms which are associated with a second, lower temporal layer;
selecting a transform from among a plurality of transforms comprising the selected set of transforms to use for encoding a block;
transforming at least the block in the region of the video picture using the selected transform into transformed coefficients; and
encoding the transformed coefficients along with a first index associated with the selected set of transforms and a second index associated with the selected transform into a bitstream, wherein the first index is signaled at a picture level of a video coding hierarchy and the second index is signaled at a Transform Unit (TU) level of the video coding hierarchy.
2. A method, comprising:
decoding a first index and a second index from a video bitstream, wherein the first index is signaled at a picture level of a video coding hierarchy and the second index is signaled at a Transform Unit (TU) level of the video coding hierarchy;
selecting a set of transforms associated with the first index from among a plurality of sets of transforms to be used for decoding blocks within a region of a video picture of a video sequence, wherein multiple respective sets of transforms are considered for selection for each temporal level in the video sequence, and wherein the plurality of sets of transforms, which are associated with a first temporal layer, are a subset of the plurality of sets of transforms which are associated with a second, lower temporal layer;
selecting a transform associated with the second index from among a plurality of transforms comprising the selected set of transforms, associated with the first index, to use for decoding a block within the region of the video picture; and
inverse transforming coefficients of at least the block in the region of the video picture using the selected transform.
3. An apparatus, comprising:
a memory, and
a processor, configured to:
select a set of transforms from among a plurality of sets of transforms to be used for encoding blocks within a region of a video picture of a video sequence, wherein multiple respective sets of transforms are considered for selection for each temporal level in the video sequence, and wherein the plurality of sets of transforms, which are associated with a first temporal layer, are a subset of the plurality of sets of transforms which are associated with a second, lower temporal layer,
select a transform from among a plurality of transforms comprising the selected set of transforms associated with the first index to use for encoding a block,
transform at least the block in the region of the video picture using the selected transform into transformed coefficients, and
encode the transformed coefficients along with a first index associated with the selected set of transforms and a second index associated with the selected transform into a bitstream, wherein the first index is signaled at a picture level of a video coding hierarchy and the second index is signaled at a Transform Unit (TU) level of the video coding hierarchy.
4. An apparatus, comprising:
a memory, and
a processor, configured to:
decode a first index and a second index from a video bitstream, wherein the first index is signaled at a picture level of a video coding hierarchy and the second index is signaled at a Transform Unit (TU) level of the video coding hierarchy,
select a set of transforms associated with the first index from among a plurality of sets of transforms to be used for decoding blocks within a region of a video picture of a video sequence, wherein multiple respective sets of transforms are considered for selection for each temporal level in the video sequence, and wherein the plurality of sets of transforms, which are associated with a first temporal layer, are a subset of the plurality of sets of transforms which are associated with a second, lower temporal layer;
select a transform associated with the second index from among a plurality of transforms comprising the selected set of transforms, associated with the first index, to use for decoding a block within the region of the video picture, and
inverse transform coefficients of at least the block in the region of the video picture using the selected transform.
5. The method of claim 1 , wherein the TU level is lower than the picture level.
6. The method of claim 1 , further comprising:
adding the selected set of transforms to a default set of transforms before selecting the transform from among the selected set of transforms associated with the first index and the default set of transforms to use for encoding the block.
7. The method of claim 1 , wherein the selected set of transforms provide a minimum rate-distortion cost for the region of the video picture.
8. The method of claim 1 , wherein the plurality of sets of transforms comprise systematic transforms.
9. A non-transitory computer readable medium comprising instructions which, when the program is executed by a computer, causes the computer to carry out the method of claim 1 .
10. A non-transitory computer readable medium comprising instructions which, when the program is executed by a computer, causes the computer to carry out the method of claim 2 .
11. The method of claim 2 , wherein the TU level is lower than the picture level.
12. The method of claim 2 , wherein the selected set of transforms provide a minimum rate-distortion cost for the region of the video picture.
13. The method of claim 2 , wherein the plurality of sets of transforms comprise systematic transforms.
14. The apparatus of claim 3 , wherein the TU level is lower than the picture level.
15. The apparatus of claim 3 , wherein the processor is further configured to:
add the selected set of transforms to a default set of transforms before selecting the transform from among the selected set of transforms associated with the first index and the default set of transforms to use for encoding the block.
16. The apparatus of claim 3 , wherein the selected set of transforms provide a minimum rate-distortion cost for the region of the video picture.
17. The apparatus of claim 3 , wherein the plurality of sets of transforms comprise systematic transforms.
18. The apparatus of claim 4 , wherein the TU level is lower than the picture level.
19. The apparatus of claim 4 , wherein the selected set of transforms provide a minimum rate-distortion cost for the region of the video picture.
20. The apparatus of claim 4 , wherein the plurality of sets of transforms comprise systematic transforms.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.