IP Library Granted Patent US 7,869,523
Granted Patent B2
US 7,869,523 · App. 11/275,921 · Granted Jan 11, 2011

Low complexity deblocking filter

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 7,869,523
App. No.
11/275,921
Granted
Jan 11, 2011
Kind
B2
Abstract

A method of filtering to remove coding artifacts introduced at block edges in a block-based video coder, the method having the steps of: checking the content activity on every line of samples belonging to a boundary to be filtered and where content activity is based on a set of adaptively selected thresholds determined using Variable-Shift Table Indexing (VSTI); determining whether the filtering process will modify the sample values on that particular line based on said content activity; and selecting a filtering mode between at least two filtering modes to apply on a block boundary basis, implying that there would be no switching between the two primary modes on a line by line basis along a given block boundary. The two filtering modes include a default mode based on a non-recursive filter, and a strong filtering mode which features two strong filtering sub-modes and a new selection criterion that is one-sided with respect to the block boundary to determine which of the two strong filtering sub-modes to use. The two strong filtering sub-modes include a new 3-tap filter sub-mode and a 5-tap filter sub-mode that permits a more efficient implementation of the filter.

Claims (365)

1. A method of filtering reconstructed samples to minimize coding artifacts introduced at a block boundary in a block-based video encoder and/or decoder, the method comprising:

calculating a pair of indices used to access a table of a pair of corresponding activity threshold values, the indices calculated using an average quantization parameter and an offset parameter;

determining the activity threshold values based on the pair of indices;

confirming whether the filtering process will modify the sample values on every line of samples for the block boundary by checking a content activity for the every line of samples for said block boundary, the content activity based on the determined activity threshold values; and

filtering the confirmed samples when a block on either side of the block boundary was coded using inter prediction wherein a pair of the activity threshold values are ALPHA (α) and BETA (β), and the average quantization parameter, QP av , was used in coding the two blocks that neighbor the block boundary wherein the values of the activity threshold values, ALPHA (α) and BETA (β) for each possible value of the indices Index A and Index B are

Index A (for α) or Index B (for β)

0

1

2

3

4

5

6

7

8

9

10

11

α

0

0

0

0

0

0

0

0

0

0

0

0

β

0

0

0

0

0

0

0

0

0

0

0

0

Index A (for α) or Index B (for β)

12

13

14

15

16

17

18

19

20

21

22

23

α

0

0

0

0

4

4

5

6

7

8

9

10

β

0

0

0

0

2

2

2

3

3

3

3

4

Index A (for α) or Index B (for β)

24

25

26

27

28

29

30

31

32

33

34

α

12

13

15

17

20

22

25

28

32

36

40

β

4

4

6

6

7

7

8

8

9

9

10

Index A (for α) or Index B (for β)

35

36

37

38

39

40

41

42

43

44

α

45

50

56

63

71

80

90

101

113

127

β

10

11

11

12

12

13

13

14

14

15

Index A (for α) or Index B (for β)

45

46

47

48

49

50

51

α

144

162

182

203

226

255

255

β

15

16

16

17

17

18

18

2. The method of claim 1 , wherein the following equations are used to compute the filtered sample values at a second position from the block boundary on either side, denoted P 1 and Q 1 , for a luminance component:

P 1 =p 1 +Clip(− C 0 , C 0, ( p 2 +( p 0 +q 0 ) >>1−( p 1 <<1)) >>1)

