IP Library › Granted Patent US 10,362,330
Granted Patent B1
US 10,362,330 · App. 16/233,984 · Granted Jul 23, 2019

Combining history-based motion vector prediction and non-adjacent merge prediction

Inventors: Xiang Li (San Diego, CA); Jing Ye (San Jose, CA); Shan Liu (San Jose, CA)
Assignee: TENCENT AMERICA LLC
H04N19/52H04N19/176H04N19/44
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,362,330
App. No.
16/233,984
Granted
Jul 23, 2019
Kind
B1
Abstract

A method and apparatus for generating a merge candidate list for encoding or decoding of a video sequence includes determining a block size of a current block. History-based motion vector predictors and non-adjacent motion vector predictors are identified. The merge candidate list is generated using the history-based motion vector predictors and the non-adjacent motion vector predictors to permit the encoding or the decoding of the video sequence.

Claims (28)

1. A method for generating a merge candidate list for encoding or decoding of a video sequence, the method comprising:

identifying history-based motion vector predictors and non-adjacent motion vector predictors; and

generating, based on identifying the history-based motion vector predictors and the non-adjacent motion vector predictors, the merge candidate list using the history-based motion vector predictors and the non-adjacent motion vector predictors to permit the encoding or the decoding of the video sequence.

2. The method of claim 1 , wherein the history-based motion vector predictors are inserted into the merge candidate list before the non-adjacent motion vector predictors.

3. The method of claim 1 , wherein the non-adjacent motion vector predictors are inserted into the merge candidate list before the history-based motion vector predictors.

4. The method of claim 1 , wherein the history-based motion vector predictors are inserted into the merge candidate list before the non-adjacent motion vector predictors, and wherein the non-adjacent motion vector predictors are only inserted into the merge candidate list if a current block size is less than a threshold.

5. The method of claim 1 , wherein the non-adjacent motion vector predictors are inserted into the merge candidate list before the history-based motion vector predictors and the history-based motion vector predictors are only inserted into the merge candidate list if a current block size is greater than a threshold.

6. The method of claim 1 , wherein the history-based motion vector predictors are used to generate the merge candidate list before the non-adjacent motion vector predictors, and wherein if the merge candidate list is not full and a block size is greater than a threshold, then the non-adjacent motion vector predictors are used.

7. The method of claim 1 , wherein the non-adjacent motion vector predictors are used before the history-based motion vector predictors, and wherein if the merge candidate list is not full and a block size is less than a threshold, then the history-based motion vector predictors are used.

8. The method of claim 7 , wherein the block size includes a sum of a width and a height of a block.

9. The method of claim 7 , wherein the block size includes a product of a width and a height of a block.

10. The method of claim 7 , wherein the block size is a maximum of a width and a height of a block.

11. A device for generating a merge candidate list for encoding or decoding of a video sequence, comprising:

at least one memory configured to store program code;

at least one processor configured to read the program code and operate as instructed by the program code, the program code including:

identifying code configured to cause the at least one processor to identify history-based motion vector predictors and non-adjacent motion vector predictors; and

generating code configured to cause the at least one processor to generate, based on identifying the history-based motion vector predictors and the non-adjacent motion vector predictors, the merge candidate list using the history-based motion vector predictors and the non-adjacent motion vector predictors to permit the encoding or the decoding of the video sequence.

12. The device of claim 11 , wherein the history-based motion vector predictors are inserted into the merge candidate list before the non-adjacent motion vector predictors.

13. The device of claim 11 , wherein the non-adjacent motion vector predictors are inserted into the merge candidate list before the history-based motion vector predictors.

14. The device of claim 11 , wherein the history-based motion vector predictors are inserted into the merge candidate list before the non-adjacent motion vector predictors, and wherein the non-adjacent motion vector predictors are only inserted into the merge candidate list if a current block size is less than a threshold.

15. The device of claim 11 , wherein the non-adjacent motion vector predictors are inserted into the merge candidate list before the history-based motion vector predictors and the history-based motion vector predictors are only inserted into the merge candidate list if a current block size is greater than a threshold.

16. The device of claim 11 , wherein the history-based motion vector predictors are used to generate the merge candidate list before the non-adjacent motion vector predictors, and wherein if the merge candidate list is not full and a block size is greater than a threshold, then the non-adjacent motion vector predictors are used.

17. The device of claim 11 , wherein the non-adjacent motion vector predictors are used before the history-based motion vector predictors, and wherein if the merge candidate list is not full and a block size is less than a threshold, then the history-based motion vector predictors are used.

18. The device of claim 17 , wherein the block size includes a sum of a width and a height of a block.

19. The device of claim 17 , wherein the block size includes a sum of a width and a height of a block.

20. A non-transitory computer-readable medium storing instructions, the instructions comprising: one or more instructions that, when executed by one or more processors of a device for generating a merge candidate list for encoding or decoding of a video sequence, cause the one or more processors to:

identify history-based motion vector predictors and non-adjacent motion vector predictors; and

generate, based on identifying the history-based motion vector predictors and the non-adjacent motion vector predictors, the merge candidate list using the history-based motion vector predictors and the non-adjacent motion vector predictors to permit the encoding or the decoding of the video sequence.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2018
From: LI, XIANG; YE, JING; LIU, SHAN
To: TENCENT AMERICA, LLC
Reel/Frame 047877/0030 →
Continuity (1)
Provisional Application 62712057 · Jul 30, 2018
Cited By (27)
US 12,200,189 US 12,238,306 US 12,273,525 US 12,273,536 US 12,278,986 US 12,294,696 US 12,309,421 US 12,323,617 US 12,328,432 US 12,368,880 US 12,401,784 US 12,401,820 US 12,407,835 US 12,425,642 US 12,457,327 US 12,495,141 US 12,549,756 US 12,556,699 US 12,556,738 US 12,581,103 US 12,587,648 US 12,598,300 US 12,604,029 US 12,634,508 US 12,641,216 US 12,695,899 US 12,713,055