IP Library Granted Patent US 11,432,002
Granted Patent B2
US 11,432,002 · App. 17/263,597 · Granted Aug 30, 2022

Method and apparatus for encoding and decoding video using inter-prediction

Inventors: Je Won Kang (Seoul, KR); Seung Wook Park (Gyeonggi-do, KR); Wha Pyeong Lim (Gyeonggi-do, KR)
Assignees: Hyundai Motor Company; Kia Motors Corporation; Ehwa University-Industry Collaboration Foundation
H04N19/52H04N19/132H04N19/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,432,002
App. No.
17/263,597
Granted
Aug 30, 2022
Kind
B2
Abstract

A video decoding apparatus is provided for decoding pictures using inter-prediction. The video decoding apparatus includes a predictor that generates affine prediction samples for respective subblocks in a target block in a current picture to be decoded by performing affine motion prediction on a subblock-by-subblock basis using control point motion vectors which respectively correspond to corners of the target block. The predictor also modifies sample values of the affine prediction samples by executing a first coding tool, the first coding tool compensating for motion according to sample positions in each of the subblocks using the control point motion vectors.

Claims (45)

1. A video decoding apparatus for decoding pictures using inter-prediction, comprising a predictor configured to:

generate affine prediction samples for respective subblocks in a target block in a current picture to be decoded, by performing affine motion prediction on a subblock-by-subblock basis using control point motion vectors which respectively correspond to corners of the target block; and

modify sample values of the affine prediction samples by executing a first coding tool, the first coding tool compensating for motion according to sample positions in each of the subblocks using the control point motion vectors,

wherein the predictor is configured to determine whether to execute the first coding tool based on at least one of values of the control point motion vectors or an angle between the control point motion vectors, and

wherein, when the values of the control point motion vectors are equal to each other, the predictor is configured to skip executing the first coding tool.

2. The apparatus of claim 1 , wherein, when the first coding tool is executed, the predictor is configured to:

generate, using the control point motion vectors of the target block, a motion offset resulting from a difference between a sample position in a target subblock to be corrected and a center of the target subblock;

generate horizontal and vertical gradients for the sample position in the target subblock;

generate a sample offset for an affine prediction sample corresponding to the sample position in the target subblock using the horizontal and vertical gradients and the motion offset; and

adding the sample offset to a sample value of the affine prediction sample corresponding to the sample position.

3. The apparatus of claim 1 , wherein, when a dot product of the control point motion vectors yields a negative value, the predictor is configured to skip executing the first coding tool.

4. The apparatus of claim 1 , further comprising:

a decoder configured to decode, from a header of each picture in a bitstream, a picture level flag indicating whether the first coding tool is allowed for a picture related to the header,

wherein the predictor is configured to determine whether to execute the first coding tool for the target block based on a value of the picture level flag extracted from the header of the current picture containing the target block.

5. The apparatus of claim 2 , wherein, when horizontal and vertical components of the motion offset are less than a predefined threshold, the predictor is configured to stop execution of the first coding tool.

6. The apparatus of claim 1 , wherein the predictor includes a second coding tool configured to:

generate an inter-predicted block by inter-predicting the target block,

generate an intra-predicted block by intra-predicting the target block, and

generate prediction samples of the target block by weighted-averaging the inter-predicted block and the intra-predicted block.

7. The apparatus of claim 6 , wherein execution of one of the first coding tool and the second coding tool restricts execution of the other coding tool.

8. A video encoding apparatus for encoding pictures using inter-prediction, comprising a predictor configured to:

determine control point motion vectors which respectively correspond to corners of a target block split from a current picture to be encoded and generate affine prediction samples for respective subblocks in the target block by performing affine motion prediction on a subblock-by-subblock basis using the control point motion vectors; and

modify sample values of the affine prediction samples by executing a first coding tool, the first coding tool compensating for motion according to sample positions in each of the subblocks using the control point motion vectors,

wherein the predictor is configured to determine whether to execute the first coding tool based on at least one of values of the control point motion vectors or an angle between the control point motion vectors,

wherein, when values of the control point motion vectors are equal to each other, the predictor is configured to skip executing the first coding tool.

9. The apparatus of claim 8 , wherein, when the first coding tool is executed, the predictor is configured to:

generate, using the control point motion vectors of the target block, a motion offset resulting from a difference between a sample position in a target subblock to be corrected and a center of the target subblock;

generate horizontal and vertical gradients for the sample position in the target subblock;

generate a sample offset for an affine prediction sample corresponding to the sample position in the target subblock using the horizontal and vertical gradients and the motion offset; and

add the sample offset to a sample value of the affine prediction sample corresponding to the sample position.

10. The apparatus of claim 8 , wherein, when a dot product of the control point motion vectors yields a negative value, the predictor is configured to skip executing the first coding tool.

11. The apparatus of claim 8 , further comprising:

an encoder configured to encode, in a header of each of the pictures, a picture level flag indicating whether the first coding tool is allowed,

wherein the predictor is configured to determine whether to execute the first coding tool for the target block based on a value of the picture level flag contained in the header of the current picture containing the target block.

12. The apparatus of claim 9 , wherein, when horizontal and vertical components of the motion offset are less than a predefined threshold, execution of the first coding tool is stopped.

13. The apparatus of claim 8 , wherein the predictor includes a second coding tool configured to:

generate an inter-predicted block by inter-predicting the target block,

generate an intra-predicted block by intra-predicting the target block, and

generate prediction samples of the target block by weighted-averaging the inter-predicted block and the intra-predicted block.

14. The apparatus of claim 13 , wherein execution of one of the first coding tool and the second coding tool restricts execution of the other coding tool.

15. A non-transitory recording medium storing a bitstream generated by an inter-prediction based video encoding method, the method comprising:

generating affine prediction samples for respective subblocks in a target block to be decoded, by performing affine motion prediction on a subblock-by-subblock basis using control point motion vectors which respectively correspond to corners of the target block;

determining whether to execute a first coding tool based on at least one of values of the control point motion vectors or an angle between the control point motion vectors; and

in response to determining that the first coding tool is executed, modifying sample values of the affine prediction samples by compensating for motion according to sample positions in each of the subblocks using the control point motion vectors,

wherein, when values of the control point motion vectors are equal to each other, executing the first coding tool is skipped.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2021
From: KANG, JE WON; PARK, SEUNG WOOK; LIM, WHA PYEONG
To: HYUNDAI MOTOR COMPANY; KIA MOTORS CORPORATION; EWHA UNIVERSITY - INDUSTRY COLLABORATION FOUNDATION
Reel/Frame 057257/0209 →
Priority Claims (2)
KR 10-2019-0081925 · Jul 8, 2019 · national
KR 10-2020-0083980 · Jul 8, 2020 · national
Continuity (1)
Related Publication 20210306658A1 · Sep 30, 2021
Cited By (1)
US 12,250,396