IP Library Granted Patent US 9,712,829
Granted Patent B2
US 9,712,829 · App. 14/087,568 · Granted Jul 18, 2017

Implementation design for hybrid transform coding scheme

Inventors: Jingning Han (Santa Clara, CA); Yaowu Xu (Saratoga, CA); Debargha Mukherjee (Cupertino, CA)
Assignee: Google Inc.
H04N19/176H04N19/12H04N19/60
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 9,712,829
App. No.
14/087,568
Granted
Jul 18, 2017
Kind
B2
Abstract

A method and system may identify a video data block using a video codec and apply a transform kernel of a butterfly asymmetric discrete sine transform (ADST) to the video data block in a pipeline.

Claims (109)

1. A non-transitory computer-readable storage medium storing instructions that when executed by a processor of a video encoder cause the processor to perform a process, the instructions comprising instructions to:

identify a video data block using a video codec; and

transform the video data block by generating a single instruction to apply a transform kernel of a butterfly asymmetric discrete sine transform (ADST) to process a plurality of data in the video data block using a butterfly structure in a parallel pipeline, wherein the transform kernel is

sin

(

2

n

-

1

)

(

2

k

-

1

)

π

4

N

,

where N is a block dimension, and where n and k, respectively, denote a time index and a frequency index, where both n and k range from 1 to N.

2. The non-transitory computer-readable storage medium of claim 1 , the transform kernel including a combination of a discrete cosine transform (DCT) and the butterfly ADST transform having a basis that is asymmetric.

3. The non-transitory computer-readable storage medium of claim 1 , wherein the butterfly ADST is performed in integer format.

4. The non-transitory computer-readable storage medium of claim 1 , wherein the processor communicates with a single instruction memory and control processor.

5. The non-transitory computer-readable storage medium of claim 1 , the instructions further comprising instructions to:

select a set of one-dimensional transforms depending on a prediction direction.

6. The non-transitory computer-readable storage medium of claim 5 , the instructions further comprising instructions to:

form a two-dimensional transform using the set of one-dimensional transforms.

7. The non-transitory computer-readable storage medium of claim 1 , wherein the butterfly ADST is applied to a residual pixel block generated from the video data block.

8. The non-transitory computer-readable storage medium of claim 1 , wherein the transform kernel provides for parallel computing via single instruction multiple data operations.

9. An apparatus, comprising:

a processor executing a video codec configured to identify a video data block;

a hybrid transform encoder configured to:

provide an intra-frame coding scheme for the video data block using a transform kernel based on a combination of a discrete cosine transform (DCT) and a butterfly asymmetric discrete sine transform (ADST) transform having an asymmetric basis;

produce a butterfly structured implementation of the intra-frame coding scheme, using the butterfly ADST, wherein the transform kernel is

sin

(

2

n

-

1

)

(

2

k

-

1

)

π

4

N

,

 where N is a block dimension, and where n and k, respectively, denote a time index and a frequency index, where both n and k range from 1 to N, and

transform the video data block by generating a single instruction to apply the transform kernel to process a plurality of data in the video data block using a butterfly structure in a parallel pipeline.

10. The apparatus of claim 9 , wherein the butterfly structured implementation is performed in integer format.

11. The apparatus of claim 9 , wherein the processor communicates with a single instruction memory and control processor.

12. The apparatus of claim 9 , further comprising:

a selector configured to select a set of one-dimensional transforms depending on a prediction direction.

13. The apparatus of claim 12 , the selector further configured to:

form a two-dimensional transform using the set of one-dimensional transforms.

14. The apparatus of claim 9 , wherein the butterfly ADST is applied to a residual pixel block generated from the video data block.

15. The apparatus of claim 9 , wherein the butterfly structured implementation provides for parallel computing via single instruction multiple data operations.

16. A non-transitory computer-readable storage medium storing instructions that when executed by a processor of a video encoder cause the processor to perform a process, the instructions comprising instructions to:

provide an intra-frame coding scheme for a video data block using a combination of a discrete cosine transform (DCT) and a butterfly asymmetric discrete sine transform (ADST) transform having a transform kernel approximating an original ADST having an asymmetric basis;

produce a butterfly structured implementation of the intra-frame coding, using the butterfly ADST, wherein the transform kernel is

sin

(

2

n

-

1

)

(

2

k

-

1

)

π

4

N

,

where N is a block dimension, and where n and k, respectively, denote a time index and a frequency index, where both n and k range from 1 to N; and

transform the video data block by generating a single instruction to apply the transform kernel to process a plurality of data in the video data block using a butterfly structure in a parallel pipeline.

17. The non-transitory computer-readable storage medium of claim 16 , the instructions further comprising instructions to:

select a set of one-dimensional transforms depending on a prediction direction.

18. The non-transitory computer-readable storage medium of claim 16 , the instructions further comprising instructions to:

form a two-dimensional transform using the set of one-dimensional transforms.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044097/0658 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2015
From: HAN, JINGNING; XU, YAOWU; MUKHERJEE, DEBARGHA
To: GOOGLE INC.
Reel/Frame 035392/0107 →
Continuity (1)
Related Publication 20150145874A1 · May 28, 2015