IP Library Granted Patent US 12,452,405
Granted Patent B2
US 12,452,405 · App. 17/484,796 · Granted Oct 21, 2025

Handling of bi-directional optical flow (BIO) coding tool for reference picture resampling in video coding

Inventors: Jianle Chen (San Diego, CA); FNU Hendry (San Diego, CA); Ye-Kui Wang (San Diego, CA)
Assignee: Huawei Technologies Co., Ltd.
H04N19/105H04N19/132H04N19/159H04N19/176H04N19/46H04N19/513
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,452,405
App. No.
17/484,796
Granted
Oct 21, 2025
Kind
B2
Abstract

A method of decoding implemented by a video decoder including determining, by the video decoder, whether a resolution of a current picture being decoded is the same as the resolution of reference pictures identified by a reference picture list associated with the current picture; enabling, by the video decoder, bi-direction optical flow (BDOF) for a current block of the current picture when the resolution of the current picture is determined to be the same as the resolution of each of the reference pictures; disabling, by the video decoder, the BDOF for the current block of the current picture when the resolution of the current picture is determined to be different than the resolution of either of the reference pictures; and refining, by the video decoder, motion vectors corresponding to the current block using the BDOF when the BDOF is enabled for the current block.

Claims (50)

1. A method of decoding implemented by a video decoder, comprising:

determining whether a resolution of a current picture being decoded is the same as a resolution of reference pictures identified by a reference picture list associated with the current picture;

enabling bi-direction optical flow (BDOF) for a current block of the current picture when the resolution of the current picture is determined to be the same as the resolution of each of the reference pictures, a motion model index (MotionModelIdc) of the current block is equal to zero, a merge subblock flag is equal to zero, and at least one flag outside a sequence parameter set and a derived BDOF variable each have a value specifying that the BDOF is enabled;

disabling the BDOF for the current block of the current picture based at least on the flag outside the sequence parameter set or when the resolution of the current picture is determined to be different than the resolution of either of the reference pictures; and

refining motion vectors corresponding to the current block using the BDOF when the BDOF is enabled for the current block.

2. The method of claim 1 , wherein enabling the BDOF comprises setting a BDOF flag to a first value, and wherein disabling the BDOF comprises setting the BDOF flag to a second value.

3. The method of claim 1 , further comprising generating the reference pictures for the current picture based on reference picture lists in accordance with a bi-directional inter prediction mode.

4. The method of claim 1 , further comprising both selectively enabling and disabling the BDOF for blocks in a plurality of pictures depending on whether a resolution of each picture is different from or the same as the resolution of reference pictures associated with the pictures.

5. The method of claim 1 , further comprising enabling reference picture resampling (RPR) for an entire coded video sequence (CVS) containing the current picture when the BDOF is disabled.

6. The method of claim 1 , wherein the resolution of the current picture is disposed in a parameter set of a coded video bitstream, and wherein the current block is in a slice of the current picture.

7. The method of claim 1 , further comprising enabling the BDOF for the current block of the current picture when one or more of the following conditions is also met:

a bi-prediction weight index is equal to zero;

a first luma weight flag and a second luma weight flag are each equal to zero;

a coding block height measured in luma samples is greater than or equal to eight; and

a variable specifying a color component of the current block is equal to zero.

8. The method of claim 1 , further comprising displaying on a display of an electronic device an image generated using the current block.

9. A method of encoding a video bitstream implemented by a video encoder, the method comprising:

determining whether a resolution of a current picture being encoded is the same as a resolution of reference pictures identified in a reference picture list associated with the current picture;

enabling bi-direction optical flow (BDOF) for a current block of the current picture when the resolution of the current picture is determined to be the same as the resolution of each of the reference pictures, a motion model index (MotionModelIdc) of the current block is equal to zero, a merge subblock flag is equal to zero, and at least one flag outside a sequence parameter set and a derived BDOF variable each have a value specifying that the BDOF is enabled;

disabling the BDOF for the current block of the current picture based at least on the flag outside the sequence parameter set or when the resolution of the current picture is determined to be different than the resolution of either of the reference pictures; and

refining motion vectors corresponding to the current block using the BDOF when the BDOF is enabled for the current block.

10. The method of claim 9 , wherein the method further comprises:

