US2019200038A1PendingUtilityA1

Methods and systems for intra block copy coding with block vector derivation

Assignee: VID SCALE INCPriority: Jun 19, 2014Filed: Feb 27, 2019Published: Jun 27, 2019
Est. expiryJun 19, 2034(~7.9 yrs left)· nominal 20-yr term from priority
H04N 19/521H04N 19/463H04N 19/593H04N 19/186H04N 19/90H04N 19/147H04N 19/94H04N 19/70H04N 19/157
62
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Systems and methods are described for encoding and decoding video using derived block vectors as predictors in intra block copy mode. In an exemplary encoding method, an encoder identifies at least a first candidate block vector for the prediction of an input video block, where the first candidate block vector points to a first candidate block. The encoder then identifies a first predictive vector (e.g. a block vector or a motion vector) that was used to encode the first candidate block. From the first candidate block vector and the first predictive vector, the encoder generates a derived predictive vector from the first candidate block vector and the first predictive vector. The encoder then encodes the video block in the bit stream using the derived predictive vector for the prediction of the input video block.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A video coding method of deriving a predictive vector, the method comprising:
 identifying a first candidate block vector for prediction of a current video block, wherein the first candidate block vector points from the current video block to a first candidate block;   determining whether the first candidate block is within a predetermined range of the current video block;   only after a determination that the first candidate block is within the predetermined range of the current video block:
 identifying at least a first predictive vector associated with the first candidate block; 
 generating a derived predictive vector from the first candidate block vector and the first predictive vector; and 
 coding the current video block using the derived predictive vector. 
   
     
     
         2 . The method of  claim 1 , wherein coding the current video block using the derived predictive vector includes:
 identifying a second candidate block that the derived predictive vector points to; and   predicting the current video block using the second candidate block.   
     
     
         3 . The method of  claim 1 , wherein coding the current video block includes signaling the first candidate block vector in a bit stream. 
     
     
         4 . The method of  claim 3 , wherein coding the current video block further includes signaling the first predictive vector in the bit stream. 
     
     
         5 . The method of  claim 3 , wherein coding the current video block further includes signaling a flag in the bit stream, wherein a first value of the flag indicates that the derived predictive vector is used to code the video block. 
     
     
         6 . The method of  claim 1 , wherein the derived predictive vector is generated by adding the first candidate block vector and the first predictive vector. 
     
     
         7 . The method of  claim 6 , wherein the first candidate block vector and the first predictive vector have different precisions, and wherein adding the first block vector and the first predictive vector is performed after aligning them to the same precision. 
     
     
         8 . The method of  claim 1 , wherein the first predictive vector is a second block vector, and the derived predictive vector is a derived block vector. 
     
     
         9 . The method of  claim 8 , wherein the derived block vector is generated by adding the first candidate block vector and the second block vector. 
     
     
         10 . The method of  claim 1 , wherein the first predictive vector is a first motion vector, and the derived predictive vector is a derived motion vector. 
     
     
         11 . The method of  claim 10 , wherein the derived motion vector is generated by adding the first candidate block vector and the first motion vector. 
     
     
         12 . The method of  claim 11 , wherein the first candidate block vector and the first motion vector have different precisions, and wherein the derived motion vector is generated by aligning the precision of the first candidate block vector and the first motion vector and adding the precision aligned first candidate block vector and the precision aligned first motion vector. 
     
     
         13 . The method of  claim 12 , wherein the precision aligned first candidate block vector and the precision aligned first motion vector are added according to the equation
     MVd=BV 0+(( MV 1+2)>>2),   
       where BV 0  is the first candidate block vector, MV 1  is the first motion vector, and MVd is the derived motion vector. 
     
     
         14 . The method of  claim 1 , wherein the video coding method further includes inserting the derived predictive vector into a merge candidate list. 
     
     
         15 . The method of  claim 1 , wherein the first candidate block is determined to be within the predetermined range of the current video block only if the candidate block is in the same row as the current video block or is within a predetermined number of rows above the row of the current video block. 
     
     
         16 . The method of  claim 14 , wherein coding the video block using the derived predictive vector includes providing an index identifying the derived predictive vector in the merge candidate list. 
     
     
         17 . A method of decoding a coded video block from a bit stream encoding a video, the method comprising:
 identifying at least a first candidate block vector for prediction of the coded video block, wherein the first candidate block vector points from the coded video block to a first candidate block;   determining whether the first candidate block is within a predetermined range of the coded video block;   only after a determination that the first candidate block is within the predetermined range of the coded video block:
 identifying at least a first predictive vector associated with the first candidate block; 
 generating a derived predictive vector from the first candidate block vector and the first predictive vector; and 
 decoding the coded video block using the derived predictive vector. 
   
     
     
         18 . The method of  claim 17 , wherein the first candidate block is determined to be within the predetermined range of the current video block only if the candidate block is in the same row as the current video block or is within a predetermined number of rows above the row of the current video block. 
     
     
         19 . The method of  claim 17 , further comprising storing, in a cache, predictive vectors associated with respective candidate blocks within the predetermined range of the coded video block, wherein identifying the first predictive vector comprises reading the first predictive vector from the cache. 
     
     
         20 . A system operative to decode a coded video block from a bit stream encoding a video, the system comprising a processor and a non-transitory computer-readable medium storing instructions operative to perform functions comprising:
 identifying at least a first candidate block vector for prediction of the coded video block, wherein the first candidate block vector points from the coded video block to a first candidate block;   determining whether the first candidate block is within a predetermined range of the coded video block;   only after a determination that the first candidate block is within the predetermined range of the coded video block:
 identifying at least a first predictive vector associated with the first candidate block; 
 generating a derived predictive vector from the first candidate block vector and the first predictive vector; and 
 decoding the coded video block using the derived predictive vector.

Join the waitlist — get patent alerts

Track US2019200038A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.