IP Library Granted Patent US 9,294,767
Granted Patent B2
US 9,294,767 · App. 13/819,694 · Granted Mar 22, 2016

Inter picture prediction method for video coding and decoding and codec

Inventor: Jie Jia (Beijing, CN)
Assignee: LG ELECTRONICS (CHINA) R&D CENTER CO., LTD.
H04N19/00684H04N19/51H04N19/513H04N19/523H04N19/533H04N19/567
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,294,767
App. No.
13/819,694
Granted
Mar 22, 2016
Kind
B2
Abstract

The invention discloses an inter picture prediction method for video coding and decoding and a codec. The inter picture prediction method for video coding comprises: performing motion estimation over integer pixel positions of a reference picture, to determine an optimal motion vector for a current prediction unit in a current picture; and performing interpolation filtering processing for motion estimation over fractional pixel position by using the integer pixel position information to which the optimal motion vector directs in the reference picture, and spatially neighboring pixel information of the current prediction unit in the current picture. The inter picture prediction method for video decoding comprises performing decoding to obtain a motion vector in a current decoding unit; and for fractional pixel motion vector, performing interpolation filtering processing by using reference pixels to which the optimal motion vector directs in a reference picture, and spatially neighboring pixels of the current prediction unit in the current picture. The invention can improve the video coding and decoding efficiency, reduce the bit rate necessary for provision of the same video quality, and also reduce nonzero prediction residual signal so as to facilitate the reduction of blocking artifacts.

Claims (359)

1. An inter picture prediction method for video coding, comprising:

performing motion estimation over integer pixel positions of a reference picture, to determine an optimal motion vector for a current prediction unit in a current picture; and

performing interpolation filtering processing for motion estimation over fractional pixel position by using integer pixel position information to which the optimal motion vector directs in the reference picture, and spatially neighboring pixel information of the current prediction unit in the current picture,

wherein the performing of the interpolation filtering processing for motion estimation over fractional pixel position by using the integer pixel position information to which the optimal motion vector directs in the reference picture, and the spatially neighboring pixel information of the current prediction unit in the current picture includes:

performing interpolation filtering processing in accordance with the following formula

p

i

,

j

=

m

=

-

2

2

n

=

-

2

2

α

m

,

n

γ

i

-

m

,

j

-

n

wherein γ i,j is a luminance value of a current pixel from the current picture or reference picture participating in filtering of the current prediction unit in the current picture, P i,j is a luminance value of a prediction pixel obtained by the interpolation filtering processing, α m,n is a filter coefficient, (i, j) is the position of the current pixel, and (m, n) is the position of the prediction pixel; and

if (i-m)<0 and (j-n)<3, or (j-n)<0, then γ i-m,j-n is the luminance value from the current picture; otherwise, γ i-m,j-n is the luminance value of the pixel from the reference picture.

2. The method according to claim 1 , wherein the performing of the interpolation filtering processing by using the integer pixel position information to which the optimal motion vector directs in the reference picture, and the spatially neighboring pixel information of the current prediction unit in the current picture, includes:

performing interpolation filtering processing in accordance with the following formula

q

g

,

h

=

r

=

-

2

2

s

=

-

2

2

β

r

,

s

φ

g

-

r

,

h

-

s

wherein φ g,h is a chroma value of the current pixel from the current picture or reference picture participating in the filtering of the current prediction unit in the current picture, q g,h is a chroma value of the prediction pixel obtained by the interpolation filtering processing, β r,s is the filter coefficient, (g, h) is the position of the current pixel, and (r, s) is the position of the prediction pixel; and

if (g-r) <0 and (h-s) <3, or (h-s) <0, then φ g-r,h-s is the chroma value from the current picture; otherwise, φ g,h is the chroma value of the pixel from the reference picture.

3. The method according to claim 2 , further including:

according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC), the method is selected to execute inter picture prediction for video coding.

4. The method according to claim 1 , further including:

performing motion estimation over integer and fractional pixel positions based on interpolated samples from the interpolation filtering processing; and

selecting the optimal motion vector which provides an optimal prediction for coding of the current prediction unit according to a motion estimation result.

5. The method according to claim 4 , further including:

according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC), the method is selected to execute inter picture prediction for video coding.

6. The method according to claim 4 , wherein performing motion estimation on the fractional pixel positions based on the interpolated values obtained from the interpolation filtering processing includes:

performing motion estimation to determine motion vectors at the fractional pixel positions for coding.

7. The method according to claim 6 , further including:

according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC), the method is selected to execute inter picture prediction for video coding.

8. The method according to claim 4 , wherein selecting the optimal motion vector for inter picture prediction and coding of the current picture according to the motion estimation result includes:

selecting a motion vector corresponding to a minimum rate-distortion cost (RDcost) as the optimal motion vector, which provides an optimal prediction information for coding of the current picture according to the motion estimation result.

