Encoding, decoding methods, devices and equipment

By quantizing and encoding the geometric information of a 3D mesh, first-precision and second-precision geometric maps are generated, solving the problem of low compression efficiency of 3D meshes and achieving a more efficient compression effect.

CN116800969BActive Publication Date: 2026-06-30VIVO MOBILE COMM CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
VIVO MOBILE COMM CO LTD
Filing Date
2022-03-18
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

In existing technologies, the compression efficiency of 3D mesh geometric information is not high, and the effect is not ideal when directly using point cloud compression algorithms.

Method used

By quantizing the geometric information of a 3D mesh, first-precision and second-precision geometric information are obtained, generating a first geometric image and a placeholder image. The second-precision geometric information is then included in the second geometric image for encoding, thereby improving compression efficiency using video coding technology.

Benefits of technology

It improves the compression efficiency of 3D mesh geometry information, reduces storage space, and enhances coding efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116800969B_ABST
    Figure CN116800969B_ABST
Patent Text Reader

Abstract

This application discloses an encoding and decoding method, apparatus, and device, relating to the field of encoding and decoding technology. The encoding method includes: an encoding end quantizing the geometric information of a target three-dimensional mesh to obtain first-precision geometric information and second-precision geometric information; the encoding end obtaining a first geometric image and a placeholder image based on the first-precision geometric information; the encoding end obtaining a second geometric image containing the second-precision geometric information and the first geometric image based on the second-precision geometric information and the first geometric image; and the encoding end encoding the second geometric image and the placeholder image; wherein the first-precision geometric information is the quantized geometric information of the target three-dimensional mesh, and the second-precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of encoding and decoding technology, specifically relating to an encoding and decoding method, apparatus and device. Background Technology

[0002] 3D meshes can be considered the most popular representation of 3D models over the years, playing an important role in many applications. Their ease of representation has led to their widespread integration as hardware algorithms into the graphics processing units (GPUs) of computers, tablets, and smartphones, specifically for rendering 3D meshes.

[0003] Since both vertices in a mesh and point clouds are discrete sets of points randomly distributed in space, they share similar characteristics. Therefore, the geometric information of a 3D mesh can be compressed using point cloud compression algorithms. However, compared to point clouds, the vertices of a 3D mesh are more sparsely and unevenly distributed in space. Therefore, using point cloud compression algorithms to compress the geometric information of a 3D mesh model is not very efficient. Summary of the Invention

[0004] This application provides an encoding and decoding method, apparatus, and device that can solve the problem of low compression efficiency in existing methods for compressing three-dimensional mesh geometric information.

[0005] Firstly, an encoding method is provided, including:

[0006] The encoding end quantizes the geometric information of the target 3D mesh to obtain first-precision geometric information and second-precision geometric information;

[0007] The encoding end acquires the first geometric diagram and placeholder diagram of the first precision geometric information;

[0008] The encoding end obtains a second geometric map containing the second precision geometric information and the first geometric map based on the second precision geometric information and the first geometric map;

[0009] Encode the second geometric figure and the placeholder figure;

[0010] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0011] Secondly, an encoding device is provided, comprising:

[0012] The quantization module is used to quantize the geometric information of the target 3D mesh to obtain first-precision geometric information and second-precision geometric information.

[0013] The first acquisition module is used to acquire the first geometric diagram and the placeholder diagram of the first precision geometric information;

[0014] The second acquisition module is used to acquire a second geometric map containing the second precision geometric information and the first geometric map based on the second precision geometric information and the first geometric map;

[0015] An encoding module is used to encode the second geometric figure and the placeholder figure;

[0016] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0017] Thirdly, a decoding method is provided, including:

[0018] The decoding end decomposes the acquired target 3D mesh bitstream to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information;

[0019] The decoding end obtains the second precision geometric information and the first geometric image based on the second geometric image;

[0020] The decoding end obtains first precision geometric information based on the first geometric diagram and the placeholder diagram;

[0021] The decoding end performs inverse quantization based on the second precision geometric information and the first precision geometric information to obtain the geometric information of the target three-dimensional mesh;

[0022] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0023] Fourthly, a decoding device is provided, comprising:

[0024] The third acquisition module is used to decompose the acquired target 3D mesh bitstream to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information;

[0025] The fourth acquisition module is used to acquire second precision geometric information and the first geometric image based on the second geometric image;

[0026] The fifth acquisition module is used to acquire first precision geometric information based on the first geometric diagram and the placeholder diagram;

[0027] The sixth acquisition module is used to perform inverse quantization based on the second precision geometric information and the first precision geometric information to acquire the geometric information of the target three-dimensional mesh;

[0028] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0029] Fifthly, an encoding device is provided, including a processor and a memory, the memory storing a program or instructions executable on the processor, the program or instructions, when executed by the processor, implementing the steps of the method described in the first aspect.

[0030] In a sixth aspect, an encoding device is provided, including a processor and a communication interface, wherein the processor is configured to quantize the geometric information of a target three-dimensional mesh to obtain first-precision geometric information and second-precision geometric information; obtain a first geometric image and a placeholder image of the first-precision geometric information; obtain a second geometric image containing the second-precision geometric information and the first geometric image based on the second-precision geometric information and the first geometric image; and encode the second geometric image and the placeholder image; wherein the first-precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second-precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0031] In a seventh aspect, a decoding device is provided, including a processor and a memory, the memory storing a program or instructions executable on the processor, the program or instructions, when executed by the processor, implementing the steps of the method described in the third aspect.

[0032] In an eighth aspect, a decoding device is provided, including a processor and a communication interface, wherein the processor is configured to decompose the acquired bitstream of a target three-dimensional mesh to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information; based on the second geometric map, obtain second-precision geometric information and the first geometric map; based on the first geometric map and the placeholder map, obtain first-precision geometric information; and perform inverse quantization based on the second-precision geometric information and the first-precision geometric information to obtain the geometric information of the target three-dimensional mesh;

[0033] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0034] A ninth aspect provides a communication system comprising: an encoding device and a decoding device, the encoding device being configured to perform the steps of the method described in the first aspect, and the decoding device being configured to perform the steps of the method described in the third aspect.

[0035] In a tenth aspect, a readable storage medium is provided, on which a program or instructions are stored, which, when executed by a processor, implement the steps of the method described in the first aspect, or implement the steps of the method described in the third aspect.

[0036] Eleventhly, a chip is provided, the chip including a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the method as described in the first aspect, or to implement the method as described in the third aspect.

[0037] In a twelfth aspect, a computer program / program product is provided, which is stored in a storage medium and is executed by at least one processor to perform the steps of the method as described in the first aspect.

[0038] In this embodiment, a second geometric graph containing the second and first precision geometric information is obtained based on the first geometric graph obtained after quantization and the second precision geometric information. The second precision geometric information can be encoded using the geometric graph containing the first precision geometric information, thereby improving the encoding efficiency of the second precision geometric information and thus improving the efficiency of compressing geometric information using the quantization scheme. Attached Figure Description

[0039] Figure 1 This is a flowchart illustrating the encoding method of an embodiment of this application;

[0040] Figure 2 This is a diagram of a raw patch;

[0041] Figure 3 This is a schematic diagram of the fine mesh division process;

[0042] Figure 4 This is a diagram showing the eight possible directions for arranging patches;

[0043] Figure 5 It is a schematic diagram of a geometric figure after arranging the corresponding values ​​of high-precision geometric information according to the position of low-precision geometric information;

[0044] Figure 6 It is a schematic diagram of the geometry after arranging high-precision values ​​by shifting the pixel distribution to the left horizontally.

[0045] Figure 7 This is a schematic diagram of a video-based 3D mesh geometric information encoding framework;

[0046] Figure 8 This is a schematic diagram of the encoding device according to an embodiment of this application;

[0047] Figure 9 This is a schematic diagram of the structure of the encoding device according to an embodiment of this application;

[0048] Figure 10 This is a flowchart illustrating the decoding method according to an embodiment of this application;

[0049] Figure 11 It is a geometric information reconstruction diagram;

[0050] Figure 12 This is a schematic diagram of a video-based 3D mesh geometry information decoding framework;

[0051] Figure 13 This is a schematic diagram of the module of the decoding device according to an embodiment of this application;

[0052] Figure 14 This is a schematic diagram of the structure of a communication device according to an embodiment of this application. Detailed Implementation

[0053] The technical solutions of the embodiments of this application will be clearly described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application are within the scope of protection of this application.

[0054] The terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such terms can be used interchangeably where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first" and "second" are generally of the same class, not limited in number; for example, a first object can be one or more. Furthermore, in the specification and claims, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects are in an "or" relationship.

[0055] It is worth noting that the technologies described in this application are not limited to Long Term Evolution (LTE) / LTE-Advanced (LTE-A) systems, but can also be used in other wireless communication systems, such as Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Frequency Division Multiple Access (FDMA), Orthogonal Frequency Division Multiple Access (OFDMA), Single-carrier Frequency Division Multiple Access (SC-FDMA), and other systems. The terms "system" and "network" in this application are often used interchangeably, and the described technologies can be used with the systems and radio technologies mentioned above, as well as with other systems and radio technologies. The following description describes New Radio (NR) systems for illustrative purposes, and NR terminology is used in most of the following description; however, these technologies can also be applied to applications beyond NR systems, such as 6th generation (6G) radio systems. th Generation 6G communication system.

[0056] The prior art related to this application is briefly described below.

[0057] In recent years, with the rapid development of multimedia technology, related research results have been rapidly industrialized and have become an indispensable part of people's lives. Three-dimensional models have emerged as a new generation of digital media following audio, images, and video. Three-dimensional meshes and point clouds are two commonly used methods for representing three-dimensional models. Compared with traditional multimedia such as images and videos, three-dimensional mesh models have stronger interactivity and realism, leading to their increasingly widespread application in various fields such as commerce, manufacturing, construction, education, medicine, entertainment, art, and the military.

