IP Library › Granted Patent US 12,615,384
Granted Patent B2
US 12,615,384 · App. 18/461,785 · Granted Apr 28, 2026

Explicit signaling for block based adaptive weighting factors

Inventors: Liang Zhao (Sunnyvale, CA); Han Gao (San Diego, CA); Xin Zhao (San Jose, CA); Jing Ye (San Jose, CA); Shan Liu (San Jose, CA)
Assignee: Tencent America LLC
H04N19/44H04N19/105H04N19/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 12,615,384
App. No.
18/461,785
Granted
Apr 28, 2026
Kind
B2
Abstract

This disclosure relates generally to video coding/decoding and particularly for enhancing block adaptive weighted prediction. One method includes receiving a video bitstream comprising a current block and a reference block, the reference block being used for predicting the current block and being identified by a motion vector associated with the current block; receiving, from the video bitstream, a syntax element indicating a scale factor (α); determining the scale factor (α) based on a value of the syntax element; predicting the current block using an equation p′(x′)=α*p(x)+β, where: p′(x′) is a predicted sample in the current block, p(x) is a collocated reference sample in the reference block corresponding to p′(x′), α is the determined scale factor based on the value of the syntax element, and β is an offset; and reconstructing the current block based on the predicted current block.

Claims (110)

1 . A method for processing video data in a decoder, the method comprising:

receiving a video bitstream comprising a current block in a current frame and a reference block in a reference frame, the reference block being used for predicting the current block and being identified by a motion vector associated with the current block;

receiving, from the video bitstream, a syntax element indicating a scale factor (α);

determining the scale factor (α) based on a value of the syntax element, wherein the scale factor (α) is used for predicting the current block;

predicting the current block using an equation as following:

p

′

(

x

′

)

=

α

*

p

⁡

(

x

)

+

β

wherein: p′(x′) is a predicted sample in the current block, p(x) is a collocated reference sample in the reference block corresponding to p′(x′), a correspondence between p′(x′) and p(x) is established by the motion vector, α is the determined scale factor based on the value of the syntax element, and β is an offset; and

reconstructing the current block based on the predicted current block.

2 . The method of claim 1 , wherein the decoder maintains a lookup table for storing candidate scale factors, and the signaling carries an index identifying the scale factor in the lookup table.

3 . The method of claim 2 , wherein the candidate scale factors in the lookup table are sorted based on a difference between each of the candidate scale factors and a threshold value.

4 . The method of claim 1 , wherein:

the decoder maintains two or more lookup tables for storing candidate scale factors;

each of the two or more lookup tables supports a different scale factor range; and

the signaling carries a first index identifying a target lookup table among the two or more lookup tables, and a second index identifying the scale factor in the target lookup table.

5 . The method of claim 4 , wherein the candidate scale factors in the each of the two or more lookup tables are sorted based on a difference between each of the candidate scale factors and a threshold value.

6 . The method of claim 5 , wherein the threshold value equals to 1.

7 . The method of claim 5 , further comprising:

receiving, from the video bitstream, a high level syntax indicating the threshold value, the high level syntax being signaled in at least one of following levels:

a sequence level;

a frame level; or

a slice level.

8 . The method of claim 5 , further comprising:

updating and sorting the each of the two or more lookup tables in response to the threshold value being updated.

9 . The method of claim 4 , wherein, for any pair of a first lookup table and a second lookup table in the two or more lookup tables, a first precision of the first lookup table storing candidate scale factors with higher magnitude is lower compared with a second precision of the second lookup table storing candidate scale factors with lower magnitude, each of the first precision and the second precision being measured by a step size between two adjacent scale factors in a respective lookup table.

10 . The method of claim 4 , wherein:

for any pair of a first lookup table and a second lookup table in the two or more lookup tables, a first precision of the first lookup table storing a candidate scale factor with a longer distance to a predefined threshold value is lower compared with a second precision of the second lookup table storing a candidate scale factor with shorter distances to the predefined threshold value;

a distance between a scale factor and the predefined threshold value is determined by an absolute value of a difference between the scale factor and the predefined threshold value; and

each of the first precision and the second precision is measured by a step size between two adjacent scale factors in a lookup table.

11 . The method of claim 1 , wherein the current block is coded in one of following modes: a Block Adaptive Weighted Prediction (BAWP) mode; or a Local Illumination Compensation (LIC) mode.

12 . The method of claim 1 , further comprising:

deriving the offset as an average value of a template of the current block.

13 . The method of claim 1 , further comprising:

in response to a width of the current block being greater than a height of the current block, determining the offset based on above samples of a template of the current block; and

in response to the height of the current block being greater than the width of the current block, determining the offset based on left samples of the template of the current block.

14 . The method of claim 1 , further comprising deriving the offset as an average value of one of:

an average value of the reference block; or

an average value of a template of the reference block.

15 . The method of claim 1 , further comprising receiving a high level syntax indicating whether the signaling indicating or associating with the scale factor (α) is used in the video bitstream, wherein the high level syntax is transmitted in at least one of following levels:

a sequence level;

a frame level;

a slice level; or

a super block level.

16 . The method of claim 15 , further comprising in response to the high level syntax indicating that the signaling is used in the video bitstream:

determining that the scale factor is explicitly indicated by the signaling; and

setting the offset to one of: 0; or average value of a template of the current block.

17 . The method of claim 1 , wherein the decoder maintains a lookup table for storing candidate value pairs formed by scale factor and offset, and the signaling carries an index identifying a target value pair in the lookup table, the target value pair comprising the scale factor and the offset to be used in the linear equation.

