IP Library › Granted Patent US 10,757,420
Granted Patent B2
US 10,757,420 · App. 16/015,027 · Granted Aug 25, 2020

Combination of inter-prediction and intra-prediction in video coding

Inventors: Kai Zhang (San Diego, CA); Jianle Chen (San Diego, CA); Li Zhang (San Diego, CA); Xiang Li (Los Gatos, CA); Marta Karczewicz (San Diego, CA)
Assignee: QUALCOMM Incorporated
H04N19/159H04N19/107H04N19/11H04N19/124H04N19/139H04N19/176H04N19/182H04N19/44H04N19/463H04N19/503H04N19/513H04N19/593H04N19/186
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,757,420
App. No.
16/015,027
Filed
Jun 21, 2018
Granted
Aug 25, 2020
Kind
B2
Art Unit
2488
USPC
375/240.13
Abstract

Techniques are described for using an inter-intra-prediction block. A video coder may generate a first prediction block according to an intra-prediction mode and generate a second prediction block according to an inter-prediction mode. The video coder may weighted combine, such as based on the intra-prediction mode, the two prediction blocks to generate an inter-intra-prediction block (e.g., final prediction block). In some examples, an inter-intra candidate is identified in a list of candidate motion vector predictors, and an inter-intra-prediction block is used based on identification of the inter-intra candidate in the list of candidate motion vector predictors.

Claims (83)

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

constructing a list of candidate motion vector predictors for a current block, wherein constructing the list of candidate motion vector predictors comprises:

including an inter-prediction candidate in the list of candidate motion vector predictors, wherein the inter-prediction candidate comprises motion information including information of a motion vector of a neighboring or collocated block of the current block; and

including an inter-intra candidate in the same list of candidate motion vector predictors that includes the inter-prediction candidate, wherein the inter-intra candidate comprises motion vector information of an inter-intra block generated from a first prediction block according to an intra-prediction mode and generated from a second prediction block according to an inter-prediction mode and the motion vector information;

determining that the inter-intra candidate is to be used;

generating an inter-intra-prediction block for the current block comprising performing inter-prediction for the current block based on the motion vector information of the inter-intra candidate; and

reconstructing the current block based on the inter-intra-prediction block.

2. The method of claim 1 , wherein reconstructing the current block based on the inter-intra-prediction block comprises adding values of the inter-intra-prediction block to values of a residual block to reconstruct the current block.

3. The method of claim 1 , wherein determining that the inter-intra candidate is to be used for the current block comprises:

receiving an index into the list of candidate motion vector predictors;

determining that the inter-intra candidate is identified in the list of candidate motion vector predictors by the received index.

4. The method of claim 1 , wherein constructing the list of candidate motion vector comprises:

after including the inter-prediction candidate into the list of candidate motion vector predictors, including the inter-intra candidate in the same list of candidate motion vector predictors that includes the inter-prediction candidate.

5. The method of claim 1 , wherein determining that the inter-intra candidate is to be used comprises determining that the motion information of the inter-intra candidate is identified by a smallest index in the list of candidate motion vector predictors; and

performing inter-prediction for the current block based on the motion information.

6. The method of claim 1 , further comprising:

determining a maximum number of allowable inter-intra candidates,

wherein including the inter-intra candidate in the list of candidate motion vector predictors comprises including the inter-intra candidate in the list based on the determined maximum number of allowable inter-intra candidates.

7. The method of claim 1 , wherein determining that the inter-intra candidate is to be used comprises determining that the inter-intra candidate is to be used without receiving any additional signaling indicating that the current block is predicted according to an inter-intra-prediction mode.

8. The method of claim 1 , wherein the list of candidate motion vector predictors comprises one of a merge candidate list or an advanced motion vector prediction (AMVP) candidate list.

9. The method of claim 1 , further comprising:

determining an intra-prediction mode to determine the information to generate the first prediction block; and

generating the first prediction block based on the determined intra-prediction mode.

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

constructing a list of candidate motion vector predictors for a current block, wherein constructing the list of candidate motion vector predictors comprises:

including an inter-prediction candidate in the list of candidate motion vector predictors, wherein the inter-prediction candidate comprises motion information including information of a motion vector of a neighboring or collocated block of the current block; and

including an inter-intra candidate in the same list of candidate motion vector predictors that includes the inter-prediction candidate, wherein the inter-intra candidate comprises motion vector information of an inter-intra block generated from a first prediction block according to an intra-prediction mode and generated from a second prediction block according to an inter-prediction mode and the motion vector information;

determining that the inter-intra candidate is to be used; and

signaling an index value into the list of candidate motion vector predictors that identifies the inter-intra candidate in the list of candidate motion vector predictors based on the determination.

11. The method of claim 10 , further comprising:

generating an inter-intra-prediction block for the current block based on the motion vector information of the inter-intra candidate;

determining a residual between the current block and the inter-intra-prediction block; and

signaling information indicative of the residual.

12. The method of claim 10 , wherein constructing the list of candidate motion vector comprises:

after including the inter-prediction candidate into the list of candidate motion vector predictors, including the inter-intra candidate in the same list of candidate motion vector predictors that includes the inter-prediction candidate.

13. The method of claim 10 , wherein determining that the inter-intra candidate is to be used comprises determining that the motion information of the inter-intra candidate is identified by a smallest index in the list of candidate motion vector predictors; and

performing inter-prediction for the current block based on the motion information.

14. The method of claim 10 , further comprising:

determining a maximum number of allowable inter-intra candidates,

