IP Library › Granted Patent US 11,146,808
Granted Patent B2
US 11,146,808 · App. 16/911,256 · Granted Oct 12, 2021

Method and apparatus for video coding

Inventors: Xiaozhong Xu (State College, PA); Shan Liu (San Jose, CA)
Assignee: TENCENT AMERICA LLC
H04N19/513H04N19/176
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 11,146,808
App. No.
16/911,256
Granted
Oct 12, 2021
Kind
B2
Abstract

An apparatus for video decoding includes processing circuitry. The processing circuitry can be configured to receive data of a current block coded with an intra block copy (IBC) mode in a bitstream. A block vector of the current block can be determined based on a history-based block vector prediction (HBVP) table that includes one or more entries each corresponding to a previously decoded block. Each entry can include a block vector of the corresponding previously decoded block and a location of the corresponding previously decoded block. The current block can be reconstructed based on the determined block vector of the current block.

Claims (48)

1. A method of video decoding at a video decoder, comprising:

receiving data of a current block coded with an intra block copy (IBC) mode in a bitstream;

constructing a block vector prediction (BVP) candidate list for decoding the current block based on a history-based block vector prediction (HBVP) table that includes one or more entries each corresponding to a previously decoded block, each entry including a block vector of the corresponding previously decoded block and a location of the corresponding previously decoded block, the location being represented by an x coordinate and a y coordinate of a same corner of the corresponding previously decoded block, a block vector in the HBVP table being selected to be included in the BVP candidate list according to at least one of the x coordinate or the y coordinate of the previously decoded block corresponding to the selected block vector;

determining a block vector of the current block according to the BVP candidate list for decoding the current block; and

reconstructing the current block based on the determined block vector of the current block.

2. The method of claim 1 , further comprising:

storing the block vector, a location, a width, and a height of the current block in the HBVP table.

3. The method of claim 1 , wherein each entry includes the x coordinate and the y coordinate of a top-left corner of the corresponding previously decoded block.

4. The method of claim 1 , wherein each entry includes a width and a height of the corresponding previously decoded block.

5. The method of claim 1 , wherein

the BVP candidate list incudes one or more of:

a first candidate that includes a first block vector of the block vectors in the HBVP table, the corresponding previously decoded block of the first block vector having a location to the left of the current block, or

a second candidate that includes a second block vector of the block vectors in the HBVP table, the corresponding previously decoded block of the second block vector having a location on top of the current block.

6. The method of claim 1 , wherein the current block is coded in one of a skip mode, a merge mode, or an advanced motion vector prediction (AMVP) mode.

7. The method of claim 1 , wherein the constructing the BVP candidate list includes:

scanning the entries in the HBVP table according to an order, and

adding the block vector of one of the entries in the HBVP table to the BVP candidate list whenever the respective entry having a location next to the current block until a maximum number of the BVP candidate list is reached.

8. An apparatus of video decoding, comprising circuitry configured to:

receive data of a current block coded with an intra block copy (IBC) mode in a bitstream;

construct a block vector prediction (BVP) candidate list for decoding the current block based on a history-based block vector prediction (HBVP) table that includes one or more entries each corresponding to a previously decoded block, each entry including a block vector of the corresponding previously decoded block and a location of the corresponding previously decoded block, the location being represented by an x coordinate and a y coordinate of a same corner of the corresponding previously decoded block, a block vector in the HBVP table being selected to be included in the BVP candidate list according to at least one of the x coordinate or the y coordinate of the previously decoded block corresponding to the selected block vector;

determine a block vector of the current block according to the BVP candidate list for decoding the current block; and

reconstruct the current block based on the determined block vector of the current block.

9. The apparatus of claim 8 , wherein the circuitry is further configured to:

store the block vector, a location, a width, and a height of the current block in the HBVP table.

10. The apparatus of claim 8 , wherein each entry includes the x coordinate and the y coordinate of a top-left corner of the corresponding previously decoded block.

11. The apparatus of claim 8 , wherein each entry includes a width and a height of the corresponding previously decoded block.

12. The apparatus of claim 8 , wherein

the BVP candidate list includes one or more of:

a first candidate that includes a first block vector of the block vectors in the HBVP table, the corresponding previously decoded block of the first block vector having a location to the left of the current block, or

a second candidate that includes a second block vector of the block vectors in the HBVP table, the corresponding previously decoded block of the second block vector having a location on top of the current block.

13. The apparatus of claim 8 , wherein the current block is coded in one of a skip mode, a merge mode, or an advanced motion vector prediction (AMVP) mode.

14. The apparatus of claim 8 , wherein the circuitry is further configured to:

scan the entries in the HBVP table according to an order, and

add the block vector of one of the entries in the HBVP table to the BVP candidate list whenever the respective entry having a location next to the current block until a maximum number of the BVP candidate list is reached.

15. A non-transitory computer-readable medium storing instructions that, when executed by a processor, cause the processor to perform a method of video decoding, the method comprising:

receiving data of a current block coded with an intra block copy (IBC) mode in a bitstream;

constructing a block vector prediction (BVP) candidate list for decoding the current block based on a history-based block vector prediction (HBVP) table that includes one or more entries each corresponding to a previously decoded block, each entry including a block vector of the corresponding previously decoded block and a location of the corresponding previously decoded block, the location being represented by an x coordinate and a y coordinate of a same corner of the corresponding previously decoded block, a block vector in the HBVP table being selected to be included in the BVP candidate list according to at least one of the x coordinate or the y coordinate of the previously decoded block corresponding to the selected block vector;

determining a block vector of the current block according to the BVP candidate list for decoding the current block; and

reconstructing the current block based on the determined block vector of the current block.

16. The non-transitory computer-readable medium of claim 15 , wherein the method further comprises:

storing the block vector, a location, a width, and a height of the current block in the HBVP table.

17. The non-transitory computer-readable medium of claim 15 , wherein each entry includes the x coordinate and the y coordinate of a top-left corner of the corresponding previously decoded block.

18. The non-transitory computer-readable medium of claim 15 , wherein each entry includes a width and a height of the corresponding previously decoded block.

19. The non-transitory computer-readable medium of claim 15 , wherein

the BVP candidate list includes one or more of:

a first candidate that, includes a first block vector of the block vectors in the HBVP table, the corresponding previously decoded block of the first block vector having a location to the left of the current block, or

a second candidate that includes a second block vector of the block vectors in the HBVP table, the corresponding previously decoded block of the second block vector having a location on top of the current block.

20. The non-transitory computer-readable medium of claim 15 , wherein the current block is coded in one of a skip mode, a merge mode, or an advanced motion vector prediction (AMVP) mode.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2020
From: XU, XIAOZHONG; LIU, SHAN
To: TENCENT AMERICA LLC
Reel/Frame 053300/0250 →
Continuity (2)
Provisional Application 62867658 · Jun 27, 2019
Related Publication 20200413084A1 · Dec 31, 2020
Cited By (1)
US 12,701,242