IP Library Granted Patent US 11,122,290
Granted Patent B2
US 11,122,290 · App. 16/773,958 · Granted Sep 14, 2021

Inter prediction method and apparatus in video coding system

Inventors: Hyeongmoon Jang (Seoul, KR); Eunyong Son (Seoul, KR); Moonmo Koo (Seoul, KR); Seungwook Park (Seoul, KR); Yongjoon Jeon (Seoul, KR)
Assignee: LG Electronics Inc.
H04N19/56H04N19/105H04N19/124H04N19/176H04N19/182H04N19/503H04N19/513H04N19/66H04N19/70H04N19/91
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,122,290
App. No.
16/773,958
Granted
Sep 14, 2021
Kind
B2
Abstract

A video decoding method performed by a decoding apparatus includes the steps of: deriving control points (CP) for a current block; acquiring movement vectors for the CPs; deriving a sample unit movement vector in the current block on the basis of the acquired movement vectors; and deriving a prediction sample for the current block on the basis of the sample unit movement vector. According to the present invention, it is possible to effectively perform, through sample unit motion vectors, inter-prediction not only in a case where an image in the current block is plane-shifted but also in a case where there are various image distortions.

Claims (86)

1. A video decoding method performed by a decoding device, the video decoding method including:

deriving motion vectors for control points (CPs) for a current block;

deriving a motion vector related to a sample position in the current block based on the obtained motion vectors for the CPs;

deriving a prediction sample for the current block based on the motion vector related to the sample position; and

generating a reconstructed block for the current block based on the derived prediction sample for the current block,

wherein the CPs includes a first CP, a second CP and a third CP, wherein the first CP is for a top-left corner of the current block, the second CP is for a top-right corner of the current block and the third CP is for bottom-left corner of the current block,

wherein the motion vectors for the CPs include a first motion vector for the first CP, a second motion vector for the second CP and a third motion vector for the third CP,

wherein the first motion vector is derived from a first block group comprising a top-left corner neighboring block of the current block, a first top neighboring block adjacent to a right side of the top-left corner neighboring block and a first left neighboring block adjacent to a bottom side of the top-left corner neighboring block,

wherein the second motion vector is derived from a second block group comprising a top-right corner neighboring block of the current block and a second top neighboring block adjacent to a left side of the top-right corner neighboring block,

wherein the third motion vector is derived from a third block group comprising a bottom-left corner neighboring block of the current block and a second left neighboring block adjacent to a top side of the bottom-left corner neighboring block, and

wherein a width of the current block is different from a height of the current block.

2. The video decoding method of claim 1 , wherein the motion vector related to the sample position is derived based on the following equations,

Vx =( Vx 1− Vx 0)* x/W +( Vx 2− Vx 0)* y/H+Vx 0, Vy =( Vy 1− Vy 0)* x/W +( Vy 2− Vy 0)* y/H+Vy 0, and

wherein the Vx represents a x component of the motion vector related to the sample position at a coordinate of (x, y), the Vy represents a y component of the motion vector related to the sample position at the coordinate of (x, y), the Vx 0 represents a x component of the first motion vector for the first CP, the Vy 0 represents a y component of the first motion vector for the second CP, the Vx 1 represents a x component of the second motion vector for the second CP, the Vy 1 represents a y component of the second motion vector for the second CP, the Vx 2 represents a x component of the third motion vector for the third CP and the Vy 2 represents a y component of the third motion vector for the third CP.

3. The video decoding method of claim 1 , wherein:

the top-left corner neighboring block is located on the coordinate of (xc−1, yc−1), the first top neighboring block is located on the coordinate of (xc, yc−1), and the first left neighboring block is located on the coordinate of (xc−1, yc),

the top-right corner neighboring block is located on the coordinate of (xc+W, yc−1) and the second top neighboring block is located on the coordinate of (xc+W−1, yc−1), and

the bottom-left corner neighboring block is located on the coordinate of (xc−1, yc+H) and the second left neighboring block is located on the coordinate of (xc−1, yc+H−1), and

wherein (xc, yc) is a top-left sample position of the current block, and W and H are the width and the height of the current block respectively.

4. The video decoding method of claim 1 , wherein:

wherein the first motion vector for the first CP is derived from the first block group comprising the top-left corner neighboring block, the first top neighboring block and the first left neighboring block based on a first predefined priority order,

wherein the second motion vector for the second CP is derived from the second block group comprising the top-right corner neighboring block and the second top neighboring block based on a second predefined priority order,

wherein the third motion vector for the third CP is derived from the third block group comprising the bottom-left corner neighboring block and the second left neighboring block based on a third predefined priority order,

wherein the first predefined priority order is from the top-left corner neighboring block to the first top neighboring block to the first left neighboring block,