9. The method according to claim 8 , further including:

according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC), the method is selected to execute inter picture prediction for video coding.

10. The method according to claim 1 , further including:

according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC), the method is selected to execute inter picture prediction for video coding.

11. An inter picture prediction method for video decoding, comprising:

performing decoding to obtain a motion vector in a current decoding unit; and

for a fractional pixel motion vector, performing interpolation filtering processing by using reference pixels to which the optimal motion vector directs in a reference picture, and spatially neighboring pixels of a current prediction unit in the current picture,

wherein the performing of the interpolation filtering processing by using the integer pixel position information to which the motion vector directs in the reference picture, and the spatially neighboring pixel information of the current prediction unit in the current picture includes:

performing interpolation filtering processing in accordance with the following formula

p

i

,

j

=

m

=

-

2

2

n

=

-

2

2

α

m

,

n

γ

i

-

m

,

j

-

n

wherein γ i,j is a luminance value of a current pixel from the current picture or reference picture participating in filtering of the current prediction unit in the current picture, P i,j is a luminance value of a prediction pixel obtained by the interpolation filtering processing, α m,n is a filter coefficient, (i, j) is a position of the current pixel, and (m, n) is a position of the prediction pixel; and

if (i-m)<0 and (j-n)<3, or (j-n)<0, then γ i-m,j-n is a luminance value from the current picture; otherwise,γ i-m,j-n is a luminance value of the current pixel from the reference picture.

12. The method according to claim 11 , wherein the performing of the interpolation filtering processing by using the integer pixel position information to which the motion vector directs in the reference picture, and spatially neighboring pixel information of the current prediction unit in the current picture comprises:

performing interpolation filtering processing in accordance with the following formula

q

g

,

h

=

r

=

-

2

2

s

=

-

2

2

β

r

,

s

φ

g

-

r

,

h

-

s

wherein φ g,h is a chroma value of the current pixel from the current picture or reference picture participating in filtering of the current prediction unit in the current picture, q g,h is a chroma value of the prediction pixel obtained by the interpolation filtering processing, β r,s is the filter coefficient, (g, h) is the position of the current pixel, and (r, s) is the position of the prediction pixel; and

if (g-r) <0 and (h-s) <3, or (h-s) <0, then φ g-r,h-s is the chroma value from the current picture; otherwise, φ g-r,h-s is the chroma value of the pixel from the reference picture.

13. The method according to claim 12 , further including:

according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC), the method is selected to execute inter picture prediction for video decoding.

14. The method according to claim 11 , further including:

according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC), the method is selected to execute inter picture prediction for video decoding.

15. A video coder, comprising:

a processor; and

a computer readable storage device coupled to the processor and including computer readable instructions which, when executed, cause the processor to:

perform motion estimation over integer pixel positions of a reference picture, to determine an optimal motion vector for a current prediction unit in a current picture; and

perform interpolation filtering processing for motion estimation over fractional pixel position by using integer pixel position information to which the optimal motion vector directs in the reference picture, and using spatially neighboring pixel information of the current prediction unit in the current picture,

obtain the integer pixel position information to which the optimal motion vector directs in the reference picture, and the spatially neighboring pixel information of the current prediction unit in the current picture; and

perform the interpolation filtering processing according to the following formula:

p

i

,

j

=

m

=

-

2

2

n

=

-

2

2

α

m

,

n

γ

i

-

m

,

j

-

n

wherein γ i,j is a luminance value of a current pixel from the current picture or reference picture participating in filtering of the current prediction unit in the current picture, P i,j is a luminance value of a prediction pixel obtained by the interpolation filtering processing, α m,n is a filter coefficient, (i, j) is the position of the current pixel, and (m, n) is the position of the prediction pixel; and

if (i-m)<0 and (j-n)<3, or (j-n)<0, then γ i-m,j-n is the luminance value from the current picture, otherwise,γ i-m,j-n is the luminance value of the pixel from the reference picture.

16. The video coder according to claim 15 , wherein the instructions are further to cause the processor to:

obtain the integer pixel position information to which the optimal motion vector directs in the reference picture, and spatially neighboring pixel information of the current prediction unit in the current picture; and

perform the interpolation filtering processing according to the following formula:

q

g

,

h

=

r

=

-

2

2

s

=

-

2

2

β

r

,

s

φ

g

-

r

,

h

-

s

wherein φ g,h is a chroma value of the current pixel from the current picture or reference picture participating in the filtering of the current prediction unit in the current picture, q g,h is a chroma value of the prediction pixel obtained by the interpolation filtering processing, β r,s is the filter coefficient, (g, h) is the position of the current pixel, and (r, s) is the position of the predicted pixel; and

if (g-r) <0 and (h-s) <3, or (h-s) <0, then φ g-r,h-s is the chroma value from the current picture; otherwise, φ g-r,h-s is the chroma value of the pixel from the reference picture.