[0058] As people's demands for higher visual quality in 3D mesh models increase, and with the emergence of more mature 3D scanning technologies and 3D modeling software, the data size and complexity of 3D mesh models acquired through 3D scanning equipment or 3D modeling software are also growing rapidly. Therefore, how to efficiently compress 3D mesh data is key to achieving convenient transmission, storage, and processing of 3D mesh data.

[0059] A 3D mesh typically contains three main types of information: topological information, geometric information, and attribute information. Topological information describes the connections between elements such as vertices and faces in the mesh; geometric information is the 3D coordinates of all vertices in the mesh; and attribute information records other information attached to the mesh, such as normal vectors, texture coordinates, and color. Although some traditional and general data compression methods can reduce the amount of 3D mesh data to a certain extent, due to the special characteristics of 3D mesh data, directly applying these compression methods to compress 3D mesh data often fails to achieve ideal results. Therefore, the compression of 3D mesh data faces new challenges. In 3D mesh data, geometric data often requires more storage space than topological data, and efficient compression of geometric data is of great significance for reducing the storage space of 3D mesh data. Therefore, the compression of geometric information in 3D meshes has become a research focus.

[0060] 3D mesh geometric information compression algorithms can use point cloud 3D geometric information compression algorithms. In recent years, there have been two main international standards for point cloud compression: V-PCC (Video-based Point Cloud Compression) and G-PCC (Geometry-based Point Cloud Compression).

[0061] The main idea of ​​V-PCC is to project the geometric and attribute information of a point cloud into a two-dimensional video, and then use existing video coding techniques to compress the two-dimensional video, thereby compressing the point cloud. V-PCC's geometric encoding is achieved by projecting geometric information into placeholder video and geometric video, and then using a video encoder to encode these two video streams separately.

[0062] The V-PCC geometric information encoding process mainly includes: First, generating 3D patches. A patch is a set of connected vertices in a point cloud that share the same projection plane. Currently, the method for generating 3D patches involves estimating the normal vector of each vertex using its nearest neighbors, calculating the projection plane of each vertex based on its normal vector and the normal vector of a preset plane, and grouping connected vertices with the same projection plane into a patch. Then, the 3D patch is projected onto a 2D plane to form a 2D patch, and the 2D patches are arranged on a 2D image; this process is called patch packing. To make the patches more compact and improve compression performance, current packing methods include priority packing, temporally consistent packing, and global patch allocation. Next, a placeholder map and a geometry map are generated. The placeholder map represents the vertex occupancy information in the 2D image; positions with vertex projections in the placeholder map have a value of 1, and other positions have a value of 0. Arranging patches in the 2D image according to certain rules generates the placeholder map. The geometry map stores the distance from each vertex to the projection plane. The depth information of each vertex can be directly calculated using its 3D coordinates, projection plane, and placeholder image, thus generating the geometry. For vertices with overlapping projection positions, the geometric coordinates of all vertices except the first projected vertex are arranged into the raw patch and included in the geometry, or encoded separately. To improve compression efficiency, an image filling process is performed on the geometry image. Image filling methods include the "push-pull" background filling algorithm, a filling method based on the sparse linear model, and harmonic background filling. After image filling, the final geometry is obtained. The placeholder image and geometry are compressed using an existing video encoder to obtain the video bitstream. Finally, the placeholder video bitstream, the geometry video bitstream, and the sub-bitstream containing patch information are combined into the final total bitstream.

[0063] The encoding and decoding methods, apparatuses, and devices provided in this application will be described in detail below with reference to the accompanying drawings and through some embodiments and application scenarios.

[0064] like Figure 1 As shown, this application provides an encoding method, including:

[0065] Step 101: The encoding end quantizes the geometric information of the target 3D mesh to obtain first-precision geometric information and second-precision geometric information;

[0066] It should be noted that the target three-dimensional mesh mentioned in this application can be understood as the three-dimensional mesh corresponding to any video frame, and the geometric information of the target three-dimensional mesh can be understood as the coordinates of the vertices in the three-dimensional mesh, which usually refers to three-dimensional coordinates.

[0067] It should be noted that the first precision geometric information can be understood as low-precision geometric information, that is, the geometric information of the target 3D mesh after quantization, namely the 3D coordinate information of each vertex of the quantized target 3D mesh. The second precision geometric information can be understood as high-precision geometric information, which can be regarded as the geometric information lost during the quantization process, namely the lost 3D coordinate information.

[0068] It should be noted that by quantizing the geometric information of the target 3D mesh, the vertex spacing of the quantized 3D mesh is reduced, which in turn reduces the spacing of the 2D vertices after projection, thereby improving compression efficiency.

[0069] Step 102: The encoding end acquires the first geometric diagram and placeholder diagram of the first precision geometric information;

[0070] It should be noted that this first geometric figure can be understood as a low-precision geometric figure.

[0071] Step 103: The encoding end obtains a second geometric map containing the second precision geometric information and the first geometric map based on the second precision geometric information and the first geometric map;

[0072] Step 104: The encoding end encodes the second geometric figure and the placeholder figure;

[0073] It should be noted that after quantizing the geometric information of the target 3D mesh to obtain first-precision geometric information and second-precision geometric information, a geometric graph containing both the second-precision and first-precision geometric information is acquired, and then encoded to obtain the corresponding sub-bitstream. This scheme, by quantizing the geometric information of the 3D mesh, reduces the spacing between the vertices of the quantized 3D mesh, thereby shortening the spacing between the projected 2D vertices and improving the compression efficiency of the 3D mesh's geometric information. Furthermore, since the second-precision geometric information is included in the second geometric graph for encoding, the amount of information is relatively low, resulting in higher compression efficiency of the 3D mesh's geometric information.

[0074] Optionally, step 101 above can be implemented as follows:

[0075] The encoding end quantizes each vertex in the target 3D mesh according to the quantization parameters of each component to obtain first-precision geometric information;

[0076] The encoding end obtains the second precision geometric information based on the first precision geometric information and the quantization parameters of each component.

[0077] It should be noted that the quantization parameters for each component can be flexibly set according to usage requirements; the quantization parameters mainly include the quantization parameters for the three components: X, Y and Z.

[0078] Generally, for quantization with low precision requirements, only low-precision geometric information can be retained after quantization; while for quantization with high precision requirements, both low-precision and high-precision geometric information need to be recorded during quantization, so as to achieve accurate mesh recovery during decoding.

[0079] For example, suppose the three-dimensional coordinates of a vertex are (x, y, z), and the quantization parameter is (QP). x QP y QP z Low-precision geometric information (x) l ,y l ,z l ) and high-precision geometric information (x h ,y h ,z h The calculation process for ) is shown in Formulas 1 to 6:

[0080] Formula 1: x l =f1(x,QP) x );

[0081] Formula 2: y l =f1(y,QP y );

[0082] Formula 3: z l =f1(z,QP z );

[0083] Formula 4: x h =f2(x,x l QP x );

[0084] Formula 5: y h =f2(y,y l QP y );

[0085] Formula 6: z h =f2(z,z) l QP z );

[0086] In Formulas 1 to 3, the f1 function is a quantization function. The input of the quantization function is the coordinates of a certain dimension and the quantization parameter of that dimension, and the output is the quantized coordinate value. In Formulas 4 to 6, the f2 function takes the original coordinate value, the quantized coordinate value, and the quantization parameter of that dimension as input, and outputs the high-precision coordinate value.

[0087] The `f1` function can be calculated in several ways. A common method, as shown in formulas 7 through 9, involves dividing the original coordinates of each dimension by the quantization parameter of that dimension. Here, ` / ` represents the division operator, and the result of the division operation can be rounded in different ways, such as rounding to the nearest integer, rounding down, or rounding up. The `f2` function also has multiple calculation methods, the corresponding implementations of formulas 7 through 9 being shown in formulas 10 through 12, where `*` represents the multiplication operator.

[0088] Formula 7: x l =x / QP x ;

[0089] Formula 8: y l =y / QP y ;

[0090] Formula 9: z l =z / QP z ;

[0091] Formula 10: x h =xx l *QP x ;

[0092] Formula 11: y h =yy l *QP y ;

[0093] Formula 12: z h =zz l *QP z ;

[0094] When the quantization parameter is an integer power of 2, the f1 and f2 functions can be implemented using bitwise operations, as shown in formulas thirteen to eighteen:

[0095] Formula Thirteen: x l =x >> log2QP x ;

[0096] Formula Fourteen: y l =y>>log2QP y ;

[0097] Formula 15: z l =z>>log2QP z ;

[0098] Formula 16: x h =x&(QP x -1);

[0099] Formula 17: y h =y&(QP y -1);

[0100] Formula 18: z h =z&(QP z -1);

[0101] It is worth noting that regardless of the calculation method used for the f1 and f2 functions, the quantization parameter QP x QP y and QP z Both can be flexibly configured. Firstly, the quantization parameters for different components are not necessarily equal; therefore, the correlation between the quantization parameters of different components can be used to establish a QP (Quantization Process). x QP y and QP z The relationship between the components is such that different quantization parameters are set for different components; secondly, the quantization parameters for different spatial regions are not necessarily equal, and the quantization parameters can be adaptively set according to the sparsity of the vertex distribution in the local region.

