Linear-model prediction with non-square prediction units in video coding
US-2017150176-A1 · May 25, 2017 · US
US10200719B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10200719-B2 |
| Application number | US-201615359568-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 22, 2016 |
| Priority date | Nov 25, 2015 |
| Publication date | Feb 5, 2019 |
| Grant date | Feb 5, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
As part of a process of encoding video data, a video encoder applies a transform to a non-square residual block to generate a block of transform coefficients. Furthermore, the video encoder modifies the transform coefficients such that each respective transform coefficient of the block of transform coefficients is based on the respective dequantized transform coefficient multiplied by a factor of √{square root over (2)} or an approximation of √{square root over (2)}. As part of a process of decoding video data, a video decoder applies, by the video decoder, a dequantization process to transform coefficients of a non-square transform block. The video decoder modifies the dequantized transform coefficients such that each respective dequantized transform coefficient of the dequantized transform coefficients is based on the respective dequantized transform coefficient divided by a factor of √{square root over (2)} or an approximation of √{square root over (2)}.
Opening claim text (preview).
What is claimed is: 1. A method of decoding encoded video data, the method comprising: receiving, by a video decoder, a bitstream that comprises an encoded representation of the video data; applying, by the video decoder, a dequantization process to transform coefficients of a non-square transform unit (TU) of a coding unit (CU) of the video data, wherein the non-square TU has a size K×L; after applying the dequantization process to the transform coefficients and based on ((log 2 (K)+log 2 (L)) being odd, modifying, by the video decoder, the dequantized transform coefficients such that each respective dequantized transform coefficient of the dequantized transform coefficients is based on the respective dequantized transform coefficient divided by an approximation of √{square root over (2)}; applying, by the video decoder, an inverse transform to the modified dequantized transform coefficients to reconstruct a residual block; and reconstructing, by the video decoder, samples of a coding block by adding samples of a predictive block to corresponding samples of the residual block for the TU of the CU. 2. The method of claim 1 , wherein applying the inverse transform to the modified dequantized transform coefficients comprises applying, by the video decoder, to the modified dequantized transform coefficients, a transform having size N×N, where log 2 (N*N)=((log 2 (K)+log 2 (L))>>1)<<1) and ((log 2 (K)+log 2 (L)) is odd. 3. The method of claim 1 , wherein the method further comprises: applying, by the video decoder, the dequantization process to transform coefficients of a second non-square TU of a second CU of the video data, wherein the second non-square TU has a size K 2 ×L 2 ; wherein when ((log 2 (K 2 )+log 2 (L 2 )) is even, the dequantized transform coefficients of the second non-square TU are not modified such that each respective dequantized transform coefficient of the dequantized transform coefficients of the second non-square TU is based on the respective dequantized transform coefficient divided by the approximation of √{square root over (2)}. 4. A method of encoding video data, the method comprising: receiving, by a video encoder, the video data; generating, by the video encoder, a residual block for a non-square transform unit (TU) of a coding unit (CU) such that each residual sample of the residual block indicates a difference between corresponding samples of a coding block of the CU and a predictive block of a prediction unit (PU) of the CU, wherein the non-square TU has a size K×L; applying, by the video encoder, a transform to the residual block to generate a block of transform coefficients; modifying, by the video encoder, based on ((log 2 (K)+log 2 (L)) being odd, the transform coefficients such that each respective transform coefficient of the block of transform coefficients is based on the respective transform coefficient multiplied by an approximation of √{square root over (2)}; after modifying the transform coefficients, applying, by the video encoder, a quantization process to the modified transform coefficients of the non-square TU of the CU; and including, by the video encoder, in a bitstream comprising an encoded representation of the video data, data based on the quantized transform coefficients. 5. The method of claim 4 , wherein applying the transform to the residual block comprises applying, by the video encoder, to the residual block, a transform having size N×N, where log 2 (N*N)=((log 2 (K)+log 2 (L))>>1)<<1) and ((log 2 (K)+ 2 (L)) is odd. 6. The method of claim 4 , further comprising: generating, by the video encoder, a second residual block for a second non-square TU of a second CU such that each residual sample of the second residual block indicates a difference between corresponding samples of a coding block of the second CU and a predictive block of a PU of the second CU, wherein the second non-square TU has a size K 2 ×L 2 ; and applying, by the video encoder, the transform to the second residual block to generate a second block of transform coefficients, wherein when ((log 2 (K 2 )+log 2 (L 2 )) is even, transform coefficients of the second block of transform coefficients are not modified such that each respective transform coefficient of the transform coefficients of the second block of transform coefficients is based on the respective transform coefficient multiplied by the approximation of √{square root over (2)}. 7. An apparatus for decoding video data, the apparatus comprising: a memory configured to store the video data; and a video decoder implemented using circuitry, software, or a combination thereof, the video decoder configured to: apply a dequantization process to transform coefficients of a non-square transform unit (TU) of a coding unit (CU) of the video data, wherein the non-square TU has a size K×L; after applying the dequantization process to the transform coefficients and based on ((log 2 (K)+log 2 (L)) being odd, modify the dequantized transform coefficients such that each respective dequantized transform coefficient of the dequantized transform coefficients is based on the respective dequantized transform coefficient divided by an approximation of √{square root over (2)}; apply an inverse transform to the modified dequantized transform coefficients to reconstruct a residual block; and reconstruct samples of a coding block by adding samples of a predictive block to corresponding samples of the residual block for the TU of the CU. 8. The apparatus of claim 7 , wherein the video decoder is configured such that, as part of applying the inverse transform to the modified dequantized transform coefficients, the video decoder applies, to the modified dequantized transform coefficients, a transform having size N×N, where log 2 (N*N)=((log 2 (K)+log 2 (L))>>1)<<1) and ((log 2 (K)+log 2 (L)) is odd. 9. The apparatus of claim 7 , wherein the video decoder is configured to apply the dequantization process to transform coefficients of a second non-square TU of a second CU of the video data, wherein the second non-square TU has a size K 2 ×L 2 , wherein when ((log 2 (K 2 )+log 2 (L 2 )) is even the video decoder does not modify the dequantized transform coefficients of the second non-square TU such that each respective dequantized transform coefficient of the dequantized transform coefficients of the second non-square TU is based on the respective dequantized transform coefficient divided by the approximation of √{square root over (2)}. 10. An apparatus for encoding video data, the apparatus comprising: a memory configured to store the video data; and a video encoder implemented using circuitry, software, or a combination thereof, the video encoder configured to: generate a residual block for a non-square transform unit (TU) of a coding unit (CU) such that each residual sample of the residual block indicates a difference between corresponding samples of a coding block of the CU and a predictive block of a prediction unit (PU) of the CU, wherein the non-square TU has a size K×L; apply a transform to the residual block to generate a block of transform coefficients; modify, based on ((log 2 (K)+log 2 (L)) being odd, the transform coefficients such that each respective transform coefficient of the block of transform coefficients is based on the respective transform coefficient multiplied by an approximation of √{square root over (2)}; after modifying the transform coefficients, apply a quantization process to the modified transform coefficients of the non-square TU of the CU; and include, in a bitstream comprising an encoded representation of the video data, data based on the quantized transform coefficients. 11. The appara
Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks · CPC title
involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence · CPC title
Tree coding, e.g. quad-tree coding · CPC title
involving spatial prediction techniques · CPC title
the unit being a colour or a chrominance component · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.