IP Library Granted Patent US 10,798,378
Granted Patent B1
US 10,798,378 · App. 16/683,237 · Granted Oct 6, 2020

Weighted angular prediction for intra coding

Inventors: Krit Panusopone (San Diego, CA); Koohyar Minoo (San Diego, CA); Yue Yu (San Diego, CA); Limin Wang (San Diego, CA)
Assignee: ARRIS Enterprises LLC
H04N19/105H04N19/11H04N19/119H04N19/132H04N19/159H04N19/176H04N19/46H04N19/96
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 10,798,378
App. No.
16/683,237
Filed
Nov 13, 2019
Granted
Oct 6, 2020
Kind
B1
Examiner
LEE, Y YOUNG
Art Unit
2419
USPC
375/240.02
Abstract

A method of decoding JVET video, comprising receiving a bitstream indicating how a coding tree unit was partitioned into coding units according to a partitioning structure that allows nodes to be split according to a partitioning technique. An intra direction mode for a coding unit may be selected, as well as one or more of the plurality of reference lines to generate at least one predictor for the intra direction mode. A predictor may be generated from reference samples within each selected reference line by combining predicted pixel values based on a projected position on a main reference line in combination with predicted pixel values based on a projected position on a side reference line. The predicted pixel values are weighted according to a weight parameter, wherein the weight parameter is determined based on a shift conversion factor.

Claims (1767)

1. A method for coding video data using one or more processors, the method comprising:

receiving a bitstream indicating how a coding tree unit was partitioned into coding units according to a partitioning structure that allows nodes to be split according to a partitioning technique;

selecting an intra direction mode for a coding unit;

selecting one or more of the plurality of reference lines to generate at least one predictor for the intra direction mode;

generating the at least one predictor from one or more plurality of reference samples within each selected reference line by combining predicted pixel values based on a projected position on a main reference line in combination with predicted pixel values based on a projected position on a side reference line,

wherein the predicted pixel values are weighted according to a weight parameter, wherein the weight parameter is determined based on a shift conversion factor, wherein the weight parameter is determined from a weighting table S[n], where

S

[

n

]

=

{

0

,

0

,

512

,

341

,

256

,

205

,

171

,

146

,

128

,

114

,

103

,

93

,

85

,

79

,

73

,

68

,

64

,

60

,

57

,

54

,

51

,

49

,

47

,

45

,

43

,

41

,

39

,

38

,

37

,

35

,

34

,

33

32

,

31

,

30

,

29

,

28

,

28

,

27

,

26

,

26

,

25

,

24

,

24

,

23

,

23

,

22

,

22

,

21

,

21

,

20

,

20

,

20

,

19

,

19

,

19

,

18

,

18

,

18

,

17

,

17

,

17

,

16

,

16

,

16

,

16

,

16

,

15

,

15

,

15

,

15

,

14

,

14

,

14

,

14

,

14

,

14

,

13

,

13

,

13

,

13

,

13

,

13

,

12

,

12

,

12

,

12

,

12

,

12

,

11

,

11

,

11

,

11

,

11

,

11

,

11

,

11

,

11

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

5

,

5

,

5

,

5

,

5

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

}

.

2. The method of claim 1 , wherein a flag signals which reference lines are selected for a respective intra directional mode.

3. The method of claim 1 , wherein a sum of width and height is 256 and the factor for shift conversion is 10.

4. A method for coding video data using one or more processors, the method comprising:

receiving a bitstream indicating how a coding tree unit was partitioned into coding units according to a partitioning structure that allows nodes to be split according to a partitioning technique;

selecting an intra direction mode for a coding unit selecting one or more of the plurality of reference lines to generate at least one predictor for the intra direction mode;

generating the at least one predictor from one or more plurality of reference samples within each selected reference line by combining predicted pixel values based on a projected position on a main reference line in combination with predicted pixel values based on a projected position on a side reference line,

wherein the predicted pixel values are weighted according to a weight parameter, wherein the weight parameter is determined based on a shift conversion factor,

wherein the weight parameter is determined from a weighting table S[n], where

S

[

n

]

=