[0102] It should be noted that high-precision geometric information includes detailed information about the contour of the 3D mesh. To further improve compression efficiency, the high-precision geometric information (x... h ,y h ,z h Further processing is required. In a 3D mesh model, the importance of high-precision geometric information of vertices varies in different regions. For regions with sparse vertex distribution, distortion of high-precision geometric information will not significantly affect the visual effect of the 3D mesh. In this case, to improve compression efficiency, one can choose to further quantize the high-precision geometric information or retain only the high-precision geometric information of a subset of points.

[0103] Optionally, when quantizing the geometric information of the target 3D mesh to obtain first-precision geometric information and second-precision geometric information, the method further includes:

[0104] Information on supplementary points is obtained by quantizing the geometric information of the target 3D mesh;

[0105] It should be noted that the information of the supplementary points refers to the information of points that need to be processed additionally during the quantization process. In other words, the supplementary points are points that need to be processed additionally during the quantization process, such as duplicate points with overlapping coordinate positions. By processing the duplicate points, the vertices with overlapping coordinate positions during quantization can be restored to their original positions after dequantization.

[0106] Optionally, the information in this supplementary point includes at least one of the following:

[0107] A11, the index of the vertex in the first-precision geometric information corresponding to the supplementary point;

[0108] It should be noted that by identifying the index, we can know which points in the quantized mesh are identified as multiple points in the original 3D mesh. That is, multiple points in the original 3D mesh overlap after quantization. The low-precision geometric information of the supplementary points can be determined by the vertex index.

[0109] A12, Supplementary point third-precision geometric information;

[0110] It should be noted that this third-precision geometric information can be understood as the low-precision geometric information of the supplementary points, that is, the quantized three-dimensional coordinate information of the supplementary points.

[0111] A13, Supplementary point fourth-precision geometric information;

[0112] It should be noted that this fourth precision geometric information can be understood as the high precision geometric information of the supplementary points, that is, the three-dimensional coordinate information of the supplementary points that were lost during the quantization process.

[0113] It should be noted that, in practical use, the hidden points after quantization can be determined by using A11 and A13 or by using A12 and A13.

[0114] Specifically, the method for obtaining the supplementary point information is as follows: the encoding end determines the supplementary point information based on the geometric information of the target three-dimensional mesh and the first precision geometric information.

[0115] In other words, after obtaining the low-precision geometric information of all vertices, points with repeated low-precision geometric information are treated as supplementary points and encoded separately. The geometric information of the supplementary points can also be divided into low-precision and high-precision geometric information. Depending on the application's requirements for compression distortion, it is possible to retain all supplementary points or only a portion of them. The high-precision geometric information of the supplementary points can also be further quantized, or only the high-precision geometric information of a subset of points can be retained.

[0116] Optionally, the geometry of the supplementary points can be obtained as follows:

[0117] The encoding end arranges the third-precision geometric information of the supplementary points into a first original piece;

[0118] The encoding end arranges the fourth precision geometric information of the supplementary points into a second original piece according to the same arrangement order as the first original piece;

[0119] The encoding end compresses the first original slice and the second original slice to obtain the geometric map of the supplementary points.

[0120] It should be noted that in this embodiment, the geometric information of the supplementary points is divided into low-precision and high-precision parts, which are encoded separately. First, the low-precision geometric information of the supplementary points is arranged into a low-precision raw patch in any order. The first step involves obtaining the vertex arrangement order, scanning the low-precision geometry line by line from left to right, and using the scanning order of each vertex as the vertex arrangement order in the raw patch. The second step is to generate the raw patch. The raw patch is generated by arranging the 3D coordinates of the vertices according to... Figure 2 The vertices are arranged row by row as shown, forming rectangular patches. Following the vertex arrangement order obtained in the first step, the low-precision geometric information of the vertices is arranged sequentially to obtain low-precision geometric information raw patches. Then, the high-precision geometric information is arranged in the same order as the supplementary point low-precision raw patches to form supplementary point high-precision raw patches. Finally, the supplementary point low-precision raw patches and high-precision raw patches are compressed using various compression methods. One method is to encode the values ​​in the raw patches using run-length encoding, entropy encoding, etc. Another method is to add the supplementary point low-precision raw patches and high-precision raw patches to the blank areas of the low-precision geometric graph to obtain the supplementary point geometric graph. Finally, the geometric graph is encoded using a video encoder to obtain the supplementary point geometric graph sub-stream.

[0121] Optionally, the specific implementation process of step 102 includes:

[0122] Step 1021: The encoding end performs three-dimensional patching on the first precision geometric information;

[0123] It should be noted that in this case, the main task is to divide the low-precision geometric information into patches to obtain multiple 3D patches. The specific implementation of this step is as follows: the encoder determines the projection plane of each vertex contained in the first-precision geometric information; the encoder divides the vertices contained in the first-precision geometric information into patches based on the projection planes; the encoder clusters the vertices contained in the first-precision geometric information to obtain each patch. In other words, the patch division process mainly includes: first, estimating the normal vector of each vertex, and selecting the candidate projection plane with the smallest angle between the plane normal vector and the vertex normal vector as the projection plane of that vertex; then, performing an initial partitioning of the vertices based on the projection planes, grouping vertices with the same and connected projection planes into patches; finally, using a fine-grained partitioning algorithm to optimize the clustering results, obtaining the final 3D patch.

[0124] The specific implementation of the process of obtaining a 3D patch from the first-precision geometric information is explained in detail below.

[0125] First, the normal vector of each point is estimated. The tangent plane and its corresponding normal are defined based on the nearest neighbor vertex m of each point within a predefined search distance. A KD-tree is used to separate the data and at point p... i Find neighboring points nearby; the centroid of this set. Used to define the normal. The centroid c is calculated as follows:

[0126] Formula 19:

[0127] The vertex normal vector is estimated using the eigenvalue decomposition method, and the calculation process is shown in Formula 20:

[0128] Formula 20:

[0129] In the initial partitioning phase, a preliminary projection plane is selected for each vertex. Let the estimated value of the vertex normal vector be... The normal vector of the candidate projection plane is The plane whose normal vector direction is closest to the vertex's normal vector direction is selected as the projection plane of that vertex. The calculation process for plane selection is shown in Formula 21:

[0130] Formula 21:

[0131] The fine-grained partitioning process can employ a grid-based algorithm to reduce its time complexity. The flow of a grid-based fine-grained partitioning algorithm is as follows: Figure 3 As shown, it specifically includes:

[0132] First, set the loop count (numer) to 0. Then, check if the loop count is less than the maximum loop count (note that this maximum loop count can be set according to usage requirements). If it is less, proceed with the following process:

[0133] Step S301: Divide the (x,y,z) geometric coordinate space into voxels.

[0134] It should be noted that the geometric coordinate space here refers to the geometric coordinate space constituted by the first-precision geometric information obtained by quantization. For example, for a 10-bit mesh using a voxel size of 8, the number of voxels at each coordinate will be 1024 / 8 = 128, and the total number of voxels in this coordinate space will be 128 × 128 × 128.

[0135] Step S302: Locate the fill voxels. A fill voxel is a voxel in the mesh that contains at least one point.

[0136] Step S303: Calculate the smoothing score of each filled voxel on each projection plane, denoted as voxScoreSmooth. The voxel smoothing score of a voxel on a projection plane is the number of points aggregated to that projection plane through the initial segmentation process.

[0137] Step S304: Use KD-Tree partitioning to find the nearest filled voxels, denoted as nnFilledVoxels, which is the nearest filled voxel of each filled voxel (within the search radius and / or limited to the maximum number of neighboring voxels).

[0138] Step S305: Using the voxel smoothing scores of the nearest-neighbor filling voxels on each projection plane, calculate the smoothing score (scoreSmooth) for each filling voxel. The calculation process is shown in Formula 22:

[0139] Formula 22:

[0140] Where p is the index of the projection plane, and v is the index of the nearest neighbor filled voxel. All points within a voxel have the same scoreSmooth.

[0141] Step S306: Calculate the normal score, denoted as scoreNormal, using the normal vector of the vertex and the normal vector of the candidate projection plane. The calculation process is shown in Formula 23:

[0142] Formula 23: scoreNormal[i][p] = normal[i]·orientation[p];

[0143] Where p is the index of the projection plane and i is the index of the vertex.

[0144] Step S307: Use scoreSmooth and scoreNormal to calculate the final score of each voxel on each projection plane. The calculation process is shown in Formula 24:

[0145] Formula 24:

[0146] Where i is the vertex index, p is the index of the projection plane, and v is the voxel index of vertex i.

[0147] Step S308: Use the scores from step 307 to cluster the vertices to obtain finely divided patches.

[0148] Repeat the above process multiple times until a relatively accurate patch is obtained.

[0149] Step 1022: The encoding end performs a two-dimensional projection on the divided three-dimensional slices to obtain two-dimensional slices;

[0150] It should be noted that this process involves projecting a 3D patch onto a 2D plane to obtain a 2D patch.

[0151] Step 1023: The encoding end packages the two-dimensional slices to obtain two-dimensional image information;

[0152] It should be noted that this step implements patch packing. The purpose of patch packing is to arrange 2D patches on a 2D image. The basic principle of patch packing is to arrange patches on the 2D image without overlap or to arrange the non-pixel parts of the patches on the 2D image with partial overlap. Through algorithms such as priority sorting and temporal consistency sorting, the patches are arranged more tightly and have temporal consistency, thereby improving coding performance.

[0153] Suppose that the resolution of the 2D image is WxH, and the minimum block size of the patch arrangement is defined as T, which specifies the minimum distance between different patches placed on this 2D grid.

[0154] First, patches are inserted onto the 2D grid without overlapping. Each patch occupies an area consisting of an integer number of T×T blocks. Furthermore, adjacent patches must be at least one T×T block apart. When there is insufficient space to place the next patch, the image height doubles, and patch placement continues.

[0155] To make the patches more compact, patches can be arranged in several different directions. For example, eight different directions can be used, such as... Figure 4 As shown, it includes 0 degrees, 180 degrees, 90 degrees, 270 degrees, and mirror images of the first four directions.

[0156] To better adapt to the inter-frame prediction characteristics of the video encoder, a temporally consistent patch arrangement method is adopted. In a Group of Frames (GOF), all patches of the first frame are arranged in descending order. For other frames in the GOF, the temporally consistent algorithm is used to adjust the patch arrangement order.

[0157] It should also be noted that after obtaining the two-dimensional image information, the patch information can be obtained based on the information obtained during the process of obtaining the two-dimensional image information. Then, the slice information can be encoded to obtain the slice information sub-bit stream.

[0158] It should be noted that during the process of obtaining 2D image information, it is necessary to record the information of patch division, patch projection plane, and patch packing position. Therefore, the patch information records the information of each step in the process of obtaining 2D image, that is, the patch information includes: patch division information, patch projection plane, and patch packing position.

[0159] Step 1024: The encoding end obtains the first geometric image and the placeholder image based on the two-dimensional image information.

[0160] It's important to note that the process of obtaining the placeholder image mainly involves: using the patch arrangement information obtained from patch packing, setting the positions of vertices in the 2D image to 1 and the rest to 0, thus obtaining the placeholder image. The process of obtaining the first geometry image mainly involves: during the process of obtaining the 2D patch through projection, the distance from each vertex to the projection plane is saved; this distance is called depth. The geometry compression part involves arranging the depth values ​​of each vertex in the 2D patch to their positions in the placeholder image, thus obtaining the first geometry image.

[0161] Optionally, step 103 can be implemented as follows:

[0162] The encoding end arranges the coordinate values ​​of the three dimensions of each vertex in the second precision geometric information to obtain an arrangement value corresponding to each vertex;

[0163] The encoding end arranges the permutation value corresponding to each vertex in the first region to obtain a second geometric map containing second-precision geometric information and first-precision geometric information;

[0164] The first region is the region remaining after removing the first precision geometric information projection distribution region from the two-dimensional projection distribution region of the geometric information of the target three-dimensional mesh.

[0165] It should be noted that by changing the encoding of the three components of the three-dimensional coordinates of high-precision geometric information to the encoding of a single component, the encoding efficiency of the video encoder can be improved.

[0166] It should be noted that for high-precision geometric information, the values ​​of the three dimensions x, y, and z of the high-precision geometric information are first arranged vertex by vertex according to a preset arrangement rule (it should be noted that this preset arrangement rule can be pre-agreed; typically, the encoding end incorporates the preset arrangement rule into the bitstream during encoding, and the decoding end obtains the preset arrangement rule during bitstream decoding to use it for decoding). For example, the order of xyz, yzx, or zxy is arranged as a single value (arrangement value). Then, the arrangement value of each vertex is placed in the area saved after the projection distribution of the quantized low-precision geometric information is reduced (i.e., the first region). In this way, the high-precision arrangement values ​​corresponding to the low-precision vertices are arranged in the high-precision geometric information region of the low-precision geometric graph, resulting in a geometric graph containing both low-precision and high-precision geometric information.

[0167] Optionally, the method of arranging the permutation values ​​corresponding to each vertex in the first region to obtain a second geometric graph containing second-precision geometric information and first-precision geometric information can be implemented by one of the following:

[0168] B11. The encoding end arranges the pixels corresponding to the permutation value of each vertex in the first region according to the pixel distribution position of the projection point corresponding to the vertex in the first precision geometric information, and obtains a second geometric image containing the second precision geometric information and the first precision geometric information.

[0169] It's important to note that a projection point refers to the point in a 2D image that corresponds to a vertex after the vertices of a 3D mesh have been projected onto a 2D patch. One pixel in the 2D image corresponds to one projection point of a vertex. In a placeholder image, the pixel value corresponding to a projection point is typically 1, while in a geometry image, the depth value corresponding to a projection point is typically greater than 0.

[0170] It should be noted that the pixel distribution of the projection points corresponding to vertices in the first-precision geometric information can be the pixel distribution of the projection points corresponding to low-precision vertices in the placeholder image and / or geometric image. In this case, the pixel positions of the projection points corresponding to low-precision vertices in the placeholder image and / or geometric image are used to correspond to the arrangement values ​​of vertices in the high-precision geometric information.

[0171] In other words, in this method, the distribution of the first-precision geometric information is such that the vertex arrangement values ​​in the second-precision geometric information are arranged according to the same distribution in the first region. That is, within the region saved after the projection distribution of the quantized low-precision geometric information is reduced, the high-precision arrangement values ​​corresponding to the low-precision vertices are arranged in the high-precision geometric information region of the low-precision geometric graph according to the two-dimensional projection distribution of the low-precision geometric information, resulting in a geometric graph that still contains high-precision geometric information. For example... Figure 5 The diagram shown is a schematic representation of a geometric figure after arranging the corresponding values ​​of high-precision geometric information according to the positions of low-precision geometric information. The arrangement values ​​corresponding to the high-precision geometric information are in... Figure 5 They are distributed in the lower half of the image.

[0172] B12. The encoding end arranges the pixels of the projection points corresponding to each vertex in the second precision geometric information according to the pixel distribution position of the projection points corresponding to the vertices in the first precision geometric information in the first region, and performs translation processing on the pixels, and arranges the vertex arrangement value in the pixel position of the projection point corresponding to the vertex in the first region after translation processing, to obtain a second geometric image containing the second precision geometric information and the first precision geometric information.

[0173] It should be noted that this method involves closely arranging the vertex arrangement values ​​in the second-precision geometric information in the horizontal or vertical direction. That is, after the low-precision geometric information projection distribution is reduced in size after quantization, the closely arranged distribution is shifted horizontally or vertically within the area saved. The high-precision arrangement values ​​corresponding to the low-precision vertices are then placed within the high-precision geometric information region of the low-precision geometric graph, resulting in a geometric graph that still contains high-precision geometric information. For example... Figure 6 The diagram shows a geometric representation of a high-precision geometric image after arranging pixels according to a horizontally shifted leftward distribution with closely packed pixels. The arrangement values ​​corresponding to the high-precision geometric information are shown in... Figure 6 They are distributed in the lower half of the image.

[0174] It should also be noted here that, optionally, the specific implementation process under this method is as follows:

[0175] The encoding end scans the pixels of the projection points corresponding to the vertices in the second precision geometric information row by row or column by column, and re-numbers the position indexes of the pixels in each row or column within the row or column.

[0176] The encoding end arranges the permutation value corresponding to each vertex in the second precision geometric information in the first region according to the scanning order, and arranges the pixel position index of the pixel position of the projection point corresponding to the vertex at the pixel position specified by the pixel position index of the vertex, thereby obtaining a second geometric image containing the second precision geometric information and the first precision geometric information.

[0177] The first direction is either a horizontal or a vertical direction.

[0178] It should be noted that, under normal circumstances, the pixels of the projection points corresponding to the vertices in the second-precision geometric information are not closely adjacent, but have a certain gap. The scanning renumbering mentioned in this application embodiment means renumbering the pixels with gaps in the same row or column in a pixel-adjacent manner. For example, in a certain row, there are 5 pixels, numbered 1, 3, 5, 7, and 8 from left to right. After scanning from left to right, these 5 pixels are renumbered, and the new numbers of these 5 pixels from left to right are 1, 2, 3, 4, and 5.

[0179] It should be noted that this implementation method first scans the pixels of the projection points corresponding to the vertices in the second-precision geometric information by row or column, and re-numbers them. When scanning in the horizontal direction, the scanning is performed row by row, and the pixel positions of the projection points corresponding to the vertices in each row are re-numbered with the in-row position index. When scanning in the vertical direction, the scanning is performed column by column, and the pixel positions of the projection points corresponding to the vertices in each column are re-numbered with the in-column position index. By translating the pixels of the projection points corresponding to the vertices in the second-precision geometric information in the horizontal or vertical direction, and arranging the vertex's arrangement value to the pixel position of the projection point corresponding to that vertex, a geometric image with tightly packed pixels is obtained. Finally, a video encoder is used to compress the geometric image containing high-precision and low-precision geometric information to obtain the geometric image sub-stream.

[0180] It should be noted that by changing the encoding of the three components of the three-dimensional coordinates to the encoding of a single component, and by arranging them closely, the encoding efficiency of the video encoder can be improved, thereby improving the overall encoding efficiency of high-precision geometric information.

[0181] In summary, for the encoding end, the 3D mesh is first quantized, which may yield low-precision geometric information, high-precision geometric information, and supplementary point information. For encoding the low-precision geometric information, a projection method can be used to generate a placeholder map and a low-precision geometric map, which are then encoded by a video encoder. This application specifically proposes a method for representing and encoding high-precision geometric information. For encoding high-precision geometric information, the x, y, and z dimensions of the high-precision geometric information are first arranged into a single value for each vertex according to a preset arrangement rule. Then, within the area freed up after the projection distribution of the quantized low-precision geometric information is reduced, the high-precision arrangement values ​​corresponding to the low-precision vertices are arranged in the high-precision geometric information area of ​​the low-precision geometric map according to the two-dimensional projection distribution of the low-precision geometric information or a closely arranged distribution translated horizontally (or vertically). For the geometric information of supplementary points, which is divided into low-precision and high-precision parts, they can be encoded into a separate bitstream, or the low-precision and high-precision parts can be arranged in the low-precision geometric map using a raw patch method. Finally, a video encoder is used to encode the placeholder map and the low-precision geometric map containing the high-precision geometric information. For the decoding end, the video decoder decodes to obtain a placeholder image and a low-precision geometric image containing high-precision geometric information. The low-precision 3D mesh can be reconstructed using the placeholder image and the low-precision geometric information in the low-precision geometric image containing high-precision geometric information. Then, the high-precision geometric information (arrangement value) in the low-precision geometric image is used to reconstruct the low-precision 3D mesh into a high-precision 3D mesh.

[0182] The video-based 3D mesh geometric information encoding framework of this application embodiment is as follows: Figure 7As shown, the overall encoding process is as follows: First, before quantization, it is possible to choose whether to sample and simplify the 3D mesh; then, the 3D mesh is quantized, which may generate three parts: low-precision geometric information, high-precision geometric information, and supplementary point information; for low-precision geometric information, a projection method is used to divide the patch, arrange the patch to generate patch sequence compression information (patch division information), placeholder map, and low-precision geometric map; for existing high-precision geometric information, the values ​​of the three dimensions of x, y, and z can be arranged into one value for each vertex of the high-precision geometric information. Then, within the area freed up after the quantized low-precision geometric information projection distribution is reduced, the high-precision arrangement values ​​corresponding to the low-precision vertices are arranged in the high-precision geometric information area of ​​the low-precision geometric graph according to the two-dimensional projection distribution of the low-precision geometric information or the distribution of close arrangement translated in the horizontal (or vertical) direction. For possible supplementary points, the geometric information of the supplementary points can be divided into low-precision and high-precision parts, and raw patch arrangements can be performed separately and encoded into a single bitstream, or the raw patch can be added to the geometric graph. Finally, the patch sequence compression information, placeholder map, and geometric graph are encoded, and the multiple sub-bitstreams are mixed to obtain the final output bitstream.

[0183] It should be noted that this application provides an implementation method for encoding the geometric information of a 3D mesh. By quantizing the geometric information of the 3D mesh, the encoding of the three components of the 3D coordinate values ​​of the quantized high-precision geometric information is changed to the encoding of a single component, and arranged according to the position of the low-precision geometric image, the compression efficiency of the video encoder for high-precision geometric information can be improved. In addition, the compact arrangement of the high-precision geometric image can also improve the compression efficiency of the video encoder for high-precision geometric information. Through the above scheme, the efficiency of compressing geometric information using the quantization scheme can be further improved.

[0184] The encoding method provided in this application can be executed by an encoding device. This application uses an encoding device executing the encoding method as an example to illustrate the encoding device provided in this application.

[0185] like Figure 8 As shown, this application embodiment provides an encoding device 800, including:

[0186] The quantization module 801 is used to quantize the geometric information of the target 3D mesh to obtain first-precision geometric information and second-precision geometric information.

[0187] The first acquisition module 802 is used to acquire the first geometric diagram and the placeholder diagram of the first precision geometric information;

[0188] The second acquisition module 803 is used to acquire a second geometric map containing the second precision geometric information and the first geometric map based on the second precision geometric information and the first geometric map;

[0189] Encoding module 804 is used to encode the second geometric figure and the placeholder figure;

[0190] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0191] Optionally, the second acquisition module 803 includes:

