IP Library Granted Patent US 12,444,091
Granted Patent B2
US 12,444,091 · App. 18/345,027 · Granted Oct 14, 2025

Texture coordinate prediction in mesh compression

Inventors: Shan Liu (San Jose, CA); Jun Tian (Belle Mead, NJ); Xiaozhong Xu (State College, PA); Chao Huang (Palo Alto, CA); Xiang Zhang (Sunnyvale, CA)
Assignee: TENCENT AMERICA LLC
G06T9/001
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,444,091
App. No.
18/345,027
Granted
Oct 14, 2025
Kind
B2
Abstract

Method, apparatus, and system for texture coordinate prediction for mesh compression are provided. The process may include receiving, for a mesh, a coordinate of a first vertex and a coordinate of a prediction candidate vertex in a three dimensional (3D) space. The process may include determining a stretch perpendicular distance associated with the first vertex and the prediction candidate vertex, the stretch perpendicular distance being based on a conversion of the 3D space into a two dimensional (2D) space, and determining a 2D texture coordinate of the first vertex based on the stretch perpendicular distance associated with the first vertex and the prediction candidate vertex. The process may also include determining a residual of a predicted coordinate of the first vertex and an actual 2D coordinate of the first vertex; and compressing the mesh based on entropy coding the residual.

Claims (64)

1. A method for texture coordinate prediction for mesh compression, the method being executed by at least one processor, the method comprising:

receiving, for a mesh, a coordinate of a first vertex and a coordinate of a prediction candidate vertex in a three dimensional (3D) space, the first vertex and the prediction candidate vertex being on opposite sides of two polygon meshes sharing an edge in a texture plane;

determining a stretch perpendicular distance associated with the first vertex and the prediction candidate vertex, the stretch perpendicular distance being based on a conversion of the 3D space into a two dimensional (2D) space;

predicting a texture coordinate of the first vertex based on the stretch perpendicular distance associated with the first vertex and the prediction candidate vertex; and

encoding the predicted texture coordinate of the first vertex of the mesh.

2. The method of claim 1 , wherein determining the stretch perpendicular distance comprises:

determining, in the 3D space, a first perpendicular line from the first vertex to the shared edge, the first perpendicular line dividing the shared edge in a first ratio;

determining, in the 2D space, a first intersection point dividing the shared edge in the first ratio;

determining, in the 3D space, a second perpendicular line from the prediction candidate vertex to the shared edge, the second perpendicular line dividing the shared edge in a second ratio; and

determining, in the 2D space, a second intersection point dividing the shared edge in the second ratio.

3. The method of claim 2 , wherein determining the predicted texture coordinate of the first vertex comprises:

determining, in the 2D space, a predicted coordinate of the first vertex on a predicted line, the predicted line being a line that is perpendicular to the shared edge and passing through the first intersection point, wherein the predicted coordinate of the first vertex on the predicted line is based on the second perpendicular line and the second intersection point.

4. The method of claim 3 , wherein the method further comprises:

determining a residual of the predicted coordinate of the first vertex and an actual 2D coordinate of the first vertex; and

compressing the mesh based on entropy coding the residual.

5. The method of claim 2 , wherein determining the predicted texture coordinate of the first vertex comprises:

determining, in the 2D space, a predicted coordinate of the first vertex on a parallel line, the parallel line being a line that is parallel to the second perpendicular line and passing through the first intersection point, wherein the predicted coordinate of the first vertex on the parallel line is based on a distance relationship between the second perpendicular line and the second intersection point.

6. The method of claim 5 , wherein the method further comprises:

determining a residual of the predicted coordinate of the first vertex and an actual 2D coordinate of the first vertex; and

compressing the mesh based on entropy coding the residual.

7. The method of claim 1 , wherein the coordinate of the prediction candidate vertex comprises coordinates of more than one prediction candidate vertices, and wherein the predicted texture coordinate of the first vertex is based on a respective stretch perpendicular distance associated with the first vertex and a respective prediction candidate vertex among the more than one prediction candidate vertices.

8. The method of claim 7 , wherein a number of prediction candidate vertices included in the more than one prediction candidate vertices is less than a first threshold.

9. An apparatus for texture coordinate prediction for mesh compression, the apparatus comprising:

at least one memory configured to store program code; and

at least one processor configured to read the program code and operate as instructed by the program code, the program code including:

receiving code configured to cause the at least one processor to receive, for a mesh, a coordinate of a first vertex and a coordinate of a prediction candidate vertex in a three dimensional (3D) space, the first vertex and the prediction candidate vertex being on opposite sides of two polygon meshes sharing an edge in a texture plane;

first determining code configured to cause the at least one processor to determine a stretch perpendicular distance associated with the first vertex and the prediction candidate vertex, the stretch perpendicular distance being based on a conversion of the 3D space into a two dimensional (2D) space;

second determining code configured to cause the at least one processor to predict a texture coordinate of the first vertex based on the stretch perpendicular distance associated with the first vertex and the prediction candidate vertex; and

encoding code configured to cause the at least one processor to encode the predicted texture coordinate of the first vertex of the mesh.

10. The apparatus of claim 9 , wherein the first determining code comprises:

third determining code configured to cause the at least one processor to determine, in the 3D space, a first perpendicular line from the first vertex to the shared edge, the first perpendicular line dividing the shared edge in a first ratio;

fourth determining code configured to cause the at least one processor to determine, in the 2D space, a first intersection point dividing the shared edge in the first ratio;

fifth determining code configured to cause the at least one processor to determine, in the 3D space, a second perpendicular line from the prediction candidate vertex to the shared edge, the second perpendicular line dividing the shared edge in a second ratio; and