{

0

,

0

,

512

,

341

,

256

,

205

,

171

,

146

,

128

,

114

,

103

,

93

,

85

,

79

,

73

,

68

,

64

,

60

,

57

,

54

,

51

,

49

,

47

,

45

,

43

,

41

,

39

,

38

,

37

,

35

,

34

,

33

,

32

,

31

,

30

,

29

,

28

,

28

,

27

,

26

,

26

,

25

,

24

,

24

,

23

,

23

,

22

,

22

,

21

,

21

,

20

,

20

,

20

,

19

,

19

,

19

,

18

,

18

,

18

,

17

,

17

,

17

,

16

,

16

,

16

,

16

,

16

,

15

,

15

,

15

,

15

,

14

,

14

,

14

,

14

,

14

,

14

,

13

,

13

,

13

,

13

,

13

,

13

,

12

,

12

,

12

,

12

,

12

,

12

,

11

,

11

,

11

,

11

,

11

,

11

,

11

,

11

,

11

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

10

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

9

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

8

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

7

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

6

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

5

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

5

,

5

,

5

,

5

,

5

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

4

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

3

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

,

2

}

.

5. The method of claim 4 , wherein a sum of width and height is 512 and the factor for shift conversion is 10.

6. A method for coding video data using one or more processors, the method comprising:

receiving a bitstream indicating how a coding tree unit was partitioned into coding units according to a partitioning structure that allows nodes to be split according to a partitioning technique;

selecting an intra direction mode for a coding unit;

selecting one or more of the plurality of reference lines to generate at least one predictor for the intra direction mode;

generating the at least one predictor from one or more plurality of reference samples within each selected reference line by combining predicted pixel values based on a projected position on a main reference line in combination with predicted pixel values based on a projected position on a side reference line,

wherein the predicted pixel values are weighted according to a weight parameter, wherein the weight parameter is determined based on a shift conversion factor, where predicted pixels at coordinate (x,y) are determined using weighted angular prediction by computing P[x,y]=((((x+1)*Recon[x+y+2,−1])+((y+1)*Recon[−1,x+y+2])*S[y+x+2]+(y+x+2)/2)>>ShiftDenom), where Recon[0,0] is a reconstructed pixel at top left coordinate (0,0) of the current coding node, and S[n] is calculated as

S

[

n

]

=

Round

(

(

1

ShiftDenom

)

n

)

.

7. The method of claim 6 , wherein P[x,y] weights parameters based on at least one of a horizontal or vertical predictor.

8. The method of claim 7 , wherein a selection of at least one of the horizontal or vertical predictor is based on which predictor is more accurate.

9. The method of claim 7 , wherein the calculation to determine P[x,y] is further weighted with at least one of horWeight or verWeight by computing: P[x,y]=(((horWeight*Recon[x+y+2,−1])+(verWeight*Recon[−1,x+y+2])+(y+x+2)/2)>>ShiftDenom)

wherein

horWeight

=

{

(

1

ShiftDenom

)

-

verWeight

when

x

<

y

(

y

+

1

)

*

S

[

x

+

y

+

2

]

otherwise

,

and

wherein

verWeight

=

{

(

x

+

1

)

*

S

[

x

+

y

+

2

]

when

x

<

y

(

1

ShiftDenom

)

-

horWeight

otherwise

,

where ShiftDenom is the factor for shift conversion.

Assignments (3)
SECURITY INTEREST Recorded Dec 17, 2024
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE INC., OF NORTH CAROLINA; OUTDOOR WIRELESS NETWORKS LLC; RUCKUS IP HOLDINGS LLC
To: APOLLO ADMINISTRATIVE AGENCY LLC
Reel/Frame 069889/0114 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2022
From: PANUSOPONE, KRIT; MINOO, KOOHYAR; YU, YUE; WANG, LIMIN
To: ARRIS ENTERPRISES LLC
Reel/Frame 059177/0981 →
SECURITY INTEREST Recorded Nov 19, 2021
From: ARRIS SOLUTIONS, INC.; ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA; RUCKUS WIRELESS, INC.
To: WILMINGTON TRUST
Reel/Frame 060752/0001 →
Continuity (3)
Continuation 15605898 · May 25, 2017
Provisional Application 62341210 · May 25, 2016
Provisional Application 62481285 · Apr 4, 2017