[0192] The first acquisition unit is used to arrange the coordinate values ​​of the three dimensions of each vertex in the second precision geometric information, and acquire an arrangement value corresponding to each vertex;

[0193] The second acquisition unit is used to arrange the permutation value corresponding to each vertex in the first region to acquire a second geometric map containing second precision geometric information and first precision geometric information.

[0194] The first region is the region remaining after removing the first precision geometric information projection distribution region from the two-dimensional projection distribution region of the geometric information of the target three-dimensional mesh.

[0195] Optionally, the second acquisition unit is configured to implement one of the following:

[0196] In the first region, the pixels corresponding to the permutation value of each vertex are arranged according to the pixel distribution position of the projection point corresponding to the vertex in the first precision geometric information, to obtain a second geometric image containing the second precision geometric information and the first precision geometric information;

[0197] In the first region, the pixel distribution of the projection points corresponding to the vertices in the second precision geometric information is arranged according to the pixel distribution position of the projection points corresponding to the vertices in the first precision geometric information. The pixels are then translated, and the arrangement value of the vertex is arranged in the pixel position of the projection point corresponding to the vertex in the translated first region to obtain a second geometric image containing the second precision geometric information and the first precision geometric information.

[0198] Optionally, the method for translating pixels and arranging the vertex arrangement values ​​in the pixel positions of the projection points corresponding to the vertex in the translated first region to obtain a second geometric map containing second-precision geometric information and first-precision geometric information is as follows:

