IP Library › Granted Patent US 12,289,466
Granted Patent B2
US 12,289,466 · App. 18/516,620 · Granted Apr 29, 2025

Generalized bi directional prediction mode in video processing

Inventors: Hongbin Liu (Beijing, CN); Li Zhang (San Diego, CA); Kai Zhang (San Diego, CA); Jizheng Xu (San Diego, CA); Yue Wang (Beijing, CN)
Assignees: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.; BYTEDANCE INC.
H04N19/52H04N19/105H04N19/109H04N19/129H04N19/137H04N19/139H04N19/176H04N19/184H04N19/196H04N19/46H04N19/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,289,466
App. No.
18/516,620
Granted
Apr 29, 2025
Kind
B2
Abstract

A method of video processing is provided. The method includes: determining, for a conversion between a first video block of a video and a bitstream of the video, that a merge mode with motion vector differences is applied into the first video block; and performing the conversion based on the determining, where the merge mode includes motion vector expression to derive motion information of the first video block, where the motion vector expression includes a first parameter representing a motion vector difference and a second parameter indicating a base candidate from a base candidate list, where the first parameter includes a first motion magnitude and a first motion direction, and where the base candidate list is based on a first merge candidate list for a merge mode which is constructed for the first video block during the conversion.

Claims (67)

1. A method of video processing, comprising:

determining, for a conversion between a first video block of a video and a bitstream of the video, that a merge mode with motion vector differences (MVDs) is applied into the first video block; and

performing the conversion based on the determining,

wherein the merge mode with motion vector differences comprises a motion vector expression to derive motion information of the first video block, wherein the motion vector expression comprises a first parameter representing a motion vector difference and a second parameter indicating a base candidate from a base candidate list, wherein the first parameter comprises a first motion magnitude and a first motion direction,

wherein the base candidate list is based on a first merge candidate list for a merge mode which is constructed for the first video block during the conversion, wherein a size of the base candidate list is not greater than a size of the first merge candidate list for the merge mode,

wherein the method further comprises:

constructing a second merge candidate list for a second video block of the video;

generating a first motion vector from the second merge candidate list;

determining a motion vector difference offset based on a second motion distance and a second motion direction, wherein the second motion distance is determined based on a motion distance index and a sample precision;

determining, a motion vector difference (MVD) based the motion vector difference offset;

determining, a second motion vector based on the MVD and the first motion vector; and

performing a conversion between the second video block and the bitstream of the video based on the second motion vector,

wherein a first flag in the bitstream indicates whether only integer sample precision is used for indicating the second motion distance.

2. The method of claim 1 , wherein the second parameter comprises an index to the base candidate list.

3. The method of claim 1 , wherein the size of the base candidate list is set to one of 1 , or 2 .

4. The method of claim 1 , wherein a flag is present in the bitstream to indicate whether to enable the merge mode with motion vector differences.

5. The method of claim 4 , wherein the flag is present at a sequence parameter set level.

6. The method of claim 1 , wherein the size of the base candidate list is omitted from the bitstream.

7. The method of claim 1 , wherein the first motion magnitude is selected from a first table comprising at least one motion magnitude, and the first motion direction is selected from a second table comprising at least one motion direction, wherein at least one of the first table and the second table depends on a picture order count (POC) of two reference pictures or a POC of a first picture that includes the first video block, or a quantization parameter (QP) used for coding the first video block, a first slice, or the first picture.

8. The method of claim 1 , wherein the first flag is signaled in a case that a merge mode with motion vector difference enablement flag indicates that the merge mode with motion vector difference is enabled.

9. The method of claim 1 , wherein the motion distance index is binarized by a truncated rice process.

10. The method of claim 1 , wherein an element in a first motion distance table is a product of a factor and a corresponding element with a same index in a second motion distance table, wherein the first motion distance table is used to derive the second motion distance when the first flag indicate that only integer sample precision is used for indicating the second motion distance, and the second motion distance table is used to derive the second motion distance when the first flag indicates that not only integer sample precision is used for indicating the second motion distance.

11. The method of claim 10 , wherein the factor is 4.

12. The method of claim 1 , wherein the first flag is a picture header level.

13. The method of claim 12 , wherein a second flag in the bitstream indicates whether only integer sample precision is enabled for indicating the second motion distance, and wherein the second flag is a sequence parameter set (SPS) level.

14. The method of claim 13 , wherein the first flag is not included in the bitstream in response to the second flag indicating false, and wherein the first flag is included in the bitstream in resresponse to the second flag indicating true.

