IP Library Granted Patent US 9,854,237
Granted Patent B2
US 9,854,237 · App. 14/882,152 · Granted Dec 26, 2017

AMVP and merge candidate list derivation for intra BC and inter prediction unification

Inventors: Chao Pang (Marina del Ray, CA); Vadim Seregin (San Diego, CA); Marta Karczewicz (San Diego, CA)
Assignee: QUALCOMM Incorporated
H04N19/105H04N19/176H04N19/52H04N19/70
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,854,237
App. No.
14/882,152
Filed
Oct 13, 2015
Granted
Dec 26, 2017
Kind
B2
Examiner
PHAM, NAM D
Art Unit
2487
USPC
375/240.16
Abstract

A method of decoding video data comprising receiving a first block of video data in a first frame of video data, the first block of video data being encoded relative to a first predictive block in the first frame of video data, the first predictive block being identified by a block vector, and decoding the block vector using a motion vector prediction process and a same motion vector candidate list as used for decoding a motion vector, wherein the motion vector is used to identify an inter-frame predictive block for a second block of video data coded using inter coding.

Claims (75)

1. A method of decoding video data, the method comprising:

receiving a first block of video data in a first frame of video data, the first block of video data being encoded relative to a first predictive block in the first frame of video data, the first predictive block being identified by a block vector; and

decoding the block vector using a motion vector prediction process and a same motion vector candidate list as used for decoding a motion vector, wherein the motion vector is used to identify an inter-frame predictive block for a second block of video data coded using inter coding.

2. The method of claim 1 , wherein the motion vector prediction process is one of a merge mode and an advanced motion vector prediction (AMVP) mode.

3. The method of claim 1 , further comprising:

receiving the second block of video data; and

decoding the motion vector using the motion vector prediction process and the motion vector candidate list.

4. The method of claim 3 , further comprising:

decoding the first block of video data using the first predictive block and the block vector; and

decoding the second block of video data using the inter-frame predictive block and the motion vector.

5. The method of claim 3 , wherein decoding the motion vector further comprises:

adding at least one of a candidate block vector and a candidate motion vector from one or more neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

6. The method of claim 1 , wherein decoding the block vector further comprises:

adding at least one of a candidate block vector and a candidate motion vector from one or more neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

7. The method of claim 6 , further comprising:

determining that a respective candidate block vector or a respective candidate motion vector is unavailable; and

adding a default motion vector to the motion vector candidate list.

8. The method of claim 7 , further comprising:

determining the default motion vector from a predetermined set of default motion vectors, the predetermined set not including a zero vector (0, 0).

9. The method of claim 1 , wherein decoding the block vector further comprises:

adding only candidate block vectors from neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

10. An apparatus configured to decode video data, the apparatus comprising:

a memory configured to store video data; and

a video decoder configured to:

receive a first block of video data in a first frame of video data, the first block of video data being encoded relative to a first predictive block in the first frame of video data, the first predictive block being identified by a block vector; and

decode the block vector using a motion vector prediction process and a same motion vector candidate list as used for decoding a motion vector, wherein the motion vector is used to identify an inter-frame predictive block for a second block of video data coded using inter coding.

11. The apparatus of claim 10 , wherein the video decoder is further configured to:

receive the second block of video data; and

decode the motion vector using the motion vector prediction process and the motion vector candidate list.

12. The apparatus of claim 11 , wherein the video decoder is further configured to:

decode the first block of video data using the first predictive block and the block vector; and

decode the second block of video data using the inter-frame predictive block and the motion vector.

13. The apparatus of claim 11 , wherein to decode the motion vector further, the video decoder is further configured to:

add at least one of a candidate block vector and a candidate motion vector from one or more neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

14. The apparatus of claim 10 , wherein to decode the block vector, the video decoder is further configured to:

add at least one of a candidate block vector and a candidate motion vector from one or more neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

15. The apparatus of claim 14 , wherein the video decoder is further configured to:

determine that a respective candidate block vector or a respective candidate motion vector is unavailable; and

add a default motion vector to the motion vector candidate list.

16. The apparatus of claim 15 , wherein the video decoder is further configured to:

determine the default motion vector from a predetermined set of default motion vectors, the predetermined set not including a zero vector (0, 0).

17. The apparatus of claim 10 , wherein to decode the block vector, the video decoder is further configured to:

add only candidate block vectors from neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

18. The apparatus of claim 10 , further comprising a display device in communication with the video decoder, wherein the video decoder is further configured to decode the video data, and wherein the display device is configured to display the decoded video data.

19. A method of encoding video data, the method comprising:

encoding a first block of video data in a first frame of video data, the first block of video data being encoded relative to a first predictive block in the first frame of video data, the first predictive block being identified by a block vector; and

encoding the block vector using a motion vector prediction process and a same motion vector candidate list as used for decoding a motion vector, wherein the motion vector is used to identify an inter-frame predictive block for a second block of video data coded using inter coding.

20. The method of claim 19 , further comprising:

encoding the second block of video data; and

encoding the motion vector using the motion vector prediction process and the motion vector candidate list.

21. The method of claim 20 , further comprising:

encoding the first block of video data using the first predictive block and the block vector; and

encoding the second block of video data using the inter-frame predictive block and the motion vector.

22. The method of claim 20 , wherein encoding the motion vector further comprises:

adding at least one of a candidate block vector and a candidate motion vector from one or more neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

23. The method of claim 19 , wherein encoding the block vector further comprises:

adding at least one of a candidate block vector and a candidate motion vector from one or more neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

24. The method of claim 23 , further comprising:

determining that a respective candidate block vector or a respective candidate motion vector is unavailable; and

adding a default motion vector to the motion vector candidate list.

25. The method of claim 24 , further comprising:

determining the default motion vector from a predetermined set of default motion vectors, the predetermined set not including a zero vector (0, 0).

26. The method of claim 19 , wherein encoding the block vector further comprises:

adding only candidate block vectors from neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

27. An apparatus configured to decode video data, the apparatus comprising:

means for receiving a first block of video data in a first frame of video data, the first block of video data being encoded relative to a first predictive block in the first frame of video data, the first predictive block being identified by a block vector; and

means for decoding the block vector using a motion vector prediction process and a same motion vector candidate list as used for decoding a motion vector, wherein the motion vector is used to identify an inter-frame predictive block for a second block of video data coded using inter coding.

28. The apparatus of claim 27 , wherein the means for decoding the block vector further comprises:

means for adding at least one of a candidate block vector and a candidate motion vector from one or more neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

29. The apparatus of claim 28 , further comprising:

means for determining that a respective candidate block vector or a respective candidate motion vector is unavailable;

means for adding a default motion vector to the motion vector candidate list; and

means for determining the default motion vector from a predetermined set of default motion vectors, the predetermined set not including a zero vector (0, 0).

30. The apparatus of claim 27 , wherein the means for decoding the block vector further comprises:

means for adding only candidate block vectors from neighboring blocks in the motion vector candidate list to a motion vector predictor candidate list for the motion vector prediction process.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2015
From: PANG, CHAO; SEREGIN, VADIM; KARCZEWICZ, MARTA
To: QUALCOMM INCORPORATED
Reel/Frame 037028/0450 →
Continuity (6)
Provisional Application 62063857 · Oct 14, 2014
Provisional Application 62065384 · Oct 17, 2014
Provisional Application 62065643 · Oct 18, 2014
Provisional Application 62109323 · Jan 29, 2015
Provisional Application 62110261 · Jan 30, 2015
Related Publication 20160105670A1 · Apr 14, 2016