IP Library › Granted Patent US 11,405,639
Granted Patent B2
US 11,405,639 · App. 17/225,397 · Granted Aug 2, 2022

Prediction method using current picture referencing mode, and video decoding device therefor

Inventors: Jae Il Kim (Seoul, KR); Sun Young Lee (Seoul, KR); Se Hoon Son (Seoul, KR); Jae Seob Shin (Seoul, KR)
Assignee: SK TELECOM. CO., LTD.
H04N19/593H04N19/105H04N19/11H04N19/174H04N19/176H04N19/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 11,405,639
App. No.
17/225,397
Granted
Aug 2, 2022
Kind
B2
Abstract

Disclosed are a method for predicting a current block using a current picture referencing mode (also called intra block copy (ibc) mode), and a video encoding or decoding device therefor. The method comprises: decoding, from a bitstream, an enable flag indicating whether the application of the ibc mode is allowed, and type information indicating whether the type of slices is an inter type; depending on the enable flag and the type information, decoding from the bitstream an ibc flag indicating whether a prediction mode for the current block is the ibc mode; when the ibc flag indicates the ibc mode, decoding motion information from the bitstream; and predicting the current block by using a block indicated by the motion information within a current picture in which the current block is located.

Claims (68)

1. A method of predicting a current block to be decoded in an intra block copy (ibc) mode, the method comprising:

decoding, from the bitstream, an ibc flag indicating whether a prediction mode of the current block is the ibc mode;

when the ibc flag indicates the ibc mode, decoding, from the bitstream, motion information which includes a block vector predictor (BVP) index and a block vector difference (BVD);

constructing a BVP candidate list for the current block;

from the BVP candidate list, selecting a BVP candidate corresponding to the BVP index;

deriving a block vector (BV) of the current block based on the BVD and the selected BVP candidate; and

predicting the current block using a reference block, within the current picture, indicated by the derived BV,

wherein the BVP candidate list is constructed by adding k BVP candidates to the BVP candidate list in following order until the BVP candidate list is full, wherein k is a preset integer greater than 0:

1) a block vector of a left neighboring block positioned on a left side of the current block, the left neighboring block predicted in the ibc mode;

2) a block vector of an upper neighboring block positioned above the current block, the upper neighboring block predicted in the ibc mode;

3) one or more block vectors from a history based motion vector predictor (HMVP) candidate list, wherein the HMVP candidate list contains a respective block vector of at least one block already predicted in the ibc mode; and

4) one or more zero block vectors.

2. The method of claim 1 , further comprising:

decoding, from a bitstream, an enable flag indicating whether application of the ibc mode is allowed, and type information indicating whether a slice type is intra slice,

wherein the ibc flag is decoded when the enable flag indicates that the application of the ibc mode is allowed and the type information indicates that the slice type is not intra slice.

3. The method of claim 2 , further comprising:

before decoding the ibc flag, decoding, from the bitstream, mode information indicating whether the current block is encoded by intra prediction,

wherein the enable flag and the type information are evaluated when the mode information indicates that the current block is encoded by inter prediction.

4. The method of claim 3 , wherein the motion information is decoded when the enable flag indicates that the application of the ibc mode is allowed and the type information indicates that the slice type is intra slice.

5. The method of claim 2 , further comprising:

before decoding the ibc flag, decoding, from the bitstream, mode information indicating whether the current block is encoded by intra prediction,

wherein the enable flag and the type information are evaluated when the mode information indicates that the current block is encoded by intra prediction.

6. The method of claim 5 , wherein the motion information is decoded when the mode information indicates inter prediction and the type information indicates that the type is intra slice.

7. The method of claim 1 ,

wherein the left neighboring block comprises a block positioned at a lower side along a height of the current block, and

wherein the upper neighboring block comprises a block positioned on a right side along a width of the current block.

8. The method of claim 1 , wherein the HMVP candidates are listed in the HMVP candidate list in the order in which related blocks are predicted in the ibc mode, and the HMVP candidates are used to compose the BVP candidate list in the reverse order to the order listed in the HMVP candidate list.

9. A video encoding device comprising:

an encoder configured

to encode an intra block copy (ibc) flag indicating whether a prediction mode of the current block is the ibc mode depending on the enable flag and the type information, and

to encode, when the ibc flag indicates that the prediction mode of the current block is the ibc mode, motion information; and