[0199] The pixels of the projection points corresponding to the vertices in the second precision geometric information are scanned row by row or column by column along the first direction, and the position indexes of the pixels in each row or column are renumbered within the row or column.

[0200] According to the scanning order, in the first region, the arrangement value corresponding to each vertex in the second precision geometric information is arranged at the pixel position specified by the pixel position index of the projection point corresponding to the vertex, and a second geometric image containing the second precision geometric information and the first precision geometric information is obtained.

[0201] The first direction is either a horizontal or a vertical direction.

[0202] Optionally, the first acquisition module 802 includes:

[0203] A partitioning unit is used to partition the first precision geometric information into three-dimensional slices;

[0204] The third acquisition unit is used to perform two-dimensional projection on the divided three-dimensional pieces to acquire two-dimensional pieces;

[0205] The fourth acquisition unit is used to package the two-dimensional slices and acquire two-dimensional image information;

[0206] The fifth acquisition unit is used to acquire the first geometric image and the placeholder image based on the two-dimensional image information.

[0207] Optionally, after the fourth acquisition unit packages the two-dimensional slices and acquires the two-dimensional image information, it further includes:

[0208] The sixth acquisition unit is used to acquire slice information based on the information obtained during the acquisition of two-dimensional image information;

[0209] The seventh acquisition unit is used to encode the slice information and acquire the slice information sub-code stream.

[0210] Optionally, the device further includes:

[0211] The third acquisition module is used to quantize the geometric information of the target 3D mesh and acquire information of supplementary points;

[0212] The information of the supplementary points refers to the information of points that require additional processing during the quantization process.

[0213] Optionally, the third acquisition module is used to:

[0214] Based on the geometric information of the target 3D mesh and the first precision geometric information, the information of the supplementary points is determined.

[0215] Optionally, the information of the supplementary points includes at least one of the following:

[0216] The index of the vertex in the first-precision geometric information corresponding to the supplementary point;

[0217] The third precision geometric information of the supplementary point, wherein the third precision geometric information is the quantized three-dimensional coordinate information of the supplementary point;

[0218] The fourth precision geometric information of the supplementary point is the three-dimensional coordinate information of the supplementary point that was lost during the quantization process.

[0219] Optionally, the quantization module 801 includes:

[0220] The eighth acquisition unit is used to quantize each vertex in the target three-dimensional mesh according to the quantization parameters of each component to acquire first-precision geometric information;

[0221] The ninth acquisition unit is used to acquire second precision geometric information based on the first precision geometric information and the quantization parameters of each component.

[0222] This device embodiment corresponds to the above-described encoding method embodiment. All implementation processes and methods of the above-described method embodiment can be applied to this device embodiment and can achieve the same technical effect.

[0223] This application embodiment also provides an encoding device, including a processor and a communication interface, wherein the processor is used to quantize the geometric information of a target three-dimensional mesh to obtain first-precision geometric information and second-precision geometric information; obtain a first geometric image and a placeholder image of the first-precision geometric information; obtain a second geometric image containing the second-precision geometric information and the first geometric image based on the second-precision geometric information and the first geometric image; and encode the second geometric image and the placeholder image.

[0224] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0225] Specifically, embodiments of this application also provide an encoding device, such as... Figure 9 As shown, the encoding device 900 includes a processor 901, a network interface 902, and a memory 903. The network interface 902 is, for example, a common public radio interface (CPRI).

[0226] Specifically, the encoding device 900 in this application embodiment further includes: instructions or programs stored in memory 903 and executable on processor 901, wherein processor 901 calls the instructions or programs in memory 903 to execute. Figure 8The methods executed by each module shown achieve the same technical effect, and to avoid repetition, they will not be described in detail here.

[0227] like Figure 10 As shown in the embodiments of this application, a decoding method is also provided, including:

[0228] Step 1001: The decoding end decomposes the acquired target 3D mesh bitstream to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information;

[0229] Step 1002: The decoding end obtains second precision geometric information and the first geometric image based on the second geometric image;

[0230] Step 1003: The decoding end obtains first precision geometric information based on the first geometric diagram and the placeholder diagram;

[0231] Step 1004: The decoding end performs inverse quantization based on the second precision geometric information and the first precision geometric information to obtain the geometric information of the target three-dimensional mesh;

[0232] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0233] Optionally, the specific implementation of decomposing the acquired target 3D mesh bitstream to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information is as follows:

[0234] The decoding end obtains a target sub-codestream based on the acquired codestream of the target 3D mesh. The target sub-codestream includes: a slice information sub-codestream, a placeholder map sub-codestream, and a geometric map sub-codestream.

[0235] The decoding end obtains a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information based on the target sub-code stream.

[0236] Optionally, the specific implementation of obtaining the second precision geometric information and the first geometric image based on the second geometric image is as follows:

[0237] The decoding end obtains the permutation value corresponding to each vertex in the second precision geometric information and the first geometric image corresponding to the first precision geometric information in the second geometric image;

[0238] The decoding end recovers the three-dimensional coordinate values ​​of the arrangement value corresponding to each vertex according to the arrangement order of the vertices to obtain the second precision geometric information;

[0239] The arrangement value corresponding to each vertex is arranged in the first region of the second geometry. The first region is the region remaining after removing the first precision geometry information projection distribution region from the two-dimensional projection distribution region of the geometric information of the target three-dimensional mesh.

[0240] Optionally, the method for obtaining the permutation value corresponding to each vertex in the second precision geometric information in the second geometric graph includes one of the following:

[0241] The decoding end recovers the permutation value corresponding to each vertex in the second precision geometric information in the first region of the second geometric graph according to the pixel distribution position of the projection point corresponding to the vertex in the first precision geometric information;

[0242] The decoding end performs translation processing on the pixels of the projection points in the first region of the second geometric figure to obtain the permutation value corresponding to each vertex in the second precision geometric information.

[0243] Optionally, the step of translating the pixels of the projection points in the first region of the second geometric figure to obtain the permutation value corresponding to each vertex in the second precision geometric information includes:

[0244] The decoding end scans the pixels of the projection points of the first geometric figure row by row or column by column along the first direction to obtain the position index of each pixel in each row or column.

