IP Library › Granted Patent US 11,122,296
Granted Patent B2
US 11,122,296 · App. 16/477,021 · Granted Sep 14, 2021

Block sized based transform restrictions

Inventors: Fabrice Leleannec (Cesson-Sevigne, FR); Franck Galpin (Cesson-Sevigne, FR); Tangi Poirier (Cesson-Sevigne, FR)
Assignee: INTERDIGITAL VC HOLDINGS, INC.
H04N19/61H04N19/105H04N19/119H04N19/13H04N19/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 11,122,296
App. No.
16/477,021
Granted
Sep 14, 2021
Kind
B2
Abstract

A coding unit having a size multiple of three in horizontal or vertical direction is coded through one of several embodiments. In one embodiment, for some block sizes, the coding unit is coded and decoded systematically through SKIP mode. In another embodiment, the coding units can be coded in SKIP mode or with a DC coefficient. In another embodiment, an asymmetric division of a common coding unit parent is performed and transform coefficients are factorized among at least two sub-blocks to encode a coding unit. In another embodiment, a separable two dimensional transform can be applied by applying a transform over the block in one direction, and using two one-dimensional transforms on sub-blocks in the other direction to code. Methods, apparatus, and signal embodiments are provided for encoding and decoding.

Claims (57)

1. A method for decoding a block of video data, comprising:

decoding a sub-block having size that is not a power-of-two in width or height, using processing such that an inverse transform that is not a power-of-two is not needed, wherein said sub-block was divided from said block into at least two rectangular sub-blocks, wherein, said processing comprises:

obtaining a DC coefficient of a sub-block having size that is not a power-of-two in width or height by entropy decoding a transform coefficient associated with a first smaller sub-block that comprises said sub-block;

reconstructing a low pass component of said sub-block using an inverse transform applied on said DC coefficient;

applying a partial inverse transform of said first smaller sub-block by applying an inverse transform on AC coefficients of the first smaller sub-block and considering a DC coefficient equal to zero;

entropy decoding an AC coefficient associated with a second smaller sub-block of said sub-block;

partially inverse transforming said second smaller sub-block by applying an inverse transform on the AC coefficients of said second smaller sub-block and considering a DC coefficient equal to zero.

2. A method for coding a block of video data, comprising:

encoding a block comprising at least two rectangular sub-blocks, using processing such that a transform that is not a power-of-two is not needed, wherein, said processing comprises:

obtaining residuals for the block using interprediction;

dividing said residuals for the block into at least two sub-blocks comprising at least one sub-block having a dimension that is not a power-of-two;

replacing residuals for the at least one sub-block having a dimension that is not a power-of-two by zeros;

transforming each remaining sub-block using power-of-two sized transforms to generate transform coefficients.

3. The method of claim 2 , wherein a sub-block having a dimension that is not a power of two is a multiple of a power-of-two.

4. The method of 3 , wherein said sub-block having a dimension that is not a power of two is three times a power-of-two.

5. The method of claim 2 , further comprising encoding at least one syntax element indicative of at least one sub-block having residuals replaced by zeros.

6. The method of claim 2 , wherein said processing further comprises using SKIP mode for said sub-block having dimension that is not a power-of-two.

7. The method of claim 2 , wherein said processing comprises:

transforming said sub-block having dimension that is not a power-of-two using a one dimensional transform in a first direction;

transforming said sub-block having dimension that is not a power-of-two using a one dimensional transform in a second direction.

8. An apparatus for coding a block of video data, comprising:

a memory, and

a processor, configured to:

encode a block comprising at least two rectangular sub-blocks, using processing such that a transform that is not a power-of-two is not needed, wherein, said processing comprises:

obtaining residuals for the block using interprediction;

dividing said residuals for the block into at least two sub-blocks comprising at least one sub-block having a dimension that is not a power-of-two;

replacing residuals for the at least one sub-block having a dimension that is not a power-of-two by zeros;

transforming each remaining sub-block using power-of-two sized transforms to generate transform coefficients.

9. The apparatus of 8 , wherein said sub-block having a dimension that is not a power of two is three times a power-of-two.

10. The apparatus of claim 8 , further comprising encoding at least one syntax element indicative of at least one sub-block having residuals replaced by zeros.

11. The apparatus of claim 8 , wherein said processor is further configured to:

transform said sub-block having dimension that is not a power-of-two using a one dimensional transform in a first direction;

transform said sub-block having dimension that is not a power-of-two using a one dimensional transform in a second direction.

12. A method for decoding a block of video data, comprising:

decoding a block comprising at least two rectangular sub-blocks, using processing such that an inverse transform that is not a power-of-two is not needed, wherein, said processing comprises:

applying an inverse transform on coefficients of a first sub-block by applying a power-of-two sized inverse transform to generate residuals for the first sub-block;

inserting zeros for residuals in a second sub-block having a dimension that is not a power-of-two;

reconstructing residuals of the first sub-block and second sub-block that comprise the block.

13. The method of claim 12 , wherein a sub-block having a dimension that is not a power of two is a multiple of a power-of-two.

14. The method of 13 , wherein said sub-block having a dimension that is not a power of two is three times a power-of-two.

15. The method of claim 12 , further comprising decoding at least one syntax element indicative of at least one sub-block having residuals replaced by zeros.

16. The method of claim 12 , wherein said processing further comprises using SKIP mode for said sub-block having dimension that is not a power-of-two.

17. The method of claim 12 , wherein said processing comprises:

inverse transforming said sub-block having dimension that is not a power-of-two using a one dimensional inverse transform in a first direction;

inverse transforming said sub-block having dimension that is not a power-of-two using a one dimensional inverse transform in a second direction.

18. An apparatus for decoding a block of video data, comprising:

a memory, and

a processor, configured to:

decode a block comprising at least two rectangular sub-blocks, using processing such that an inverse transform that is not a power-of-two is not needed, wherein, said processing comprises:

applying an inverse transform on coefficients of a first sub-block by applying a power-of-two sized inverse transform to generate residuals for the first sub-block;

inserting zeros for residuals in a second sub-block having a dimension that is not a power-of-two;

reconstructing residuals of the first sub-block and second sub-block that comprise the block.

19. The apparatus of claim 18 , wherein said sub-block having a dimension that is not a power of two is three times a power-of-two.

20. The apparatus of claim 18 , further comprising decoding at least one syntax element indicative of at least one sub-block having residuals replaced by zeros.

21. The apparatus of claim 18 , wherein said processor is further configured to:

inverse transform said sub-block having dimension that is not a power-of-two using a one dimensional inverse transform in a first direction;

inverse transform said sub-block having dimension that is not a power-of-two using a one dimensional inverse transform in a second direction.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2019
From: LELEANNEC, FABRICE; GALPIN, FRANCK; POIRIER, TANGI
To: THOMSON LICENSING
Reel/Frame 049813/0054 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2019
From: THOMSON LICENSING
To: INTERDIGITAL VC HOLDINGS, INC.
Reel/Frame 049757/0864 →
Priority Claims (1)
EP 17305036 · Jan 11, 2017 · regional
Continuity (1)
Related Publication 20200007893A1 · Jan 2, 2020
Cited By (2)
US 12,355,999 US 12,537,940