wherein including the inter-intra candidate in the list of candidate motion vector predictors comprises including the inter-intra candidate in the list based on the determined maximum number of allowable inter-intra candidates.

15. The method of claim 10 , wherein the list of candidate motion vector predictors comprises one of a merge candidate list or an advanced motion vector prediction (AMVP) candidate list.

16. The method of claim 10 , further comprising:

determining an intra-prediction mode to determine the information to generate the first prediction block; and

generating the first prediction block based on the determined intra-prediction mode.

17. A device for coding video data, the device comprising:

a memory; and

a video coder comprising processing circuitry, wherein the video coder is configured to:

construct a list of candidate motion vector predictors, for storage in the memory, for a current block, wherein to construct the list of candidate motion vector predictors, the video coder is configured to:

include an inter-prediction candidate in the list of candidate motion vector predictors, wherein the inter-prediction candidate comprises motion information including information of a motion vector of a neighboring or collocated block of the current block; and

include an inter-intra candidate in the same list of candidate motion vector predictors that includes the inter-prediction candidate, wherein the inter-intra candidate comprises motion vector information of an inter-intra block generated from a first prediction block according to an intra-prediction mode and generated from a second prediction block according to an inter-prediction mode and the motion vector information;

determine that the inter-intra candidate is to be used;

generate an inter-intra-prediction block for the current block comprising performing inter-prediction for the current block based on the motion vector information of the inter-intra candidate; and

at least one of:

reconstruct the current block based on the inter-intra-prediction block; or

signal a residual between the current block and the inter-intra-prediction block and an index value into the list of candidate motion vector predictors that identifies the inter-intra candidate in the list of candidate motion vector predictors based on the determination that the inter-intra candidate is to be used.

18. The device of claim 17 , wherein the video coder comprises a video decoder, and wherein the video decoder is configured to reconstruct the current block based on the inter-intra-prediction block by adding values of the inter-intra-prediction block to values of a residual block to reconstruct the current block.

19. The device of claim 17 , wherein the video coder comprises a video decoder, wherein to determine that the inter-intra candidate is to be used for the current block, the video decoder is configured to:

receive an index into the list of candidate motion vector predictors;

determine that the inter-intra candidate is identified in the list of candidate motion vector predictors by the received index.

20. The device of claim 17 , wherein the video coder comprises a video encoder, wherein the video encoder is configured to:

determine the residual between the current block and the prediction block.

21. The device of claim 17 , wherein to construct the list of candidate motion vector, the video coder is configured to:

after including the inter-prediction candidate into the list of candidate motion vector predictors, include the inter-intra candidate in the same list of candidate motion vector predictors that includes the inter-prediction candidate.

22. The device of claim 17 , wherein the video coder is configured to:

determine that the inter-intra candidate is to be used comprises determining that the motion information of the inter-intra candidate is identified by a smallest index in the list of candidate motion vector predictors; and

perform inter-prediction for the current block based on the motion information.

23. The device of claim 17 , wherein the video coder is configured to:

determine a maximum number of allowable inter-intra candidates,

wherein to include the inter-intra candidate in the list of candidate motion vector predictors, the video coder is configured to include the inter-intra candidate in the list based on the determined maximum number of allowable inter-intra candidates.

24. The device of claim 17 , wherein the video coder comprises a video decoder, and wherein to determine that the inter-intra candidate is to be used, the video decoder is configured to determine that the inter-intra candidate is to be used without receiving any additional signaling indicating that the current block is predicted according to an inter-intra-prediction mode.

25. The device of claim 17 , wherein the list of candidate motion vector predictors comprises one of a merge candidate list or an advanced motion vector prediction (AMVP) candidate list.

26. The device of claim 17 , wherein the video coder is configured to:

determine an intra-prediction mode to determine the information to generate the first prediction block; and

generating the first prediction block based on the determined intra-prediction mode.

27. A non-transitory computer-readable storage medium storing instructions thereon that when executed cause one or more processors to:

construct a list of candidate motion vector predictors, for storage in the memory, for a current block, wherein to construct the list of candidate motion vector predictors, the instructions cause the one or more processors to:

include an inter-prediction candidate in the list of candidate motion vector predictors, wherein the inter-prediction candidate comprises motion information including information of a motion vector of a neighboring or collocated block of the current block; and

include an inter-intra candidate in the same list of candidate motion vector predictors that includes the inter-prediction candidate, wherein the inter-intra candidate comprises motion vector information of an inter-intra block generated from a first prediction block according to an intra-prediction mode and generated from a second prediction block according to an inter-prediction mode and the motion vector information;

determine that the inter-intra candidate is to be used;

generate an inter-intra-prediction block for the current block comprising performing inter-prediction for the current block based on the motion vector information of the inter-intra candidate; and

at least one of:

reconstruct the current block based on the inter-intra-prediction block; or

signal a residual between the current block and the inter-intra-prediction block and an index value into the list of candidate motion vector predictors that identifies the inter-intra candidate in the list of candidate motion vector predictors based on the determination that the inter-intra candidate is to be used.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2018
From: ZHANG, KAI; CHEN, JIANLE; ZHANG, LI; LI, XIANG; KARCZEWICZ, MARTA
To: QUALCOMM INCORPORATED
Reel/Frame 046942/0767 →
Continuity (2)
Provisional Application 62524231 · Jun 23, 2017
Related Publication 20180376149A1 · Dec 27, 2018
Cited By (9)
US 12,348,760 US 12,363,337 US 12,425,578 US 12,432,355 US 12,477,106 US 12,615,386 US 12,621,482 US 12,627,832 US 12,634,513