17. The video coder according to claim 16 , wherein the instructions are to cause the processor to:

select to start the video coder to perform execution according to a coding value obtained by context-adaptive binary arithmetic coding (CAB AC).

18. The video coder according to claim 15 , wherein the instructions are to cause the processor to:

perform motion estimation over integer and fractional pixel positions based on interpolated samples from the interpolation filtering processing; and

select the optimal motion vector which provides an optimal prediction for coding of the current prediction unit according to a motion estimation result.

19. The video coder according to claim 18 , wherein the instructions are to cause the processor to:

select to start the video coder to perform execution according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC).

20. The video coder according to claim 18 , wherein the instructions are to cause the processor to:

perform the motion estimation to determine motion vectors at fractional pixel positions for coding.

21. The video coder according to claim 20 , wherein the instructions are to cause the processor to:

select to start the video coder to perform execution according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC).

22. The video coder according to claim 18 , wherein the instructions are to cause the processor to:

select a motion vector corresponding to a minimum rate-distortion cost (RDcost) according to the motion estimation result; and

determine the selected motion vector as the optimal motion vector, which provides an optimal prediction information for coding of the current picture.

23. The video coder according to claim 22 , wherein the instructions are to cause the processor to:

select to start the video coder to perform execution according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC).

24. The video coder according to claim 15 , wherein the instructions are to cause the processor to:

select to start the video coder to perform execution according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC).

25. A video decoder, comprising:

a processor; and

a computer readable storage device coupled to the processor and including computer readable instructions which, when executed, cause the processor to:

perform decoding to obtain a motion vector in a current decoding unit; and

perform, for a fractional pixel motion vector, interpolation filtering processing by using reference pixels to which the optimal motion vector directs in a reference picture, and spatially neighboring pixels of the current prediction unit in a current picture,

obtain the reference pixel position information to which the motion vector directs in the reference picture, and spatially neighbor pixel information of the current prediction unit in the current picture; and

perform the interpolation filtering processing according to the following formula:

p

i

,

j

=

m

=

-

2

2

n

=

-

2

2

α

m

,

n

γ

i

-

m

,

j

-

n

wherein γ i,j is a luminance value of a current pixel from the current picture or reference picture participating in filtering of the current prediction unit in the current picture, P i,j is a luminance value of a prediction pixel obtained by the interpolation filtering processing, α m,n is a filter coefficient, (i, j) is the position of the current pixel, and (m, n) is the position of the prediction pixel; and

if (i-m)<0 and (j-n)<3, or (j-n)<0, then γ i-m,j-n is the luminance value from the current picture, otherwise,γ i-m,j-n is the luminance value of the pixel from the reference picture.

26. The video decoder according to claim 25 , wherein the instructions are to cause the processor to:

obtain the reference pixel position information to which the motion vector directs in the reference picture, and spatially neighboring pixel information of the current prediction unit in the current picture; and

perform the interpolation filtering processing according to the following formula:

q

g

,

h

=

r

=

-

2

2

s

=

-

2

2

β

r

,

s

φ

g

-

r

,

h

-

s

wherein φ g,h is a chroma value of the current pixel from the current picture or reference picture participating in the filtering of the current prediction unit in the current picture, q g,h is a chroma value of the prediction pixel obtained by the interpolation filtering processing, β r,s is the filter coefficient, (g, h) is the position of the current pixel, and (r, s) is the position of the predicted pixel; and

if (g-r) <0 and (h-s) <3, or (h-s) <0, then φ g-r,h-s is the chroma value from the current picture; otherwise, φ g-r,h-s is the chroma value of the pixel from the reference picture.

27. The video decoder according to claim 26 , wherein the instructions are to cause the processor to:

select to start the video decoder to perform execution according to a coding value obtained by the context-adaptive binary arithmetic coding (CABAC).

28. The video decoder according to claim 25 , wherein the instructions are to cause the processor to:

select to start the video decoder to perform execution according to a coding value obtained by context-adaptive binary arithmetic coding (CABAC).

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE IMPROPER SPELLING OF THE ASSIGNEE'S NAME PREVIOUSLY RECORDED ON REEL 029906 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE IMPROPER SPELLING OF THE ASSIGNEE'S NAME. Recorded Apr 16, 2013
From: JIA, JIE
To: LG ELECTRONICS (CHINA) R&D CENTER CO., LTD.
Reel/Frame 030228/0961 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2013
From: JIA, JIE
To: LG ELECTRONICS (CHINA) R&D CENTER CO., LTS.
Reel/Frame 029906/0001 →
Priority Claims (2)
CN 2010 1 0272331 · Sep 2, 2010 · national
CN 2010 1 0552305 · Nov 19, 2010 · national
Continuity (1)
Related Publication 20140003524A1 · Jan 2, 2014