IP Library Granted Patent US 12,413,737
Granted Patent B2
US 12,413,737 · App. 17/914,875 · Granted Sep 9, 2025

Geometric partitioning merge mode with merge mode with motion vector difference

Inventors: Krit Panusopone (San Diego, CA); Seungwook Hong (San Diego, CA); Limin Wang (San Diego, CA)
Assignee: Nokia Technologies Oy
H04N19/137H04N19/159H04N19/46
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,413,737
App. No.
17/914,875
Granted
Sep 9, 2025
Kind
B2
Abstract

A method, apparatus, and computer program product provide for improving prediction accuracy of a geometric partitioning merge mode. In the context of a method, the method accesses a coding unit partitioned into a first partition and a second partition. The method also determines whether an enabling value associated with the coding unit is indicative of additional motion vector refinement and, in accordance with a determination that the enabling value associated with the coding unit is indicative of additional motion vector refinement, determines at least one motion vector difference value for at least one partition of the first partition and the second partition. The method additionally applies a prediction of the coding unit in accordance with the at least one motion vector difference value.

Claims (44)

1. An apparatus comprising:

at least one processor; and

at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform at least the following:

performing a coding process for video, wherein the coding process is one of encoding video into encoded video for placement into a bitstream or decoding video using the bitstream to form decoded video, the coding process comprising:

accessing a coding unit corresponding to the video partitioned into a first partition and a second partition, wherein the coding unit is geometrically partitioned;

determining an enabling value is associated with the coding unit, wherein the enabling value is indicative of motion vector refinement, to at least one partition of the first partition or the second partition, that is additional to a base motion vector already applied to the at least one partition of the first partition or the second partition; and

in accordance with the determination that the enabling value associated with the coding unit is indicative of the additional motion vector refinement:

determining at least one motion vector difference value for the at least one partition of the first partition or the second partition, wherein the at least one motion vector difference value is based on at least one indicator, put into or removed from the bitstream, indicating one or more distance values and one or more direction values associated with a corresponding individual one of the at least one partition of the first partition or the second partition; and

applying a prediction of the coding unit in accordance with the at least one motion vector difference value; and

producing one of the encoded video or the decoded video.

2. The apparatus of claim 1 , wherein the coding unit is geometrically partitioned in accordance with Geometric Partitioning Merge Mode.

3. The apparatus of claim 1 , wherein applying the prediction of the coding unit in accordance with the at least one motion vector difference value comprises applying a same motion vector difference value to both the first partition and the second partition.

4. The apparatus of claim 1 , wherein applying the prediction of the coding unit in accordance with the at least one motion vector difference value comprises applying a motion vector difference value only to a larger of the first partition or the second partition.

5. The apparatus of claim 1 , wherein determining at least one motion vector difference value for at the least one partition of the first partition or the second partition is based on a respective enabling value associated with individual ones of the first partition and the second partition.

6. The apparatus of claim 5 , wherein the at least one motion vector difference value is not determined for a particular partition of the first partition or the second partition in an instance in which an enabling value for the particular partition is indicative that motion vector difference is not to be used.

7. The apparatus of claim 1 , wherein the at least one indicator comprises a first indicator indicating the one or more distance values and a second indicator indicating the one or more direction values associated with a corresponding individual one of the at least one partition of the first partition or the second partition.

8. A method comprising:

performing a coding process for video, wherein the coding process is one of encoding video into e coded video for placement into a bitstream or decoding video using the bitstream to form decoded video, the coding process comprising:

accessing a coding unit corresponding to the video partitioned into a first partition and a second partition, wherein the coding unit is geometrically partitioned;

determining an enabling value is associated with the coding unit, wherein the enabling value is indicative of motion vector refinement, to at least one partition of the first partition or the second partition, that is additional to a base motion vector already applied to the at least one partition of the first partition or the second partition; and

in accordance with the determination that the enabling value associated with the coding unit is indicative of the additional motion vector refinement:

determining at least one motion vector difference value for the at least one partition of the first partition or the second partition, wherein the at least one motion vector difference value is based on at least one indicator, put into or removed from the bitstream, Indicating one or more distance values and one or more direction values associated with a corresponding individual one of the at least one partition of the first partition or the second partition; and

applying a prediction of the coding unit in accordance with the at least one motion vector difference value; and

producing one of the encoded video or the decoded video.

9. The method of claim 8 , wherein the coding unit is geometrically partitioned in accordance with Geometric Partitioning Merge Mode.

10. The method of claim 8 , wherein applying the prediction of the coding unit in accordance with the at least one motion vector difference value comprises applying a same motion vector difference value to both the first partition and the second partition.

