IP Library Granted Patent US 11,381,834
Granted Patent B2
US 11,381,834 · App. 17/041,655 · Granted Jul 5, 2022

Video processing methods and apparatuses for sub-block motion compensation in video coding systems

Inventors: Tzu-Der Chuang (Hsinchu, TW); Ching-Yeh Chen (Hsinchu, TW); Chen-Yen Lai (Hsinchu, TW); Chih-Wei Hsu (Hsinchu, TW)
Assignee: HFI INNOVATION INC.
H04N19/513H04N19/105H04N19/119H04N19/159H04N19/176H04N19/533
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,381,834
App. No.
17/041,655
Granted
Jul 5, 2022
Kind
B2
Abstract

Video processing methods and apparatuses for coding a current block comprise receiving input data of a current block, partitioning the current block into multiple sub-blocks, deriving sub-block MVs for the current block according to a sub-block motion compensation coding tool, constraining the sub-block MVs to form constrained sub-block MVs, and encoding or decoding the current block using the constrained sub-block MVs. The sub-block MVs may be constrained according to a size, width, or height of the current block or a sub-block, an inter prediction direction of one of control point MVs of the current block, the current block, or current sub-block, the control point MVs, or a combination of the above.

Claims (32)

1. A video processing method for sub-block motion compensation in a video coding system, comprising:

receiving input video data associated with a current block in a current picture;

partitioning the current block into multiple sub-blocks;

deriving sub-block Motion Vectors (MVs) associated with the sub-blocks in the current block according to a sub-block motion compensation coding tool;

constraining the sub-block MVs to form constrained sub-block MVs by restricting a difference between a primary MV and each sub-block MV of the sub-block MVs within one or more thresholds, wherein said one or more thresholds are adaptively determined depending on a width or height of the current block, an inter prediction direction of the current block, and the control point MVs of the current block; and

applying motion compensation to the current block using the constrained sub-block MVs to encode or decode the current block,

wherein each sub-block MV of the sub-block MVs is restricted to a range from (primary MV−Threshold) to (primary MV+Threshold), wherein Threshold corresponds to one threshold value and if one sub-block MV is outside the range, the sub-block MV is clipped to the range.

2. The method of claim 1 , wherein the one or more thresholds are adaptively determined to be zero or unlimited, wherein all the sub-block MVs are clipped to the primary MV if the one or more thresholds are zero, and constraining the sub-block MVs is not applied to the current block if the one or more thresholds are unlimited.

3. The method of claim 2 , wherein the one or more thresholds depend on a diversity of the control point MVs, the diversity of the control point MVs is derived according to the control point MVs, the inter prediction direction of the control point MVs, and the width and height of the current block, wherein the one or more thresholds are zero if the diversity of the control point MVs is relatively diverse or the one or more thresholds are unlimited if the diversity of the control point MVs is less diverse.

4. The method of claim 1 , wherein the primary MV is one of the control point MVs of the current block, one of the sub-block MVs in the current block, a center MV of the current block, a derived MV using a center position sample of the current block, or a derived MV.

5. The method of claim 1 , wherein the primary MV is derived and required reference data around the primary MV are loaded for motion compensation.

6. A video processing method for sub-block motion compensation in a video coding system, comprising:

receiving input video data associated with a current block in a current picture to be encoded or decoded;

checking whether a sub-block motion compensation coding tool is applied to the current block based on a size, width, or height of the current block, a size, area, shape, width, or height of sub-blocks partitioned from the current block, an inter prediction direction of a sub-block Motion Vector (MV), primary MV, or one of control point MVs of the current block, a primary MV, the control point MVs, affine parameters, or a combination thereof;

encoding or decoding the current block using the sub-block motion compensation coding tool or another coding tool according to a result of the checking indicating whether application of the sub-block motion compensation coding tool is valid or invalid;

a MV clipping process is applied to each sub-block in the current block if the checking result is false, indicating the validity is invalid; and

wherein each sub-block MV of the sub-block MVs is restricted to a range from (primary MV−Threshold to (primary MV+Threshold), wherein Threshold corresponds to one threshold value and if one sub-block MV is outside the range, the sub-block MV is clipped to the range.

7. The method of claim 6 , wherein the sub-block motion compensation coding tool is selected from a group comprising subblock Temporal Motion Vector Prediction (subblock TMVP), Spatial-Temporal Motion Vector Prediction (STMVP), affine motion compensation prediction, and sub-block refined Pattern-based Motion Vector Derivation (PMVD) mode.

8. The method of claim 6 , wherein when the result of the checking is false, a MV constraining process is applied to each sub-block in the current block.

9. An apparatus of processing video data in a video coding system, the apparatus comprising one or more electronic circuits configured for:

receiving input video data associated with a current block in a current picture;

partitioning the current block into multiple sub-blocks;

deriving sub-block Motion Vectors (MVs) associated with the sub-blocks in the current block according to a sub-block motion compensation coding tool;

constraining the sub-block MVs to form constrained sub-block MVs by restricting a difference between a primary MV and each sub-block MV of the sub-block MVs within one or more thresholds; wherein said one or more thresholds are adaptively determined depending on a width or height of the current block, an inter prediction direction of the current block, and the control point MVs of the current block; and

applying motion compensation to the current block using the constrained sub-block MVs to encode or decode the current block,

wherein each sub-block MV of the sub-block MVs is restricted to a range from (primary MV−Threshold) to (primary MV+Threshold), wherein Threshold corresponds to one threshold value and if one sub-block MV is outside the range, the sub-block MV is clipped to the range.

10. An apparatus for sub-block motion compensation in a video coding system, the apparatus comprising

one or more electronic circuits configured for:

receiving input video data associated with a current block in a current picture to be encoded or decoded; checking whether a sub-block motion compensation coding tool is applied to the current block based on a size, width, or height of the current block, a size, area, shape, width, or height of sub-blocks partitioned from the current block, an inter prediction direction of a sub-block Motion Vectors (MV), primary MV, or one of control point MVs of the current block, a primary MV, the control point MVs, affine parameters, or a combination thereof, and

encoding or decoding the current block using the sub-block motion compensation coding tool or another coding tool according to a result of the checking indicating whether application of the sub-block motion compensation coding tool is valid or invalid;

a MV clipping process is applied to each sub-block in the current block if the checking result is false, indicating the validity is invalid; and

wherein each sub-block MV of the sub-block MVs is restricted to a range from (primary MV−Threshold) to (primary MV+Threshold), wherein Threshold corresponds to one threshold value and if one sub-block MV is outside the range, the sub-block MV is clipped to the range.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2022
From: MEDIATEK INC.
To: HFI INNOVATION INC.
Reel/Frame 059339/0015 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2020
From: CHUANG, TZU-DER; CHEN, CHING-YEH; LAI, CHEN-YEN; HSU, CHIH-WEI
To: MEDIATEK INC.
Reel/Frame 053884/0317 →
Cited By (2)
US 12,548,198 US 12,684,157