15. The method of claim 1 , wherein performing the conversion includes decoding the first video block from the bitstream.

16. The method of claim 1 , wherein performing the conversion includes encoding the first video block into the bitstream.

17. An apparatus for processing video data comprising a processor and a non-transitory memory with instructions thereon, wherein the instructions upon execution by the processor, cause the processor to:

determine, for a conversion between a first video block of a video and a bitstream of the video, that a merge mode with motion vector differences is applied into the first video block; and

perform the conversion based on the determining,

wherein the merge mode with motion vector differences comprises motion vector expression to derive motion information of the first video block, wherein the motion vector expression comprises a first parameter representing a motion vector difference and a second parameter indicating a base candidate from a base candidate list, wherein the first parameter comprises a first motion magnitude and a first motion direction,

wherein the base candidate list is based on a first merge candidate list for a merge mode which is constructed for the first video block during the conversion, wherein a size of the base candidate list is not greater than a size of the first merge candidate list for the merge mode,

wherein the instructions further cause the processor to:

construct a second merge candidate list for a second video block of the video;

generate a first motion vector from the second merge candidate list;

determine a motion vector difference offset based on a second motion distance and a second motion direction, wherein the second motion distance is determined based on a motion distance index and a sample precision;

determine, a motion vector difference (MVD) based the motion vector difference offset;

determine, a second motion vector based on the MVD and the first motion vector; and

perform a conversion between the second video block and the bitstream of the video based on the second motion vector,

wherein a first flag in the bitstream indicates whether only integer sample precision is used for indicating the second motion distance.

18. A non-transitory computer-readable storage medium storing instructions that cause a processor to:

determine, for a conversion between a first video block of a video and a bitstream of the video, that a merge mode with motion vector differences is applied into the first video block; and

perform the conversion based on the determining,

wherein the merge mode with motion vector differences comprises motion vector expression to derive motion information of the first video block, wherein the motion vector expression comprises a first parameter representing a motion vector difference and a second parameter indicating a base candidate from a base candidate list, wherein the first parameter comprises a first motion magnitude and a first motion direction,

wherein the base candidate list is based on a first merge candidate list for a merge mode which is constructed for the first video block during the conversion, wherein a size of the base candidate list is not greater than a size of the first merge candidate list for the merge mode,

wherein the instructions further cause the processor to:

construct a second merge candidate list for a second video block of the video;

generate a first motion vector from the second merge candidate list;

determine a motion vector difference offset based on a second motion distance and a second motion direction, wherein the second motion distance is determined based on a motion distance index and a sample precision;

determine, a motion vector difference (MVD) based the motion vector difference offset;

determine, a second motion vector based on the MVD and the first motion vector; and

perform a conversion between the second video block and the bitstream of the video based on the second motion vector, wherein a first flag in the bitstream indicates whether only integer sample precision

is used for indicating the second motion distance.

19. A non-transitory computer-readable recording medium storing a bitstream of a video which is generated by a method performed by a video processing apparatus, wherein the method comprises:

determining, for a conversion between a first video block of a video and a bitstream of the video, that a merge mode with motion vector differences is applied into the first video block; and

generating the bitstream from the first video block based on the determining,

wherein the merge mode with motion vector differences comprises motion vector expression to derive motion information of the first video block, wherein the motion vector expression comprises a first parameter representing a motion vector difference and a second parameter indicating a base candidate from a base candidate list, wherein the first parameter comprises a first motion magnitude and a first motion direction,

wherein the base candidate list is based on a first merge candidate list for a merge mode which is constructed for the first video block during the conversion, wherein a size of the base candidate list is not greater than a size of the first merge candidate list for the merge mode,

wherein the method further comprises:

constructing a second merge candidate list for a second video block of the video;

generating a first motion vector from the second merge candidate list;

determining a motion vector difference offset based on a second motion distance and a second motion direction, wherein the second motion distance is determined based on a motion distance index and a sample precision;

determining, a motion vector difference (MVD) based the motion vector difference offset;

determining, a second motion vector based on the MVD and the first motion vector; and

performing a conversion between the second video block and the bitstream of the video based on the second motion vector,

