IP Library › Granted Patent US 12,081,792
Granted Patent B2
US 12,081,792 · App. 17/941,432 · Granted Sep 3, 2024

Adjacent spatial motion vector predictor candidates improvement

Inventors: Han Gao (Palo Alto, CA); Liang Zhao (Palo Alto, CA); Xin Zhao (Palo Alto, CA); Shan Liu (Palo Alto, CA)
Assignee: TENCENT AMERICA LLC
H04N19/52H04N19/105H04N19/139H04N19/176H04N19/593H04N19/88
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 12,081,792
App. No.
17/941,432
Granted
Sep 3, 2024
Kind
B2
Abstract

Method, device, and non-transitory storage medium for interleaved motion vector prediction (MVP) for video coding are provided. A MVP candidate list for a current block may be generated based on spatial motion vectors associated with neighboring blocks and non-neighboring blocks. A first spatial motion vector predictor (SMVP) associated with an adjacent neighboring block to the left of the current block may be inserted into the MVP candidate list, and a second SMVP associated with an adjacent neighboring block to the top of the current block may be inserted into the MVP candidate list. One or more candidates in the MVP candidate list may be pruned based on determining that the one or more candidates have a same SMVP.

Claims (42)

1. A method for interleaved motion vector prediction (MVP) for video coding, the method being executed by at least one processor, the method comprising:

generating a MVP candidate list for a current block based on a plurality of spatial motion vector predictors (SMVPs) associated with neighboring blocks and non-neighboring blocks;

inserting a first SMVP associated with a first adjacent neighboring block to the left of the current block to the MVP candidate list;

inserting a second SMVP associated with a second adjacent neighboring block to the top of the current block to the MVP candidate list, wherein SMVPs associated with the first adjacent neighboring block to the left of the current block are interweaved with SMVPs associated with the second adjacent neighboring block to the top of the current block; and

pruning one or more candidates in the MVP candidate list based on determining that the one or more candidates have a same SMVP.

2. The method of claim 1 , further comprising:

inserting a third SMVP associated with a first non-adjacent neighboring block to the left of the current block to the MVP candidate list; and

inserting a fourth SMVP associated with a second non-adjacent neighboring block to the top of the current block to the MVP candidate list.

3. The method of claim 1 , wherein based on a first condition being satisfied, inserting the first SMVP prior to the second SMVP.

4. The method of claim 3 , wherein the first condition is one of:

a width of the current block is greater than a height of the current block; and

the height of the current block is greater than the width of the current block.

5. The method of claim 1 , wherein based on a second condition being satisfied, inserting the second SMVP prior to the first SMVP.

6. The method of claim 5 , wherein the second condition is one of:

a width of the current block is greater than a height of the current block; and

the height of the current block is greater than the width of the current block.

7. The method of claim 2 , further comprising inserting a fifth SMVP associated with a third adjacent neighboring block to a top left corner of the current block to the MVP candidate list.

8. The method of claim 7 , wherein the fifth SMVP is inserted prior to the third SMVP and the fourth SMVP to the MVP candidate list.

9. The method of claim 1 , wherein each candidate motion vector predictor in the MVP candidate list is associated with an accumulated weight, wherein the accumulated weight indicates an importance associated with each candidate motion vector predictor.

10. The method of claim 9 , wherein based on determining the accumulated weight associated with at least one candidate motion vector predictor is zero, prohibiting weight accumulation associated with the at least one candidate motion vector predictor.

11. The method of claim 1 , wherein the neighboring blocks and the non-neighboring blocks have a predetermined size.

12. A device for interleaved motion vector prediction (MVP) for video coding, the device comprising:

at least one memory configured to store program code; and

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

generating code configured to cause the at least one processor to generate a MVP candidate list for a current block based on a plurality spatial motion vector predictors (SMVPs) associated with neighboring blocks and non-neighboring blocks;

first inserting code configured to cause the at least one processor to insert a first SMVP associated with a first adjacent neighboring block to the left of the current block to the MVP candidate list;

second inserting code configured to cause the at least one processor to insert a second SMVP associated with a second adjacent neighboring block to the top of the current block to the MVP candidate list, wherein SMVPs associated with the first adjacent neighboring block to the left of the current block are interweaved with SMVPs associated with the second adjacent neighboring block to the top of the current block; and

pruning code configured to cause the at least one processor to prune one or more candidates in the MVP candidate list based on determining that the one or more candidates have a same SMVP.

13. The device of claim 12 , the program code further comprising:

third inserting code configured to cause the at least one processor to insert a third SMVP associated with a first non-adjacent neighboring block to the left of the current block to the MVP candidate list; and

fourth inserting code configured to cause the at least one processor to insert a fourth SMVP associated with a second non-adjacent neighboring block to the top of the current block to the MVP candidate list.

14. The device of claim 12 , wherein based on a first condition being satisfied, inserting the first SMVP prior to the second SMVP.

15. The device of claim 12 , wherein based on a second condition being satisfied, inserting the second SMVP prior to the first SMVP.

16. The device of claim 13 , wherein the program code further comprises fifth inserting code configured to cause the at least one processor to insert a fifth SMVP associated with a third adjacent neighboring block to a top left corner of the current block to the MVP candidate list.

17. The device of claim 16 , wherein the fifth SMVP is inserted prior to the third SMVP and the fourth SMVP to the MVP candidate list.

18. The device of claim 12 , wherein each candidate motion vector predictor in the MVP candidate list is associated with an accumulated weight, wherein the accumulated weight indicates an importance associated with each candidate motion vector predictor.

19. The device of claim 18 , wherein based on determining the accumulated weight associated with at least one candidate motion vector predictor is zero, prohibiting weight accumulation associated with the at least one candidate motion vector predictor.

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 interleaving motion vector prediction (MVP) for video coding, cause the one or more processors to:

generate a MVP candidate list for a current block based on a plurality of spatial motion vector predictors (SMVPs) associated with neighboring blocks and non-neighboring blocks;

insert a first SMVP associated with a first adjacent neighboring block to the left of the current block to the MVP candidate list;

insert a second SMVP associated with a second adjacent neighboring block to the top of the current block to the MVP candidate list, wherein SMVPs associated with the first adjacent neighboring block to the left of the current block are interweaved with SMVPs associated with the second adjacent neighboring block to the top of the current block; and

prune one or more candidates in the MVP candidate list based on determining that the one or more candidates have a same SMVP.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2022
From: GAO, HAN; ZHAO, LIANG; ZHAO, XIN; LIU, SHAN
To: TENCENT AMERICA LLC
Reel/Frame 061405/0907 →
Continuity (2)
Provisional Application 63349761 · Jun 7, 2022
Related Publication 20230396793A1 · Dec 7, 2023