IP Library Granted Patent US 11,818,383
Granted Patent B2
US 11,818,383 · App. 17/283,338 · Granted Nov 14, 2023

Methods and apparatuses of combining multiple predictors for block prediction in video coding systems

Inventors: Man-Shu Chiang (Hsinchu, TW); Chih-Wei Hsu (Hsinchu, TW); Tzu-Der Chuang (Hsinchu, TW); Ching-Yeh Chen (Hsinchu, TW)
Assignee: HFI Innovation Inc.
H04N19/513H04N19/176
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,818,383
App. No.
17/283,338
Granted
Nov 14, 2023
Kind
B2
Abstract

Video processing methods and apparatuses for coding a current block generate a final predictor by combining multiple predictors for the current block. A first predictor and a second predictor for the current block are generated by applying one or a combination of settings to the first, second, or both predictors. One or both the first and second predictors are generated from motion compensation. The final predictor is derived from the first and second predictors, and the current block is encoded or decoded according to the final predictor. The settings include supported-mode setting, combined-weight setting, applied-portion setting, motion information setting, precision setting, or a combination of the above settings.

Claims (31)

1. A method of processing video data in a video encoding or decoding system, comprising:

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

generating a first predictor and a second predictor for each pixel of the current block;

generating a final predictor for said each pixel of the current block by combining the first predictor and the second predictor using weighting for said each pixel of the current block, wherein said each pixel of the current block has a weighting that is based on a partition direction for the current block,

wherein the current block comprises three regions, wherein prediction of a first region in the final predictor is derived from the first predictor, prediction of a second region in the final predictor is derived from the second predictor, and prediction of a third region in the final predictor is derived by combining the first and second predictors, wherein the third region is a margin between the first and second regions, and

wherein motion for generating the first predictor or the second predictor for the current block is retrieved from a memory buffer according to a history-based scheme using motion information of one or more previously coded blocks, wherein the history-based scheme depends on a table with multiple history-based HMVP candidates, and wherein when there is an inter-coded non-affine block, associated motion information is added to a last entry of the table as a new HMVP candidate; and

encoding or decoding the current block according to the final predictor.

2. The method of claim 1 , wherein the first predictor and the second predictor for each pixel of the current block are generated by applying one or a combination of settings to the first predictor, and wherein a selection of the settings is implicitly derived by one or both of a block width and block height of the current block.

3. The method of claim 1 , wherein the first predictor and the second predictor for each pixel of the current block are generated by applying one or a combination of settings to the first predictor, and wherein a selection of the settings is explicitly indicated by a flag signaled at one or a combination of Coding Unit (CU) level, Coding Tree Unit (CTU) level, slice level, tile level, tile group level, Sequence Parameter Set (SPS) level, and Picture Parameter Set (PPS) level.

4. The method of claim 1 , wherein one of the first and second predictors for the current block are generated from intra prediction.

5. The method of claim 1 , wherein the first predictor and the second predictor for each pixel of the current block are generated by applying one or a combination of settings to the first predictor, and wherein the settings include supported-mode setting, at least one of the first and second predictors is generated from motion compensation by at least one of inter prediction modes, and the inter prediction modes include one or a combination of Skip, Merge, AMVP, affine Merge, affine Inter, and sub-block Merge modes.

6. The method of claim 1 , wherein the first predictor and the second predictor for each pixel of the current block are generated by applying one or a combination of settings to the first predictor, and wherein the settings include combined-weight setting, the final predictor is generated by summing up the first and second predictors with weightings.

7. The method of claim 6 , wherein the final predictor is further generated by right-shifting and clipping after weighting.

8. The method of claim 6 , wherein the weightings are varied with positions of prediction in the current block.

9. The method of claim 6 , wherein a weighting of each sub-block in the current block depends on a block width of the current block, a block height of the current block, partition direction, sub-block position, sub-block Motion Vector (MV), inter prediction direction, or a combination thereof.

10. The method of claim 1 , wherein the first predictor and the second predictor for each pixel of the current block are generated by applying one or a combination of settings to the first predictor, and wherein the settings include precision setting, a weighting process is applied to the first and second predictors to generate the final predictor for the current block before applying a rounding process, and the rounding process is applied to the final predictor to limit values of the final predictor in a predefined range.

11. The method of claim 1 , further comprising determining the partition direction for the current block, wherein the weighting of said pixel of the current block is further based on at least one of a position of the pixel, block width, or block height.

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

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

generating a first predictor and a second predictor for each pixel of the current block;

generating a final predictor for said each pixel of the current block by combining the first predictor and the second predictor using weighting for said each pixel of the current block, wherein said each pixel of the current block has a weighting that is based on a partition direction for the current block,

wherein the current block comprises three regions, wherein prediction of a first region in the final predictor is derived from the first predictor, prediction of a second region in the final predictor is derived from the second predictor, and prediction of a third region in the final predictor is derived by combining the first and second predictors, wherein the third region is a margin between the first and second regions, and

wherein motion for generating the first predictor or the second predictor for the current block is retrieved from a memory buffer according to a history-based scheme using motion information of one or more previously coded blocks, wherein the history-based scheme depends on a table with multiple history-based HMVP candidates, and wherein when there is an inter-coded non-affine block, associated motion information is added to a last entry of the table as a new HMVP candidate; and

encoding or decoding the current block according to the final predictor.

13. A non-transitory computer readable medium storing program instruction causing a processing circuit of an apparatus to perform video processing method, and the method comprising:

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

generating a first predictor and a second predictor for each pixel of the current block;

generating a final predictor for said each pixel of the current block by combining the first predictor and the second predictor using weighting for said each pixel of the current block, wherein said each pixel of the current block has a weighting that is based on a partition direction for the current block,

wherein the current block comprises three regions, wherein prediction of a first region in the final predictor is derived from the first predictor, prediction of a second region in the final predictor is derived from the second predictor, and prediction of a third region in the final predictor is derived by combining the first and second predictors, wherein the third region is a margin between the first and second regions, and

wherein motion for generating the first predictor or the second predictor for the current block is retrieved from a memory buffer according to a history-based scheme using motion information of one or more previously coded blocks, wherein the history-based scheme depends on a table with multiple history-based HMVP candidates, and wherein when there is an inter-coded non-affine block, associated motion information is added to a last entry of the table as a new HMVP candidate; and

encoding or decoding the current block according to the final predictor.

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 May 6, 2021
From: CHIANG, MAN-SHU; HSU, CHIH-WEI; CHUANG, TZU-DER; CHEN, CHING-YEH
To: MEDIATEK INC.
Reel/Frame 056152/0205 →
Cited By (1)
US 12,574,499