IP Library Granted Patent US 12,519,968
Granted Patent B2
US 12,519,968 · App. 18/511,098 · Granted Jan 6, 2026

Motion vector range based on motion vector precision

Inventors: Li Zhang (San Diego, CA); Kai Zhang (San Diego, CA); Hongbin Liu (Beijing, CN); Jizheng Xu (San Diego, CA); Yue Wang (Beijing, CN)
Assignees: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.; BYTEDANCE INC.
H04N19/513H04N19/172H04N19/176H04N19/184H04N19/186H04N19/51H04N19/517
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,519,968
App. No.
18/511,098
Granted
Jan 6, 2026
Kind
B2
Abstract

A method for video processing is provided to comprise: determining a motion vector precision of one or more motion vectors related to a current video block of a video; selecting, based on the motion vector precision, a motion vector range; and performing, based on the motion vector range, a conversion between the current video block and a bitstream representation of the video.

Claims (39)

1 . A method for processing video data, comprising:

deriving, for a conversion between a current video block of a video and a bitstream of the video, at least one temporal collocated motion vector, wherein each of the at least one temporal collocated motion vector is derived at least based on a motion vector associated with a first block which has a temporal reference picture that is different from a target reference picture of the current video block;

scaling each of the at least one temporal collocated motion vector based on a first picture order count difference between the target reference picture and a current picture including the current video block and a second picture order count difference between the temporal reference picture and a first picture including the first block;

performing a first clipping operation on the at least one scaled temporal collocated motion vector to derive at least one clipped temporal collocated motion vector, wherein a clipping range of each component of the at least one clipped temporal collocated motion vector is [−(1<<(M−1)), (1<<(M−1))−1], where M is greater than 16 and << is an arithmetic left shift operation; and

performing the conversion based on the at least one clipped temporal collocated motion vector;

wherein the at least one clipped temporal collocated motion vector includes a first temporal collocated motion vector which is used to construct a subblock motion candidate list, and wherein the first temporal collocated motion vector is derived based on a temporal motion shift from a spatial neighboring block of the current video block, and a reference picture related to the temporal motion shift is a same as a collocated picture of the current video block.

2 . The method of claim 1 , wherein the at least one clipped temporal collocated motion vector is further used to construct a motion candidate list, and at least one motion predictor derived based on the motion candidate list is used in the conversion directly, or is combined with at least one motion vector difference to derive a refined motion vector.

3 . The method of claim 2 , wherein each component of the refined motion vector has a bit-depth M-bit.

4 . The method of claim 2 , wherein when the at least one motion vector difference comprising two motion vector differences and a third picture order count difference between a first reference picture and the current picture is less than a forth picture order count difference between a second reference picture and the current picture, the conversion uses a scaling process to obtain motion vector difference of the first reference picture from the motion vector difference of the second reference picture which is indicated by a filed in the bitstream, and wherein the scaling process uses a second clipping operation to constrain each component of the motion vector difference of the first reference picture to fall in a range [—((1<<(M−1))), (1<<(M−1))−1].

5 . The method of claim 1 , wherein M is 18 and the range is [−131072, 131071].

6 . The method of claim 1 , wherein the conversion is performed based on the at least one clipped temporal collocated motion vector for a spatial-temporal motion vector prediction mode of the current video block.

7 . The method of claim 1 , wherein the conversion comprises decoding the current video block from the bitstream.

8 . The method of claim 1 , wherein the conversion comprises encoding the current video block into the bitstream.

9 . 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:

derive, for a conversion between a current video block of a video and a bitstream of the video, at least one temporal collocated motion vector, wherein each of the at least one temporal collocated motion vector is derived at least based on a motion vector associated with a first block which has a temporal reference picture that is different from a target reference picture of the current video block;

scale each of the at least one temporal collocated motion vector based on a first picture order count difference between the target reference picture and a current picture including the current video block and a second picture order count difference between the temporal reference picture and a first picture including the first block;

perform a first clipping operation on the at least one scaled temporal collocated motion vector to derive at least one clipped temporal collocated motion vector, wherein a clipping range of each component of the at least one clipped temporal collocated motion vector is [−(1<<(M−1)), (1<<(M−1))−1], where M is greater than 16 and << is an arithmetic left shift operation; and

perform the conversion based on the at least one clipped temporal collocated motion vector;