a predictor configured to:

construct a BVP candidate list for the current block;

from the BVP candidate list, select a BVP candidate corresponding to the BVP index;

derive a block vector (BV) of the current block based on the BVD and the selected BVP candidate; and

predict the current block using a reference block, within the current picture, indicated by the derived BV,

wherein the BVP candidate list is constructed by adding k BVP candidates to the BVP candidate list in following order until the BVP candidate list is full, wherein k is a preset integer greater than 0:

1) a block vector of a left neighboring block positioned on a left side of the current block, the left neighboring block predicted in the ibc mode;

2) a block vector of an upper neighboring block positioned above the current block, the upper neighboring block predicted in the ibc mode;

3) one or more block vectors from a history based motion vector predictor (HMVP) candidate list, wherein the HMVP candidate list contains a respective block vector of at least one block already predicted in the ibc mode; and

4) one or more zero block vectors.

10. The device of claim 9 ,

wherein the encoder is further configured to encode an enable flag indicating whether application of the ibc mode is allowed, and type information indicating whether a slice type is intra slice, and

wherein the ibc flag is encoded when the enable flag indicates that the application of the ibc mode is allowed and the type information indicates that a slice type is not intra slice.

11. The device of claim 10 ,

wherein the encoder is further configured to encode mode information indicating whether the current block is encoded by intra prediction before encoding the ibc flag,

wherein the enable flag and the type information are evaluated when the mode information indicates that the current block is encoded by inter prediction.

12. The device of claim 11 , wherein the encoder is further configured to encode the motion information when the enable flag indicates that the application of the ibc mode is allowed and the type information indicates that the slice type is intra slice.

13. The device of claim 10 ,

wherein the encoder is further configured to encode mode information indicating whether the current block is encoded by intra prediction before encoding the ibc flag,

wherein the enable flag and the type information are evaluated when the mode information indicates that the current block is encoded by intra prediction.

14. The device of claim 13 , wherein the encoder is further configured to encode the motion information when the mode information indicates inter prediction and the type information indicates that the slice type is intra slice.

15. The device of claim 9 ,

wherein the left neighboring block comprises a block positioned at a lower side along a height of the current block, and

wherein the upper neighboring block comprises a block positioned on a right side along a width of the current block.

16. The device of claim 9 , wherein the HMVP candidates are listed in the HMVP candidate list in the order in which related blocks are predicted in the ibc mode, and the HMVP candidates are used to compose the BVP candidate list in the reverse order to the order listed in the HMVP candidate list.

17. A non-transitory computer readable medium storing a bitstream containing encoded block of video data, the encoded block being decoded from the bitstream by processes of:

decoding, from the bitstream, an ibc flag indicating whether a prediction mode of the current block is the ibc mode;

when the ibc flag indicates the ibc mode, decoding, from the bitstream, motion information which includes a block vector predictor (BVP) index and a block vector difference (BVD);

constructing a BVP candidate list for the current block;

from the BVP candidate list, selecting a BVP candidate corresponding to the BVP index;

deriving a block vector (BV) of the current block based on the BVD and the selected BVP candidate; and

predicting the current block using a reference block, within the current picture, indicated by the derived BV,

wherein the BVP candidate list is constructed by adding k BVP candidates to the BVP candidate list in following order until the BVP candidate list is full, wherein k is a preset integer greater than 0:

1) a block vector of a left neighboring block positioned on a left side of the current block, the left neighboring block predicted in the ibc mode;

2) a block vector of an upper neighboring block positioned above the current block, the upper neighboring block predicted in the ibc mode;

3) one or more block vectors from a history based motion vector predictor (HMVP) candidate list, wherein the HMVP candidate list contains a respective block vector of at least one block already predicted in the ibc mode; and

4) one or more zero block vectors.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2021
From: KIM, JAE IL; LEE, SUN YOUNG; SON, SE HOON; SHIN, JAE SEOB
To: SK TELECOM CO., LTD.
Reel/Frame 055912/0802 →
Priority Claims (2)
KR 10-2018-0119881 · Oct 8, 2018 · national
KR 10-2019-0067724 · Jun 10, 2019 · national
Continuity (2)
Continuation PCTKR2019013129 · Oct 7, 2019
Related Publication 20210227257A1 · Jul 22, 2021