wherein a first flag in the bitstream indicates whether only integer sample precision is used for indicating the second motion distance.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2024
From: ZHANG, LI; ZHANG, KAI; XU, JIZHENG
To: BYTEDANCE INC.
Reel/Frame 066110/0948 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2024
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 066111/0078 →
Priority Claims (4)
WO PCT/CN2018/116067 · Nov 17, 2018 · international
WO PCT/CN2018/122626 · Dec 21, 2018 · international
WO PCT/CN2018/125417 · Dec 29, 2018 · international
WO PCT/CN2019/072814 · Jan 23, 2019 · international
Continuity (3)
Continuation 17316300 · May 10, 2021
Continuation PCTCN2019119217 · Nov 18, 2019
Related Publication 20240107055A1 · Mar 28, 2024
References Cited (139)
US 7920628B2 · Kojokaro · 2011 [cited by applicant]
US 8379723B2 · Chiu · 2013 [cited by applicant]
US 9961372B2 · He · 2018 [cited by applicant]
US 10448010B2 · Chen · 2019 [cited by applicant]
US 10462462B2 · Chien · 2019 [cited by applicant]
US 11128884B2 · Liu · 2021 [cited by applicant]
US 11310508B2 · Liu · 2022 [cited by applicant]
US 20070201562A1 · Ganesh · 2007 [cited by applicant]
US 20120134415A1 · Lin · 2012 [cited by applicant]
US 20140126644A1 · Strom · 2014 [cited by applicant]
US 20150271524A1 · Zhang · 2015 [cited by applicant]
US 20150382009A1 · Chen · 2015 [cited by applicant]
US 20160100189A1 · Pang · 2016 [cited by applicant]
US 20170034529A1 · Lin · 2017 [cited by applicant]
US 20170105003A1 · Lainema · 2017 [cited by applicant]
US 20170214932A1 · Huang · 2017 [cited by applicant]
US 20170332095A1 · Zou · 2017 [cited by applicant]
US 20170332099A1 · Lee · 2017 [cited by applicant]
US 20170339425A1 · Jeong · 2017 [cited by applicant]
US 20180098089A1 · Chen · 2018 [cited by applicant]
US 20180184117A1 · Chen · 2018 [cited by applicant]
US 20180270500A1 · Li · 2018 [cited by applicant]
US 20180295385A1 · Alshin · 2018 [cited by applicant]
US 20190230350A1 · Chen · 2019 [cited by applicant]
US 20200021814A1 · Xu · 2020 [cited by applicant]
US 20200029091A1 · Chien · 2020 [cited by applicant]
US 20200045310A1 · Chen · 2020 [cited by applicant]
US 20200077113A1 · Huang · 2020 [cited by applicant]
US 20200107043A1 · Hung · 2020 [cited by applicant]
US 20200112727A1 · Xu · 2020 [cited by applicant]
US 20200154101A1 · Li · 2020 [cited by examiner]
US 20200213594A1 · Liu · 2020 [cited by applicant]
US 20200213612A1 · Liu · 2020 [cited by applicant]
US 20200221117A1 · Liu · 2020 [cited by applicant]
US 20200359029A1 · Liu · 2020 [cited by applicant]
US 20200359045A1 · Liu · 2020 [cited by applicant]
US 20210029362A1 · Liu · 2021 [cited by applicant]
US 20210152845A1 · Liu · 2021 [cited by applicant]
US 20210203945A1 · Liu · 2021 [cited by applicant]
US 20210281875A1 · Liu · 2021 [cited by applicant]
US 20210289216A1 · Liu · 2021 [cited by applicant]
US 20210306659A1 · Lai · 2021 [cited by applicant]
AU 2010288269A1 · 2012 [cited by applicant]
CN 1456999A · 2003 [cited by applicant]
CN 101005620A · 2007 [cited by applicant]
CN 101883286A · 2010 [cited by applicant]
CN 102509083A · 2012 [cited by applicant]
CN 102783149A · 2012 [cited by applicant]
CN 103581647A · 2014 [cited by applicant]
CN 103583044A · 2014 [cited by applicant]
CN 103916673A · 2014 [cited by applicant]
CN 104335589A · 2015 [cited by applicant]
CN 104919804A · 2015 [cited by applicant]
CN 105556970A · 2016 [cited by applicant]
CN 105874789A · 2016 [cited by applicant]
CN 105900420A · 2016 [cited by applicant]
CN 105900425A · 2016 [cited by applicant]
CN 106331703A · 2017 [cited by applicant]
CN 106559669A · 2017 [cited by applicant]
CN 107113424A · 2017 [cited by applicant]
CN 107409225A · 2017 [cited by applicant]
CN 107787582A · 2018 [cited by applicant]
CN 107925775A · 2018 [cited by applicant]
CN 108293128A · 2018 [cited by applicant]
CN 108432250A · 2018 [cited by applicant]
CN 108605137A · 2018 [cited by applicant]
CN 108632616A · 2018 [cited by applicant]
CN 108702509A · 2018 [cited by applicant]
CN 108781284A · 2018 [cited by applicant]
CN 108965871A · 2018 [cited by applicant]
CN 113016185B · 2021 [cited by applicant]
EP 0527011B1 · 1999 [cited by applicant]
EP 3264769A1 · 2018 [cited by applicant]
EP 3273692A1 · 2018 [cited by applicant]
EP 3301918A1 · 2018 [cited by applicant]
EP 3860123A1 · 2021 [cited by applicant]
JP 7548659B2 · 2024 [cited by applicant]
KR 20140043807A · 2014 [cited by applicant]
WO 2012103750A1 · 2012 [cited by applicant]
WO 2012120863A1 · 2012 [cited by applicant]
WO 2014210473A1 · 2014 [cited by applicant]
WO 2015106121A1 · 2015 [cited by applicant]
WO 2015141696A1 · 2015 [cited by applicant]
WO 2016034058A1 · 2016 [cited by applicant]
WO 2016048834A1 · 2016 [cited by applicant]
WO 2016078511A1 · 2016 [cited by applicant]
WO 2017076221A1 · 2017 [cited by applicant]
WO 2017087751A1 · 2017 [cited by applicant]
WO 2017118409A1 · 2017 [cited by applicant]
WO 2017144017A1 · 2017 [cited by applicant]
WO 2017147765A1 · 2017 [cited by applicant]
WO 2017148345A1 · 2017 [cited by applicant]
WO 2017164297A1 · 2017 [cited by applicant]
WO 2018030294A1 · 2018 [cited by applicant]
WO 2018039596A1 · 2018 [cited by applicant]
WO 2018047668A1 · 2018 [cited by applicant]
WO 2018067729A1 · 2018 [cited by applicant]
WO 2018128222A1 · 2018 [cited by applicant]
WO 2018128380A1 · 2018 [cited by applicant]
WO 2020024966A1 · 2020 [cited by applicant]
WO 2020069329A1 · 2020 [cited by applicant]
WO 2020130520A1 · 2020 [cited by applicant]
Bross et al. “Versatile Video Coding (Draft 2),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 11th Meeting: Ljubljana, SI, Jul. 10-18, 2018, document JVET-K1001, 2018. [cited by applicant]
https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/tags/VTM-2.1, Jul. 28, 2021. [cited by applicant]
Han et al. “CE4.1.3: Affine Motion Compensation Prediction,” Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 11th meeting, Ljubljana, SI, Jul. 10-18, 2018, document JVET-K0337, 201… [cited by applicant]
Chen et al. “CE4: Common Base for Affine Merge Mode (Test 4.2.1,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting, Macao, CN, Oct. 3-12, 2018, document JVET-L0366, 2018. [cited by applicant]
“Information Technology—High Efficiency Coding and Media Delivery in Heterogeneous Environments—Part 2: High Efficiency Video Coding” Apr. 20, 2018, ISO/DIS 23008, 4th Edition. [cited by applicant]
Chen et al. “Algorithm Description of Joint Exploration Test Model 7 (JEM 7),” Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 7th Meeting: Torino, IT, Jul. 13-21, 2017, document J… [cited by applicant]
JEM-7.0: https://jvet.hhi.fraunhofer.de/svn/svn_HMJEMSoftware/tags/ HM-16.6-JEM-7.0, Jul. 28, 2021. [cited by applicant]
Li et al. “An Efficient Four-Parameter Affine Motion Model for Video Coding,” IEEE Transactions on Circuits and Systems for Video Technology, Aug. 2018, 28(8):1934-1948. [cited by applicant]
Li et al. “CE4-Related: Affine Merge Mode with Prediction Offsets,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting, Macao, CN, Oct. 3-12, 2018, document JVET-L0320, 2018. [cited by applicant]
Jeong et al. “CE4 Ultimate Motion Vector Expression (Test 4.5.4),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting, Macao, CN, Oct. 3-12, 2018, document JVET-L0054, 2018. [cited by applicant]
Su et al. “CE4.4.1: Generalized Bi-Prediction for Intercoding,” Joint Video Exploration Team of ISO/IEC JTC 1/SC 29/ WG 11 and ITU-T SG 16, Ljubljana, Jul. 11-18, 2018, document No. JVET-K0248, 2018. [cited by applicant]
Xu et al. “CE8-2.2: Current Picture Referencing Using Reference Index Signaling,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 11th Meeting, Ljubljana, SI, Jul. 10-18, 2018, documen… [cited by applicant]
Jeong et al. “CE4 Ultimate Motion Vector Expression in J0024 (Test 4.2.9),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 11th Meeting, Ljubljana, SI, Jul. 10-18, 2018, document JVET… [cited by applicant]
Akula et al. “Description of SOR, HOR and 360 degree Video Coding Technology Proposal Considering Mobile Application Scenario by Samsung, Huawei, GoPro, and HiSilicon,” Joint Video Exploration Team (JVET) of ITU-T SG 16… [cited by applicant]
Liao et al. “CE10.3.1.B: Triangular Prediction Unit Mode,” Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting: Macao, CN, Oct. 3-12, 2018, document JVET-L0124, 2018. [cited by applicant]
Yang et al. “Description of Core Experiment 4 (CE4): Inter Prediction and Motion Vector Coding,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 11th Meeting, Ljubljana, SI, Jul. 10-18… [cited by applicant]
Liu et al. “AHG11: MMVD without Fractional Distances for SCC,” 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, document JVET-M0255, 2019. [cited by applicant]
Yang et al. “CE4 Summary Report: Inter Prediction and Motion Vector Coding,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 11th Meeting, Ljubljana, SI, Jul. 10-18, 2018, document JVE… [cited by applicant]
Jeong et al. “Proposed WD for CE4 Ultimate Motion Vector Expression (Test 4.5.4),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/VG 11, 12th Meeting, Macao, CN, Oct. 3-12, 2018, document JV… [cited by applicant]
Bross et al. “Versatile Video Coding (Draft 3),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting: Macao, CN, Oct. 3-12, 2018, document JVET-L1001, 2018. [cited by applicant]
Zhang et al. “CE4.3.3: Locally Adaptive Motion Vector Resolution and MVD Coding,” Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 11th Meeting, Ljubljana, SI, Jul. 10-18, 2018, docu… [cited by applicant]
Yang et al. “CE4: Summary Report on Inter Prediction and Motion Vector Coding,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Macao, CN, Oct. 3-12, 2018, document JVET-L… [cited by applicant]
Extended European Search Report from European Patent Application No. 19897900.7 dated Nov. 11, 2021 (11 pages). [cited by applicant]
Notice of Allowance from U.S. Appl. No. 17/203,604 dated Feb. 3, 2022. [cited by applicant]
Non-Final Office Action from U.S. Appl. No. 17/316,199 dated Jul. 20, 2022. [cited by applicant]
International Search Report and Written Opinion from International Patent Application No. PCT/CN2019/119197 dated Feb. 18, 2020 (9 pages). [cited by applicant]
International Search Report and Written Opinion from International Patent Application No. PCT/CN2019/119206 dated Feb. 28, 2020 (9 pages). [cited by applicant]
Intemational Search Report and Written Opinion from International Patent Application No. PCT/CN2019/119210 dated Feb. 21, 2020 (9 pages). [cited by applicant]
International Search Report and Written Opinion from International Patent Application No. PCT/CN2019/119214 dated Jan. 23, 2020 (10 pages). [cited by applicant]
International Search Report and Written Opinion from International Patent Application No. PCT/CN2019/119217 dated Feb. 12, 2020 (11 pages). [cited by applicant]
International Search Report and Written Opinion from International Patent Application No. PCT/CN2019/126990 dated Mar. 24, 2020 (13 pages). [cited by applicant]
International Search Report and Written Opinion (Corrected) from International Patent Application No. PCT/CN2019/126990 dated Mar. 18, 2021 (10 pages). [cited by applicant]
International Search Report and Written Opinion from International Patent Application No. PCT/CN2019/127001 dated Mar. 19, 2020 (9 pages). [cited by applicant]
Notice of Allowance from U.S. Appl. No. 17/154,565 dated Mar. 31, 2021. [cited by applicant]
Non-Final Office Action from U.S. Appl. No. 17/203,604 dated Jun. 17, 2021. [cited by applicant]
Non-Final Office Action from U.S. Appl. No. 17/316,300 dated Nov. 10, 2022. [cited by applicant]
Japanese Notice of Allowance from Japanese Patent Application No. 2023-000463 dated Jul. 30, 2024, 6 pages. [cited by applicant]