11. The method of claim 8 , wherein applying the prediction of the coding unit in accordance with the at least one motion vector difference value comprises applying a motion vector difference value only to a larger of the first partition or the second partition.

12. The method of claim 8 , wherein determining at least one motion vector difference value for the at least one partition of the first partition or the second partition is based on a respective enabling value associated with individual ones of the first partition and the second partition.

13. The method of claim 12 , wherein the at least one motion vector difference value is not determined for a particular partition of the first partition or the second partition in an instance in which a respective enabling value for the particular partition is indicative that motion vector difference is not to be used.

14. The method of claim 8 , wherein the at least one indicator comprises a first indicator indicating the one or more distance values and a second indicator indicating the one or more direction values associated with a corresponding individual one of the at least one partition of the first partition or the second partition.

15. A computer program product comprising a non-transitory computer readable storage medium having program code portions stored thereon, the program code portions configured, upon execution, to cause an apparatus to perform the following:

perform a coding process for video, wherein the coding process is one of encoding video into encoded deo for placement into a bitstream or decoding video using the bitstream to form decoded video, the coding process comprising:

accessing a coding unit corresponding to the video partitioned into a first partition and a second partition, wherein the coding unit is geometrically partitioned;

determining an enabling value is associated with the coding unit, wherein the enabling value is indicative of motion vector refinement, to at least one partition of the first partition or the second partition, that is additional to a base motion vector already applied to the at least one partition of the first partition or the second partition; and

in accordance with the determination that the enabling value associated with the coding unit is indicative of the additional motion vector refinement:

determining at least one motion vector difference value for the at least one partition of the first partition or the second partition, wherein the at least one motion vector difference value is based on at least one indicator, put into or removed from the bitstream, indicating one or more distance values and one or more direction values associated with a corresponding individual one of the at least one partition of the first partition or the second partition; and

applying a prediction of the coding unit in accordance with the at least one motion vector difference value; and

producing one of the encoded video or the decoded video.

16. The computer program product of claim 15 , wherein the coding unit is geometrically partitioned in accordance with Geometric Partitioning Merge Mode.

17. The computer program product of claim 15 , wherein applying the prediction of the coding unit in accordance with the at least one motion vector difference value comprises applying a same motion vector difference value to both the first partition and the second partition.

18. The computer program product of claim 15 , wherein applying the prediction of the coding unit in accordance with the at least one motion vector difference value comprises applying a motion vector difference value only to a larger of the first partition or the second partition.

19. The computer program product of claim 15 , wherein determining at least one motion vector difference value for at least one partition of the first partition and the second partition is based on a respective enabling value associated with individual ones of the first partition and the second partition.

20. The computer program product of claim 19 , wherein the at least one motion vector difference value is not determined for a particular partition of the first partition or the second partition in an instance in which a respective enabling value for the particular partition is indicative that motion vector difference is not to be used.

21. The computer program product of claim 15 , wherein the at least one indicator comprises a first indicator indicating the one or more distance values and a second indicator indicating the one or more direction values associated with a corresponding individual one of the at least one partition of the first partition or the second partition.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2022
From: PANUSOPONE, KRIT; HONG, SEUNGWOOK; WANG, LIMIN
To: NOKIA TECHNOLOGIES OY
Reel/Frame 061253/0220 →
Continuity (2)
Provisional Application 63004663 · Apr 3, 2020
Related Publication 20230144567A1 · May 11, 2023
References Cited (12)
US 11122266B2 · Zhang · 2021 [cited by examiner]
US 20130208982A1 · Bordes et al. · 2013 [cited by applicant]
US 20220286689A1 · Nam · 2022 [cited by examiner]
US 20220321894A1 · Lee · 2022 [cited by examiner]
US 20230085937A1 · Deshpande · 2023 [cited by examiner]
CN 103069802A · 2013 [cited by applicant]
JP 2002312796A · 2002 [cited by applicant]
Benjamin et al. (“Versatile Video Coding (Draft 7)”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, Oct. 1-11, 2019) (Year: 2019). [cited by examiner]
Zhang, K. et al., “Non-CE4: Triangular prediction mode with motion vector difference,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-Q0315, 17 [cited by applicant]
Bross, B. et al., “Versatile Video Coding (Draft 8),” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-Q2001-vE, 17 [cited by applicant]
Panusopone, K. et al., “GEO with MMVD,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-R0282-r3, 18 [cited by applicant]
Bross, Benjamin, et al., “Versatile Video Coding (Draft 7)”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG11, Document: JVET-P2001-vE, Oct. 2019, 493 pages. [cited by applicant]