18 . The method of claim 1 , wherein:

the syntax element indicates the scale factor explicitly or implicitly; and

p(x) is derived from on p′(x′) based on the motion vector.

19 . A device for processing video data, the device comprising a memory for storing computer instructions and a processor in communication with the memory, wherein, when the processor executes the computer instructions, the processor is configured to cause the device to:

receive a video bitstream comprising a current block in a current frame and a reference block in a reference frame, the reference block being used for predicting the current block and being identified by a motion vector associated with the current block;

receive, from the video bitstream, a syntax element indicating a scale factor (α);

determine the scale factor (α) based on a value of the syntax element, wherein the scale factor (α) is used for predicting the current block;

predict the current block using an equation as following:

p

′

(

x

′

)

=

α

*

p

⁡

(

x

)

+

β

wherein: p′(x′) is a predicted sample in the current block, p(x) is a collocated reference sample in the reference block corresponding to p′(x′), a correspondence between p′(x′) and p(x) is established by the motion vector, α is the determined scale factor based on the value of the syntax element, and β is an offset; and

reconstruct the current block based on the predicted current block.

20 . A non-transitory storage medium for storing computer readable instructions, the computer readable instructions, when executed by a processor, causing the processor to:

receive a video bitstream comprising a current block in a current frame and a reference block in a reference frame, the reference block being used for predicting the current block and being identified by a motion vector associated with the current block;

receive, from the video bitstream, a syntax element indicating a scale factor (α);

determine the scale factor (α) based on a value of the syntax element, wherein the scale factor (α) is used for predicting the current block;

predict the current block using an equation as following:

p

′

(

x

′

)

=

α

*

p

⁡

(

x

)

+

β

wherein: p′(x′) is a predicted sample in the current block, p(x) is a collocated reference sample in the reference block corresponding to p′(x′), a correspondence between p′(x′) and p(x) is established by the motion vector, α is the determined scale factor based on the value of the syntax element, and β is an offset; and

reconstruct the current block based on the predicted current block.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2023
From: ZHAO, LIANG; GAO, HAN; ZHAO, XIN; YE, JING; LIU, SHAN
To: TENCENT AMERICA LLC
Reel/Frame 064814/0055 →
Continuity (2)
Provisional Application 63459565 · Apr 14, 2023
Related Publication 20240348810A1 · Oct 17, 2024
References Cited (23)
US 11553174B2 · Filippov · 2023 [cited by examiner]
US 12244854B2 · Xu · 2025 [cited by examiner]
US 20150222913A1 · Sato · 2015 [cited by examiner]
US 20150350671A1 · Alshin · 2015 [cited by examiner]
US 20190141339A1 · Madajczak · 2019 [cited by examiner]
US 20200228796A1 · Seregin · 2020 [cited by examiner]
US 20210211716A1 · Zhang · 2021 [cited by examiner]
US 20210227209A1 · Liu · 2021 [cited by examiner]
US 20220103816A1 · Karczewicz · 2022 [cited by examiner]
US 20220286666A1 · Zhu · 2022 [cited by examiner]
US 20240357130A1 · Park · 2024 [cited by examiner]
International Search Report and Written Opinion for International Patent Application No. PCT/US23/73916 dated Dec. 12, 2023, 9 pages. [cited by applicant]
Bross et al., “Versatile Video Coding Editorial Refinements on Draft 10,” JVET of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29, 20th Meeting, Document: JVET-T2001-v2, Oct. 7, 2020, 511 pages. [cited by applicant]
Chen et al., “An Overview of Core Coding Tools in the AV1 Video Codec,” 2018 Picture Coding Symposium (PCS), San Francisco, CA, USA, Jun. 2018, pp. 41-45. [cited by applicant]
Coban et al., “Algorithm description of Enhanced Compression Model 2 (ECM 2),” JVET of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29, 20th Meeting, Document: JVET-W2025, July 7, 2021, 22 pages. [cited by applicant]
Bross, Benjamin et al., “Versatile Video Coding Editorial Refinements on Draft 10”, Joint Video Experts Team (JVET) of ITU-T SG 16 WO 3 and ISO/IEC JTC 1/SC29, 20 [cited by applicant]
Chen, Yue et al., “An Overview of Core Coding Tools in the AV1 Video Codec”, Alliance for Open Media (AOMedia) industry consortium, 2018. [cited by applicant]
De Rivaz, Peter et al., “AV1 Bitstream & Decoding Process Specification”, Version 1.0 . . . 0 with Errata 1, AOMediaCodec/av1-spec project, modified Jan. 8, 2019. [cited by applicant]
Karpilovsky, Elliott et al., “Proposal: New Inter Modes for AV2”, Alliance for Open Media, Codec Working Group, Document CWG-B018_v1, Feb. 24, 2021. [cited by applicant]
Lu, Lester (Keng-Shih) et al., “Optical Flow Motion Vector Refinement for AV2”, Alliance for Open Media Codec Working Group, Document CWG-B041_v3, Sep. 20, 2021. [cited by applicant]
Zhao, Leo et al., “Advanced motion vector difference coding”, Alliance for Open Media, Codec Working Group, Document CWG-B092, Nov. 24, 2021. [cited by applicant]
Zhao, Leo et al., “Improved adaptive MVD resolution”, Alliance for Open Media, Codec Working Group, Document CWG-C011, Feb. 9, 2022. [cited by applicant]
Zhao, Xin et al., “Tool Description for AV1 and libaom”, Alliance for Open Media Codec Working Group, Document CWG-B078_v1, Oct. 4, 2021. [cited by applicant]