[0245] The decoding end scans the pixels of the projection points in the first region of the second geometric figure row by row or column by column along the first direction, and re-numbers each pixel in each row or column according to the position index corresponding to the pixel of the projection point in the first geometric figure.

[0246] It should be noted that the renumbering here can be understood as follows: the pixels of the projection points corresponding to the vertices in the second precision geometric information are closely adjacent in the first region, while the pixels of the projection points corresponding to the actual vertices have a certain gap. The scanning renumbering mentioned in this application embodiment means renumbering pixels with gaps in the same row or column in a pixel-adjacent manner. For example, in a certain row, there are 5 pixels, numbered 1, 2, 3, 4, and 5 from left to right. After scanning from left to right, these 5 pixels are renumbered according to the pixel distribution of the projection points of the first geometric figure. The new numbers of these 5 pixels from left to right are: 1, 3, 5, 7, and 8.

[0247] The decoding end obtains the permutation value corresponding to each vertex in the second precision geometric information from the first region of the second geometric graph according to the scanning order;

[0248] The first direction is either a horizontal or a vertical direction.

[0249] It should be noted that since the pixels of the projection points of the first geometric figure were not translated during the encoding process, during decoding, it is necessary to recover the pixel positions of the projection points of the vertices in the part of the first geometric figure that was not translated, in order to ensure the accurate recovery of vertices in the second precision geometric information.

[0250] Optionally, the decoding end obtains first-precision geometric information based on the first geometric map and the placeholder map, including:

[0251] The decoding end obtains two-dimensional image information based on the first geometric diagram and the placeholder diagram;

[0252] The decoding end obtains a two-dimensional slice based on the two-dimensional image information;

[0253] The decoding end performs a three-dimensional inverse projection on the two-dimensional slice based on the slice information corresponding to the slice information sub-code stream to obtain the three-dimensional slice;

[0254] The decoding end obtains first-precision geometric information based on the three-dimensional slice.

[0255] Optionally, the method for obtaining the geometric information of the target 3D mesh by performing inverse quantization based on the second precision geometric information and the first precision geometric information is as follows:

[0256] The decoding end determines the coordinates of each vertex in the first precision geometric information based on the first precision geometric information and the quantization parameters of each component.

[0257] The decoding end determines the target 3D mesh based on the coordinates of each vertex in the first precision geometric information and the second precision geometric information.

[0258] Optionally, when decomposing the acquired target 3D mesh bitstream, the method further includes:

[0259] Obtain the geometry of the supplementary points;

[0260] Based on the geometric diagram of the supplementary point, determine the first original piece corresponding to the third precision geometric information of the supplementary point and the second original piece corresponding to the fourth precision geometric information of the supplementary point;

[0261] The decoding end determines the information of the supplementary points based on the first original slice and the second original slice;

[0262] The information of the supplementary points refers to the information of points that require additional processing during the quantization process.

[0263] Optionally, the information of the supplementary points includes at least one of the following:

[0264] The index of the vertex in the first-precision geometric information corresponding to the supplementary point;

[0265] The third precision geometric information of the supplementary point, wherein the third precision geometric information is the quantized three-dimensional coordinate information of the supplementary point;

[0266] The fourth precision geometric information of the supplementary point is the three-dimensional coordinate information of the supplementary point that was lost during the quantization process.

[0267] It should be noted that in this embodiment, the geometric information of the supplementary points is divided into low-precision and high-precision parts, which are decoded separately. First, the geometric diagram of the supplementary points is decompressed, and various decompression methods can be used. One method is to decode the geometric diagram using run-length decoding, entropy decoding, etc. Another method is to extract the low-precision raw patch and the high-precision raw patch of the supplementary points from the low-precision geometric diagram. Then, the low-precision geometric information of the supplementary points is obtained from the low-precision raw patch in a specific order, and the high-precision geometric information is obtained from the high-precision raw patch in a specific order. It should be noted that this specific order is obtained by the decoding end through parsing the bitstream; that is, the order in which the encoding end generates the low-precision raw patch and the high-precision raw patch of the supplementary points is communicated to the decoding end through the bitstream.

[0268] Optionally, the method for determining the target 3D mesh based on the coordinates of each vertex in the first precision geometric information and the second precision geometric information is as follows:

[0269] The decoding end determines the target 3D mesh based on the information of the supplementary points, the second precision geometric information, and the coordinates of each vertex in the first precision geometric information.

[0270] It should be noted that the video-based 3D mesh geometric information decoding process in this embodiment includes: decomposing the bitstream into patch information sub-streams, placeholder image bitstreams, and geometric image bitstreams; then, decoding these three sub-streams respectively to obtain patch information, placeholder images, and geometric images; finally, reconstructing the geometric information using the patch information, placeholder images, and geometric images. Specifically, as shown... Figure 11 As shown, the most crucial aspect is the specific process of geometric information reconstruction:

[0271] Step S111: Obtain the 2D patch;

[0272] It should be noted that obtaining 2D patches refers to segmenting the placeholder and depth information of 2D patches from placeholder and low-precision geometry maps using patch information. Patch information contains the position and size of the bounding box of each 2D patch within the placeholder and low-precision geometry maps. The placeholder and low-precision geometric information of the 2D patch can be directly obtained using the patch information, placeholder map, and low-precision geometry map. For high-precision geometric information, the vertex distribution of the low-precision geometry map is used to map the high-precision geometric information values ​​within the high-precision geometric information region to the vertices of the low-precision geometry map. Then, the xyz 3D geometric information is separated from this according to the preset arrangement rules used by the encoder, thus obtaining the high-precision geometric information. For the geometric information of supplementary points, the low-precision raw patch and high-precision raw patch of the supplementary point can be directly decoded to obtain the low-precision and high-precision geometric information of the supplementary point.

[0273] Step S112, Reconstruct the 3D patch;

[0274] It's important to note that reconstructing a 3D patch refers to using placeholder information and low-precision geometric information from a 2D patch to reconstruct the vertices of the 2D patch into a low-precision 3D patch. The placeholder information of the 2D patch includes the position of the vertex relative to the origin in the local coordinate system of the patch projection plane, while the depth information includes the depth value of the vertex in the direction of the normal to the projection plane. Therefore, by using the placeholder information and depth information, a 2D patch can be reconstructed into a low-precision 3D patch in the local coordinate system.

[0275] Step S113: Reconstruct the low-precision geometric model;

[0276] It should be noted that reconstructing a low-precision geometric model refers to using the reconstructed low-precision 3D patches to rebuild the entire low-precision 3D geometric model. The patch information contains the transformation relationship between the 3D patch and the global coordinate system of the 3D geometric model. By using the coordinate transformation relationship to transform all 3D patches to the global coordinate system, the low-precision 3D geometric model is obtained. In addition, for supplementary points, the geometric information in the low-precision raw patch is directly used to obtain the low-precision coordinate values ​​of the supplementary points in the global coordinate system, thus obtaining the complete low-precision 3D geometric model.

[0277] Step S114: Reconstruct the high-precision geometric model;

[0278] It should be noted that reconstructing a high-precision geometric model refers to the process of rebuilding a high-precision geometric model based on a low-precision geometric model, using high-precision geometric information. During the acquisition of the 2D patch, high-precision geometric information is mapped to low-precision geometric information. Based on the high-precision and low-precision geometric information of the vertices, the high-precision 3D coordinates of the vertices can be reconstructed. Depending on the application requirements, it is possible to choose to reconstruct the high-precision 3D coordinates of all vertices or only a portion of the vertices. High-precision 3D coordinates (x... r ,y r ,z r The calculation process is shown in formulas 25 to 27:

[0279] Formula 25: x r =f3(x l ,x h QP x );

[0280] Formula 26: y r =f3(y l ,y h QP y );

[0281] Formula 27: z r =f3(z l ,z h QP z );

[0282] The f3 function is the reconstruction function. The calculation process of the reconstruction function corresponds to the calculation process of the quantization function at the encoding end, and it has multiple implementation methods. If the f1 function is implemented using formulas seven to twelve, then the implementation methods of the reconstruction function are as shown in formulas twenty-eight to thirty:

[0283] Formula 28: x r =x l *QP x +x h ;

[0284] Formula 29: y r =y l *QP y +y h ;

[0285] Formula 30: z r =z l *QP z +z h ;

[0286] If the f1 function is implemented using formulas thirteen through eighteen, then the reconstruction function is implemented as shown in formulas thirty-one through thirty-three:

[0287] Formula 31: x r =(x l <<log2QP x )|x h ;

[0288] Formula 32: y r =(y l <<log2QP y )|y h ;

[0289] Formula 33: z r =(z l <<log2QP z )|z h .

[0290] The video-based 3D mesh geometry information decoding framework of this application embodiment is as follows: Figure 12 As shown, the overall decoding process is as follows:

[0291] First, the bitstream is decomposed into patch information sub-bitstream, placeholder map sub-bitstream, and geometry map sub-bitstream, and each is decoded separately. The low-precision parts of the placeholder map and geometry map can be used to reconstruct the geometric information of the low-precision grid, and the high-precision parts of the placeholder map and geometry map can be used to reconstruct the geometric information of the high-precision grid. Finally, the grid is reconstructed using the reconstructed geometric information and other connection information obtained by other encoding and decoding methods.

[0292] It should be noted that the embodiments of this application are the counterpart method embodiments corresponding to the above-described encoding method embodiments. The decoding process is the reverse process of encoding. All the implementation methods on the encoding side described above are applicable to the embodiments on the decoding side and can achieve the same technical effect. They will not be described again here.

[0293] like Figure 13 As shown, this application embodiment also provides a decoding device 1300, including:

[0294] The third acquisition module 1301 is used to decompose the acquired target three-dimensional mesh bitstream to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information.

[0295] The fourth acquisition module 1302 is used to acquire second precision geometric information and the first geometric image based on the second geometric image;

[0296] The fifth acquisition module 1303 is used to acquire first precision geometric information based on the first geometric diagram and the placeholder diagram;

[0297] The sixth acquisition module 1304 is used to perform inverse quantization based on the second precision geometric information and the first precision geometric information to acquire the geometric information of the target three-dimensional mesh;

[0298] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0299] Optionally, the third acquisition module 1301 includes:

[0300] The tenth acquisition unit is used to acquire a target sub-codestream based on the acquired codestream, wherein the target sub-codestream includes: a slice information sub-codestream, a placeholder map sub-codestream, and a geometric map sub-codestream;

[0301] The eleventh acquisition unit is used to acquire a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information based on the target sub-code stream.

[0302] Optionally, the fourth acquisition module 1302 includes:

[0303] The twelfth acquisition unit is used to acquire, respectively, the permutation value corresponding to each vertex in the second precision geometric information and the first geometric image corresponding to the first precision geometric information in the second geometric image;

[0304] The thirteenth acquisition unit is used to recover the three-dimensional coordinate values ​​of the arrangement value corresponding to each vertex according to the arrangement order of the vertices to obtain the second precision geometric information;

[0305] The arrangement value corresponding to each vertex is arranged in the first region of the second geometry. The first region is the region remaining after removing the first precision geometry information projection distribution region from the two-dimensional projection distribution region of the geometric information of the target three-dimensional mesh.

[0306] Optionally, the twelfth acquisition unit is configured to implement one of the following:

[0307] In the first region of the second geometric figure, the permutation value corresponding to each vertex in the second precision geometric information is recovered according to the pixel distribution position of the projection point corresponding to the vertex in the first precision geometric information;

[0308] The pixels of the projection points in the first region of the second geometric figure are translated to obtain the permutation value corresponding to each vertex in the second precision geometric information.

[0309] Optionally, the method for translating the pixels of the projection points in the first region of the second geometric figure to obtain the permutation value corresponding to each vertex in the second precision geometric information is as follows:

[0310] The pixels of the projection points of the first geometric figure are scanned row by row or column by column along the first direction to obtain the position index of each pixel in each row or column.

[0311] The pixels of the projection points in the first region of the second geometric figure are scanned row by row or column by column along the first direction, and each pixel in each row or column is renumbered in the row or column according to the position index corresponding to the pixel of the projection point in the first geometric figure.

[0312] According to the scanning order, the permutation value corresponding to each vertex in the second precision geometric information will be obtained from the first region of the second geometric figure;

[0313] The first direction is either a horizontal or a vertical direction.

[0314] Optionally, the fifth acquisition module 1303 includes:

[0315] The fourteenth acquisition unit is used to acquire two-dimensional image information based on the first geometric diagram and the placeholder diagram;

[0316] The fifteenth acquisition unit is used to acquire a two-dimensional slice based on the two-dimensional image information;

[0317] The sixteenth acquisition unit is used to perform three-dimensional inverse projection on the two-dimensional slice based on the slice information corresponding to the slice information sub-code stream to acquire the three-dimensional slice.

[0318] The seventeenth acquisition unit is used to acquire first-precision geometric information based on the three-dimensional slice.

[0319] Optionally, the sixth acquisition module 1304 includes:

[0320] The first determining unit is used to determine the coordinates of each vertex in the first precision geometric information based on the first precision geometric information and the quantization parameters of each component.

[0321] The second determining unit is used to determine the target three-dimensional mesh based on the coordinates of each vertex in the first precision geometric information and the second precision geometric information.

[0322] Optionally, the device further includes:

[0323] The seventh acquisition module is used to acquire the geometric diagram of the supplementary points;

[0324] The first determining module is used to determine, based on the geometric diagram of the supplementary point, the first original piece corresponding to the third precision geometric information of the supplementary point and the second original piece corresponding to the fourth precision geometric information of the supplementary point;

[0325] The second determining module is used to determine the information of the supplementary points based on the first original slice and the second original slice;

[0326] The information of the supplementary points refers to the information of points that require additional processing during the quantization process.

[0327] Optionally, the second determining unit is configured to:

[0328] The target 3D mesh is determined based on the information of the supplementary points, the second precision geometric information, and the coordinates of each vertex in the first precision geometric information.

[0329] Optionally, the information of the supplementary points includes at least one of the following:

[0330] The index of the vertex in the first-precision geometric information corresponding to the supplementary point;

[0331] The third precision geometric information of the supplementary point, wherein the third precision geometric information is the quantized three-dimensional coordinate information of the supplementary point;

[0332] The fourth precision geometric information of the supplementary point is the three-dimensional coordinate information of the supplementary point that was lost during the quantization process.

[0333] It should be noted that this device embodiment is a device corresponding to the above method. All implementation methods in the above method embodiments are applicable to this device embodiment and can achieve the same technical effect, so they will not be described again here.

[0334] Preferably, this application embodiment also provides a decoding device, including a processor, a memory, and a program or instructions stored in the memory and executable on the processor. When the program or instructions are executed by the processor, they implement the various processes of the above-described decoding method embodiments and achieve the same technical effect. To avoid repetition, they will not be described again here.

[0335] This application also provides a readable storage medium on which a program or instruction is stored. When the program or instruction is executed by a processor, it implements the various processes of the above-described decoding method embodiments and achieves the same technical effect. To avoid repetition, it will not be described again here.

[0336] The computer-readable storage medium mentioned above includes, for example, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0337] This application embodiment also provides a decoding device, including a processor and a communication interface, wherein the processor is configured to decompose the acquired bitstream of a target three-dimensional mesh to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information; based on the second geometric map, obtain second-precision geometric information and the first geometric map; based on the first geometric map and the placeholder map, obtain first-precision geometric information; and perform inverse quantization based on the second-precision geometric information and the first-precision geometric information to obtain the geometric information of the target three-dimensional mesh;

[0338] Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

[0339] This decoding device embodiment corresponds to the above-described decoding method embodiment. All implementation processes and methods of the above-described method embodiment can be applied to this decoding device embodiment and can achieve the same technical effect.

[0340] Specifically, this application also provides a decoding device. Specifically, the structure of the decoding device is as follows: Figure 9 As shown, the details will not be repeated here. Specifically, the decoding device in this application embodiment further includes: instructions or programs stored in the memory and executable on the processor, wherein the processor calls the instructions or programs in the memory to execute... Figure 13 The methods executed by each module shown achieve the same technical effect, and to avoid repetition, they will not be described in detail here.

[0341] This application also provides a readable storage medium storing a program or instructions. When the program or instructions are executed by a processor, they implement the various processes of the above-described decoding method embodiments and achieve the same technical effect. To avoid repetition, they will not be described again here.

[0342] The processor is the processor in the decoding device described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.

[0343] Optional, such as Figure 14As shown in the illustration, this application also provides a communication device 1400, including a processor 1401 and a memory 1402. The memory 1402 stores a program or instructions that can run on the processor 1401. For example, when the communication device 1400 is an encoding device, the program or instructions executed by the processor 1401 implement the various steps of the above-described encoding method embodiment and achieve the same technical effect. When the communication device 1400 is a decoding device, the program or instructions executed by the processor 1401 implement the various steps of the above-described decoding method embodiment and achieve the same technical effect. To avoid repetition, further details are omitted here.

[0344] This application embodiment also provides a chip, which includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement the various processes of the above-described encoding or decoding method embodiments and can achieve the same technical effect. To avoid repetition, it will not be described again here.

[0345] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.

[0346] This application also provides a computer program / program product, which is stored in a storage medium and executed by at least one processor to implement the various processes of the above-described encoding or decoding method embodiments, and can achieve the same technical effect. To avoid repetition, it will not be described again here.

[0347] This application also provides a communication system, comprising at least an encoding device and a decoding device. The encoding device is used to perform the steps of the encoding method described above, and the decoding device is used to perform the steps of the decoding method described above. Furthermore, it achieves the same technical effect, and to avoid repetition, it will not be described again here.

[0348] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. Furthermore, it should be noted that the scope of the methods and apparatuses in the embodiments of this application is not limited to performing functions in the order shown or discussed, but may also include performing functions substantially simultaneously or in the reverse order, depending on the functions involved. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.

[0349] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a computer software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0350] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.

Claims

1. An encoding method, characterized in that, include: The encoding end quantizes the geometric information of the target 3D mesh to obtain first-precision geometric information and second-precision geometric information; The encoding end acquires the first geometric diagram and placeholder diagram of the first precision geometric information; The encoding end obtains a second geometric map containing the second precision geometric information and the first geometric map based on the second precision geometric information and the first geometric map; The encoding end encodes the second geometric diagram and the placeholder diagram; Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

2. The method according to claim 1, characterized in that, The step of obtaining a second geometric map containing the second precision geometric information and the first geometric map based on the second precision geometric information and the first geometric map includes: The encoding end arranges the coordinate values ​​of the three dimensions of each vertex in the second precision geometric information to obtain an arrangement value corresponding to each vertex; The encoding end arranges the permutation value corresponding to each vertex in the first region to obtain a second geometric map containing second-precision geometric information and first-precision geometric information; The first region is the region remaining after removing the first precision geometric information projection distribution region from the two-dimensional projection distribution region of the geometric information of the target three-dimensional mesh.

3. The method according to claim 2, characterized in that, The step of arranging the permutation values ​​corresponding to each vertex in the first region to obtain a second geometric graph containing second-precision geometric information and first-precision geometric information includes the following: The encoding end arranges the pixels corresponding to the permutation value of each vertex in the first region according to the pixel distribution position of the projection point corresponding to the vertex in the first precision geometric information, and obtains a second geometric image containing the second precision geometric information and the first precision geometric information; The encoding end arranges the pixels of the projection points corresponding to each vertex in the second precision geometric information in the first region according to the pixel distribution position of the projection points corresponding to the vertices in the first precision geometric information, and performs translation processing on the pixels, arranging the vertex arrangement values ​​in the pixel positions of the projection points corresponding to the vertices in the translated first region, thereby obtaining a second geometric image containing the second precision geometric information and the first precision geometric information.