wherein the at least one clipped temporal collocated motion vector includes a first temporal collocated motion vector which is used to construct a subblock motion candidate list, and wherein the first temporal collocated motion vector is derived based on a temporal motion shift from a spatial neighboring block of the current video block, and a reference picture related to the temporal motion shift is a same as a collocated picture of the current video block.

10 . The apparatus of claim 9 , wherein the at least one clipped temporal collocated motion vector is further used to construct a motion candidate list, and at least one motion predictor derived based on the motion candidate list is used in the conversion directly, or is combined with at least one motion vector difference to derive a refined motion vector.

11 . The apparatus of claim 10 , wherein each component of the refined motion vector has a bit-depth M-bit.

12 . The apparatus of claim 10 , wherein when the at least one motion vector difference comprising two motion vector differences and a third picture order count difference between a first reference picture and the current picture is less than a forth picture order count difference between a second reference picture and the current picture, the conversion uses a scaling process to obtain motion vector difference of the first reference picture from the motion vector difference of the second reference picture which is indicated by a filed in the bitstream, and wherein the scaling process uses a second clipping operation to constrain each component of the motion vector difference of the first reference picture to fall in a range [−((1<<(M−1))), (1<<(M−1))−1].

13 . The apparatus of claim 9 , wherein M is 18 and the range is [−131072, 131071].

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

derive, for a conversion between a current video block of a video and a bitstream of the video, at least one temporal collocated motion vector, wherein each of the at least one temporal collocated motion vector is derived at least based on a motion vector associated with a first block which has a temporal reference picture that is different from a target reference picture of the current video block;

scale each of the at least one temporal collocated motion vector based on a first picture order count difference between the target reference picture and a current picture including the current video block and a second picture order count difference between the temporal reference picture and a first picture including the first block;

perform a first clipping operation on the at least one scaled temporal collocated motion vector to derive at least one clipped temporal collocated motion vector, wherein a clipping range of each component of the at least one clipped temporal collocated motion vector is [−(1<<(M−1)), (1<<(M−1))−1], where M is greater than 16 and << is an arithmetic left shift operation; and

perform the conversion based on the at least one clipped temporal collocated motion vector;

wherein the at least one clipped temporal collocated motion vector includes a first temporal collocated motion vector which is used to construct a subblock motion candidate list, and wherein the first temporal collocated motion vector is derived based on a temporal motion shift from a spatial neighboring block of the current video block, and a reference picture related to the temporal motion shift is a same as a collocated picture of the current video block.

15 . The non-transitory computer-readable storage medium of claim 14 , wherein the at least one clipped temporal collocated motion vector is further used to construct a motion candidate list, and at least one motion predictor derived based on the motion candidate list is used in the conversion directly, or is combined with at least one motion vector difference to derive a refined motion vector.

16 . The non-transitory computer-readable storage medium of claim 15 , wherein when the at least one motion vector difference comprising two motion vector differences and a third picture order count difference between a first reference picture and the current picture is less than a forth picture order count difference between a second reference picture and the current picture, the conversion uses a scaling process to obtain motion vector difference of the first reference picture from the motion vector difference of the second reference picture which is indicated by a filed in the bitstream, and wherein the scaling process uses a second clipping operation to constrain each component of the motion vector difference of the first reference picture to fall in a range [−((1<<(M−1))), (1<<(M−1))−1].

17 . A method for storing a bitstream of a video, comprising:

deriving at least one temporal collocated motion vector, wherein each of the at least one temporal collocated motion vector is derived at least based on a motion vector associated with a first block which has a temporal reference picture that is different from a target reference picture of a current video block;

scaling each of the at least one temporal collocated motion vector based on a first picture order count difference between the target reference picture and a current picture including the current video block and a second picture order count difference between the temporal reference picture and a first picture including the first block;

performing a first clipping operation on the at least one scaled temporal collocated motion vector to derive at least one clipped temporal collocated motion vector, wherein a clipping range of each component of the at least one clipped temporal collocated motion vector is [−(1<<(M−1)), (1<<(M−1))−1], where M is greater than 16 and << is an arithmetic left shift operation;

generating the bitstream based on the at least one clipped temporal collocated motion vector; and

storing the bitstream in a non-transitory computer-readable recording medium;

wherein the at least one clipped temporal collocated motion vector includes a first temporal collocated motion vector which is used to construct a subblock motion candidate list, and wherein the first temporal collocated motion vector is derived based on a temporal motion shift from a spatial neighboring block of the current video block, and a reference picture related to the temporal motion shift is a same as a collocated picture of the current video block.