determining the motion vectors for the current picture based on the reference pictures;

encoding the current picture based on the motion vectors; and

decoding the current picture using a hypothetical reference decoder.

11. The method of claim 9 , wherein enabling the BDOF comprises setting a BDOF flag to a first value, and wherein disabling the BDOF comprises setting the BDOF flag to a second value.

12. The method of claim 9 , further comprising generating the reference pictures for the current picture based on reference picture lists in accordance with a bi-directional inter prediction mode.

13. The method of claim 9 , further comprising both selectively enabling and disabling the BDOF for blocks in a plurality of pictures depending on whether a resolution of each picture is different from or the same as the resolution of reference pictures associated with the pictures.

14. The method of claim 9 , further comprising enabling reference picture resampling (RPR) for an entire coded video sequence (CVS) containing the current picture even when the BDOF is disabled.

15. The method of claim 9 , further comprising transmitting the video bitstream containing the current block toward a video decoder.

16. A decoding device, comprising:

a receiver configured to receive a coded video bitstream;

a memory coupled to the receiver, the memory storing instructions; and

one or more processors coupled to the memory, the one or more processors configured to execute the instructions to cause the decoding device to:

determine whether a resolution of a current picture being decoded is the same as a resolution of reference pictures identified by a reference picture list associated with the current picture;

enable bi-direction optical flow (BDOF) for a current block of the current picture when the resolution of the current picture is determined to be the same as the resolution of each of the reference pictures, a motion model index (MotionModelIdc) of the current block is equal to zero, a merge subblock flag is equal to zero, and at least one flag outside a sequence parameter set and a derived BDOF variable each have a value specifying that the BDOF is enabled;

disable the BDOF for the current block of the current picture based at least on the flag outside the sequence parameter set or when the resolution of the current picture is determined to be different than the resolution of either of the reference pictures; and

refine motion vectors corresponding to the current block using the BDOF when the BDOF is enabled for the current block.

17. The decoding device of claim 16 , wherein reference picture resampling (RPR) is enabled for an entire coded video sequence (CVS) containing the current picture when the BDOF is disabled.

18. The decoding device of claim 16 , further comprising a display configured to display an image as generated based on the current block.

19. An encoding device, comprising:

a memory containing instructions;

one or more processors coupled to the memory, the one or more processors configured to implement the instructions to cause the encoding device to:

determine whether a resolution of a current picture being encoded is the same as a resolution of reference pictures identified in a reference picture list associated with the current picture;

enable bi-direction optical flow (BDOF) for a current block of the current picture when the resolution of the current picture is determined to be the same as the resolution of each of the reference pictures, a motion model index (MotionModelIdc) of the current block is equal to zero, a merge subblock flag is equal to zero, and at least one flag outside a sequence parameter set and a derived BDOF variable each have a value specifying that the BDOF is enabled;

disable the BDOF for the current block of the current picture based at least on the flag outside the sequence parameter set or when the resolution of the current picture is determined to be different than the resolution of either of the reference pictures; and

refine motion vectors corresponding to the current block using the BDOF when the BDOF is enabled for the current block; and

a transmitter coupled to the one or more processors, the transmitter configured to transmit a video bitstream containing the current block toward a video decoder.

20. The encoding device of claim 19 , wherein reference picture resampling (RPR) is enabled for an entire coded video sequence (CVS) containing the current picture even when the BDOF is disabled.