wherein the second predefined priority order is from the top-right corner neighboring block to the second top neighboring block, and

wherein the third predefined priority order is from the bottom-left corner neighboring back to the second left neighboring block.

5. The video decoding method of claim 1 ,

wherein the H is equal to W/2, and

wherein the second CP is located on a coordinate of (xc+W, yc) and the third CP is located on a coordinate of (xc, yc+W/2), and

wherein (xc, yc) is a top-left sample position of the current block, and W and H are the width and the height of the current block respectively.

6. The video decoding method of claim 5 , wherein:

the motion vector related to the sample position is derived based on the following equations,

Vx =( Vx 1− Vx 0)* x/W +( Vx 2− Vx 0)* y /( W/ 2)+ Vx 0,

wherein the Vx represents a x component of the motion vector related to the sample position at a coordinate of (x, y), the Vy represents a y component of the motion vector related to the sample position at the coordinate of (x, y), the Vx 0 represents a x component of the first motion vector for the first CP, the Vy 0 represents a y component of the first motion vector for the first CP, the Vx 1 represents a x component of the second motion vector for the second CP, the Vy 1 represents a y component of the second motion vector 1 for the second CP, the Vx 2 represents a x component of the third motion vector for the third CP and the Vy 2 represents a y component of the third motion vector for the third CP.

7. The video decoding method of claim 5 , wherein:

the top-left corner neighboring block is located on the coordinate of (xc−1, yc−1), the first top neighboring block is located on the coordinate of (xc, yc−1), and the first left neighboring block is located on the coordinate of (xc−1, yc),

the top-right corner neighboring block is located on the coordinate of (xc+W, yc−1) and the second top neighboring block is located on the coordinate of (xc+W−1, yc−1), and

the bottom-left corner neighboring block is located on a coordinate of (xc−1, yc+W/2) and the second left neighboring block is located on a coordinate of (xc−1, yc+W/2−1).

8. A video encoding method performed by an encoding device, the video encoding method including:

deriving motion vectors for control points (CPs) for a current block;

deriving a motion vector related to a sample position in the current block based on the obtained motion vectors for the CPs;

performing a prediction for the current block based on the motion vector related to the sample position; and

encoding video information on the prediction for the current block,

wherein the CPs includes a first CP, a second CP and a third CP, wherein the first CP is for a top-left corner of the current block, the second CP is for a top-right corner of the current block and the third CP is for bottom-left corner of the current block,

wherein the motion vectors for the CPs include a first motion vector for the first CP, a second motion vector for the second CP and a third motion vector for the third CP,

wherein the first motion vector is derived from a first block group comprising a top-left corner neighboring block of the current block, a first top neighboring block adjacent to a right side of the top-left corner neighboring block and a first left neighboring block adjacent to a bottom side of the top-left corner neighboring block,

wherein the second motion vector is derived from a second block group comprising a top-right corner neighboring block of the current block and a second top neighboring block adjacent to a left side of the top-right corner neighboring block,

wherein the third motion vector is derived from a third block group comprising a bottom-left corner neighboring block of the current block and a second left neighboring block adjacent to a top side of the bottom-left corner neighboring block, and

wherein a width of the current block is different from a height of the current block.

9. The video encoding method of claim 8 , wherein the motion vector related to the sample position is derived based on the following equations,

Vx =( Vx 1− Vx 0)* x/W +( Vx 2− Vx 0)* y/H+Vx 0, Vy =( Vy 1− Vy 0)* x/W +( Vy 2− Vy 0)* y/H+Vy 0, and

wherein the Vx represents a x component of the motion vector related to the sample position at a coordinate of (x, y), the Vy represents a y component of the motion vector related to the sample position at the coordinate of (x, y), the Vx 0 represents a x component of the first motion vector for the first CP, the Vy 0 represents a y component of first the motion vector for the first CP, the Vx 1 represents a x component of the second motion vector for the second CP, the Vy 1 represents a y component of the second motion vector for the second CP, the Vx 2 represents a x component of the third motion vector for the third CP and the Vy 2 represents a y component of the third motion vector for the third CP.

10. The video encoding method of claim 8 , wherein:

the top-left corner neighboring block is located on the coordinate of (xc−1, yc−1), the first top neighboring block is located on the coordinate of (xc, yc−1), and the first left neighboring block is located on the coordinate of (xc−1, yc),

the top-right corner neighboring block is located on the coordinate of (xc+W, yc−1) and the second top neighboring block is located on the coordinate of (xc+W−1, yc−1), and

the bottom-left corner neighboring block is located on the coordinate of (xc−1, yc+H) and the second left neighboring block is located on the coordinate of (xc−1, yc+H−1).