4. The method according to claim 3, characterized in that, The step of translating pixels and arranging the vertex arrangement values ​​in the pixel positions of the projection points corresponding to the vertices in the translated first region to obtain a second geometric image containing second-precision geometric information and first-precision geometric information includes: The encoding end scans the pixels of the projection points corresponding to the vertices in the second precision geometric information row by row or column by column, and re-numbers the position indexes of the pixels in each row or column within the row or column. The encoding end arranges the permutation value corresponding to each vertex in the second precision geometric information in the first region according to the scanning order, and arranges the pixel position index of the pixel position of the projection point corresponding to the vertex at the pixel position specified by the pixel position index of the vertex, thereby obtaining a second geometric image containing the second precision geometric information and the first precision geometric information. The first direction is either a horizontal or a vertical direction.

5. The method according to claim 1, characterized in that, The encoding end acquires the first geometric map and placeholder map of the first precision geometric information, including: The encoding end performs three-dimensional patching on the first precision geometric information; The encoding end performs a two-dimensional projection on the divided three-dimensional slices to obtain two-dimensional slices; The encoding end packages the two-dimensional slices to obtain two-dimensional image information; The encoding end obtains the first geometric image and the placeholder image based on the two-dimensional image information.

6. The method according to claim 1, characterized in that, In the case of quantizing the geometric information of the target three-dimensional mesh to obtain first-precision geometric information and second-precision geometric information, the method further includes: The encoding end quantizes the geometric information of the target three-dimensional mesh to obtain information about the supplementary points; The information of the supplementary points refers to the information of points that require additional processing during the quantization process.

7. The method according to claim 6, characterized in that, The acquisition of supplementary point information includes: The encoding end determines the information of the supplementary points based on the geometric information of the target three-dimensional mesh and the first precision geometric information.

8. The method according to claim 6 or 7, characterized in that, The information for the supplementary points includes at least one of the following: The index of the vertex in the first-precision geometric information corresponding to the supplementary point; The third precision geometric information of the supplementary point, wherein the third precision geometric information is the quantized three-dimensional coordinate information of the supplementary point; The fourth precision geometric information of the supplementary point is the three-dimensional coordinate information of the supplementary point that was lost during the quantization process.

9. The method according to claim 1, characterized in that, The quantization of the geometric information of the target 3D mesh to obtain first-precision geometric information and second-precision geometric information includes: The encoding end quantizes each vertex in the target 3D mesh according to the quantization parameters of each component to obtain first-precision geometric information; The encoding end obtains the second precision geometric information based on the first precision geometric information and the quantization parameters of each component.

10. A decoding method, characterized in that, include: The decoding end decomposes the acquired target 3D mesh bitstream to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information; The decoding end obtains the second precision geometric information and the first geometric image based on the second geometric image; The decoding end obtains first precision geometric information based on the first geometric diagram and the placeholder diagram; The decoding end performs inverse quantization based on the second precision geometric information and the first precision geometric information to obtain the geometric information of the target three-dimensional mesh; Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

11. The method according to claim 10, characterized in that, The step of decomposing the acquired target 3D mesh bitstream to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information includes: The decoding end obtains a target sub-codestream based on the acquired codestream of the target 3D mesh. The target sub-codestream includes: a slice information sub-codestream, a placeholder map sub-codestream, and a geometric map sub-codestream. The decoding end obtains a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information based on the target sub-code stream.

12. The method according to claim 10, characterized in that, The step of obtaining the second precision geometric information and the first geometric image based on the second geometric image includes: The decoding end obtains the permutation value corresponding to each vertex in the second precision geometric information and the first geometric image corresponding to the first precision geometric information in the second geometric image; The decoding end recovers the three-dimensional coordinate values ​​of the arrangement value corresponding to each vertex according to the arrangement order of the vertices to obtain the second precision geometric information; The arrangement value corresponding to each vertex is arranged in the first region of the second geometry. The first region is the region remaining after removing the first precision geometry information projection distribution region from the two-dimensional projection distribution region of the geometric information of the target three-dimensional mesh.

13. The method according to claim 12, characterized in that, The step of obtaining the permutation value corresponding to each vertex in the second precision geometric information in the second geometric graph includes the following: The decoding end recovers the permutation value corresponding to each vertex in the second precision geometric information in the first region of the second geometric graph according to the pixel distribution position of the projection point corresponding to the vertex in the first precision geometric information; The decoding end performs translation processing on the pixels of the projection points in the first region of the second geometric figure to obtain the permutation value corresponding to each vertex in the second precision geometric information.

14. The method according to claim 13, characterized in that, The step of translating the pixels of the projection points in the first region of the second geometric figure to obtain the permutation value corresponding to each vertex in the second precision geometric information includes: The decoding end scans the pixels of the projection points of the first geometric figure row by row or column by column along the first direction to obtain the position index of each pixel in each row or column. The decoding end scans the pixels of the projection points in the first region of the second geometric figure row by row or column by column along the first direction, and re-numbers each pixel in each row or column according to the position index corresponding to the pixel of the projection point in the first geometric figure. The decoding end obtains the permutation value corresponding to each vertex in the second precision geometric information from the first region of the second geometric graph according to the scanning order; The first direction is either a horizontal or a vertical direction.

15. The method according to claim 10, characterized in that, The decoding end obtains first-precision geometric information based on the first geometric map and the placeholder map, including: The decoding end obtains two-dimensional image information based on the first geometric diagram and the placeholder diagram; The decoding end obtains a two-dimensional slice based on the two-dimensional image information; The decoding end performs a three-dimensional inverse projection on the two-dimensional slice based on the slice information corresponding to the slice information sub-code stream to obtain the three-dimensional slice; The decoding end obtains first-precision geometric information based on the three-dimensional slice.

16. The method according to claim 10, characterized in that, The step of inverse quantization based on the second precision geometric information and the first precision geometric information to obtain the geometric information of the target three-dimensional mesh includes: The decoding end determines the coordinates of each vertex in the first precision geometric information based on the first precision geometric information and the quantization parameters of each component. The decoding end determines the target 3D mesh based on the coordinates of each vertex in the first precision geometric information and the second precision geometric information.

17. The method according to claim 16, characterized in that, When decomposing the acquired target 3D mesh bitstream, the method further includes: The decoding end acquires the geometric diagram of the supplementary points; The decoding end determines the first original slice corresponding to the third precision geometric information of the supplementary point and the second original slice corresponding to the fourth precision geometric information of the supplementary point based on the geometric diagram of the supplementary point. The decoding end determines the information of the supplementary points based on the first original slice and the second original slice; The information of the supplementary points refers to the information of points that require additional processing during the quantization process.

18. The method according to claim 17, characterized in that, Determining the target 3D mesh based on the coordinates of each vertex in the first precision geometric information and the second precision geometric information includes: The decoding end determines the target 3D mesh based on the information of the supplementary points, the second precision geometric information, and the coordinates of each vertex in the first precision geometric information.

19. The method according to claim 17 or 18, characterized in that, The information for the supplementary points includes at least one of the following: The index of the vertex in the first-precision geometric information corresponding to the supplementary point; The third precision geometric information of the supplementary point, wherein the third precision geometric information is the quantized three-dimensional coordinate information of the supplementary point; The fourth precision geometric information of the supplementary point is the three-dimensional coordinate information of the supplementary point that was lost during the quantization process.

20. An encoding device, characterized in that, include: The quantization module is used to quantize the geometric information of the target 3D mesh to obtain first-precision geometric information and second-precision geometric information. The first acquisition module is used to acquire the first geometric diagram and the placeholder diagram of the first precision geometric information; The second acquisition module is used to acquire a second geometric map containing the second precision geometric information and the first geometric map based on the second precision geometric information and the first geometric map; An encoding module is used to encode the second geometric figure and the placeholder figure; Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

21. The apparatus according to claim 20, characterized in that, The second acquisition module includes: The first acquisition unit is used to arrange the coordinate values ​​of the three dimensions of each vertex in the second precision geometric information, and acquire an arrangement value corresponding to each vertex; The second acquisition unit is used to arrange the permutation value corresponding to each vertex in the first region to acquire a second geometric map containing second precision geometric information and first precision geometric information. The first region is the region remaining after removing the first precision geometric information projection distribution region from the two-dimensional projection distribution region of the geometric information of the target three-dimensional mesh.

22. An encoding device, characterized in that, It includes a processor and a memory, the memory storing a program or instructions that can run on the processor, the program or instructions being executed by the processor to implement the steps of the encoding method as described in any one of claims 1 to 9.

23. A decoding device, characterized in that, include: The third acquisition module is used to decompose the acquired target 3D mesh bitstream to obtain a placeholder map and a second geometric map containing second-precision geometric information and first-precision geometric information; The fourth acquisition module is used to acquire second precision geometric information and the first geometric image based on the second geometric image; The fifth acquisition module is used to acquire first precision geometric information based on the first geometric diagram and the placeholder diagram; The sixth acquisition module is used to perform inverse quantization based on the second precision geometric information and the first precision geometric information to obtain the geometric information of the target three-dimensional mesh; Wherein, the first precision geometric information is the geometric information of the target three-dimensional mesh after quantization, and the second precision geometric information is the geometric information lost during the quantization process of the target three-dimensional mesh.

24. A decoding device, characterized in that, It includes a processor and a memory, the memory storing a program or instructions that can run on the processor, the program or instructions being executed by the processor to implement the steps of the decoding method as described in any one of claims 10 to 19.

25. A readable storage medium, characterized in that, The readable storage medium stores a program or instructions that, when executed by a processor, implement the steps of the encoding method as described in any one of claims 1 to 9 or the steps of the decoding method as described in any one of claims 10 to 19.