21. The encoding device of claim 19 , wherein the memory stores the video bitstream prior to the transmitter transmitting the video bitstream toward the video decoder.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2025
From: FUTUREWEI TECHNOLOGIES, INC.
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 072443/0881 →
Continuity (3)
Continuation PCTUS2020032922 · May 14, 2020
Provisional Application 62848409 · May 15, 2019
Related Publication 20220014735A1 · Jan 13, 2022
References Cited (38)
US 7876821B2 · Li · 2011 [cited by examiner]
US 20080247462A1 · Demos · 2008 [cited by applicant]
US 20090247462A1 · Bogin et al. · 2009 [cited by applicant]
US 20150382023A1 · Ramasubramonian et al. · 2015 [cited by applicant]
US 20170094305A1 · Li et al. · 2017 [cited by applicant]
US 20170171563A1 · Deshpande · 2017 [cited by applicant]
US 20170324981A1 · Deshpande · 2017 [cited by applicant]
US 20190045214A1 · Ikai et al. · 2019 [cited by applicant]
US 20190132612A1 · Deshpande · 2019 [cited by applicant]
US 20200296416A1 · Liao · 2020 [cited by examiner]
US 20200336749A1 · Li · 2020 [cited by examiner]
US 20210152816A1 · Zhang · 2021 [cited by examiner]
US 20210368180A1 · Park · 2021 [cited by examiner]
US 20220060692A1 · Zhang et al. · 2022 [cited by applicant]
US 20220264086A1 · Zhang et al. · 2022 [cited by applicant]
US 20230133338A1 · Zhang · 2023 [cited by examiner]
JP 2018536320A · 2018 [cited by applicant]
JP 2022531965A · 2022 [cited by applicant]
KR 20140120336A · 2014 [cited by applicant]
KR 20160105448A · 2016 [cited by applicant]
RU 2685233C2 · 2019 [cited by applicant]
WO 2018237303A1 · 2018 [cited by applicant]
WO 2019195101A1 · 2019 [cited by applicant]
WO 2020215101A1 · 2020 [cited by applicant]
JVET-N0118-v1, “AHG19: Adaptive resolution change (ARC) support in VVC,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 14th Meeting: Geneva, CH, Mar. 19-27, 2019, 8 pages. [cited by applicant]
“Line Transmission of Non-Telephone Signals, Video Codec for Audiovisual Services at p x 64 kbits,” ITU-T Recommendation H.261, Mar. 1993, 29 pages. [cited by applicant]
“Transmission of Non-Telephone Signals, Information Technology—Generic Coding of Moving Pictures and Associated Audio Information: Video,” ITU-T H.262, Jul. 1995, 211 pages. [cited by applicant]
“Video Coding for Low Bit Rate Communication,” Series H: Audiovisual and Multimedia Systems Infrastructure of Audiovisual Services—Coding of Moving Video, ITU-T H.263, Jan. 2005, 226 pages. [cited by applicant]
“Advanced Video Coding for Generic Audiovisual Services,” Series H: Audiovisual and Multimedia Systems Infrastructure of Audiovisual Services—Coding of Moving Video, ITU-T H.264, Jun. 2019, 836 pages. [cited by applicant]
“High Efficiency Video Coding,” Series H: Audiovisual and Multimedia Systems Infrastructure of Audiovisual Services—Coding of Moving Video, ITU-T H.265, Apr. 2013, 317 pages. [cited by applicant]
Bross, B., et al., “Versatile Video Coding (Draft 5),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 14th Meeting: Geneva, CH, Document: JVET-N1001-v5, Mar. 19-27, 2019, 374 pages. [cited by applicant]
Chen, P., et al., “AHG 19: Adaptive Resolution Change,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 14th Meeting: Geneva, CH, Document: JVET-N0279, Mar. 19-27, 2019, 6 pages. [cited by applicant]
Document: JVET-O1040v2 Wenger, S., et al., “AHG8: Summary of Resolution Adaptivity related proposals”, XP030208056, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 15th Meeting: Gothen… [cited by applicant]
JVET-E1001-v2, “Algorithm description of Joint Exploration Test Model 5 (JEM5)”, XP030023366117, International Organization for Standardization Organization Internationale De Normalisation ISO/IEC JTC 1/SC 29/WG 11 Codi… [cited by applicant]
Document: JVET-M1000-v1, Sullivan, G., et al., “Meeting Report of the 13th Meeting of the Joint Video Experts Team (JVET),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 13th Meeting… [cited by applicant]
Document: JVET-M0029v2, Xiu, X., et al., “CE9: Summary Report on Decoder Side MV Derivation”, XP030214483, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 13th Meeting: Marrakech, MA, … [cited by applicant]
Benjamin Bross, “Versatile Video Coding (Draft 4),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 13th Meeting: Marrakech, MA, Jan. 9-18, 2019, 300 pages. [cited by applicant]
Benjamin Bross et al. Editors, Versatile Video Coding (Draft 4), Joint Video Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-M1001-V7: Marrakech, MA, Jan. 9-18, 2019, total 300 pages. [cited by applicant]