US 12,003,736 B2
Method and apparatus for estimating optical flow for motion compensation
Jeong-yeon Lim, Seoul (KR); Hyo Song Kim, Seoul (KR); Se-hoon Son, Seoul (KR); Jae-seob Shin, Seoul (KR); and Sun-young Lee, Seoul (KR)
Assigned to SK TELECOM CO., LTD., Seoul (KR)
Filed by SK TELECOM CO., LTD., Seoul (KR)
Filed on Feb. 17, 2022, as Appl. No. 17/673,922.
Application 17/673,922 is a continuation of application No. 16/608,020, granted, now 11,272,193, previously published as PCT/KR2018/003044, filed on Mar. 15, 2018.
Claims priority of application No. 10-2017-0052290 (KR), filed on Apr. 24, 2017; and application No. 10-2017-0077246 (KR), filed on Jun. 19, 2017.
Prior Publication US 2022/0174294 A1, Jun. 2, 2022
This patent is subject to a terminal disclaimer.
Int. Cl. H04N 19/176 (2014.01); H04N 19/105 (2014.01); H04N 19/577 (2014.01)
CPC H04N 19/176 (2014.11) [H04N 19/105 (2014.11); H04N 19/577 (2014.11)] 6 Claims
OG exemplary drawing
 
1. A method for encoding video data, comprising:
determining a first motion vector indicating a first region corresponding to a current block in a first reference picture, and a second motion vector indicating a second region corresponding to the current block in a second reference picture;
generating a prediction block for the current block by applying a bidirectional optical flow (BIO) process in a subblock basis;
determining a residual block for the current block using the prediction block; and
encoding the first motion vector, the second motion vector and the residual block for the current block in a bitstream,
wherein the generating of the prediction block comprises:
determining a BIO motion vector for each subblock constituting the current block; and
generating a prediction value for each of pixels constituting a corresponding subblock based on the determined BIO motion vector,
wherein the BIO motion vector is determined based on flow differences obtained for pixels within a square block surrounding the corresponding subblock,
wherein the flow difference for a given pixel within the square block is calculated between a first point on the first reference picture and a second point on the second reference picture which correspond to the given pixel within the square block,
wherein the prediction value for each of pixels is generated based on (1) an original prediction value derived by using the first motion vector and the second motion vector and (2) an offset value derived by using the BIO motion vector,
wherein the BIO motion vector is determined as a vector that minimizes a weighted sum of squares of flow differences obtained for respective pixels within the square block surrounding the corresponding subblock, and
wherein a higher weight is assigned to a flow difference obtained for a pixel located further inside the square block surrounding the corresponding subblock.