Q 1 =q 1 +Clip(− C 0 , C 0, ( q 2 +( p 0 +q 0 )>>1−( q 1 <<1) >>1).

3. The method of claim 2 , wherein the maximum change in the value of the samples that neighbor the block boundary, p 0 and q 0 , due to the filtering process for chrominance components is computed as C=C0+1.

4. The method of filtering according to claim 2 , wherein the value of the C0 parameter used for clipping the change in the sample values is computed using a value of Index A of the indices to address the table of C0 values.

5. The method of filtering according to claim 1 , wherein a pair of the offset parameter is added to the average QP value, QP av , in order to compute the indices that are used to address the tables of ALPHA (α) and BETA (β) activity threshold values, such that

Index A =Clip( QP min , QP max , QP av +Filter_Offset — A )

Index B =Clip( QP min , QP max , QP av +Filter_Offset — B ).

6. A system for filtering reconstructed samples to minimize coding artifacts introduced at a block boundary, the system comprising:

means for calculating a pair of indices used to access a table of a pair of corresponding activity threshold values, the indices calculated using an average quantization parameter and an offset parameter;

means for determining the activity threshold values based on the pair of indices;

means for confirming whether filtering will modify the sample values on every line of samples for the block boundary by checking a content activity for the every line of samples for said block boundary, the content activity based on the determined activity threshold values; and

means for filtering the confirmed samples when a block on either side of the block boundary was coded using inter prediction wherein a pair of the activity threshold values are ALPHA (α) and BETA (β), and the average quantization parameter, QP av , was used in coding the two blocks that neighbor the block boundary wherein the values of the activity threshold values, ALPHA (α) and BETA (β) for each possible value of the indices Index A and Index B are

Index A (for α) or Index B (for β)

0

1

2

3

4

5

6

7

8

9

10

11

12

13

α

0

0

0

0

0

0

0

0

0

0

0

0

0

0

β

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Index A (for α) or Index B (for β)

14

15

16

17

18

19

20

21

22

23

24

25

26

27

α

0

0

4

4

5

6

7

8

9

10

12

13

15

17

β

0

0

2

2

2

3

3

3

3

4

4

4

6

6

Index A (for α) or Index B (for β)

28

29

30

31

32

33

34

35

36

37

38

39

40

41

α

20

22

25

28

32

36

40

45

50

56

63

71

80

90

β

7

7

8

8

9

9

10

10

11

11

12

12

13

13

Index A (for α) or Index B (for β)

42

43

44

45

46

47

48

49

50

51

α

101

113

127

144

162

182

203

226

255

255

β

14

14

15

15

16

16

17

17

18

18.

7. The system of claim 6 , wherein the following equations are used to compute the filtered sample values at a second position from the block boundary on either side, denoted P l and Q 1 , for a luminance component:

P 1 =p 1 +Clip(− C 0 , C 0, ( p 2 +( p 0 +q 0 ) >>1−( p 1 <<1)) >>1).

Q 1 =q 1 +Clip(− C 0 , C 0, ( q 2 +( p 0 +q 0 )>>1−( q 1 <<1) >>1).

8. The system of claim 7 , wherein the maximum change in the value of the samples that neighbor the block boundary, P 0 and q 0 , due to the filtering process for chrominance components is computed as C=C0+1.

9. The system of claim 7 , wherein the value of the C0 parameter used for clipping the change in the sample values is computed using a value of Index A of the indices to address the table of C0 values.

10. The system of claim 6 , wherein a pair of the offset parameter is added to the average QP value, QP av , in order to compute the indices that are used to address the tables of ALPHA (α) and BETA (β) activity threshold values, such that

Index A =Clip( QP min , QP max , QP av +Filter_Offset — A )

Index B =Clip( QP min , QP max , QP av +Filter_Offset — B ).

Assignments (3)
CHANGE OF NAME Recorded Apr 1, 2015
From: SCIENTIFIC-ATLANTA VANCOUVER COMPANY
To: CISCO SYSTEMS CO.
Reel/Frame 035354/0084 →
CHANGE OF NAME Recorded Apr 1, 2015
From: CISCO SYSTEMS CO.
To: CISCO SYSTEMS CANADA CO.
Reel/Frame 035360/0306 →
MERGER AND CHANGE OF NAME Recorded May 25, 2007
From: UB VIDEO INC.
To: SCIENTIFIC-ATLANTA VANCOUVER COMPANY
Reel/Frame 019341/0775 →
Continuity (3)
Continuation 1031005900 · Dec 5, 2002
Division 1030084900 · Nov 21, 2002
Related Publication 20060250653A1 · Nov 9, 2006