sixth determining code configured to cause the at least one processor to determine, in the 2D space, a second intersection point dividing the shared edge in the second ratio.

11. The apparatus of claim 10 , wherein the second determining code comprises:

seventh determining code configured to cause the at least one processor to determine, in the 2D space, a predicted coordinate of the first vertex on a predicted line, the predicted line being a line that is perpendicular to the shared edge and passing through the first intersection point, wherein the predicted coordinate of the first vertex on the predicted line is based on the second perpendicular line and the second intersection point.

12. The apparatus of claim 11 , wherein the program code further comprises:

eight determining code configured to cause the at least one processor to determine a residual of the predicted coordinate of the first vertex and an actual 2D coordinate of the first vertex; and

first compressing code configured to cause the at least one processor to compress the mesh based on entropy coding the residual.

13. The apparatus of claim 10 , wherein the second determining code comprises:

ninth determining code configured to cause the at least one processor to determine, in the 2D space, a predicted coordinate of the first vertex on a parallel line, the parallel line being a line that is parallel to the second perpendicular line and passing through the first intersection point, wherein the predicted coordinate of the first vertex on the parallel line is based on a distance relationship between the second perpendicular line and the second intersection point.

14. The apparatus of claim 13 , wherein the program code further comprises:

tenth determining code configured to cause the at least one processor to determine a residual of the predicted coordinate of the first vertex and an actual 2D coordinate of the first vertex; and

second compressing code configured to cause the at least one processor to compression the mesh based on entropy coding the residual.

15. A non-transitory computer-readable medium storing instructions, the instructions comprising: one or more instructions that, when executed by one or more processors of a device for texture coordinate prediction for mesh compression, cause the one or more processors to:

receive, for a mesh, a coordinate of a first vertex and a coordinate of a prediction candidate vertex in a three dimensional (3D) space, the first vertex and the prediction candidate vertex being on opposite sides of two polygon meshes sharing an edge in a texture plane;

determine a stretch perpendicular distance associated with the first vertex and the prediction candidate vertex, the stretch perpendicular distance being based on a conversion of the 3D space into a two dimensional (2D) space;

predicting a texture coordinate of the first vertex based on the stretch perpendicular distance associated with the first vertex and the prediction candidate vertex; and

encode the predicted texture coordinate of the first vertex of the mesh.

16. The non-transitory computer-readable medium of claim 15 , wherein determining the stretch perpendicular distance comprises:

determining, in the 3D space, a first perpendicular line from the first vertex to the shared edge, the first perpendicular line dividing the shared edge in a first ratio;

determining, in the 2D space, a first intersection point dividing the shared edge in the first ratio;

determining, in the 3D space, a second perpendicular line from the prediction candidate vertex to the shared edge, the second perpendicular line dividing the shared edge in a second ratio; and

determining, in the 2D space, a second intersection point dividing the shared edge in the second ratio.

17. The non-transitory computer-readable medium of claim 16 , wherein determining the predicted texture coordinate of the first vertex comprises:

determining, in the 2D space, a predicted coordinate of the first vertex on a predicted line, the predicted line being a line that is perpendicular to the shared edge and passing through the first intersection point, wherein the predicted coordinate of the first vertex on the predicted line is based on the second perpendicular line and the second intersection point.

18. The non-transitory computer-readable medium of claim 17 , wherein the instructions further cause the one or more processors to:

determine a residual of the predicted coordinate of the first vertex and an actual 2D coordinate of the first vertex; and

compress the mesh based on entropy coding the residual.

19. The non-transitory computer-readable medium of claim 16 , wherein determining the predicted texture coordinate of the first vertex comprises:

determining, in the 2D space, a predicted coordinate of the first vertex on a parallel line, the parallel line being a line that is parallel to the second perpendicular line and passing through the first intersection point, wherein the predicted coordinate of the first vertex on the parallel line is based on a distance relationship between the second perpendicular line and the second intersection point.

20. The non-transitory computer-readable medium of claim 19 , wherein the instructions further cause the one or more processors to:

determine a residual of the predicted coordinate of the first vertex and an actual 2D coordinate of the first vertex; and

compress the mesh based on entropy coding the residual.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2023
From: LIU, SHAN; TIAN, JUN; XU, XIAOZHONG; HUANG, CHAO; ZHANG, XIANG
To: TENCENT AMERICA LLC
Reel/Frame 064125/0084 →
Continuity (2)
Provisional Application 63404399 · Sep 7, 2022
Related Publication 20240078713A1 · Mar 7, 2024
References Cited (14)
US 6577310B1 · Kim · 2003 [cited by examiner]
US 6668091B1 · Kim · 2003 [cited by examiner]
US 10977773B2 · Hemmer · 2021 [cited by examiner]
US 11069150B2 · Sminchisescu · 2021 [cited by examiner]
US 11410340B2 · Lv · 2022 [cited by examiner]
US 20190371080A1 · Sminchisescu · 2019 [cited by examiner]
US 20200098137A1 · Hemmer · 2020 [cited by examiner]
US 20200265552A1 · Hemmer · 2020 [cited by examiner]
US 20210090301A1 · Mammou · 2021 [cited by examiner]
US 20210183111A1 · Lv · 2021 [cited by examiner]
US 20210358197A1 · Shysheya · 2021 [cited by examiner]
Jarek Rossignac et al., “3D Compression Made Simple: Edgebreaker on a Corner-Table”, 2001, 7 pages. [cited by applicant]
International Search Report dated Oct. 13, 2023 in Application No. PCT/US23/26898. [cited by applicant]
Written Opinion of the International Searching Authority dated Oct. 13, 2023 in Application No. PCT/US23/26898. [cited by applicant]