18 . The method of claim 17 , wherein the at least one clipped temporal collocated motion vector is further used to construct a motion candidate list, and at least one motion predictor derived based on the motion candidate list is used in the generating directly, or is combined with at least one motion vector difference to derive a refined motion vector.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2023
From: ZHANG, LI; ZHANG, KAI; XU, JIZHENG
To: BYTEDANCE INC.
Reel/Frame 065782/0045 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2023
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 065782/0101 →
Priority Claims (1)
WO PCT/CN2018/122740 · Dec 21, 2018 · international
Continuity (4)
Continuation 17523286 · Nov 10, 2021
Continuation 17212339 · Mar 25, 2021
Continuation PCTCN2019127011 · Dec 20, 2019
Related Publication 20240098296A1 · Mar 21, 2024
References Cited (96)
US 7920628B2 · Kojokaro et al. · 2011 [cited by applicant]
US 8379723B2 · Chiu et al. · 2013 [cited by applicant]
US 9432667B2 · Seregin et al. · 2016 [cited by applicant]
US 9473779B2 · Rapaka et al. · 2016 [cited by applicant]
US 9578328B2 · Rapaka et al. · 2017 [cited by applicant]
US 9578339B2 · Rapaka et al. · 2017 [cited by applicant]
US 9900593B2 · Xiu et al. · 2018 [cited by applicant]
US 9912964B2 · Zhang et al. · 2018 [cited by applicant]
US 9961372B2 · He · 2018 [cited by applicant]
US 10034010B2 · Hendry et al. · 2018 [cited by applicant]
US 10045014B2 · Zhang et al. · 2018 [cited by applicant]
US 10045041B2 · Zhang et al. · 2018 [cited by applicant]
US 10306253B2 · Wang et al. · 2019 [cited by applicant]
US 10412406B2 · Zhang et al. · 2019 [cited by applicant]
US 10516882B2 · He et al. · 2019 [cited by applicant]
US 10834419B2 · Joshi et al. · 2020 [cited by applicant]
US 10939128B2 · Zhang et al. · 2021 [cited by applicant]
US 20120269270A1 · Chen et al. · 2012 [cited by applicant]
US 20130163668A1 · Chen · 2013 [cited by examiner]
US 20130177082A1 · Sugio · 2013 [cited by examiner]
US 20130294522A1 · Lim · 2013 [cited by examiner]
US 20140301463A1 · Rusanovskyy et al. · 2014 [cited by applicant]
US 20150085935A1 · Chen et al. · 2015 [cited by applicant]
US 20150195525A1 · Sullivan · 2015 [cited by examiner]
US 20150195527A1 · Zhou · 2015 [cited by examiner]
US 20150304665A1 · Hannuksela et al. · 2015 [cited by applicant]
US 20150381999A1 · Chuang et al. · 2015 [cited by applicant]
US 20160165263A1 · Zhang · 2016 [cited by examiner]
US 20170332095A1 · Zou et al. · 2017 [cited by applicant]
US 20180084260A1 · Chien et al. · 2018 [cited by applicant]
US 20180098063A1 · Chen et al. · 2018 [cited by applicant]
US 20180131952A1 · Xiu et al. · 2018 [cited by applicant]
US 20180199057A1 · Chuang et al. · 2018 [cited by applicant]
US 20180199061A1 · Zhang et al. · 2018 [cited by applicant]
US 20180288430A1 · Chen et al. · 2018 [cited by applicant]
US 20200045309A1 · Xu · 2020 [cited by examiner]
US 20200077087A1 · He et al. · 2020 [cited by applicant]
US 20210099724A1 · Han et al. · 2021 [cited by applicant]
US 20210105482A1 · Zhang et al. · 2021 [cited by applicant]
US 20210127116A1 · Chen · 2021 [cited by examiner]
US 20210211710A1 · Zhang et al. · 2021 [cited by applicant]
CN 1456999A · 2003 [cited by applicant]
CN 101005620A · 2007 [cited by applicant]
CN 101783958A · 2010 [cited by applicant]
CN 101883286A · 2010 [cited by applicant]
CN 102783149A · 2012 [cited by applicant]
CN 102835113A · 2012 [cited by applicant]
CN 103583044A · 2014 [cited by applicant]
CN 103650507A · 2014 [cited by applicant]
CN 104012096A · 2014 [cited by applicant]
CN 104038768A · 2014 [cited by applicant]
CN 104170381A · 2014 [cited by applicant]
CN 104322070A · 2015 [cited by applicant]
CN 104919804A · 2015 [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 106454378A · 2017 [cited by applicant]
CN 107852512A · 2018 [cited by applicant]
CN 108124162A · 2018 [cited by applicant]
CN 108432250A · 2018 [cited by applicant]
CN 113228675B · 2024 [cited by applicant]
EP 0631444A1 · 1994 [cited by applicant]
EP 0631444B1 · 1998 [cited by applicant]
EP 0527011B1 · 1999 [cited by applicant]
JP 2007504760A · 2007 [cited by applicant]
JP 2007158855A · 2007 [cited by applicant]
KR 20120061035A · 2012 [cited by applicant]
KR 20150070848A · 2015 [cited by applicant]
WO 2012120863A1 · 2012 [cited by applicant]
WO 2012174973A1 · 2012 [cited by applicant]
WO 2013096018A1 · 2013 [cited by applicant]
Notification to Grant Patent Right for Invention for Chinese Application No. 201980083817.0, Oct. 22, 2024, 6 Pages. [cited by applicant]
Chinese Notice of Allowance from Chinese Patent Application No. 201980083817.0 dated Jun. 20, 2024, 8 pages. [cited by applicant]
Chinese Notice of Allowance from Chinese Patent Application No. 201980083816.6 dated May 22, 2024, 4 pages. [cited by applicant]
JVET-L0142-Lee et al. “CE4: Simplification of the Common Base for Affine Merge (Test 4.2.2),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting, Macau, CN, Oct. 8-12, 2012, … [cited by applicant]
JVET-L0632-Chen et al. “Crosscheck of JVET-L0142 (CE4: Simplification of the Common Base for Affine Merge (Test 4.2.6)),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting, … [cited by applicant]
JVET-L0265-Zhang et al. “CE4: Affine Prediction with 4x4 Sub-Blocks for Chroma Components (Test 4.1.16),” 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… [cited by applicant]
JVET-L0054-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-L0… [cited by applicant]
JVET-L1001-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]
“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]
JCTVC-Y1002-Rosewarne et al. “High Efficiency Video Coding (HEVC) Test Model 16 (HM 16) Improved Encoder Description Update 7,” Joint Collaborative Team on Video Coding (JCT-VC) ITU-T SG 16 WP3 and ISO/IEC JTC1/SC29/WG1… [cited by applicant]
JVET-G1001-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,… [cited by applicant]
UEM-7.0: https://jvet.hhi.fraunhofer.de/svn/svn_HMJEMSoftware/tags/ HM-16.6-JEM-7.0, Nov. 10, 2021. [cited by applicant]
JVET-L0368-Chen et al.CE4: Affine Merge Enhancement with Simplification (Test 4.2.2), Joint Video Experts Team (JVET) of ITUT SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting, Macao, CN, 3-12, Oct. 2018, document … [cited by applicant]
JVET-M0479-MISRA et al. “Non-CE4: On Clipping of Scaled Motion Vectors,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP3 and ISO/IEC JTC 1/SC 29/WG 11, 13th Meeting, Marrakech, MA, Jan. 9-18, 2019, document JVET-M047… [cited by applicant]
JVET-L0024-v2-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 1112th Meeting: Macao, CN, Oct. 3-12, 2018, doc… [cited by applicant]
International Search Report and Written Opinion from International Patent Application No. PCT/CN2019/127010 dated Mar. 13, 2020 (11 pages). [cited by applicant]
Corrected International Search Report and Written Opinion from International Patent Application No. PCT/ CN2019/127010 dated Mar. 17, 2021 (12 pages). [cited by applicant]
International Search Report and Written Opinion from International Patent Application No. PCT/CN2019/127011 dated Mar. 19, 2020 (10 pages). [cited by applicant]
International Search Report and Written Opinion from International Patent Application No. PCT/CN2019/127014 dated Mar. 19, 2020 (15 pages). [cited by applicant]
Non Final Office Action from U.S. Appl. No. 17/212,339 dated Jun. 15, 2021. [cited by applicant]
Notice of Allowance from U.S. Appl. No. 17/212,339 dated Oct. 20, 2021. [cited by applicant]
Non Final Office Action from U.S. Appl. No. 17/523,286 dated Apr. 21, 2023. [cited by applicant]
Notice of Allowance from U.S. Appl. No. 17/523,286 dated Aug. 4, 2023. [cited by applicant]