Efficient creation and transmission of mapping coordinates
By generating (u,v) coordinates at the decoder using orthogonal projection parameters, the method addresses inefficiencies in encoding sparse meshes, reducing data size and maintaining efficient 3D mesh reconstruction.
Patent Information
- Application Number
- JP2025519788
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-02-27
- Filing Date
- 2023-09-29
- Publication Date
- 2025-09-29
- Estimated Expiration
- 2043-09-29
AI Technical Summary
Existing methods for compressing 3D meshes, such as V-PCC, are inefficient for encoding sparse meshes and lack mechanisms for transmitting point connectivity, leading to increased data size and potential loss of triangular face attributes.
Generate (u,v) coordinates at the decoder side using orthogonal projection parameters transmitted via the atlas bitstream, reducing the need to encode these coordinates directly, and use patch identification information and mapping function parameters to reconstruct the 3D mesh efficiently.
Reduces the size of the compressed mesh representation by generating (u,v) coordinates at the decoder, minimizing data transmission and maintaining efficient encoding of 3D mesh reconstruction.
Smart Images

Figure 2025532376000001_ABST
Abstract
Description
[Technical Field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority under 35 U.S.C. § 119 to U.S. Provisional Patent Application No. 63 / 378,547, entitled "EFFICIENT MAPPING COORDINATE CREATION AND TRANSMISSION," filed October 6, 2022, which is incorporated herein by reference in its entirety for all purposes.
[0002] The present invention relates to three-dimensional graphics, and more particularly to mapping coordinates. [Background technology]
[0003] Recently, a new method for compressing volumetric content such as point clouds based on 3D-to-2D projections has been standardized. Also known as V3C (visual volumetric video-based compression), this method maps 3D volume data into a number of 2D patches, which are then arranged into an atlas image, which is then encoded by a video encoder. The atlas image corresponds to the geometry of the points, their respective textures, and an occupancy map that indicates which locations should be considered for point cloud reconstruction.
[0004] In 2017, MPEG issued a Call for Proposals (CfP) for the compression of point clouds. After evaluating several proposals, MPEG is currently considering two different techniques for point cloud compression: 3D native coding (based on octrees and similar coding methods) or 3D-to-2D projection followed by traditional video coding. For dynamic 3D scenes, MPEG is using Test Model Software (TMC2), which is based on patch surface modeling, projection of the patches from 3D to a 2D image, and coding of the 2D image with a video encoder such as HEVC. This method has proven more efficient than native 3D coding and can achieve competitive bitrates with acceptable quality.
[0005] Due to the success of coding 3D point clouds with projection-based methods (also known as video-based methods, or V-PCC), it is expected that future versions of this standard will include additional 3D data, such as 3D meshes. However, the current version of this standard is only suitable for transmitting sets of unconnected points, and therefore does not have a mechanism for transmitting point connectivity as required for 3D mesh compression.
[0006] Methods have also been proposed to extend the functionality of V-PCC to meshes. One possible approach is to encode vertices using V-PCC and then encode connectivity using a mesh compression method such as TFAN or Edgebreaker. A limitation of this approach is that the original mesh must be dense so that the point cloud generated from the vertices can be efficiently encoded after projection, rather than being sparse. Furthermore, because the order of vertices affects connectivity coding, different methods have been proposed to reorganize mesh connectivity. An alternative approach to encoding sparse meshes is to use raw patch data to encode the 3D vertex positions. Because raw patches directly encode (x,y,z), in this method, all vertices are encoded as raw data, while connectivity is encoded using a similar mesh compression method, as described above. Note that in raw patches, vertices can be transmitted in any preferred order, so the order generated from connectivity coding can be used. While this method can encode sparse point clouds, raw patches are not efficient for encoding 3D data, and additional data, such as triangular face attributes, may be missing from this method.
[0007] Microsoft's UVAtlas is the state-of-the-art automatic texture map generation, but it takes a significant amount of time and only optimizes for local frames. V-PCC generates patches using orthogonal projection, but only for point clouds, so it does not support patch generation for meshes. Summary of the Invention [Problem to be solved by the invention]
[0008] We disclose a method to generate (u,v) coordinates at the decoder side using the parameters of the orthogonal projection function transmitted via the atlas bitstream. Using the orthogonal projection parameters, the decoder can efficiently generate the (u,v) coordinates and avoid costly coding. [Means for solving the problem]
[0009] In one aspect, a method programmed in a non-transitory memory of a device includes receiving patch identification information and mapping function parameters, and generating (u,v) coordinates based on the patch identification information and the mapping function parameters. The method further includes encoding a 3D mesh to generate the patch identification information and the mapping function parameters. The mapping function parameters are encoded into an atlas sub-bitstream. The mapping function parameters include 3D to 2D mapping function parameters. Encoding the 3D mesh includes generating patches from dynamic mesh information and packing the patches into a texture atlas using an orthogonal projection. Generating the (u,v) coordinates based on the patch identification information and the mapping function parameters includes generating the (u,v) coordinates from the patch identification information and the mapping function parameters using a function, where the mapping function parameters correspond to the patch identification information. The (u,v) coordinates are generated based on a transformation using bounding box size, occupied resolution, and scaling information. The method further includes reconstructing a 3D mesh based on the (u,v) coordinates.
[0010] In another aspect, an apparatus includes: a non-transitory memory for storing an application, the application configured to receive patch identification information and mapping function parameters and generate (u,v) coordinates based on the patch identification information and the mapping function parameters; and a processor coupled to the memory and configured to process the application. The application is configured to encode a 3D mesh to generate the patch identification information and the mapping function parameters. The mapping function parameters are encoded into an atlas sub-bitstream. The mapping function parameters include 3D-to-2D mapping function parameters. Encoding the 3D mesh includes generating patches from dynamic mesh information and packing the patches into a texture atlas using an orthogonal projection. Generating the (u,v) coordinates based on the patch identification information and the mapping function parameters includes generating the (u,v) coordinates from the patch identification information and the mapping function parameters using a function, the mapping function parameters corresponding to the patch identification information. The (u,v) coordinates are generated based on a transformation using a bounding box size, an occupied resolution, and scaling information. The application is configured to reconstruct a 3D mesh based on the (u,v) coordinates.
[0011] In another aspect, a system includes an encoder configured to encode a 3D mesh to generate patch identification information and mapping function parameters; and a decoder configured to receive the patch identification information and the mapping function parameters and generate (u,v) coordinates based on the patch identification information and the mapping function parameters. The mapping function parameters are encoded in an atlas sub-bitstream. The mapping function parameters include 3D-to-2D mapping function parameters. Encoding the 3D mesh includes generating patches from dynamic mesh information and packing the patches into a texture atlas using an orthogonal projection. Generating the (u,v) coordinates based on the patch identification information and the mapping function parameters includes generating the (u,v) coordinates from the patch identification information and the mapping function parameters using a function, the mapping function parameters corresponding to the patch identification information. The (u,v) coordinates are generated based on a transformation using a bounding box size, an occupied resolution, and scaling information. The decoder is configured to reconstruct the 3D mesh based on the (u,v) coordinates. [Brief explanation of the drawings]
[0012] [Figure 1] FIG. 1 is a diagram of texture mapping according to some embodiments. [Figure 2] FIG. 1 is a diagram of a decoding implementation according to some embodiments. [Figure 3] FIG. 1 is a block diagram of an exemplary computing device configured to implement an efficient mapping coordinate generation and transmission method according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION
[0013] A mesh typically consists of a set of polygons that represent the surface of a volume. An efficient way to represent the surface properties (e.g., color properties) of a mesh is to generate a texture atlas that maps the 3D surface properties to a 2D surface. The results of the mapping function are stored in (u,v) coordinates, added to the mesh data, and then further encoded in a mesh compression method. However, the presence of (u,v) coordinates can significantly increase the size of the compressed mesh.
[0014] The latest international point cloud compression standards use orthogonal projection to generate depth map images of point clouds. The projection parameters are encoded in a metadata bitstream known as the atlas bitstream, so that the decoder receives only those parameters and applies a mapping function to each (u,v) coordinate in the depth map to reconstruct the 3D information.
[0015] We disclose a method for transmitting parameters to generate mapping coordinates for a mesh using an orthogonal projection, similar to that used in the V-PCC standard. Using these parameters, a decoder can generate the (u,v) coordinates, further reducing the size of the compressed mesh.
[0016] Figure 1 shows a diagram of texture mapping according to some embodiments. In step 100, patch generation is performed. Position information and connectivity information are received and used to generate the patch. The patch generation includes an f function with position information (x, y, z) and coding parameters (C).
[0017] In step 102, patch packing is implemented. Patch packing includes an f function and a g function that is based on the coding parameter P. The mapping (f and g functions) is determined at the encoder side using orthogonal projection. Patch generation and patch packing are described in U.S. Patent Application No. ***Attorney Docket No. Sony-76000***, entitled "ORTHOATLAS: TEXTURE MAP GENERATION FOR DYNAMIC MESHES USING ORTHOGRAPHIC PROJECTIONS," which is incorporated by reference in its entirety for all purposes.
[0018] In step 104, the 3D to 2D mapping function parameters (C1 and P1...C N and P N ) is transmitted (e.g., to a decoder) in the atlas sub-bitstream.
[0019] In step 106, instead of sending u,v coordinates, a patchId is sent. For example, patchID(pid) is sent to Draco, which encodes and decodes the patch ID. The patchID(pid) indicates the parameters used for the patch. For example, pid 1 corresponds to the encoding parameters C1 and P1, and pid 2 corresponds to the encoding parameters C2 and P2. Using the appropriate parameters, the 2D projection can be reconstructed. Since the triangle in 3D space is known, the encoding parameters (e.g., C1 and P1) can be used to identify where the texture coordinates are on the 2D surface.
[0020] In some embodiments, fewer or additional steps are implemented. In some embodiments, the order of the steps is changed.
[0021] 2 shows a diagram of a decoding implementation according to some embodiments. V3C sub-bitstreams are received. For example, a base mesh sub-bitstream 200, an atlas sub-bitstream 202, a displacement sub-bitstream 204, and an attribute sub-bitstream 206 are received. The sub-bitstreams are decoded by a mesh codec 210, a first video codec 212, or a second video codec 214. For example, the base mesh sub-bitstream 200 is decoded by the mesh codec 210, the displacement sub-bitstream 204 is decoded by the first video codec 212, and the attribute sub-bitstream 206 is decoded by the second video codec 214. The displacement sub-bitstream 204 is decoded by the video codec 212 and the displacement decoder 222.
[0022] The mesh codec 210 decodes the base mesh sub-bitstream 200 and outputs a decoded base mesh 220 that includes the patch ID.
[0023] The atlas mapping process 230 is an additional implementation. The atlas mapping process 230 receives (patchID, 0) information based on the decoded base mesh. The atlas mapping process 230 also receives parameters (e.g., C, P) from the atlas sub-bitstream 202 in the form of patches and regenerates the u, v coordinates.
[0024] The generated u,v coordinates are used in connectivity processing 232 and vertex processing 234. The object / mesh 236 is reconstructed based on the processing. Additionally, a texture map 238 is reconstructed based on the decoded attribute sub-bitstream 206.
[0025] The texture map coordinates can be derived by applying the following transformation: JPEG2025532376000002.jpg2766where, JPEG2025532376000003.jpg16165 JPEG2025532376000004.jpg16157 JPEG2025532376000005.jpg22165where, JPEG2025532376000006.jpg16165 JPEG2025532376000007.jpg16159All operations can be combined into a single 4x4 homography transformation matrix using homogeneous coordinates.
[0026] The transform is used in the decoder to generate u,v coordinates based on the bounding box size, projection, occupied resolution, scaling and / or other information / parameters.
[0027] An exemplary syntax is as follows: Sequence Header const uint8_t bitField = static_cast <int>(params.encodeDisplacementsVideo) | (static_cast <int>(params.encodeTextureVideo) << 1) | (static_cast <int>(params.bDeriveTextCoordFromPos << 2); . . . if (params.bDeriveTextCoordFromPos) { uint32_t gutterBuf; memcpy(&gutterBuf, ¶ms.gutter, sizeof(float)); const uint16_t occupancyResolution = uint32_t(params.occupancyResolution); bitstream.write(gutterBuf); bitstream.write(occupancyResolution); } フレームヘッダ const auto ccSizeMinusOne = uint16_t(connectedComponents.size() - 1); bitstream.write(ccSizeMinusOne); for (int i = 0; i < connectedComponents.size();i++) { auto& cc = connectedComponents[i]; bitstream.write(uint8_t(cc.getProjection())); bitstream.write(uint8_t(cc.getOrientation())); bitstream.write(uint16_t(cc.getU0())); bitstream.write(uint16_t(cc.getV0())); bitstream.write(uint16_t(cc.getSizeU())); bitstream.write(uint16_t(cc.getSizeV())); uint64_t scaleBuf; double scale = cc.getScale(); memcpy(&scaleBuf, &scale, sizeof(double)); bitstream.write(scaleBuf); }
[0028] For example, the syntax may send a flag in the sequence header indicating that texture coordinates are derived from 3D positions. Additionally, the size of the gutter and the occupied resolution may be sent. In the frame header, the number of patches is sent. Additionally, for each patch, the projection, orientation, position and size in 2D space, and scale are sent in the bitstream.
[0029] FIG. 3 illustrates a block diagram of an exemplary computing device configured to implement an efficient mapping coordinate generation and transmission method according to some embodiments. The computing device 300 can be used to acquire, store, compute, process, communicate, and / or display information, such as images and videos, including 3D content. The computing device 300 can implement any of the encoding / decoding aspects. In general, a hardware configuration suitable for implementing the computing device 300 includes a network interface 302, memory 304, a processor 306, I / O device(s) 308, a bus 310, and storage 312. The selection of the processor is not critical as long as a suitable processor with sufficient speed is chosen. The memory 304 can be any conventional computer memory known in the art. The storage 312 can include a hard drive, CD-ROM, CDRW, DVD, DVDRW, high-definition disk / drive, ultra-high-definition drive, flash memory card, or any other storage device. The computing device 300 can include one or more network interfaces 302. An example of a network interface includes a network card connected to an Ethernet or other type of LAN. The I / O device(s) 308 may include one or more of a keyboard, mouse, monitor, screen, printer, modem, touch screen, button interface, and other devices. Efficient mapping coordinate generation and transmission application(s) 330 used to implement the efficient mapping coordinate generation and transmission implementation are likely stored in storage 312 and memory 304 and processed as applications are normally processed. The computing device 300 may include more or fewer components than those shown in Figure 3. In some embodiments, efficient mapping coordinate generation and transmission hardware 320 is included.3 includes application 330 and hardware 320 for implementing the efficient mapping coordinate generation and transmission, the efficient mapping coordinate generation and transmission method may be implemented in the computing device as hardware, firmware, software, or any combination thereof. For example, in some embodiments, the efficient mapping coordinate generation and transmission application 330 is programmed into memory and executed using a processor. As another example, in some embodiments, the efficient mapping coordinate generation and transmission hardware 320 is programmed hardware logic that includes gates that are specifically designed to implement the efficient mapping coordinate generation and transmission method.
[0030] In some embodiments, the efficient mapping coordinate generation and transmission application(s) 330 include several applications and / or modules. In some embodiments, a module also includes one or more sub-modules. In some embodiments, fewer or additional modules may be included.
[0031] Examples of suitable computing devices include a personal computer, a laptop computer, a computer workstation, a server, a mainframe computer, a handheld computer, a personal digital assistant, a cellular / mobile phone, a smart appliance, a game console, a digital camera, a digital camcorder, a camera phone, a smartphone, a portable music player, a tablet computer, a mobile device, a video player, a video disc writer / player (e.g., a DVD writer / player, a high-definition disc writer / player, an ultra-high-definition disc writer / player), a television, a home entertainment system, an augmented reality device, a virtual reality device, smart jewelry (e.g., a smart watch), a vehicle (e.g., an autonomous vehicle), or any other suitable computing device.
[0032] To utilize the efficient mapping coordinate generation and transmission method, a device acquires or receives 3D content (e.g., point cloud content), which can be implemented with user assistance or automatically without user involvement.
[0033] In operation, the orthoAtlas(u,v) generation function parameters are transmitted to the decoder; i.e., texture map generation is derived on the decoder side using orthogonal projection. Elements that together generate the mapping between 3D vertex coordinates (x,y,z) and 2D positions (u,v) in the atlas are defined. The parameters for generating the mapping function are efficiently coded using the atlas bitstream, resulting in a more efficient implementation and less data being transmitted.
[0034] As described, transmitting (u,v) coordinates occupies a significant amount of space in a compressed mesh representation. Currently, texture map generation relies on complex optimizations to reduce mapping distortion and texture seams, resulting in the (u,v) coordinates being encoded as part of the mesh representation. However, these coordinates require a significant number of bits to encode, even in methods that efficiently use the corresponding (x,y,z) values and triangle structure. An efficient mapping coordinate generation and transmission method allows the (u,v) coordinates to be generated at the decoder side using parameters of the orthogonal projection function transmitted via the atlas bitstream. Using the orthogonal projection parameters, the decoder can efficiently generate the (u,v) coordinates and avoid costly encoding.
[0035] Some embodiments of efficient mapping coordinate generation and transmission 1. A method programmed into a non-transitory memory of a device, comprising: receiving patch identification information and mapping function parameters; generating (u,v) coordinates based on the patch identification information and the mapping function parameters; A method comprising:
[0036] 2. The method of claim 1, further comprising the step of encoding a 3D mesh to generate the patch identification information and the mapping function parameters.
[0037] 3. The method of claim 2, wherein the mapping function parameters are coded into the atlas sub-bitstream.
[0038] 4. The method of claim 2, wherein the mapping function parameters include 3D to 2D mapping function parameters.
[0039] 5. Encoding the 3D mesh comprises: generating patches from the dynamic mesh information; packing the patches into a texture atlas using orthogonal projection; 3. The method of claim 2, comprising:
[0040] 6. The method of claim 1, wherein the step of generating (u,v) coordinates based on the patch identification information and the mapping function parameters includes using a function to generate the (u,v) coordinates from the patch identification information and the mapping function parameters, and the mapping function parameters correspond to the patch identification information.
[0041] 7. The method of claim 1, wherein the (u,v) coordinates are generated based on a transformation using bounding box size, occupied resolution, and scaling information.
[0042] 8. The method of claim 1, further comprising the step of reconstructing a 3D mesh based on the (u,v) coordinates.
[0043] 9. An apparatus comprising: A non-transitory memory for storing an application, said application comprising: receiving patch identification information and mapping function parameters; generating (u,v) coordinates based on the patch identification information and the mapping function parameters; a non-transient memory for a processor coupled to the memory and configured to process the application; An apparatus comprising:
[0044] 10. The apparatus of claim 9, wherein the application is configured to encode a 3D mesh to generate the patch identification information and the mapping function parameters.
[0045] 11. The apparatus of claim 10, wherein the mapping function parameters are coded into an atlas sub-bitstream.
[0046] 12. The apparatus of clause 10, wherein the mapping function parameters include 3D to 2D mapping function parameters.
[0047] 13. Encoding the 3D mesh comprises: generating patches from the dynamic mesh information; packing the patches into a texture atlas using orthogonal projection; 11. The apparatus of claim 10, comprising:
[0048] 14. The device described in clause 9, wherein generating (u,v) coordinates based on the patch identification information and the mapping function parameters includes using a function to generate the (u,v) coordinates from the patch identification information and the mapping function parameters, and the mapping function parameters correspond to the patch identification information.
[0049] 15. The apparatus of claim 9, wherein the (u,v) coordinates are generated based on a transformation using bounding box size, occupied resolution, and scaling information.
[0050] 16. The apparatus of claim 9, wherein the application is configured to reconstruct a 3D mesh based on the (u,v) coordinates.
[0051] 17. A system comprising: an encoder configured to encode the 3D mesh to generate patch identification information and mapping function parameters; receiving the patch identification information and the mapping function parameters; generating (u,v) coordinates based on the patch identification information and the mapping function parameters; a decoder configured to A system including:
[0052] 18. The system of claim 17, wherein the mapping function parameters are coded into the atlas sub-bitstream.
[0053] 19. The system of claim 17, wherein the mapping function parameters include 3D to 2D mapping function parameters.
[0054] 20. Encoding the 3D mesh comprises: generating patches from the dynamic mesh information; packing the patches into a texture atlas using orthogonal projection; 18. The system of claim 17, comprising:
[0055] 21. The system described in paragraph 17, wherein generating (u,v) coordinates based on the patch identification information and the mapping function parameters includes using a function to generate the (u,v) coordinates from the patch identification information and the mapping function parameters, and the mapping function parameters correspond to the patch identification information.
[0056] 22. The system of claim 17, wherein the (u,v) coordinates are generated based on a transformation using bounding box size, occupied resolution, and scaling information.
[0057] 23. The system of claim 17, wherein the decoder is configured to reconstruct the 3D mesh based on the (u,v) coordinates.
[0058] The present invention has been described with reference to specific embodiments incorporating details to facilitate an understanding of the principles of construction and operation of the invention. Reference herein to specific embodiments and their details is not intended to limit the scope of the claims appended hereto. Those skilled in the art will readily appreciate that various other modifications can be made to the embodiments chosen for illustration without departing from the spirit and scope of the invention as defined by the claims. [Explanation of symbols]
[0059] 100 patch generation 102 Patch Packing 104 3D → 2D mapping function parameters (C1P1~C N P N ) 106 Send patchId 200 Base Mesh Sub-Bitstreams 202 Atlas Sub-Bitstream 204 Displacement Sub-Bitstream 206 Attribute Sub-Bitstream 210 Mesh Codec 212 the first video codec 214 Second Video Codec 220 decoded base mesh 222 Displacement Decoder 230 Atlas Mapping Processing 232 Connectivity Processing 234 Vertex Processing 236 objects / meshes 238 Texture Maps 300 Computer equipment 302 Network Interface 304 memory 306 processors 308 I / O Devices 310 Bus 312 Storage device 320 Efficient Mapping Coordinate Generation and Transmission Hardware 330 Efficient Mapping Coordinate Generation and Transmission Application< / int> < / int> < / int>
Claims
1. 1. A method programmed into a non-transitory memory of a device, comprising: receiving patch identification information and mapping function parameters; generating (u,v) coordinates based on the patch identification information and the mapping function parameters; A method comprising:
2. The method of claim 1 , further comprising encoding a 3D mesh to generate the patch identification information and the mapping function parameters.
3. The method of claim 2 , wherein the mapping function parameters are coded into an atlas sub-bitstream.
4. The method of claim 2 , wherein the mapping function parameters include 3D to 2D mapping function parameters.
5. Encoding the 3D mesh comprises: generating patches from the dynamic mesh information; packing the patches into a texture atlas using orthogonal projection; 3. The method of claim 2, comprising:
6. 2. The method of claim 1, wherein generating (u,v) coordinates based on the patch identification information and the mapping function parameters comprises utilizing a function to generate the (u,v) coordinates from the patch identification information and the mapping function parameters, the mapping function parameters corresponding to the patch identification information.
7. The method of claim 1 , wherein the (u,v) coordinates are generated based on a transformation using bounding box size, occupied resolution, and scaling information.
8. The method of claim 1 , further comprising the step of reconstructing a 3D mesh based on the (u,v) coordinates.
9. 1. An apparatus comprising: A non-transitory memory for storing an application, said application comprising: receiving patch identification information and mapping function parameters; generating (u, v) coordinates based on the patch identification information and the mapping function parameters; a non-transient memory for a processor coupled to the memory and configured to process the application; 10. An apparatus comprising:
10. The apparatus of claim 9 , wherein the application is configured to encode a 3D mesh to generate the patch identification information and the mapping function parameters.
11. The apparatus of claim 10, wherein the mapping function parameters are coded into an atlas sub-bitstream.
12. The apparatus of claim 10 , wherein the mapping function parameters include 3D to 2D mapping function parameters.
13. Encoding the 3D mesh comprises: generating patches from the dynamic mesh information; packing the patches into a texture atlas using orthogonal projection; 11. The apparatus of claim 10, comprising:
14. 10. The apparatus of claim 9, wherein generating a (u,v) coordinate based on the patch identification and the mapping function parameters comprises using a function to generate the (u,v) coordinate from the patch identification and the mapping function parameters, the mapping function parameters corresponding to the patch identification.
15. 10. The apparatus of claim 9, wherein the (u,v) coordinates are generated based on a transformation using bounding box size, occupied resolution, and scaling information.
16. The apparatus of claim 9 , wherein the application is configured to reconstruct a 3D mesh based on the (u,v) coordinates.
17. 1. A system comprising: an encoder configured to encode the 3D mesh to generate patch identification information and mapping function parameters; receiving the patch identification information and the mapping function parameters; generating (u, v) coordinates based on the patch identification information and the mapping function parameters; a decoder configured to A system comprising:
18. 20. The system of claim 17, wherein the mapping function parameters are coded into an atlas sub-bitstream.
19. 20. The system of claim 17, wherein the mapping function parameters include 3D to 2D mapping function parameters.
20. Encoding the 3D mesh comprises: generating patches from the dynamic mesh information; packing the patches into a texture atlas using orthogonal projection; 20. The system of claim 17, comprising:
21. 18. The system of claim 17, wherein generating (u,v) coordinates based on the patch identification information and the mapping function parameters comprises using a function to generate the (u,v) coordinates from the patch identification information and the mapping function parameters, the mapping function parameters corresponding to the patch identification information.
22. 18. The system of claim 17, wherein the (u,v) coordinates are generated based on a transformation using bounding box size, occupied resolution, and scaling information.
23. 18. The system of claim 17, wherein the decoder is configured to reconstruct the 3D mesh based on the (u, v) coordinates.
Citation Information
Patent Citations
Method and apparatus for encoding / decoding point clouds representing three-dimensional objects
JP2021518681A
Methods for mesh decompression, apparatus including processing circuitry, and related programs and storage media
JP2023552116A
3D data coding apparatus and 3D data decoding apparatus
JP2024047920A