11. The video encoding method of claim 8 ,

wherein the first motion vector for the first CP is derived from the first block group comprising the top-left corner neighboring block, the first top neighboring block and the first left neighboring block based on a first predefined priority order,

wherein the second motion vector for the second CP is derived from the second block group comprising the top-right corner neighboring block and the second top neighboring block based on a second predefined priority order, and

wherein the third motion vector for the third CP is derived from the third block group comprising the bottom-left corner neighboring block and the second left neighboring block based on a third predefined priority order,

wherein the first predefined priority order is from the top-left corner neighboring block to the first top neighboring block to the first left neighboring block,

wherein the second predefined priority order is from the top-right corner neighboring block to the second top neighboring block, and

wherein the third predefined priority order is from the bottom-left corner neighboring bock to the second left neighboring block.

12. The video encoding method of claim 8 ,

wherein the H is equal to W/2,

wherein the second CP is located on a coordinate of (xc+W, yc) and the third CP is located on a coordinate of (xc, yc+W/2),

wherein (xc, yc) is a top-left sample position of the current block, and W and H are the width and the height of the current block respectively.

13. The video encoding method of claim 12 , wherein:

the motion vector related to the sample position is derived based on the following equations,

Vx =( Vx 1− Vx 0)* x/W +( Vx 2− Vx 0)* y /( W/ 2)+ Vx 0,

wherein the Vx represents a x component of the motion vector related to the sample position at a coordinate of (x, y), the Vy represents a y component of the motion vector related to the sample position at the coordinate of (x, y), the Vx 0 represents a x component of the first motion vector for the first CP, the Vy 0 represents a y component of the first motion vector for the first CP, the Vx 1 represents a x component of the second motion vector for the second CP, the Vy 1 represents a y component of the second motion vector for the second CP, the Vx 2 represents a x component of the third motion vector for the third CP and the Vy 2 represents a y component of the third motion vector for the third CP.

14. The video encoding method of claim 12 , wherein:

the top-left corner neighboring block is located on the coordinate of (xc−1, yc−1), the first top neighboring block is located on the coordinate of (xc, yc−1), and the first left neighboring block is located on the coordinate of (xc−1, yc),

the top-right corner neighboring block is located on the coordinate of (xc+W, yc−1) and the second top neighboring block is located on the coordinate of (xc+W−1, yc−1), and

the bottom-left corner neighboring block is located on a coordinate of (xc−1, yc+W/2) and the second left neighboring block is located on a coordinate of (xc−1, yc+W/2−1).

15. A non-transitory computer-readable digital storage medium storing encoded information causing a decoding apparatus to perform a video decoding method, the method comprising:

deriving motion vectors for control points (CPs) for a current block;

deriving a motion vector related to a sample position in the current block based on the obtained motion vectors for the CPs;

deriving a prediction sample for the current block based on the motion vector related to the sample position; and

generating a reconstructed block for the current block based on the derived prediction sample for the current block,

wherein the CPs includes a first CP, a second CP and a third CP, wherein the first CP is for a top-left corner of the current block, the second CP is for a top-right corner of the current block and the third CP is for bottom-left corner of the current block,

wherein the motion vectors for the CPs include a first motion vector for the first CP, a second motion vector for the second CP and a third motion vector for the third CP,

wherein the first motion vector is derived from a first block group comprising a top-left corner neighboring block of the current block, a first top neighboring block adjacent to a right side of the top-left corner neighboring block and a first left neighboring block adjacent to a bottom side of the top-left corner neighboring block,

wherein the second motion vector is derived from a second block group comprising a top-right corner neighboring block of the current block and a second top neighboring block adjacent to a left side of the top-right corner neighboring block,

wherein the third motion vector is derived from a third block group comprising a bottom-left corner neighboring block of the current block and a second left neighboring block adjacent to a top side of the bottom-left corner neighboring block, and

wherein a width of the current block is different from a height of the current block.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2025
From: LG ELECTRONICS INC.
To: NOKIA TECHNOLOGIES OY
Reel/Frame 072859/0365 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2020
From: JANG, HYEONGMOON; SON, EUNYONG; KOO, MOONMO; PARK, SEUNGWOOK; JEON, YONGJOON
To: LG ELECTRONICS INC. / S & IP PATENT & LAW FIRM
Reel/Frame 052569/0120 →
Continuity (3)
Continuation 15751077
Provisional Application 62202182 · Aug 7, 2015
Related Publication 20200236396A1 · Jul 23, 2020
Cited By (10)
US 12,192,524 US 12,301,875 US 12,439,087 US 12,452,450 US 12,457,364 US 12,610,042 US 12,684,123 US 12,707,089 US 12,713,021 US 12,713,023