IP Library › Granted Patent US 12,125,250
Granted Patent B2
US 12,125,250 · App. 17/954,961 · Granted Oct 22, 2024

Decoding of patch temporal alignment for mesh compression

Inventors: Jun Tian (Belle Mead, NJ); Xiang Zhang (Sunnyvale, CA); Xiaozhong Xu (State College, PA); Chao Huang (Palo Alto, CA); Shan Liu (San Jose, CA)
Assignee: Tencent America LLC
G06T9/001G06T15/04G06T17/20
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,125,250
App. No.
17/954,961
Granted
Oct 22, 2024
Kind
B2
Abstract

Processing circuitry decodes a texture map in 2D from a bitstream carrying a 3D mesh frame. The 3D mesh frame represents a surface of an object with polygons and is partitioned into patches. The texture map includes transformed patches with transformed UV coordinates that are transformed from original UV coordinates of the patches according to remap transform parameters. The processing circuitry decodes the remap transform parameters associated with the patches and generates a recovered texture map from the texture map according to the remap transform parameters. At least a first recovered pixel in the recovered texture map is assigned with a texture value at a first transformed position in the texture map, the first transformed position in the texture map is determined according to a pixel position of the first recovered pixel and first remap transform parameters associated with a first patch that the first recovered pixel belongs to.

Claims (54)

1. A method for mesh decompression, comprising;

decoding a texture map in two dimension (2D) from a bitstream carrying a three dimensional (3D) mesh frame, the 3D mesh frame representing a surface of an object with polygons and been partitioned into patches, the texture map comprising transformed patches with transformed UV coordinates that are transformed from original UV coordinates of the patches according to remap transform parameters, the remap transform parameters indicating transformation operations that have been performed to generate the transformed patches;

decoding the remap transform parameters associated with the patches from the bitstream;

generating a recovered texture map from the texture map according to the remap transform parameters, at least a first recovered pixel in the recovered texture map being assigned with a texture value at a first transformed position in the texture map, the first transformed position in the texture map being determined according to a pixel position of the first recovered pixel and first remap transform parameters associated with a first patch that the first recovered pixel belongs to; and

reconstructing the 3D mesh frame according to the recovered texture map.

2. The method of claim 1 , wherein the generating the recovered texture map further comprises:

determining that the first recovered pixel belongs to the first patch according to an index map that maps the pixel position of the first recovered pixel to a first patch index indicating the first patch.

3. The method of claim 1 , wherein the generating the recovered texture map further comprises:

identifying first pixel positions corresponding to boundary vertices of the first patch;

determining first transformed positions in the texture map respectively corresponding to the first pixel positions by applying the first remap transform parameters on the first pixel positions; and

assigning first texture values at the first transformed positions of the texture map to the corresponding first pixel positions in the recovered texture map.

4. The method of claim 3 , further comprising:

identifying second pixel positions that are patch interior of the first patch according to the first pixel positions;

determining second transformed positions in the texture map corresponding to the second pixel positions by applying the first remap transform parameters on the second pixel positions; and

assigning second texture values at the second transformed positions of the texture map to the corresponding second pixel positions in the recovered texture map.

5. The method of claim 1 , further comprising:

determining the texture value at the first transformed position in the texture map by an interpolation in response to one or more coordinates of the first transformed position not being integer.

6. The method of claim 1 , wherein the first remap transform parameters comprise a rotation angle, a spatial translation vector, and a reflection flag indicative of a reflection operation.

7. The method of claim 1 , wherein the first remap transform parameters comprise a rotation angle and a spatial translation vector, and a sign of the rotation angle indicates a reflection operation.

8. The method of claim 1 , wherein the generating the recovered texture map further comprises:

assigning a value to an unoccupied pixel in the recovered texture map according to one or more occupied pixels in an occupied area in the recovered texture map, the occupied area comprising occupied pixels belonging to the patches, the unoccupied pixel being outside of the occupied area.

9. The method of claim 8 , wherein the assigning the value to the unoccupied pixel further comprises:

calculating the value as at least one of a mean value and/or a median value of the occupied pixels in the occupied area.

10. The method of claim 8 , wherein the assigning the value to the unoccupied pixel further comprises:

determining a boundary pixel in the recovered texture map, the boundary pixel being an occupied pixel having at least an unassigned neighboring pixel in a first neighborhood of the boundary pixel, the unassigned neighboring pixel having an unassigned texture value;

determining assigned neighboring pixels in a second neighborhood of the unassigned neighboring pixel; and

determining a derived texture value to assign to the unassigned neighboring pixel based on the assigned neighboring pixels in the second neighborhood.

11. An apparatus for mesh decompression, comprising processing circuitry configured to;

decode a texture map in two dimension (2D) from a bitstream carrying a three dimensional (3D) mesh frame, the 3D mesh frame representing a surface of an object with polygons and been partitioned into patches, the texture map comprising transformed patches with transformed UV coordinates that are transformed from original UV coordinates of the patches according to remap transform parameters, the remap transform parameters indicating transformation operations that have been performed to generate the transformed patches;

decode the remap transform parameters associated with the patches from the bitstream;

generate a recovered texture map from the texture map according to the remap transform parameters, at least a first recovered pixel in the recovered texture map being assigned with a texture value at a first transformed position in the texture map, the first transformed position in the texture map being determined according to a pixel position of the first recovered pixel and first remap transform parameters associated with a first patch that the first recovered pixel belongs to; and

reconstruct the 3D mesh frame according to the recovered texture map.

12. The apparatus of claim 11 , wherein the generating the recovered texture map further comprises:

determining that the first recovered pixel belongs to the first patch according to an index map that maps the pixel position of the first recovered pixel to a first patch index indicating the first patch.

13. The apparatus of claim 11 , wherein the generating the recovered texture map further comprises:

identifying first pixel positions corresponding to boundary vertices of the first patch;

determining first transformed positions in the texture map respectively corresponding to the first pixel positions by applying the first remap transform parameters on the first pixel positions; and

assigning first texture values at the first transformed positions of the texture map to the corresponding first pixel positions in the recovered texture map.

14. The apparatus of claim 13 , further comprising:

identifying second pixel positions that are patch interior of the first patch according to the first pixel positions;

determining second transformed positions in the texture map corresponding to the second pixel positions by applying the first remap transform parameters on the second pixel positions; and

assigning second texture values at the second transformed positions of the texture map to the corresponding second pixel positions in the recovered texture map.

15. The apparatus of claim 11 , further comprising:

determining the texture value at the first transformed position in the texture map by an interpolation in response to one or more coordinates of the first transformed position not being integer.

16. The apparatus of claim 11 , wherein the first remap transform parameters comprise a rotation angle, a spatial translation vector, and a reflection flag indicative of a reflection operation.

17. The apparatus of claim 11 , wherein the first remap transform parameters comprise a rotation angle and a spatial translation vector, and a sign of the rotation angle indicates a reflection operation.

18. The apparatus of claim 11 , wherein the generating the recovered texture map further comprises:

assigning a value to an unoccupied pixel in the recovered texture map according to one or more occupied pixels in an occupied area in the recovered texture map, the occupied area comprising occupied pixels belonging to the patches, the unoccupied pixel being outside of the occupied area.

19. The apparatus of claim 18 , wherein the assigning the value to the unoccupied pixel further comprises:

calculating the value as at least one of a mean value and/or a median value of the occupied pixels in the occupied area.

20. The apparatus of claim 18 , wherein the assigning the value to the unoccupied pixel further comprises:

determining a boundary pixel in the recovered texture map, the boundary pixel being an occupied pixel having at least an unassigned neighboring pixel in a first neighborhood of the boundary pixel, the unassigned neighboring pixel having an unassigned texture value;

determining assigned neighboring pixels in a second neighborhood of the unassigned neighboring pixel; and

determining a derived texture value to assign to the unassigned neighboring pixel based on the assigned neighboring pixels in the second neighborhood.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2022
From: TIAN, JUN; ZHANG, XIANG; XU, XIAOZHONG; HUANG, CHAO; LIU, SHAN
To: TENCENT AMERICA LLC
Reel/Frame 061244/0821 →
Continuity (2)
Provisional Application 63264417 · Nov 22, 2021
Related Publication 20230162404A1 · May 25, 2023