Encoding method and apparatus, decoding method and apparatus, codec, bitstream, device and storage medium

By introducing syntax elements indicating inter-frame and intra-frame prediction modes in 3D dynamic mesh coding, the motion vector reconstruction values ​​are optimized, solving the problem of large data volume in 3D dynamic mesh and improving encoding and decoding efficiency and adaptability.

WO2025217937A1PCT designated stage Publication Date: 2025-10-23GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/088976
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-19
Publication Date
2025-10-23

AI Technical Summary

Technical Problem

Existing 3D dynamic mesh compression technology suffers from problems such as large data volume and low storage and transmission efficiency. In particular, it is difficult to achieve effective quality scalability and spatial scalability when different user terminals and mesh bandwidths are used.

Method used

By adding syntax elements indicating inter-frame prediction mode and intra-frame prediction mode during encoding and decoding, the reconstructed values ​​of motion vectors are optimized, the accuracy of motion vectors is improved, and thus the encoding and decoding performance is enhanced.

Benefits of technology

It improves the compression rate of 3D dynamic meshes, saves codeword overhead, enhances encoding and decoding performance, and adapts to the needs of different user terminals and mesh bandwidth.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024088976_23102025_PF_FP_ABST
    Figure CN2024088976_23102025_PF_FP_ABST
Patent Text Reader

Abstract

An encoding method and apparatus, a decoding method and apparatus, a codec, a bitstream, a device and a storage medium. The decoding method comprises: decoding a bitstream to determine a first syntax element, wherein the first syntax element is used for indicating a prediction mode for a motion vector of the current vertex in a first coordinate dimension, prediction modes for the motion vector of the current vertex in different coordinate dimensions are indicated by means of different syntax elements, and the current vertex is a vertex in a base mesh of the current image; and when the prediction mode indicated by the first syntax element is an inter-frame prediction mode, determining a motion vector reconstruction value of the current vertex in the first coordinate dimension on the basis of a motion vector reconstruction value of an inter-frame predicted point of the current vertex in the first coordinate dimension, wherein the inter-frame predicted point is a vertex in a base mesh of a reference image.
Need to check novelty before this filing date? Find Prior Art

Description

Coding method and device, coder, code stream, equipment, storage medium TECHNICAL FIELD

[0001] The embodiments of the present application relate to the technical field of dynamic mesh coding, and relate to, but are not limited to, a coding method and device, a coder, a code stream, equipment, and a storage medium. BACKGROUND

[0002] In the standard reference software of dynamic mesh coding (DMC) provided by Moving Picture Experts Group (MPEG), most of them are to preprocess the original mesh to generate a base mesh and a shift coefficient, and then perform compression / coding processing based on the base mesh and the shift coefficient.

[0003] Three-dimensional animation content adopts a key frame-based representation method, that is, each frame is a static mesh. The static meshes at different time points have the same topological structure and different geometric structures. However, the data amount of the three-dimensional dynamic mesh based on the key frame representation is particularly large, and therefore how to effectively store, transmit, and draw the three-dimensional dynamic mesh becomes a problem faced by the development of the three-dimensional dynamic mesh.

[0004] Different user terminals (computers, notebooks, portable devices, and mobile phones) need to support the spatial scalability of the mesh; different mesh bandwidths (wideband, narrowband, and wireless) need to support the quality scalability of the mesh. Therefore, three-dimensional dynamic mesh compression is a very key problem.

[0005] SUMMARY

[0006] The coding method and device, the coder, the code stream, and the storage medium provided by the embodiments of the present application can enhance the compression rate of the base mesh, thereby saving the code word overhead, improving the code rate, and enhancing the coding performance.

[0007] In a first aspect, the embodiments of the present application provide a decoding method, which is applied to a decoder, and the method comprises the following steps: decoding a code stream, determining a first syntax element, the first syntax element being used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension; the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; the current vertex is a vertex in a base mesh of a current image; in a case where the prediction mode indicated by the first syntax element is an inter prediction mode, determining a reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to a reconstructed value of an inter prediction point of the current vertex in the first coordinate dimension; wherein the inter prediction point is a vertex in a base mesh of a reference image.

[0008] In the decoding method provided in the first aspect, the prediction mode of the motion vector of the current vertex in different coordinate dimensions is indicated by different syntax elements; the candidate prediction mode of the motion vector of the current vertex in the first coordinate dimension is increased by the inter-frame prediction mode, that is, the candidate prediction mode in a single coordinate dimension is increased by the inter-frame prediction mode; in this way, the accuracy of the motion vector reconstruction value of the current vertex in the first coordinate dimension is improved, thereby improving the decoding performance of the decoder.

[0009] In the second aspect, the embodiments of the present application provide an encoding method, which is applied to an encoder, and the method comprises the following steps: determining the prediction mode of the motion vector of a current vertex in a first coordinate dimension from candidate prediction modes of the motion vector of the current vertex in the first coordinate dimension; wherein the candidate prediction modes comprise an inter-frame prediction mode; the current vertex is a vertex in a base mesh of a current image; determining a first syntax element according to the prediction mode; wherein the first syntax element is used to indicate the prediction mode of the motion vector of the current vertex in the first coordinate dimension; the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; and writing the first syntax element into a bitstream.

[0010] In the encoding method provided in the second aspect, the prediction mode of the motion vector of the current vertex in different coordinate dimensions is indicated by different syntax elements; the candidate prediction mode of the motion vector of the current vertex in the first coordinate dimension is increased by the inter-frame prediction mode, that is, the candidate prediction mode in a single coordinate dimension is increased by the inter-frame prediction mode; the prediction mode of the motion vector of the current vertex in the first coordinate dimension may hit the inter-frame prediction mode, and the prediction mode indicated by the first syntax element written into the bitstream may be the inter-frame prediction mode; in this way, the accuracy of the motion vector reconstruction value of the current vertex in the first coordinate dimension is improved for the decoding end, thereby improving the decoding performance.

[0011] In the third aspect, the embodiments of the present application provide a decoding method, which is applied to a decoder, and the method comprises the following steps: decoding a bitstream to determine a first syntax element, wherein the first syntax element is used to indicate the prediction mode of the motion vector of a current vertex in a first coordinate dimension; the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; the current vertex is a vertex in a base mesh of a current image; in the case that the prediction mode indicated by the first syntax element is an intra-frame prediction mode, determining the weight coefficient of an intra-frame prediction point of the current vertex; wherein the intra-frame prediction point is a vertex in the base mesh of the current image; and determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra-frame prediction point and the motion vector reconstruction value of the intra-frame prediction point in the first coordinate dimension.

[0012] In the decoding method provided in the third aspect, the data used to determine the motion vector reconstruction value of the current vertex in the first coordinate dimension includes not only the motion vector reconstruction value of the intra prediction point of the current vertex in the first coordinate dimension, but also the weight coefficient of the intra prediction point. In this way, the accuracy of the motion vector reconstruction value of the current vertex in the first coordinate dimension is improved, and thus the decoding performance of the decoder is enhanced.

[0013] In the fourth aspect, the embodiments of the present application provide an encoding method. The method is applied to an encoder, and includes: determining a weight coefficient of an intra prediction point of a current vertex, in a case where a prediction mode of a motion vector of the current vertex in a first coordinate dimension is an intra prediction mode; wherein the intra prediction point is a vertex in a base grid of a current image; determining a motion vector residual value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and a motion vector reconstruction value of the intra prediction point in the first coordinate dimension; and writing the motion vector residual value of the current vertex in the first coordinate dimension into a bitstream.

[0014] In the encoding method provided in the fourth aspect, the data used to determine the motion vector residual value of the current vertex in the first coordinate dimension includes not only the motion vector reconstruction value of the intra prediction point of the current vertex in the first coordinate dimension, but also the weight coefficient of the intra prediction point. In this way, the motion vector residual value of the current vertex in the first coordinate dimension is reduced, the code word overhead is saved, and the code rate is improved.

[0015] In the fifth aspect, the embodiments of the present application provide a decoding device. The device is applied to a decoder, and includes: a decoding module configured to decode a bitstream, and determine a first syntax element. The first syntax element is used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension. The prediction modes of the motion vectors of the current vertex in different coordinate dimensions are indicated by different syntax elements. The current vertex is a vertex in a base grid of a current image. A first determining module is configured to determine a motion vector reconstruction value of the current vertex in the first coordinate dimension according to a motion vector reconstruction value of an inter prediction point of the current vertex in the first coordinate dimension, in a case where the prediction mode indicated by the first syntax element is an inter prediction mode. The inter prediction point is a vertex in a base grid of a reference image.

[0016] In a sixth aspect, an embodiment of the present application provides a decoding device applied to a decoder, the device comprising: a decoding module configured to decode a code stream, determine a first syntax element, the first syntax element being used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension; the prediction mode of the motion vector of the current vertex in a different coordinate dimension being indicated by a different syntax element; the current vertex being a vertex in a base mesh of a current image; a second determining module configured to, in a case where the prediction mode indicated by the first syntax element is an intra prediction mode, determine a weight coefficient of an intra prediction point of the current vertex; wherein the intra prediction point is a vertex in the base mesh of the current image; a third determining module configured to determine a reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and a reconstructed value of the motion vector of the intra prediction point in the first coordinate dimension.

[0017] In a seventh aspect, an embodiment of the present application provides an encoding device applied to an encoder, the device comprising: a fourth determining module configured to determine, from candidate prediction modes of a motion vector of a current vertex in a first coordinate dimension, a prediction mode of the motion vector of the current vertex in the first coordinate dimension; wherein the candidate prediction modes comprise an inter prediction mode; the current vertex being a vertex in a base mesh of a current image; a fifth determining module configured to determine a first syntax element according to the prediction mode; wherein the first syntax element is used to indicate the prediction mode of the motion vector of the current vertex in the first coordinate dimension; the prediction mode of the motion vector of the current vertex in a different coordinate dimension being indicated by a different syntax element; an encoding module configured to write the first syntax element into a code stream.

[0018] In an eighth aspect, an embodiment of the present application provides an encoding device applied to an encoder, the device comprising: a sixth determining module configured to, in a case where a prediction mode of a motion vector of a current vertex in a first coordinate dimension is an intra prediction mode, determine a weight coefficient of an intra prediction point of the current vertex; wherein the intra prediction point is a vertex in a base mesh of a current image; a seventh determining module configured to determine a residual value of the motion vector of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and a reconstructed value of the motion vector of the intra prediction point in the first coordinate dimension; wherein the inter prediction point is a vertex in a base mesh of a reference image; an encoding module configured to write the residual value of the motion vector of the current vertex in the first coordinate dimension into a code stream.

[0019] In a ninth aspect, an embodiment of the present application provides a decoder, comprising a first memory and a first processor; wherein the first memory is configured to store a computer program capable of running on the first processor; and the first processor is configured to execute the method in the first aspect or the third aspect when running the computer program.

[0020] In a tenth aspect, an embodiment of the present application provides an encoder, comprising a second memory and a second processor; wherein the second memory is configured to store a computer program capable of running on the second processor; and the second processor is configured to execute the method in the second aspect or the fourth aspect when running the computer program.

[0021] In an eleventh aspect, an embodiment of the present application provides a code stream, which is obtained by the encoding method in the second aspect or the fourth aspect.

[0022] In a twelfth aspect, an embodiment of the present application provides an electronic device, comprising: a processor adapted to execute a computer program; and a computer readable storage medium, wherein the computer readable storage medium stores the computer program, and the computer program is executed by the processor to implement the method in the first aspect, the second aspect, the third aspect or the fourth aspect.

[0023] In a thirteenth aspect, an embodiment of the present application provides a computer readable storage medium, wherein the computer readable storage medium stores a computer program, and the computer program is executed to implement the method in the first aspect, the second aspect, the third aspect or the fourth aspect.

[0024] In a fourteenth aspect, an embodiment of the present application provides a computer program product, comprising a computer program or instructions, wherein the computer program or instructions are executed by a processor to implement the method in the first aspect, the second aspect, the third aspect or the fourth aspect.

[0025] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit the present application. BRIEF DESCRIPTION OF DRAWINGS

[0026] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and serve to explain the technical solutions of the present application. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative effort on the basis of these drawings.

[0027] The flowchart shown in the drawings is only an example and does not necessarily include all the contents and operations / steps, nor does it have to be executed in the order described. For example, some operations / steps can be further divided, and some operations / steps can be combined or partially combined, so the actual execution order can be changed according to the actual situation.

[0028] Fig. 1 is a schematic diagram of a three-dimensional mesh image according to an embodiment of the present application;

[0029] Fig. 2 is a schematic diagram of a partial enlarged view of a three-dimensional mesh image according to an embodiment of the present application;

[0030] Fig. 3 is a schematic diagram of a connection mode of a three-dimensional mesh according to an embodiment of the present application;

[0031] Fig. 4 is a schematic diagram of a three-dimensional mesh image according to an embodiment of the present application;

[0032] Fig. 5 is a schematic diagram of a mesh data storage format according to an embodiment of the present application;

[0033] Fig. 6 is a schematic diagram of an attribute of a three-dimensional mesh image according to an embodiment of the present application;

[0034] Fig. 7 is a schematic diagram of preprocessing of a two-dimensional curve;

[0035] Fig. 8 is a schematic diagram of generation of a shift coefficient;

[0036] Fig. 9 is a schematic diagram of an intra-frame-based encoding framework of MPEG Dynamic Mesh Coding;

[0037] Fig. 10 is a schematic diagram of an intra-frame-based decoding framework of MPEG Dynamic Mesh Coding;

[0038] Fig. 11 is a schematic diagram of an inter-frame-based encoding framework of MPEG Dynamic Mesh Coding;

[0039] Fig. 12 is a schematic diagram of an inter-frame-based decoding framework of MPEG Dynamic Mesh Coding;

[0040] Fig. 13 is an example diagram of reference frame neighbor points;

[0041] Fig. 14 is a schematic diagram of an implementation flow of an encoding method;

[0042] Fig. 15 is a schematic diagram of an implementation flow of a decoding method;

[0043] Fig. 16 is an example diagram of current frame neighbor points;

[0044] Fig. 17 is a schematic diagram of an implementation flow of a decoding method according to an embodiment of the present application;

[0045] FIG. 18 is a second implementation flowchart of the decoding method according to an embodiment of the present application;

[0046] FIG. 19 is a further implementation flowchart of step 1702 according to an embodiment of the present application;

[0047] FIG. 20 is a further implementation flowchart of step 1901 according to an embodiment of the present application;

[0048] FIG. 21 is a further implementation flowchart of step 1802 according to an embodiment of the present application;

[0049] FIG. 22 is a first implementation flowchart of the encoding method according to an embodiment of the present application;

[0050] FIG. 23 is a third implementation flowchart of the decoding method according to an embodiment of the present application;

[0051] FIG. 24 is a second implementation flowchart of the encoding method according to an embodiment of the present application;

[0052] FIG. 25 is a third implementation flowchart of the encoding method according to an embodiment of the present application;

[0053] FIG. 26 is a fourth implementation flowchart of the decoding method according to an embodiment of the present application;

[0054] FIG. 27 is a first structural diagram of the decoding apparatus according to an embodiment of the present application;

[0055] FIG. 28 is a first structural diagram of the encoding apparatus according to an embodiment of the present application;

[0056] FIG. 29 is a second structural diagram of the decoding apparatus according to an embodiment of the present application;

[0057] FIG. 30 is a second structural diagram of the encoding apparatus according to an embodiment of the present application;

[0058] FIG. 31 is a first structural diagram of the decoder according to an embodiment of the present application;

[0059] FIG. 32 is a structural diagram of the encoder according to an embodiment of the present application;

[0060] FIG. 33 is a structural diagram of the electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0061] In order to make the objectives, technical solutions and advantages of the embodiments of the present application clearer, the specific technical solutions of the present application will be further described below with reference to the accompanying drawings. The following embodiments are used to explain the present application but not to limit the scope of the present application.

[0062] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to be limiting of this application.

[0063] In the following description, reference is made to the accompanying drawings which form a part hereof, and in which are shown, by way of illustration, embodiments of the present application. It is understood that other embodiments can be utilized and mechanical changes can be made without departing from the scope of the present application. The following detailed description, therefore, is not to be taken in a limiting sense, as the scope of the present application is defined by the appended claims.

[0064] It should be noted that the terms "first", "second", "third" in the embodiments of the present application are used to distinguish similar or different objects, and do not represent a specific order of the objects. It can be understood that the "first", "second", "third" can be interchanged in a specific order or sequence as long as it is allowed, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.

[0065] The framework of the encoder and the decoder described in the embodiments of the present application is for more clearly illustrating the technical solutions of the embodiments of the present application, and does not constitute a limitation on the technical solutions provided by the embodiments of the present application. It can be known by those skilled in the art that the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems as the encoder and the decoder evolve.

[0066] The three-dimensional mesh is a three-dimensional object surface composed of countless polygons in space, and the polygon is composed of vertices and edges. FIG. 1 is a schematic diagram of a three-dimensional mesh image provided by the embodiments of the present application, and FIG. 2 is a partial enlarged schematic diagram of the three-dimensional mesh image provided by the embodiments of the present application. As can be seen from FIG. 1 and FIG. 2, the mesh surface is composed of closed polygons.

[0067] A two-dimensional image has information expression at each pixel point, and the distribution is regular, so that the position information thereof does not need to be recorded additionally. However, the distribution of the vertices in the mesh in the three-dimensional space has randomness and irregularity, and the forming mode of the polygon needs to be additionally specified, so that the position of each vertex in the space and the connection information of each polygon need to be recorded, so as to completely express a mesh image. FIG. 3 is a schematic diagram of a connection mode of a three-dimensional mesh provided by the embodiments of the present application, as shown in FIG. 3, the same number of vertices and vertex positions, due to different connection modes, the surfaces formed are completely different.

[0068] In addition to the above information, since the three-dimensional mesh is usually encoded by using the existing two-dimensional image / video encoding mode, the three-dimensional mesh needs to be converted from the three-dimensional space to the two-dimensional image, and the UV coordinate defines the conversion process.

[0069] Similar to two-dimensional images, each position in the acquisition process can have corresponding attribute information, usually RGB color values, which reflect the color of the object. For three-dimensional meshes, the attribute information corresponding to each vertex, in addition to color, is also commonly reflectance values, which reflect the surface material of the object. The attribute information of a three-dimensional mesh is stored through a two-dimensional image, and the mapping from two-dimensional to three-dimensional is specified by UV coordinates.

[0070] Therefore, three-dimensional mesh data usually includes geometric coordinate information (x, y, z), geometric connection information, UV coordinates, and attribute maps. Among them, FIG. 4 is a three-dimensional mesh image schematic diagram provided by an embodiment of the present application, FIG. 5 is a mesh data storage format schematic diagram provided by an embodiment of the present application, as shown in FIG. 5, including three-dimensional geometric position information (such as v 248 167 22), UV coordinates (such as vt934 1867), and connection information (such as f1 / 1), and FIG. 6 is an attribute schematic diagram of a three-dimensional mesh image provided by an embodiment of the present application.

[0071] In MPEG's dynamic mesh coding (DMC), at the encoding end, first, the original mesh is preprocessed to generate a base mesh and a displacement coefficient. FIG. 7 is a preprocessing schematic diagram of a two-dimensional curve, and FIG. 8 is a generation schematic diagram of a displacement coefficient. As shown in FIG. 7, the preprocessing process of a three-dimensional mesh can be analogized in the same way, first, the original mesh is down-sampled to generate a base mesh with a greatly reduced number of vertices, then the base mesh is subdivided, and new vertices are inserted on the edges of the base mesh through an algorithm; finally, as shown in FIG. 8, for each vertex in the subdivided mesh, find the vertex in the original mesh that is closest to it, then the vector between the vertex in the subdivided mesh and the closest vertex in the original mesh is the displacement coefficient. Since the subdivided mesh can be automatically generated at the encoding and decoding ends as long as the subdivision algorithm and the number of subdivision iterations are determined, after preprocessing, the original mesh only needs to be represented as a simple base mesh and a series of displacement coefficients, which can greatly reduce the data volume and does not affect the reconstruction at the decoding end.

[0072] FIG. 9 is a schematic diagram of an intra-frame based encoding framework of MPEG Dynamic Mesh Coding. As shown in FIG. 9, in the encoder 90, the pre-processed generated base mesh m(i) is quantized via the quantization unit 901 and then encoded by the static mesh encoder 902 (e.g., draco encoder) to generate the compressed base mesh bitstream. The displacements d(i) are input to the video encoding unit 905 after wavelet transform via the wavelet transform unit 903, quantization via the quantization unit 901, and two-dimensional mapping via the two-dimensional mapping unit 904, which is encoded by HEVC to generate the compressed displacements bitstream. The two-dimensional attribute map A(i) is also directly input to the video encoding unit 905 for encoding, which includes attribute transfer of the attribute map A(i) via the attribute transform unit 906 based on the reconstructed three-dimensional mesh geometry DM(i) and the static / dynamic mesh M(i), padding of the obtained updated attribute map A'(i) via the padding unit 907, color space conversion and video encoding of the obtained updated attribute map A"(i) via the color space conversion unit 908 to generate the compressed attribute bitstream. Finally, the base mesh bitstream, the displacements bitstream, the attribute bitstream, and the patch information are input to the MUX 916 to form the compressed bitstream b(i). In addition, as shown in FIG. 9, the compressed base mesh bitstream output by the static mesh encoder 902 is also input to the static mesh decoder 909 to obtain the reconstructed quantized base mesh m'(i), which is input to the update displacement unit 910 along with the base mesh m(i) and the displacements d(i) to output the updated displacements d'(i). The reconstructed quantized base mesh m'(i) is also input to the inverse quantization unit 911 to obtain the reconstructed base mesh m"(i), which is input to the reconstructed three-dimensional mesh geometry 912 along with the reconstructed displacements d"(i) to output the reconstructed three-dimensional mesh geometry DM(i).wherein the reconstructed displacement coefficients d"(i) are obtained by the reconstructed 2D mapped quantized wavelet coefficients outputted by the video encoding unit 905 being successively inverse 2D mapped by the inverse 2D mapping unit 913, inverse quantized by the inverse quantization unit 914, and inverse wavelet transformed by the inverse wavelet transform unit 915.

[0073] FIG. 10 is a schematic diagram of an intra-based decoding framework of MPEG Dynamic Mesh Coding. As shown in FIG. 10, in the decoder 100, the compressed bitstream b(i) is processed by the DEMUX 1001 to output a base mesh code stream, which is decoded by the static mesh decoder 1002 (e.g., draco decoder) to generate a reconstructed quantized base mesh m'(i), which is inverse quantized by the inverse quantization unit 1003 to obtain a decoded base mesh m"(i). The compressed bitstream b(i) is processed by the DEMUX 1001 to output a displacement coefficients code stream, which is HEVC decoded by the video decoding unit 1004, inverse 2D mapped by the inverse 2D mapping unit 1005, inverse quantized by the inverse quantization unit 1006, and inverse wavelet transformed by the inverse wavelet transform unit 1007 to generate decoded displacements d"(i). The decoded base mesh m"(i) and the decoded displacements d"(i) are then inputted into the reconstructed deformed mesh geometry unit 1008 to generate a reconstructed deformed mesh DM(i). The compressed bitstream b(i) is processed by the DEMUX 1001 to output an attribute code stream, which is HEVC decoded by the video decoding unit 1004 and color format / space transformed by the color format / space transform unit 1009 to generate a reconstructed attribute map A"(i).

[0074] FIG. 11 is a schematic diagram of an inter-based encoding framework of MPEG Dynamic Mesh Coding. As shown in FIG. 11, in the encoder, since the inter-encoding mode is adopted, for the base mesh, its connectivity information does not need to be encoded, only the motion vectors between the vertex geometry coordinates of the current frame and the vertex geometry coordinates of the reference frame need to be encoded, and the remaining modules are consistent with the intra-encoding.

[0075] FIG. 12 is a schematic diagram of an inter-frame based decoding framework of MPEG Dynamic Mesh Coding. As shown in FIG. 12, in the decoder, the motion vector is decoded from the bitstream, and the base mesh is obtained by combining the motion vector and the connection information of the reference frame. The remaining modules are consistent with the intra-frame coding.

[0076] A motion vector coding method and related terms are introduced as follows.

[0077] a) Motion vector

[0078] The difference between the geometric coordinates of the vertex of the current frame and the corresponding vertex (e.g., the vertex with the same index as the vertex of the current frame in the reference frame) of the reference frame, such as the motion vector (m ix ,m iy ,m iz ) of point i. ix iy iz ix iy iz .

[0079] In the embodiments of the present application, the current frame can also be understood as a current image, and the reference frame can also be understood as a reference image. The reference frame refers to the reference frame of the current frame, and the reference image refers to the reference image of the current image.

[0080] b) Base mesh of the current frame and the reference frame

[0081] The base mesh of the current frame and the reference frame has the same connection information, and only the base mesh vertex coordinates are different. For example, as shown in FIG. 13, 1301 is the base mesh of the current frame, and 1302 is the base mesh of the reference frame. It can be seen that they have the same connection relationship.

[0082] c) Syntax element A

[0083] Syntax element A indicates the decoding mode of the base mesh of each frame. For example, A takes a value of 0 to represent that the frame is in an inter-frame decoding mode, A takes a value of 1 to represent that the frame is in an intra-frame decoding mode, A takes a value of 2 to represent that the frame is in a skip decoding mode, and A takes a value of 3 as a reserved bit.

[0084] d) Encoding end

[0085] When the base mesh of the current frame is in an inter-frame coding mode, the motion vector of each group of the base mesh is coded in groups, that is, the following operations are performed on each group. As shown in FIG. 14:

[0086] ​​​​​determining a syntax element B indicating whether the motion vector of the current group is skip coded and writing the syntax element B into the bitstream (the syntax element B is determined by rate-distortion optimization on whether the motion vector of the current group is skip coded), for example, B=1 indicates that the motion vector of the current group is skip coded, i.e. the motion vector of the current group is not coded, and the reconstructed value of the motion vector of each point in the current group is all are (0, 0, 0);

[0087] B=0 indicates that the motion vector of the current group is not skip coded, and syntax elements C, D, E indicating whether the motion vector of the current group is skip coded in three coordinate dimensions (x, y, z) are determined and written into the bitstream (the syntax elements C, D, E are determined by rate-distortion optimization on whether the motion vector of the current group in three coordinate dimensions (x, y, z) is skip coded, respectively), for example, C (or D or E) =1 indicates that the motion vector of the current group is skip coded in x (or y or z) dimension, i.e. the motion vector of the current group in x (or y or z) dimension is not coded, and the reconstructed value of the motion vector of each point in the current group in x (or y or z) dimension is (or or ) are all 0;

[0088] C (or D or E) =0 indicates that the motion vector of the current group is not skip coded in x (or y or z) dimension, and syntax element F (or G or H) indicating the prediction mode of the motion vector of the current group in x (or y or z) dimension and the motion vector coding value of the motion vector of the current group in x (or y or z) dimension are determined and written into the bitstream.

[0089] For example, F (or G or H) =0 (binary symbol string is represented as 0) indicates that the motion vector of the current group is not predicted in x (or y or z) dimension, and the motion vector coding value of the motion vector of the current group in x (or y or z) dimension is the original value of the motion vector;

[0090] F (or G or H) =1 (binary symbol string is represented as 10) indicates that the motion vector of the current group adopts non-offset intra prediction in x (or y or z) dimension, and the motion vector coding value of the motion vector of each vertex in the current group in x (or y or z) dimension is the difference between the original value of the motion vector of the current vertex and the non-offset intra prediction value, r x (r y ,r z )=(m x ,m y ,m z )-P x (P y ,P z ), wherein the non-offset intra prediction value predCount is the number of intra-frame prediction points of the current vertex. When predCount is 0, the intra-frame prediction value without offset is 0. is the reconstructed value of the motion vector of the i-th intra-frame prediction point of the current vertex, and the intra-frame prediction point of the current vertex is determined according to f);

[0091] The value of F (or G or H) is 2 (a binary symbol string is represented as 11), which means that the motion vector of the current group adopts offset intra prediction in the x (or y or z) dimension. The motion vector encoding value of the motion vector of each vertex in the current group in the x (or y or z) dimension is the difference between the original value of the motion vector of the current vertex and the offset intra prediction value. x (r y ,r z )=(m x ,m y ,m z )-P x (P y ,P z ), where there is an offset intra prediction value predCount is the number of intra-frame prediction points of the current vertex. When predCount is 0, the offset intra-frame prediction value is 0. is the motion vector reconstruction value of the i-th intra-frame prediction point of the current vertex, bias=predCount>>1, and the intra-frame prediction point of the current vertex is determined according to f).

[0092] It should be noted that each point in the base grid has a corresponding index. For example, if the total number of points in the base grid is N, the point indexes range from 0 to N-1. Encoding and decoding usually follow the order of indexes from small to large. The motion vectors of each group of the base grid are encoded in groups. For example, if the total number of points in the base grid is 40 and the group size is 16 (i.e., each group contains 16 vertices, and the number of vertices in the last group is 1 to 16), then the first group is points 0 to 15, the second group is points 16 to 31, and the third group is points 32 to 39. Other values ​​can also be used and are not limited.

[0093] e) Decoding end

[0094] When the current frame base grid is in inter-frame decoding mode, the motion vector of each group of base grids is decoded in groups, that is, the following operations are performed for each group, as shown in Figure 15:

[0095] Parse the syntax element B that indicates whether the motion vector of the current group is skipped for decoding. For example, a value of 1 indicates that the motion vector of the current group is skipped for decoding, that is, the decoding value of the motion vector of the current group is 0. For example, if there are N points in the current group, the decoding value of the motion vector of each point in the group is All are (0,0,0);

[0096] B is 0, it indicates that the motion vector of the current group is not skipped decoding, and syntax elements C, D and E indicating whether the motion vector of the current group is skipped decoding in three coordinate dimensions (x, y and z) are parsed continuously. For example, C (or D or E) is 1, it indicates that the motion vector of the current group is skipped decoding in x (or y or z) dimension, i.e. the decoded value of the motion vector of the current group in x (or y or z) dimension is 0. If the current group has N points, the decoded value of the motion vector of each point in the group in x (or y or z) dimension is (or or ) is 0.

[0097] C (or D or E) is 0, it indicates that the motion vector of the current group is not skipped decoding in x (or y or z) dimension, and syntax elements F (or G or H) indicating the prediction mode of the motion vector of the current group in x (or y or z) dimension and the decoded value of the motion vector of the current group in x (or y or z) dimension are parsed continuously.

[0098] For example, F (or G or H) is 0 (binary symbol string is 0), it indicates that the motion vector of the current group is not predicted in x (or y or z) dimension, and the reconstructed value of the motion vector of the current group in x (or y or z) dimension is the decoded value of the motion vector.

[0099] F (or G or H) is 1 (binary symbol string is 10), it indicates that the motion vector of the current group adopts non-offset intra prediction in x (or y or z) dimension, and the reconstructed value of the motion vector of each vertex in the current group in x (or y or z) dimension is the sum of the decoded value of the motion vector of the current vertex and the non-offset intra prediction value, wherein the non-offset intra prediction value predCount is the number of intra prediction points of the current vertex, when predCount is 0, the non-offset intra prediction value is 0, is the reconstructed value of the motion vector of the i-th intra prediction point of the current vertex, and the intra prediction points of the current vertex are determined according to f).

[0100] F (or G or H) is 2 (binary symbol string is 11), it indicates that the motion vector of the current group adopts offset intra prediction in x (or y or z) dimension, and the reconstructed value of the motion vector of each vertex in the current group in x (or y or z) dimension is the sum of the decoded value of the motion vector of the current vertex and the offset intra prediction value, wherein the offset intra prediction value predCount is the number of intra prediction points of the current vertex, when predCount is 0, the offset intra prediction value is 0, For the motion vector reconstruction value of the i-th intra-prediction point of the current vertex, bias = predCount > 1, the intra-prediction point of the current vertex is determined according to f).

[0101] f) Intra-prediction point

[0102] According to the triangular face connection information of the base mesh, the current frame neighbor points of each vertex are determined, the current frame neighbor points are vertices in the current frame which have a connection relationship with the current vertex in the base mesh and whose coding order is before that of the current vertex, as shown in FIG. 16, the current frame neighbor points of vertex 17 are 1, 11 and 16 in the current frame, and the current frame neighbor points of vertex 19 are 4, 5, 7, 8, 9 and 10 in the current frame, the intra-prediction point is composed of all or part of the current frame neighbor points.

[0103] The embodiment of the present application provides a decoding method, and FIG. 17 is a schematic flowchart of the implementation of the decoding method provided by the embodiment of the present application, as shown in FIG. 17, the decoding method comprises the following steps 1701 to 1702:

[0104] In step 1701, a bitstream is decoded to determine a first syntax element, the first syntax element is used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension; the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; the current vertex is a vertex in a base mesh of a current image;

[0105] In step 1702, in a case where the prediction mode indicated by the first syntax element is an inter-prediction mode, a motion vector reconstruction value of the current vertex in the first coordinate dimension is determined according to a motion vector reconstruction value of an inter-prediction point of the current vertex in the first coordinate dimension; the inter-prediction point is a vertex in a base mesh of a reference image.

[0106] In the embodiment of the present application, a decoding method is provided, in which the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; for the prediction mode of the motion vector of the current vertex in the first coordinate dimension, an inter-prediction mode is added, that is, an inter-prediction mode is added in a single coordinate dimension; in this way, the accuracy of the motion vector reconstruction value of the current vertex in the first coordinate dimension is improved, thereby the decoding performance of the decoder is enhanced.

[0107] It should be noted that in the embodiments of the present application, the prediction mode indicated by the first syntax element is not limited, and the prediction mode indicated by the first syntax element can be an inter prediction mode, or the prediction mode indicated by the first syntax element can be an intra prediction mode or a non-prediction mode. Different prediction modes have different methods for determining the motion vector reconstruction value of the current vertex in the first coordinate dimension.

[0108] For the decoding method shown in FIG. 17, in some embodiments, as shown in FIG. 18, the decoding method further includes the following steps 1801 and step 1802:

[0109] In step 1801, in the case where the prediction mode indicated by the first syntax element is an intra prediction mode, an intra prediction point of the current vertex in the base grid of the current image is determined; wherein the intra prediction point includes at least one vertex in the base grid of the current image which has a connection relationship with the current vertex and has a decoding order earlier than the current vertex.

[0110] In step 1802, the motion vector reconstruction value of the current vertex in the first coordinate dimension is determined according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension.

[0111] For the decoding method shown in FIG. 17, in some embodiments, the decoding method further includes: in the case where the prediction mode indicated by the first syntax element is a non-prediction mode, decoding the code stream to obtain the motion vector decoding value of the current vertex in the first coordinate dimension; and determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector decoding value of the current vertex in the first coordinate dimension. For example, in the non-prediction mode, the code stream can carry the original value of the motion vector of the current vertex in the first coordinate dimension, and the motion vector reconstruction value of the current vertex in the first coordinate dimension is equal to the motion vector decoding value of the current vertex in the first coordinate dimension. For example, in the non-prediction mode, the code stream can also carry the quantized value of the original value of the motion vector of the current vertex in the first coordinate dimension, and the motion vector reconstruction value of the current vertex in the first coordinate dimension is equal to the dequantized value of the motion vector decoding value of the current vertex in the first coordinate dimension.

[0112] The following describes further optional embodiments of each of the above steps and related terms.

[0113] In step 1701, a first syntax element is decoded from a code stream, the first syntax element being used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension; wherein the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; and the current vertex is a vertex in a base grid of a current image.

[0114] In the embodiments of the present application, the first coordinate dimension is not limited to any coordinate dimension. For example, in some embodiments, the first coordinate dimension is the x dimension. For another example, in some other embodiments, the first coordinate dimension is the y dimension. For yet another example, in some other embodiments, the first coordinate dimension is the z dimension.

[0115] It should be understood that the different syntax elements used to indicate the prediction mode of the motion vector of the current vertex in different coordinate dimensions do not mean that the prediction mode of the motion vector of the current vertex in each coordinate dimension can be the inter prediction mode. In the embodiments of the present application, whether the inter prediction mode is added in the candidate / optional / possible prediction mode of the motion vector of the current vertex in each coordinate dimension is not limited, and in general, it is only necessary to indicate that the prediction mode of the motion vector of the current vertex in one coordinate dimension is the inter prediction mode.

[0116] In addition, it should be further understood that the different syntax elements used to indicate the prediction mode of the motion vector of the current vertex in different coordinate dimensions can be different syntax elements or the same syntax element with different values.

[0117] In a possible implementation, the different syntax elements can be different syntax elements, that is, one syntax element is only valid for one coordinate dimension, and different syntax elements are used for different coordinate dimensions. For example, syntax element F is used to indicate the prediction mode of the motion vector of the current vertex in the x dimension, syntax element G is used to indicate the prediction mode of the motion vector of the current vertex in the y dimension, and syntax element H is used to indicate the prediction mode of the motion vector of the current vertex in the z dimension.

[0118] In another possible implementation, the different syntax elements can be different values of the same syntax element, that is, different values of the same syntax element correspond to different coordinate dimensions, and the value is used to indicate the prediction mode of the corresponding coordinate dimension. For example, the value of syntax element I is in a first value range, which is used to indicate the prediction mode of the motion vector of the current vertex in the x dimension, the value of syntax element I is in a second value range, which is used to indicate the prediction mode of the motion vector of the current vertex in the y dimension, and the value of syntax element I is in a third value range, which is used to indicate the prediction mode of the motion vector of the current vertex in the z dimension.

[0119] In step 1702, in the case where the prediction mode indicated by the first syntax element is the inter prediction mode, the motion vector reconstruction value of the current vertex in the first coordinate dimension is determined according to the motion vector reconstruction value of the inter prediction point of the current vertex in the first coordinate dimension, wherein the inter prediction point is a vertex in the base grid of the reference image.

[0120] In the embodiments of the present application, there is no limitation on which vertex or vertices in the base mesh of the reference image the inter-prediction point specifically refers to. In summary, the inter-prediction point can refer to a vertex in the base mesh of the reference image.

[0121] In some embodiments, the inter-prediction point includes the homonym of the current vertex in the base mesh of the reference image and / or at least one vertex in the base mesh of the reference image that has a connection relationship with the homonym.

[0122] In some embodiments, the homonym of the current vertex refers to a vertex in the base mesh of the reference image that has the same index as the current vertex. The homonym and the vertex in the base mesh of the reference image that has a connection relationship with the homonym can both be understood as a reference vertex or a reference frame neighbor point of the current vertex. The inter-prediction point of the current vertex can include all or part of the reference frame neighbor points of the current vertex. When the inter-prediction point of the current vertex includes part of the reference frame neighbor points of the current vertex, the part of the reference frame neighbor points can be the vertex in all the reference frame neighbor points of the current vertex that has a geometric distance to the homonym less than or equal to a first distance threshold, or the part of the reference frame neighbor points can also be the first K1 vertices in all the reference frame neighbor points of the current vertex that have the shortest geometric distance to the homonym, or the part of the reference frame neighbor points can also be the first K1 vertices in all the reference frame neighbor points of the current vertex that have a geometric distance to the homonym greater than or equal to a distance threshold and have the shortest geometric distance to the homonym; wherein K1 is greater than 0, or K1 is greater than 1.

[0123] In order to facilitate the understanding of the reference frame neighbor points, the following examples are given, but the examples should not limit the present application.

[0124] For an example in which one mesh in the base mesh is a triangular face, the reference frame neighbor points of each vertex can be determined according to the triangular face connection information of the base mesh. The reference frame neighbor points are the vertices in the base mesh of the reference frame / reference image that have a connection relationship with the homonym of the current vertex. For example, referring to FIG. 13 mentioned above, it is mentioned above that 1301 is the base mesh of the current frame / current image, and 1302 is the base mesh of the reference frame / reference image. As shown in FIG. 13, the reference frame neighbor points of vertex 17 in the base mesh 1301 are the vertices with indexes 17, 1, 11, 16, 18, 20 and 21 in the base mesh 1302 of the reference frame, and the reference frame neighbor points of vertex 19 in the base mesh 1301 are the vertices with indexes 19, 4, 5, 7, 8, 9 and 10 in the base mesh 1302 of the reference frame.

[0125] The homonym is a vertex in the base mesh of the reference frame that has the same index as the current vertex, and the homonym also belongs to the reference frame neighbor points. As shown in FIG. 13, the vertex 17 of the reference frame is the homonym of the vertex 17 of the current frame.

[0126] The inter-prediction point is composed of all reference frame neighbor points or partial reference frame neighbor points.

[0127] It should be understood that in actual application scenarios, there can be one or more inter-prediction points for a certain vertex of the base mesh of the current image.

[0128] For the step 1702, in the embodiments of the present application, the determination of the motion vector reconstruction value of the current vertex in the first coordinate dimension is not limited, and in general, in the inter-prediction mode, the data used to determine the motion vector reconstruction value of the current vertex in the first coordinate dimension at least includes the motion vector reconstruction value of the inter-prediction point in the first coordinate dimension.

[0129] Optionally, in some embodiments, as shown in FIG. 19, the step 1702 can be implemented by the following step 1901 and step 1902:

[0130] In the step 1901, the motion vector prediction value of the current vertex in the first coordinate dimension is determined according to the motion vector reconstruction value of the inter-prediction point in the first coordinate dimension.

[0131] In the embodiments of the present application, the further implementation method of the step 1901 is not limited, and different implementation methods can be understood as different inter-prediction modes. For example, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined by any one of the following inter-prediction mode 1 to inter-prediction mode 5.

[0132] In the inter-prediction mode 1, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the weighted average of the motion vector reconstruction value of the inter-prediction point in the first coordinate dimension.

[0133] For example, for the embodiment in which the first coordinate dimension is the x dimension, the motion vector prediction value P of the current vertex in the x dimension is equal to the weighted average of the motion vector reconstruction value of the inter-prediction point in the x dimension. x The following formula (1) is used to obtain the weighted average:

[0134] For example, for the embodiment in which the first coordinate dimension is the y dimension, the motion vector prediction value P of the current vertex in the y dimension is equal to the weighted average of the motion vector reconstruction value of the inter-prediction point in the y dimension. y The following formula (2) is used to obtain the weighted average:

[0135] For example, for an embodiment in which the first coordinate dimension is the x dimension, the motion vector prediction value P z is obtained by the following equation (4):

[0136] In the above equations (4)-(6), is the motion vector reconstruction value of the i-th inter prediction point of the current vertex in the x (y, z) dimension, and predCount is the number of inter prediction points of the current vertex. ix (w iy ,w iz ) is the weight coefficient of the i-th inter prediction point of the current vertex, w ix ,w iy ,w iz may be the same or different. predCount refers to the number of inter prediction points of the current vertex.

[0137] It should be understood that in the case where the number of inter prediction points of the current vertex is 1, predCount = 1, that is, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the weighted value of the motion vector reconstruction value of the 1 inter prediction point in the first coordinate dimension. The weighted value is also the weighted average value described in the inter prediction mode 1, except that the divisor is equal to 1.

[0138] wherein in the inter prediction mode 2, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average of the motion vector reconstruction values of the inter prediction points.

[0139] For example, for an embodiment in which the first coordinate dimension is the x dimension, the motion vector prediction value P x is obtained by the following equation (4):

[0140] For example, for an embodiment in which the first coordinate dimension is the y dimension, the motion vector prediction value P y is obtained by the following equation (5):

[0141] For example, for an embodiment in which the first coordinate dimension is the z dimension, the motion vector prediction value P z is obtained by the following equation (6):

[0142] In the above equations (4)-(6), is the motion vector reconstruction value of the i-th inter prediction point of the current vertex in the x (y, z) dimension, and predCount is the number of inter prediction points of the current vertex.

[0143] It should be understood that, in the case that the number of inter prediction points of the current vertex is 1, predCount = 1, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the motion vector reconstruction value of the 1 inter prediction point in the first coordinate dimension. That is, the average value in the inter prediction mode 2 is the motion vector reconstruction value of the 1 inter prediction point in the first coordinate dimension.

[0144] In the step 1901, the motion vector prediction value of the current vertex in the first coordinate dimension is determined according to the motion vector reconstruction value of the inter prediction point in the first coordinate dimension. In some embodiments, the step 1901 can be implemented by the following steps 2001 and 2002 as shown in FIG. 20.

[0145] In the step 2001, a first offset value is determined.

[0146] In the embodiments of the present application, the method for determining the first offset value is not limited. In some embodiments, the first offset value can be a predefined value, which can be obtained by decoding a code stream in one possible implementation, or obtained from stored information in another possible implementation.

[0147] In some other embodiments, the first offset value can also be determined according to the number of inter prediction points.

[0148] For example, in some embodiments, the first offset value is equal to the number of inter prediction points divided by a first numerical value. The first numerical value can be any value greater than 1. For example, the first numerical value is equal to 2, and the first offset value bias = predCount >> 1.

[0149] In the step 2002, the motion vector prediction value of the current vertex in the first coordinate dimension is determined according to the motion vector reconstruction value of the inter prediction point in the first coordinate dimension and the first offset value.

[0150] In the embodiments of the present application, the further implementation method of the step 2002 is not limited, and different implementation methods can be understood as different inter prediction modes. For example, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined by the following described inter prediction mode 3 or inter prediction mode 4.

[0151] In the inter prediction mode 3, the step 2002 can be implemented by determining the weight coefficients corresponding to the inter prediction points respectively, and determining the weighted values of the motion vector reconstruction values of the inter prediction points in the first coordinate dimension according to the weight coefficients of the inter prediction points, and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weighted values of the inter prediction points and the first offset value.

[0152] For the inter prediction mode 3, further, in some embodiments, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined according to the weighted values of the inter prediction points, the first offset value and the number of the inter prediction points.

[0153] For the inter prediction mode 3 or the above further embodiments, in one possible implementation, for the case that there is only one inter prediction point for the current vertex, the motion vector prediction value of the current vertex in the first coordinate dimension can be directly obtained according to the weighted value of the one inter prediction point and the first offset value, for example, the motion vector prediction value can be obtained by offsetting the weighted value of the one inter prediction point by the first offset value.

[0154] In the embodiments of the present application, the offset direction is not limited. For example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value obtained by offsetting the weighted value of the one inter prediction point to the left by the first offset value, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the weighted value of the one inter prediction point minus the first offset value. For another example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value obtained by offsetting the weighted value of the one inter prediction point to the right by the first offset value, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the weighted value of the one inter prediction point plus the first offset value.

[0155] For the inter prediction mode 3 or the above further embodiments, in another possible implementation, for the case that there are multiple inter prediction points for the current vertex, the motion vector prediction value of the current vertex in the first coordinate dimension can be obtained by calculation. For example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated values of the weighted values of the multiple inter prediction points offset by the first offset value.

[0156] In the embodiments of the present application, the offset direction is not limited. For example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the left by a first offset value, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points minus the first offset value after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the left by the first offset value. For another example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the right by a first offset value, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points plus the first offset value after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the right by the first offset value.

[0157] For example, for the embodiment in which the first coordinate dimension is the x dimension, the motion vector prediction value P of the current vertex in the x dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the left by a first offset value, i.e., the motion vector prediction value P of the current vertex in the x dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points minus the first offset value after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the left by the first offset value. x The following formula (7) is used to obtain the motion vector prediction value P of the current vertex in the x dimension:

[0158] For another example, for the embodiment in which the first coordinate dimension is the y dimension, the motion vector prediction value P of the current vertex in the y dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the left by a first offset value, i.e., the motion vector prediction value P of the current vertex in the y dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points minus the first offset value after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the left by the first offset value. y The following formula (8) is used to obtain the motion vector prediction value P of the current vertex in the y dimension:

[0159] For another example, for the embodiment in which the first coordinate dimension is the y dimension, the motion vector prediction value P of the current vertex in the y dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the left by a first offset value, i.e., the motion vector prediction value P of the current vertex in the y dimension is equal to the average value of the accumulated values of the weighted values of the plurality of inter prediction points minus the first offset value after the accumulated values of the weighted values of the plurality of inter prediction points are offset to the left by the first offset value. z The following formula (9) is used to obtain the motion vector prediction value P of the current vertex in the z dimension:

[0160] In the above formulas (7)-(9), bias refers to the first offset value, predx(i) is the motion vector reconstruction value of the i-th inter prediction point of the current vertex in the x (y, z) dimension; w ix (w iy ,w iz ) is the weight coefficient of the i-th inter prediction point of the current vertex, w ix ,w iy ,w iz may be the same or different; and predCount refers to the number of inter prediction points of the current vertex.

[0161] It should be understood that when the number of inter prediction points of the current vertex is 1, predCount = 1, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value of the motion vector reconstruction value of the 1 inter prediction point in the first coordinate dimension after the motion vector reconstruction value of the 1 inter prediction point in the first coordinate dimension is offset to the right by a first offset value.

[0162] In the embodiments of the present application, for the weight coefficients of the inter prediction points mentioned in the inter prediction mode 1 and the inter prediction mode 3, the determination method of the weight coefficients is not limited, which can be a predefined value, can be determined according to the decoding order, or can be determined according to the distance between the inter prediction point and the collocated point, for example, the smaller the distance between the inter prediction point and the collocated point, the greater the weight coefficient of the inter prediction point.

[0163] For the step 2002, the "determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the inter prediction point in the first coordinate dimension and the first offset value", in the inter prediction mode 4, it can be implemented as follows: determining a first accumulated value of the motion vector reconstruction value of the inter prediction point in the first coordinate dimension; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the first accumulated value and the first offset value.

[0164] For the inter prediction mode 4, further, in some embodiments, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined according to the first accumulated value, the first offset value and the number of the inter prediction points.

[0165] For the inter prediction mode 4 or the above further embodiments, in a possible implementation, for the case that there is only one inter prediction point for the current vertex, the motion vector prediction value of the current vertex in the first coordinate dimension can be directly obtained according to the motion vector reconstruction value of the one inter prediction point in the first coordinate dimension and the first offset value, that is, the motion vector prediction value can be obtained by offsetting the motion vector reconstruction value of the one inter prediction point in the first coordinate dimension by the first offset value.

[0166] In the embodiments of the present application, the offset direction is not limited. For example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value obtained by offsetting the motion vector reconstruction value of the one inter prediction point in the first coordinate dimension to the left by the first offset value, that is, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the motion vector reconstruction value of the one inter prediction point in the first coordinate dimension minus the first offset value. For another example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value obtained by offsetting the motion vector reconstruction value of the one inter prediction point in the first coordinate dimension to the right by the first offset value, that is, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the accumulated value of the motion vector reconstruction value of the one inter prediction point in the first coordinate dimension and the first offset value.

[0167] For inter prediction mode 4 or the further embodiments described above, in another possible implementation, for the case that there are multiple inter prediction points for the current vertex, the motion vector predictor of the current vertex in the first coordinate dimension can be calculated. For example, the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the motion vector reconstructed values of the multiple inter prediction points in the first coordinate dimension after the accumulated values are shifted by the first offset value.

[0168] In the embodiments of the present application, the offset direction is not limited. For example, the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the motion vector reconstructed values of the multiple inter prediction points in the first coordinate dimension after the accumulated values are shifted to the left by the first offset value, i.e., the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the motion vector reconstructed values of the multiple inter prediction points in the first coordinate dimension minus the first offset value. For another example, the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the motion vector reconstructed values of the multiple inter prediction points in the first coordinate dimension after the accumulated values are shifted to the right by the first offset value, i.e., the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the motion vector reconstructed values of the multiple inter prediction points in the first coordinate dimension plus the first offset value.

[0169] For example, for the embodiment in which the first coordinate dimension is the x dimension, the motion vector predictor P x The following formula (10) is used to obtain the motion vector predictor P

[0170] For another example, for the embodiment in which the first coordinate dimension is the y dimension, the motion vector predictor P y The following formula (11) is used to obtain the motion vector predictor P

[0171] For another example, for the embodiment in which the first coordinate dimension is the y dimension, the motion vector predictor P z The following formula (12) is used to obtain the motion vector predictor P

[0172] In the above formulas (10)-(12), bias refers to the first offset value, predx(i) is the motion vector reconstructed value of the i-th inter prediction point of the current vertex in the x (y, z) dimension; and predCount refers to the number of inter prediction points of the current vertex.

[0173] It should be understood that, in the case that the number of inter prediction points of the current vertex is 1, predCount = 1, that is, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value of the motion vector reconstruction value of the 1 inter prediction point in the first coordinate dimension after the 1 inter prediction point is right-shifted by a first offset value.

[0174] In the inter prediction mode 5, the inter prediction point is the collocated point, and the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the motion vector reconstruction value of the collocated point.

[0175] In step 1902, the motion vector reconstruction value of the current vertex in the first coordinate dimension is determined according to the motion vector prediction value of the current vertex in the first coordinate dimension.

[0176] In some embodiments, the decoding method further comprises: decoding the code stream to determine the motion vector decoding value of the current vertex in the first coordinate dimension. For step 1902, further, in some embodiments, it can be implemented in the following manner: the motion vector reconstruction value of the current vertex in the first coordinate dimension is determined according to the motion vector decoding value of the current vertex in the first coordinate dimension and the motion vector prediction value.

[0177] In some embodiments, the motion vector decoding value of the current vertex in the first coordinate dimension carried in the code stream can be a motion vector residual value (i.e., a prediction residual) of the current vertex in the first coordinate dimension. The residual value can be a quantized residual value or an unquantized residual value. For the former case, the motion vector decoding of the current vertex in the first coordinate dimension is dequantized, and the motion vector reconstruction value of the current vertex in the first coordinate dimension is determined according to the dequantized motion vector decoding value and the motion vector prediction value of the current vertex in the first coordinate dimension. For example, the motion vector reconstruction value is equal to the sum of the dequantized motion vector decoding value and the motion vector prediction value. For the case that the motion vector decoding value is an unquantized residual value, the motion vector reconstruction value is equal to the sum of the motion vector decoding value and the motion vector prediction value.

[0178] In step 1801, in the case that the prediction mode indicated by the first syntax element is an intra prediction mode, an intra prediction point of the current vertex in the base grid of the current image is determined; wherein the intra prediction point comprises at least one vertex in the base grid of the current image that has a connection relationship with the current vertex and is in a decoding order before the current vertex.

[0179] In the embodiments of the present application, it is not limited to which vertex or vertices in the base grid of the current image the intra prediction point is, as long as the intra prediction point is a vertex in the base grid of the current image.

[0180] In some embodiments, the intra-prediction point can be all vertices in the base mesh of the current image that have a connection relationship with the current vertex and have a decoding order before the current vertex.

[0181] In other embodiments, the intra-prediction point can also be part of the vertices in the base mesh of the current image that have a connection relationship with the current vertex and have a decoding order before the current vertex. For embodiments in which the intra-prediction point is part of the vertices, further, in some embodiments, the part of the vertices can be vertices in the all vertices that have a geometric distance from the current vertex less than or equal to a second distance threshold, or the part of the vertices can also be the first K2 vertices in the all vertices that have a geometric distance from the current vertex, or the part of the vertices can also be the first K2 vertices in the all vertices that have a geometric distance from the current vertex greater than or equal to the second distance threshold and have a geometric distance from the current vertex; wherein K2 is greater than 0, or K2 is greater than 1. It should be understood that the all vertices referred to herein refer to all vertices in the base mesh of the current image that have a connection relationship with the current vertex and have a decoding order before the current vertex.

[0182] For understanding of the intra-prediction point, reference can also be made to the example shown in FIG. 16, and the description related to FIG. 16.

[0183] It should be understood that in actual application scenarios, there can be only one intra-prediction point for a vertex of the base mesh of the current image, or there can be multiple intra-prediction points.

[0184] In step 1802, the motion vector reconstruction value of the current vertex in the first coordinate dimension is determined according to the motion vector reconstruction value of the intra-prediction point in the first coordinate dimension.

[0185] It should be noted that the further implementation method of step 1802 is not limited, in general, in the intra-prediction mode, the data used to determine the motion vector reconstruction value of the current vertex in the first coordinate dimension at least includes the motion vector reconstruction value of the intra-prediction point in the first coordinate dimension.

[0186] Optionally, in some embodiments, as shown in FIG. 21, step 1802 can be implemented by the following steps 2101 to 2102:

[0187] In step 2101, the motion vector prediction value of the current vertex in the first coordinate dimension is determined according to the motion vector reconstruction value of the intra-prediction point in the first coordinate dimension.

[0188] In the embodiments of the present application, the further implementation method of step 2101 is not limited, and different implementation methods can be understood as different intra prediction modes. For example, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined by any one of the following intra prediction mode 1 to intra prediction mode 4.

[0189] For example, in the intra prediction mode 1, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the weighted average of the motion vector reconstruction values of the intra prediction points.

[0190] For example, in the embodiment in which the first coordinate dimension is the x dimension, the motion vector prediction value P of the current vertex in the x dimension is equal to the weighted average of the motion vector reconstruction values of the intra prediction points. x The following formula (13) is used to obtain the weighted average:

[0191] For example, in the embodiment in which the first coordinate dimension is the y dimension, the motion vector prediction value P of the current vertex in the y dimension is equal to the weighted average of the motion vector reconstruction values of the intra prediction points. y The following formula (14) is used to obtain the weighted average:

[0192] For example, in the embodiment in which the first coordinate dimension is the z dimension, the motion vector prediction value P of the current vertex in the z dimension is equal to the weighted average of the motion vector reconstruction values of the intra prediction points. z The following formula (15) is used to obtain the weighted average:

[0193] In the above formulas (13)-(15), is the motion vector reconstruction value of the i th intra prediction point of the current vertex in the x (y, z) dimension, w ix (w iy ,w iz is the weight coefficient of the i th intra prediction point of the current vertex, w ix ,w iy ,w iz may be the same or different. predCount refers to the number of intra prediction points of the current vertex.

[0194] It should be understood that in the case where the number of intra prediction points of the current vertex is 1, predCount = 1, that is, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the weighted value of the motion vector reconstruction value of the 1 intra prediction point in the first coordinate dimension, and the weighted value is actually the weighted average value in the intra prediction mode 1, except that the denominator is equal to 1.

[0195] For example, in the intra prediction mode 2, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average of the motion vector reconstruction values of the intra prediction points.

[0196] For example, for the embodiment in which the first coordinate dimension is the x dimension, the motion vector prediction value P of the current vertex in the x dimension is obtained by the following formula (16) x is obtained by the following formula (16)

[0197] For example, for the embodiment in which the first coordinate dimension is the y dimension, the motion vector prediction value P of the current vertex in the y dimension is obtained by the following formula (17) y is obtained by the following formula (17)

[0198] For example, for the embodiment in which the first coordinate dimension is the z dimension, the motion vector prediction value P of the current vertex in the z dimension is obtained by the following formula (18) z is obtained by the following formula (18)

[0199] In the above formulas (16)-(18), is the motion vector reconstruction value of the i-th intra prediction point of the current vertex in the x (y, z) dimension, and predCount refers to the number of intra prediction points of the current vertex.

[0200] It should be understood that, in the case where the number of intra prediction points of the current vertex is 1, predCount = 1, that is, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the motion vector reconstruction value of the 1 intra prediction point in the first coordinate dimension, that is, the average value in the intra prediction mode 2 is the motion vector reconstruction value of the 1 intra prediction point in the first coordinate dimension.

[0201] For the step 2101 of determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension, further, in some other embodiments, the step 2101 can be implemented as follows: determining a second offset value; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value.

[0202] In the embodiments of the present application, the method for determining the second offset value is not limited. In some embodiments, the second offset value can be a predefined value, which can be obtained by decoding a code stream in one possible implementation, or obtained from stored information in another possible implementation.

[0203] In some other embodiments, the second offset value can also be determined as follows: determining the second offset value according to the number of intra prediction points.

[0204] Exemplarily, in some embodiments, the second offset value is equal to the number of intra-prediction points divided by a second numerical value. The second numerical value can be any value greater than 1. For example, the second numerical value is equal to 2, and the second offset value bias = predCount » 1.

[0205] In embodiments of the present application, different implementation methods for determining the motion vector prediction value of the current vertex in the first coordinate dimension based on the second offset value can be understood as different intra-prediction modes. For example, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined by intra-prediction mode 3 or intra-prediction mode 4 described as follows.

[0206] In the intra-prediction mode 3, the motion vector prediction value can be determined as follows: determining the weight coefficients corresponding to the intra-prediction points respectively; and determining the weighted values of the reconstructed motion vector values of the corresponding intra-prediction points in the first coordinate dimension according to the weight coefficients of the intra-prediction points; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weighted values of the intra-prediction points and the second offset value.

[0207] For the intra-prediction mode 3, further, in some embodiments, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined according to the weighted values of the intra-prediction points, the second offset value and the number of intra-prediction points.

[0208] For the intra-prediction mode 3 or the above further embodiments, in a possible implementation, for the case that there is only one intra-prediction point for the current vertex, the motion vector prediction value of the current vertex in the first coordinate dimension can be directly obtained according to the weighted value of the one intra-prediction point and the second offset value, for example, the motion vector prediction value can be obtained by offsetting the weighted value of the one intra-prediction point by the second offset value.

[0209] In embodiments of the present application, the offset direction is not limited. For example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value obtained by offsetting the weighted value of the one intra-prediction point to the left by the second offset value, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the weighted value of the one intra-prediction point minus the second offset value. For another example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value obtained by offsetting the weighted value of the one intra-prediction point to the right by the second offset value, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the weighted value of the one intra-prediction point plus the second offset value.

[0210] For the intra prediction mode 3 or the further embodiment described above, in another possible implementation, for the case that there are multiple intra prediction points for the current vertex, the motion vector predictor of the current vertex in the first coordinate dimension can be calculated. For example, the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the weighted values of the multiple intra prediction points after the second offset value is offset to the left. In another example, the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the weighted values of the multiple intra prediction points after the second offset value is offset to the right.

[0211] In the embodiments of the present application, the offset direction is not limited. For example, the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the weighted values of the multiple intra prediction points after the second offset value is offset to the left, i.e., the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the weighted values of the multiple intra prediction points minus the second offset value. In another example, the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the weighted values of the multiple intra prediction points after the second offset value is offset to the right, i.e., the motion vector predictor of the current vertex in the first coordinate dimension is equal to the average of the accumulated values of the weighted values of the multiple intra prediction points plus the second offset value.

[0212] For example, for the embodiment in which the first coordinate dimension is the x dimension, the motion vector predictor P x is obtained by the following formula (19):

[0213] For example, for the embodiment in which the first coordinate dimension is the y dimension, the motion vector predictor P y is obtained by the following formula (20):

[0214] For example, for the embodiment in which the first coordinate dimension is the z dimension, the motion vector predictor P z is obtained by the following formula (21):

[0215] In the above formulas (19)-(21), bias refers to the second offset value, is the motion vector reconstruction value of the i-th intra prediction point of the current vertex in the x (y, z) dimension; w ix (w iy ,w iz is the weight coefficient of the i-th intra prediction point of the current vertex, w ix ,w iy ,w iz may be the same or different; predCount refers to the number of intra prediction points of the current vertex.

[0216] It should be understood that, in the case that the number of the intra-prediction points of the current vertex is 1, predCount = 1, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value of the motion vector reconstruction value of the 1 intra-prediction point in the first coordinate dimension after the 1 intra-prediction point is right-shifted by the second offset value.

[0217] In the embodiments of the present application, for the weight coefficients of the intra-prediction points mentioned in the intra-prediction mode 1 and the intra-prediction mode 3, the determination method of the weight coefficients is not limited, which can be a predefined value, or can be determined according to the decoding order, or can be determined according to the distance between the intra-prediction point and the current vertex, for example, the smaller the distance between the intra-prediction point and the current vertex, the greater the weight coefficient of the intra-prediction point.

[0218] In the intra-prediction mode 4, the motion vector prediction value can be determined as follows: a second accumulated value of the motion vector reconstruction value of the intra-prediction point in the first coordinate dimension is determined; and the motion vector prediction value of the current vertex in the first coordinate dimension is determined according to the second accumulated value and the second offset value.

[0219] For the intra-prediction mode 4, further, in some embodiments, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined according to the second accumulated value, the second offset value and the number of the intra-prediction points.

[0220] For the intra-prediction mode 4 or the above further embodiments, in a possible implementation, in the case that the number of the intra-prediction points of the current vertex is 1, the motion vector prediction value of the current vertex in the first coordinate dimension can be directly obtained according to the motion vector reconstruction value of the 1 intra-prediction point in the first coordinate dimension and the second offset value, for example, the motion vector prediction value is obtained by shifting the motion vector reconstruction value of the 1 intra-prediction point in the first coordinate dimension by the second offset value.

[0221] In the embodiments of the present application, the offset direction is not limited. For example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value of the motion vector reconstruction value of the 1 intra-prediction point in the first coordinate dimension after the 1 intra-prediction point is left-shifted by the second offset value, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the motion vector reconstruction value of the 1 intra-prediction point in the first coordinate dimension minus the second offset value. For another example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value of the motion vector reconstruction value of the 1 intra-prediction point in the first coordinate dimension after the 1 intra-prediction point is right-shifted by the second offset value, i.e., the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the accumulated value of the motion vector reconstruction value of the 1 intra-prediction point in the first coordinate dimension and the second offset value.

[0222] For intra-frame prediction mode 4 or the above further embodiments, in another possible implementation, when there are multiple intra-frame prediction points for the current vertex, a motion vector prediction value of the current vertex in the first coordinate dimension can be obtained by calculation. For example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated motion vector reconstructed values ​​of the multiple intra-frame prediction points in the first coordinate dimension after being offset by the second offset value.

[0223] In the embodiment of the present application, there is no restriction on the offset direction. For example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated value of the motion vector reconstruction values ​​of the multiple intra-frame prediction points in the first coordinate dimension offset to the left by the second offset value, that is, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated value of the motion vector reconstruction values ​​of the multiple intra-frame prediction points in the first coordinate dimension minus the second offset value. For another example, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated value of the motion vector reconstruction values ​​of the multiple intra-frame prediction points in the first coordinate dimension offset to the right by the second offset value, that is, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the average value of the accumulated value of the motion vector reconstruction values ​​of the multiple intra-frame prediction points in the first coordinate dimension plus the second offset value.

[0224] For example, in an embodiment where the first coordinate dimension is the x dimension, the motion vector prediction value P of the current vertex in the x dimension is x It is obtained by the following formula (22):

[0225] For another example, in the embodiment where the first coordinate dimension is the y dimension, the motion vector prediction value P of the current vertex in the y dimension is y It is obtained by the following formula (23):

[0226] For another example, in the embodiment where the first coordinate dimension is the z dimension, the motion vector prediction value P of the current vertex in the z dimension is z It is obtained by the following formula (24):

[0227] In the above formulas (22)-(24), bias refers to the second offset value, The motion vector reconstruction value of the i-th intra-frame prediction point of the current vertex in the x (y, z) dimension; predCount refers to the number of intra-frame prediction points of the current vertex.

[0228] It should be understood that, in the case that the number of the intra-prediction points of the current vertex is 1, predCount = 1, that is, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the value of the motion vector reconstruction value of the 1 intra-prediction point in the first coordinate dimension after the 1 intra-prediction point in the first coordinate dimension is right-shifted by a second offset value.

[0229] In step 2102, the motion vector reconstruction value of the current vertex in the first coordinate dimension is determined according to the motion vector prediction value of the current vertex in the first coordinate dimension.

[0230] For further implementation methods of step 2102, refer to the further implementation methods of step 1902 described above, which will not be repeated here.

[0231] It should be understood that the above describes the prediction mode of the motion vector of the current vertex in the first coordinate dimension, and different prediction modes determine the motion vector reconstruction value of the current vertex in the first coordinate dimension. After obtaining the motion vector reconstruction value, in some embodiments, the coordinate reconstruction value of the current vertex in the first coordinate dimension can be determined as follows: determining a homonymic point of the current vertex in the base grid of the reference image; wherein the homonymic point refers to a vertex having the same index as the current vertex in the base grid of the reference image; and determining the coordinate reconstruction value of the current vertex in the first coordinate dimension according to the coordinate reconstruction value of the homonymic point in the first coordinate dimension and the motion vector reconstruction value of the current vertex in the first coordinate dimension. For example, the coordinate reconstruction value of the current vertex in the first coordinate dimension is equal to the cumulative value of the coordinate reconstruction value of the homonymic point in the first coordinate dimension and the motion vector reconstruction value of the current vertex in the first coordinate dimension.

[0232] It is mentioned above that the first syntax element is used to indicate the prediction mode of the motion vector of the current vertex in the first coordinate dimension. For example, the prediction mode indicated by the first syntax element can be an inter-prediction mode, or the prediction mode indicated by the first syntax element can also be an intra-prediction mode, etc. In the embodiments of the present application, the first syntax element can at least indicate an inter-prediction mode. In the embodiments of the present application, there is no limitation on whether the first syntax element specifically indicates which inter-prediction mode.

[0233] Optionally, in the case that the first syntax element specifically indicates which inter-prediction mode, in some embodiments, the first syntax element can indicate only one inter-prediction mode, that is, only one value of the value of the first syntax element indicates the enabled inter-prediction mode, for example, the inter-prediction mode indicated by the value can be any one of the inter-prediction modes 1-5 mentioned above.

[0234] Of course, for the scheme in which the first syntax element specifically indicates which inter prediction mode, in some other embodiments, the inter prediction modes that the first syntax element can indicate can also be multiple, different inter prediction modes are indicated by different values of the first syntax element, that is, there are multiple values of the first syntax element for indicating the inter prediction mode. For example, the multiple values can respectively indicate all of the inter prediction modes 1-5, for example, the multiple values are a first value, a second value, a third value, a fourth value and a fifth value, wherein the first syntax element is equal to the first value, which indicates the inter prediction mode 1, the first syntax element is equal to the second value, which indicates the inter prediction mode 2, the first syntax element is equal to the third value, which indicates the inter prediction mode 3, the first syntax element is equal to the fourth value, which indicates the inter prediction mode 4, and the first syntax element is equal to the fifth value, which indicates the inter prediction mode 5. The multiple values can also respectively indicate part of the inter prediction modes 1-5, and the part of the inter prediction modes can be any at least two of the inter prediction modes 1-5.

[0235] Optionally, for the scheme in which the first syntax element does not specifically indicate which inter prediction mode, in some embodiments, the inter prediction mode of the motion vector of the current vertex in the first coordinate dimension can be specifically indicated by a second syntax element. That is, in some embodiments, the decoding method further includes: decoding the code stream to determine a second syntax element, the second syntax element being used to indicate the inter prediction mode of the motion vector of the current vertex in the first coordinate dimension.

[0236] Further, in some embodiments, the second syntax element can indicate only one inter prediction mode, that is, only one of the values of the second syntax element indicates the enabled inter prediction mode, for example, the inter prediction mode indicated by the value can be any one of the inter prediction modes 1-5 mentioned above.

[0237] Of course, for the scheme in which the second syntax element specifically indicates which inter prediction mode, in some other embodiments, the inter prediction modes that the second syntax element can indicate can also be multiple, different inter prediction modes are indicated by different values of the second syntax element, that is, there are multiple values of the second syntax element for indicating the inter prediction mode. For example, the multiple values can respectively indicate all of the inter prediction modes 1-5, the multiple values can also respectively indicate part of the inter prediction modes 1-5, and the part of the inter prediction modes can be any at least two of the inter prediction modes 1-5.

[0238] It should be noted that the inter prediction mode described in the embodiments of the present application is not limited to at least one of the above inter prediction mode 1 to inter prediction mode 5, and the inter prediction mode indicated by the value of the first syntax element or the second syntax element can also be other inter prediction modes different from the inter prediction mode 1 to 5. In summary, for the decoding end, the method of determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the inter prediction point of the current vertex in the first coordinate dimension is called an inter prediction mode, as long as the inter prediction point is a vertex in the basic grid of the reference image. For the encoding end, the method of determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the inter prediction point of the current vertex in the first coordinate dimension is called an inter prediction mode, as long as the inter prediction point is a vertex in the basic grid of the reference image.

[0239] Similarly, in the embodiments of the present application, whether the first syntax element specifically indicates which intra prediction mode is not limited. Alternatively, in the scheme in which the first syntax element specifically indicates which intra prediction mode, in some embodiments, the first syntax element can indicate only one intra prediction mode, that is, only one value of the value of the first syntax element indicates the enabled intra prediction mode, for example, the value indicates any one of the above-mentioned intra prediction mode 1-4.

[0240] Of course, in the scheme in which the first syntax element specifically indicates which intra prediction mode, in other embodiments, the first syntax element can also indicate multiple intra prediction modes, and different values of the first syntax element indicate different intra prediction modes, that is, the value of the first syntax element for indicating the intra prediction mode has multiple values. For example, the multiple values respectively indicate all of the intra prediction modes 1-4, for example, the multiple values are the sixth value, the seventh value, the eighth value and the ninth value, wherein the first syntax element equal to the sixth value indicates the intra prediction mode 1, the first syntax element equal to the seventh value indicates the intra prediction mode 2, the first syntax element equal to the eighth value indicates the intra prediction mode 3, and the first syntax element equal to the ninth value indicates the intra prediction mode 4. For another example, the multiple values respectively indicate part of the intra prediction modes 1-4, and the part of the intra prediction modes can be any at least two of the intra prediction modes 1-4.

[0241] Optionally, in the scheme where the first syntax element does not specifically indicate which intra prediction mode, in some embodiments, the intra prediction mode of the motion vector of the current vertex in the first coordinate dimension can be specifically indicated by a third syntax element. That is, in some embodiments, the decoding method further includes: decoding the code stream to determine a third syntax element, the third syntax element being used to indicate the intra prediction mode of the motion vector of the current vertex in the first coordinate dimension.

[0242] Further, in some embodiments, the third syntax element can indicate only one intra prediction mode, that is, only one of the values of the third syntax element indicates the intra prediction mode, for example, the intra prediction mode indicated by the value can be any one of the aforementioned intra prediction modes 1-4.

[0243] Of course, in the scheme where the third syntax element specifically indicates which intra prediction mode, in other embodiments, the third syntax element can also indicate multiple intra prediction modes, different values of the third syntax element indicate different intra prediction modes, that is, the third syntax element has multiple values for indicating the intra prediction mode. For example, the multiple values can indicate all of the intra prediction modes 1-4, for example, the multiple values are a sixth value, a seventh value, an eighth value and a ninth value, wherein the third syntax element is equal to the sixth value, which indicates the intra prediction mode 1, the third syntax element is equal to the seventh value, which indicates the intra prediction mode 2, the third syntax element is equal to the eighth value, which indicates the intra prediction mode 3, and the third syntax element is equal to the ninth value, which indicates the intra prediction mode 4. For another example, the multiple values can also indicate part of the intra prediction modes 1-4, and the part of the intra prediction modes can be any at least two of the intra prediction modes 1-4.

[0244] It should be noted that the intra prediction mode described in the embodiments of the present application is not limited to at least one of the aforementioned intra prediction modes 1-4, and the value of the first syntax element or the third syntax element can also indicate an intra prediction mode other than the intra prediction modes 1-4. In summary, for the decoding end, the method of determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point of the current vertex in the first coordinate dimension is called an intra prediction mode, as long as the intra prediction point is a vertex in the basic grid of the current image. For the encoding end, the method of determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point of the current vertex in the first coordinate dimension is called an intra prediction mode, as long as the intra prediction point is a vertex in the basic grid of the current image.

[0245] In the embodiments of the present application, it is not limited whether the first syntax element is valid for one vertex or multiple vertices. In some embodiments, the first syntax element is used to indicate the prediction mode of the motion vector of the current group in the first coordinate dimension; the current group is a group of vertices in the base mesh of the current image, and the current vertex belongs to the current group. That is, in the coding method of the embodiments of the present application, the prediction mode can be indicated in a group unit, the first syntax element is valid for the first coordinate dimension of all vertices of the current group, and the prediction mode of the motion vector of all vertices of the current group in the first coordinate dimension is the same, which is indicated by the first syntax element.

[0246] Similarly, in the embodiments of the present application, it is not limited whether the second syntax element or the third syntax element is valid for one vertex or multiple vertices. The second syntax element and the third syntax element can follow the first syntax element, for example, which indicate the prediction mode of the same group.

[0247] For any of the embodiments of the above-described decoding method, further, in some embodiments, the steps of the decoding method described above (here referring to the steps described in any of the above-described decoding embodiments or the steps described in the combined method of any at least two decoding embodiments) are performed on the current vertex in the case that the base mesh of the current image and the base mesh of the reference image of the current image use inter-decoding mode.

[0248] In some embodiments, the base mesh of the current image and the base mesh of the reference image of the current image use inter-decoding mode, which is frame-level inter-decoding mode, and compared with the frame-level intra-decoding mode, the decoding processing object of the former is the motion vector of the geometry coordinate of the vertex of the base mesh. For example, the motion vector residual value (via quantization processing or unquantized) of the vertex can be carried in the code stream, the original value (via quantization or unquantization) of the motion vector of the vertex can also be carried in the code stream, or if the syntax element (such as syntax element B) indicates that the motion vector of the current vertex or the current group is skipped encoding, the motion vector information of the current vertex or the current group is not carried in the code stream, and the reconstructed value of the motion vector of each point in the current vertex or the current group (such as N points in total) is (0, 0, 0).

[0249] In some embodiments, the above-described decoding method further comprises: decoding the code stream to determine a fourth syntax element; wherein the fourth syntax element is used to indicate whether the base mesh of the current image uses inter-decoding mode.

[0250] ​Embodiments of the encoding method related to the decoding method described above and further or additional embodiments are described as follows.

[0251] The embodiments of the present application provide an encoding method, and Fig. 22 is a schematic diagram of an implementation process of the encoding method provided by the embodiments of the present application. As shown in Fig. 22, the encoding method comprises the following steps 2201 to 2203.

[0252] In step 2201, a prediction mode of a motion vector of a current vertex in a first coordinate dimension is determined from candidate prediction modes of the motion vector of the current vertex in the first coordinate dimension, wherein the candidate prediction modes comprise an inter prediction mode; and the current vertex is a vertex in a base mesh of a current image.

[0253] In step 2202, a first syntax element is determined according to the prediction mode, wherein the first syntax element is used to indicate the prediction mode of the motion vector of the current vertex in the first coordinate dimension; and the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements.

[0254] In step 2203, the first syntax element is written into a bitstream.

[0255] In the embodiments of the present application, an encoding method is provided, in which the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; the inter prediction mode is added to the candidate prediction modes of the motion vector of the current vertex in the first coordinate dimension, that is, the inter prediction mode is added to the candidate prediction modes in a single coordinate dimension; the prediction mode of the motion vector of the current vertex in the first coordinate dimension can hit the inter prediction mode, and the prediction mode indicated by the first syntax element written into the bitstream can be the inter prediction mode; thus, it is beneficial for the decoding end to improve the accuracy of the reconstructed value of the motion vector of the current vertex in the first coordinate dimension, thereby enhancing the decoding performance.

[0256] In step 2201, the prediction modes comprised in the candidate prediction modes are not limited, in summary, the candidate prediction modes at least comprise the inter prediction mode, which can be one prediction mode or multiple prediction modes. For example, the candidate prediction modes comprise at least one of the aforementioned inter prediction modes 1-5. In some embodiments, the candidate prediction modes further comprise an intra prediction mode and / or a non-prediction mode, which can be one prediction mode or multiple prediction modes. For example, the candidate prediction modes comprise at least one of the aforementioned intra prediction modes 1-4.

[0257] For step 2201, the "determining the prediction mode of the motion vector of the current vertex in the first coordinate dimension from the candidate prediction modes of the motion vector of the current vertex in the first coordinate dimension", in some embodiments, for the encoding of the motion vector of the current vertex in the first coordinate dimension, a rate-distortion optimization algorithm can be employed to determine the rate-distortion cost of each candidate prediction mode, and the candidate prediction mode with the minimum rate-distortion cost can be selected as the prediction mode of the motion vector of the current vertex in the first coordinate dimension, which can be an inter prediction mode or other prediction mode.

[0258] In some embodiments, the decoding method shown in FIG. 22 further includes: in the case where the prediction mode is the inter prediction mode, determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point of the current vertex in the first coordinate dimension, wherein the inter prediction point is a vertex in the base grid of a reference image; and writing the motion vector residual value of the current vertex in the first coordinate dimension into the bitstream. For the convenience of description, this embodiment will be referred to as Embodiment 1 hereinafter.

[0259] For Embodiment 1, further, in some embodiments, the inter prediction point includes the homonymic point of the current vertex in the base grid of the reference image and / or at least one vertex in the base grid of the reference image that has a connection relationship with the homonymic point.

[0260] It should be understood that, in Embodiment 1, the inter prediction mode is added to the candidate prediction modes of the motion vector of the current vertex in the first coordinate dimension, that is, the inter prediction mode is added to the candidate prediction modes in a single coordinate dimension; in this way, it is beneficial to reduce the size of the motion vector residual value of the current vertex in the first coordinate dimension, thereby saving the code word overhead at the encoding end and improving the code rate.

[0261] In Embodiment 1, the motion vector residual value of the current vertex in the first coordinate dimension written into the bitstream can be a residual value after quantization processing or a residual value without quantization processing.

[0262] In some embodiments, for step 2201, in order to select the prediction mode of the motion vector of the current vertex in the first coordinate dimension from the candidate prediction modes, a rate-distortion optimization algorithm needs to be employed to determine the rate-distortion cost of each candidate prediction mode. Therefore, for the inter prediction mode, in the process of determining the rate-distortion cost, the motion vector residual value of the current vertex in the first coordinate dimension needs to be determined. Therefore, in Embodiment 1, the determination of the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point of the current vertex in the first coordinate dimension can be obtained in the process of further implementing step 2201.

[0263] In Embodiment 1, for the step of “determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point of the current vertex in the first coordinate dimension”, in some embodiments, it can be implemented as follows: determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension; and determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension. For the convenience of description, this embodiment will be referred to as Embodiment 2 below, but Embodiment 2 should not be understood as a parallel embodiment of Embodiment 1, and Embodiment 2 is a further embodiment of one step in Embodiment 1.

[0264] In this embodiment 2, for the step of “determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension”, in the embodiments of the present application, the further implementation method of the motion vector prediction value is not limited, and different implementation methods can be understood as different inter prediction modes. For example, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined by any one of the five inter prediction modes described above, i.e., inter prediction mode 1 to inter prediction mode 5. For specific descriptions of inter prediction mode 1 to inter prediction mode 5, please refer to the descriptions above, which will not be repeated here.

[0265] Of course, the inter prediction mode described in the embodiments of the present application is not limited to at least one of the above-mentioned inter prediction mode 1 to inter prediction mode 5, and the inter prediction mode described in the embodiments of the present application can also include other inter prediction modes different from inter prediction mode 1 to 5. In summary, for the decoding end, the method of determining the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point of the current vertex in the first coordinate dimension is all called inter prediction mode, as long as the inter prediction point is a vertex in the basic grid of the reference image. For the encoding end, the method of determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point of the current vertex in the first coordinate dimension is all called inter prediction mode, as long as the inter prediction point is a vertex in the basic grid of the reference image.

[0266] In some embodiments, the above-mentioned encoding method further comprises: writing a second syntax element into the bitstream, the second syntax element being used to indicate the inter prediction mode of the motion vector of the current vertex in the first coordinate dimension.

[0267] In some embodiments, the first syntax element is used to indicate a prediction mode of a motion vector of a current group in a first coordinate dimension; the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group.

[0268] In some embodiments, the first syntax element is used to indicate a prediction mode of a motion vector of a current group in a first coordinate dimension; the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group.

[0269] It should be noted that the understanding of the second syntax element and the first syntax element of the encoding end and further embodiments are understood by referring to the description of the decoding end in the foregoing embodiments, which will not be repeated here.

[0270] As mentioned above, in some embodiments, the candidate prediction modes in step 2201 further include an intra prediction mode, which can be one or more than one. For example, the candidate prediction modes include at least one of the intra prediction modes 1-4 mentioned above. The selected prediction mode based on the rate-distortion cost can be an intra prediction mode.

[0271] In some embodiments, the encoding method further includes: in the case that the prediction mode is an intra prediction mode, determining an intra prediction vertex of the current vertex in the base mesh of the current image; wherein the intra prediction vertex includes at least one vertex in the base mesh of the current image that has a connection relationship with the current vertex and is in front of the current vertex in decoding order; determining a motion vector residual value of the current vertex in the first coordinate dimension based on a motion vector reconstructed value of the intra prediction vertex in the first coordinate dimension; and writing the motion vector residual value of the current vertex in the first coordinate dimension into a bitstream. For the convenience of description, this embodiment will be referred to as embodiment 3 hereinafter.

[0272] In embodiment 3, the motion vector residual value of the current vertex in the first coordinate dimension written into the bitstream can be a quantized residual value or an unquantized residual value.

[0273] In some embodiments, for step 2201, in order to select the prediction mode of the motion vector of the current vertex in the first coordinate dimension from the candidate prediction modes, a rate-distortion optimization algorithm is needed to determine the rate-distortion cost of each candidate prediction mode. Therefore, for the intra prediction mode, in the process of determining the rate-distortion cost, the motion vector residual value of the current vertex in the first coordinate dimension needs to be determined. Therefore, in Embodiment 3, the determination of the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension can be obtained in the process of further implementing step 2201.

[0274] In Embodiment 3, for the determination of the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension, in some embodiments, it can be implemented as follows: determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension; determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension. For the convenience of description, this embodiment will be referred to as Embodiment 4 below, but Embodiment 4 should not be understood as a parallel embodiment of Embodiment 3, and Embodiment 4 is a further embodiment of a step in Embodiment 3.

[0275] In this embodiment 4, for the determination of the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension, in the embodiments of the present application, the further implementation method of the motion vector prediction value is not limited, and different implementation methods can be understood as different intra prediction modes. For example, the motion vector prediction value of the current vertex in the first coordinate dimension can be determined by any one of the four intra prediction modes of the intra prediction mode 1 to the intra prediction mode 4 described above. For specific descriptions of the intra prediction mode 1 to the intra prediction mode 4, please refer to the descriptions above, which will not be repeated here.

[0276] Of course, the intra prediction mode described in the embodiments of the present application is not limited to at least one of the intra prediction mode 1 to the intra prediction mode 4 described above, and the intra prediction mode described in the embodiments of the present application can also include other intra prediction modes different from the intra prediction mode 1 to 4. In summary, for the decoding end, the method of determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point of the current vertex in the first coordinate dimension is called an intra prediction mode, as long as the intra prediction point is a vertex in the basic grid of the current image. For the encoding end, the method of determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point of the current vertex in the first coordinate dimension is called an intra prediction mode, as long as the intra prediction point is a vertex in the basic grid of the current image.

[0277] In some embodiments, the encoding method described above further includes: writing a third syntax element into the bitstream, the third syntax element being used to indicate the intra prediction mode of the motion vector of the current vertex in the first coordinate dimension. Further, in some embodiments, different values of the third syntax element indicate different intra prediction modes.

[0278] In other embodiments, different values of the first syntax element indicate different intra prediction modes.

[0279] It should be noted that the understanding of the third syntax element, the second syntax element and the first syntax element of the encoding end and further embodiments are understood by referring to the description of the embodiments of the decoding end described above, and will not be described again here.

[0280] It should be understood that, at the encoding end, whether it is an inter prediction mode or an intra prediction mode, in some embodiments, the motion vector residual value of the current vertex in the first coordinate dimension is determined according to the motion vector prediction value of the current vertex in the first coordinate dimension. Further, in a possible implementation, the motion vector residual value can be determined as follows: the original value of the motion vector of the current vertex in the first coordinate dimension is determined; the motion vector residual value of the current vertex in the first coordinate dimension is determined according to the original value and the prediction value of the motion vector of the current vertex in the first coordinate dimension. For example, the motion vector residual value of the current vertex in the first coordinate dimension is equal to the residual value between the original value and the prediction value of the motion vector of the current vertex in the first coordinate dimension, or is equal to the quantized value of the residual value between the original value and the prediction value of the motion vector of the current vertex in the first coordinate dimension.

[0281] Exemplarily, in some embodiments, the determining the motion vector raw value of the current vertex in the first coordinate dimension comprises: determining the motion vector raw value according to a raw geometry coordinate of the current vertex in the first coordinate dimension and a raw geometry coordinate of a collocated vertex of the current vertex in the first coordinate dimension.

[0282] For the encoding end, in some embodiments, the method further comprises: determining the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector residual value of the current vertex in the first coordinate dimension.

[0283] Further, in some embodiments, the determining the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector residual value of the current vertex in the first coordinate dimension comprises: determining the motion vector reconstructed value according to the motion vector residual value and a motion vector prediction value.

[0284] It should be understood that if the motion vector residual value written into the bitstream is a quantized residual value, the quantized residual value can be dequantized, and the motion vector reconstructed value of the current vertex in the first coordinate dimension is determined according to the dequantized motion vector residual value and a motion vector prediction value of the current vertex in the first coordinate dimension. For example, the motion vector reconstructed value is equal to the sum of the dequantized motion vector residual value and the motion vector prediction value.

[0285] If the motion vector residual value written into the bitstream is an unquantized residual value, the motion vector reconstructed value is equal to the sum of the motion vector residual value and the motion vector prediction value.

[0286] For any of the above-described embodiments of the encoding method, further, in some embodiments, the steps of the encoding method described above (here referring to the steps described in any of the above-described encoding embodiments or the steps described in the combined method of any at least two encoding embodiments) are performed on the current vertex in the case that the base mesh of the reference image of the current image uses an inter-frame coding mode and the base mesh of the current image uses an inter-frame coding mode.

[0287] In some embodiments, the base mesh of the current image and the reference image of the current image uses an inter-frame coding mode, which refers to a frame-level inter-frame coding mode. Compared with a frame-level intra-frame coding mode, the coding processing object of the former is a motion vector of a geometry coordinate of a vertex of the base mesh. For example, the code stream can carry a motion vector residual value (quantized or not quantized) of the vertex, can also carry a motion vector original value (quantized or not quantized) of the vertex, or, if a syntax element (such as syntax element B) indicates that the motion vector of the current vertex or the current group is skipped, the code stream does not carry the motion vector information of the current vertex or the current group. For the current vertex or the current group (such as N common points), the motion vector of each point in the group is (0, 0, 0).

[0288] In some embodiments, the above-described coding method further includes: writing a fourth syntax element into the code stream; wherein the fourth syntax element is used to indicate whether the base mesh of the current image uses an inter-frame decoding mode.

[0289] The embodiment of the present application further provides another decoding method, which is applied to a decoder. FIG. 23 is a schematic flowchart of implementation of the decoding method provided by the embodiment of the present application. As shown in FIG. 23, the decoding method includes the following steps 2301 to 2303:

[0290] Step 2301: decoding the code stream to determine a first syntax element, wherein the first syntax element is used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension; the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; the current vertex is a vertex in a base mesh of a current image;

[0291] Step 2302: in the case where the prediction mode indicated by the first syntax element is an intra-frame prediction mode, determining a weight coefficient of an intra-frame prediction point of the current vertex; wherein the intra-frame prediction point is a vertex in the base mesh of the current image.

[0292] In some embodiments, the intra-frame prediction point includes at least one vertex in the base mesh of the current image which has a connection relationship with the current vertex and has a decoding sequence before the current vertex.

[0293] Step 2303: determining a reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to the weight coefficient of the intra-frame prediction point and a reconstructed value of the motion vector of the intra-frame prediction point in the first coordinate dimension.

[0294] In the embodiments of the present application, the data used to determine the motion vector reconstruction value of the current vertex in the first coordinate dimension includes not only the motion vector reconstruction value of the intra prediction point of the current vertex in the first coordinate dimension, but also the weight coefficient of the intra prediction point. In this way, the accuracy of the motion vector reconstruction value of the current vertex in the first coordinate dimension is improved, thereby enhancing the decoding performance of the decoder.

[0295] It should be noted that, in the embodiments of the present application, the method for determining the weight coefficient of step 2302 is not limited, which can be a predefined value, or can be determined according to the decoding order, or can be determined according to the distance between the intra prediction point and the current vertex, for example, the smaller the distance between the intra prediction point and the current vertex, the greater the weight coefficient of the intra prediction point.

[0296] For the step 2303, “determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point of the current vertex and the motion vector reconstruction value of the intra prediction point of the current vertex in the first coordinate dimension”, in some embodiments, it can be implemented as follows: determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point of the current vertex and the motion vector reconstruction value of the intra prediction point of the current vertex in the first coordinate dimension; determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension.

[0297] It should be noted that, for further how to determine the motion vector prediction value of the current vertex in the first coordinate dimension based on the weight coefficient of the intra prediction point and the motion vector reconstruction value of the intra prediction point in the first coordinate dimension, the present application does not limit it. For example, it can be implemented by the intra prediction mode 1 or the further implementation manner of the intra prediction mode 1 described above, or it can also be implemented by the intra prediction mode 3 or the further implementation manner of the intra prediction mode 3 described above.

[0298] In some embodiments, the decoding method shown in FIG. 23 or other embodiments of the decoding method further includes: decoding the code stream to determine a third syntax element, the third syntax element being used to indicate the intra prediction mode of the motion vector of the current vertex in the first coordinate dimension. Further, in some embodiments, different values of the third syntax element indicate different intra prediction modes.

[0299] In other embodiments, different values of the first syntax element indicate different intra prediction modes.

[0300] In some embodiments, the first syntax element is used to indicate a prediction mode of a motion vector of a current group in a first coordinate dimension; the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group.

[0301] It should be noted that the understanding of the third syntax element and the first syntax element and further embodiments are understood by referring to the description of the decoding end embodiments described above, and will not be repeated here.

[0302] In some embodiments, the decoding method shown in FIG. 23 or other embodiments of the decoding method further includes: decoding the code stream to determine a motion vector decoding value of the current vertex in the first coordinate dimension; and determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension includes: determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector decoding value of the current vertex in the first coordinate dimension and the motion vector prediction value.

[0303] For further how to determine the motion vector reconstruction value of the current vertex in the first coordinate dimension, refer to the further embodiments of the step described above.

[0304] In some embodiments, the decoding method shown in FIG. 23 or other embodiments of the decoding method further includes: determining a homologous point of the current vertex in a base mesh of a reference image; and determining a coordinate reconstruction value of the current vertex in the first coordinate dimension according to a coordinate reconstruction value of the homologous point in the first coordinate dimension and the motion vector reconstruction value of the current vertex in the first coordinate dimension.

[0305] For further how to determine the coordinate reconstruction value of the current vertex in the first coordinate dimension, refer to the further embodiments of the step described above.

[0306] Based on the above-described another embodiment of the decoding method and further or additional embodiments thereof, an embodiment of an encoding method related thereto is described as follows.

[0307] The embodiment of the application provides an encoding method, and FIG. 24 is a second implementation flowchart of the encoding method provided by the embodiment of the application, as shown in FIG. 24, the encoding method includes the following steps 2401 to 2403.

[0308] Step 2401, in the case that the prediction mode of the motion vector of the current vertex in the first coordinate dimension is an intra prediction mode, determining a weight coefficient of an intra prediction point of the current vertex; wherein the intra prediction point is a vertex in a base mesh of the current image.

[0309] In some embodiments, the intra prediction point comprises at least one vertex in a base mesh of the current image which has a connection relationship with the current vertex and a decoding order before the current vertex.

[0310] In step 2402, a motion vector residual value of the current vertex in the first coordinate dimension is determined according to the weight coefficient of the intra prediction point and the motion vector reconstructed value of the intra prediction point in the first coordinate dimension.

[0311] In step 2403, the motion vector residual value of the current vertex in the first coordinate dimension is written into a bitstream.

[0312] In the embodiments of the present application, the data used to determine the motion vector residual value of the current vertex in the first coordinate dimension comprises not only the motion vector reconstructed value of the intra prediction point of the current vertex in the first coordinate dimension, but also the weight coefficient of the intra prediction point; in this way, it is beneficial to reduce the motion vector residual value of the current vertex in the first coordinate dimension, thereby saving the bit cost and improving the code rate.

[0313] In some embodiments, for the step 2403, the “determining the motion vector residual value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstructed value of the intra prediction point in the first coordinate dimension”, in some embodiments, it can be implemented as follows: determining a motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstructed value of the intra prediction point in the first coordinate dimension; determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension.

[0314] It should be noted that the present application does not limit how to further determine the motion vector prediction value of the current vertex in the first coordinate dimension based on the weight coefficient of the intra prediction point and the motion vector reconstructed value of the intra prediction point in the first coordinate dimension. For example, it can be implemented by the intra prediction mode 1 or the further implementation manner of the intra prediction mode 1 described above, or it can also be implemented by the intra prediction mode 3 or the further implementation manner of the intra prediction mode 3 described above.

[0315] In some embodiments, the encoding method shown in FIG. 24 or other embodiments of the encoding method further comprises: determining a first syntax element according to the prediction mode; wherein the first syntax element is used to indicate the prediction mode of the motion vector of the current vertex in the first coordinate dimension; the prediction mode of the motion vector of the current vertex in different coordinate dimensions is indicated by different syntax elements; and the first syntax element is written into a bitstream.

[0316] In some embodiments, the encoding method shown in FIG. 24 or other embodiments of the encoding method further includes: writing a third syntax element into the bitstream, the third syntax element being used to indicate an intra prediction mode of the motion vector of the current vertex in the first coordinate dimension.

[0317] Further, in some embodiments, different values of the third syntax element indicate different intra prediction modes. In other embodiments, different values of the first syntax element indicate different intra prediction modes.

[0318] In some embodiments, the first syntax element is used to indicate a prediction mode of the motion vector of the current group in the first coordinate dimension; the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group.

[0319] It should be noted that the understanding of the third syntax element and the first syntax element and further embodiments are described in the foregoing description of the decoding end embodiments, and will not be repeated here.

[0320] In some embodiments, the encoding method shown in FIG. 24 or other embodiments of the encoding method further includes: determining the reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to the motion vector residual value of the current vertex in the first coordinate dimension.

[0321] For further how to determine the reconstructed value of the motion vector of the current vertex in the first coordinate dimension, please refer to the foregoing description of further embodiments of this step.

[0322] The following examples describe various possible implementations of the embodiments of the present application, and it should be understood that the various possible implementations described in the following examples cannot limit the present application.

[0323] The embodiments of the present application further provide an encoding method, and FIG. 25 is a schematic diagram of the implementation flow of the encoding method provided by the embodiments of the present application. As shown in FIG. 25, when the base mesh of the current frame is in an inter-frame coding mode, and the base mesh of the reference frame of the current frame is in an inter-frame coding mode, the motion vector of each group of the base mesh is encoded in groups (i.e., the following operations are performed for each group):

[0324] determining a syntax element B indicating whether the motion vector of the current group is skipped in coding and writing the syntax element B into the bitstream (the syntax element B is determined by rate-distortion optimization on whether the motion vector of the current group is skipped in coding), for example, B takes a value of 1, indicating that the motion vector of the current group is skipped in coding, i.e., the motion vector of the current group is not coded, and the reconstructed value of the motion vector of each vertex in the current group is (0, 0, 0).

[0325] ​B is 0, it indicates that the motion vector of the current group is not skip coded, and then the syntax elements C, D and E indicating whether the motion vector of the current group is skip coded in three coordinate dimensions (x, y and z) are determined and written into the bitstream (the syntax elements C, D and E are determined by rate-distortion optimization of whether to code the motion vector of the current group in three coordinate dimensions (x, y and z) respectively), for example, C (or D or E) is 1, it indicates that the motion vector of the current group is skip coded in the x (or y or z) dimension, that is, the motion vector of the current group in the x (or y or z) dimension is not coded, for example, the current group has N points, and the reconstructed value of the motion vector of each point in the current group in the x (or y or z) dimension is (or or ) is 0.

[0326] C (or D or E) is 0, it indicates that the motion vector of the current group is not skip coded in the x (or y or z) dimension, and then the syntax element F (or G or H) indicating the prediction mode of the motion vector of the current group in the x (or y or z) dimension and the motion vector coding value of the motion vector of the current group in the x (or y or z) dimension are determined and written into the bitstream.

[0327] For example, F (or G or H) is 0 (represented by a binary symbol string as 0), it indicates that the motion vector of the current group is not predicted in the x (or y or z) dimension, and the motion vector coding value of the motion vector of the current group in the x (or y or z) dimension is the original value of the motion vector.

[0328] F (or G or H) is 1 (represented by a binary symbol string as 10), it indicates that the motion vector of the current group adopts non-offset intra prediction in the x (or y or z) dimension, and the motion vector coding value of the motion vector of each vertex in the current group in the x (or y or z) dimension is the difference between the original value of the motion vector of the current vertex and the non-offset intra prediction value, r x (r y ,r z )=(m x ,m y ,m z )-P x (P y ,P z ), wherein the non-offset intra prediction value predCount is the number of intra prediction points of the current vertex, when predCount is 0, the non-offset intra prediction value is 0, is the reconstructed value of the motion vector of the i-th intra prediction point of the current vertex.

[0329] The value of F (or G or H) is 2 (a binary symbol string is represented as 110), which means that the motion vector of the current group adopts offset intra prediction in the x (or y or z) dimension. The motion vector encoding value of the motion vector of each vertex in the current group in the x (or y or z) dimension is the difference between the original value of the motion vector of the current vertex and the offset intra prediction value. x (r y ,r z )=(m x ,m y ,m z )-P x (P y ,P z ), where there is an offset intra prediction value predCount is the number of intra-frame prediction points of the current vertex. When predCount is 0, the offset intra-frame prediction value is 0. The motion vector reconstruction value of the i-th intra-frame prediction point of the current vertex, bias = predCount>>1;

[0330] The value of F (or G or H) is 3 (a binary symbol string is represented as 111), which means that the motion vector of the current group adopts inter-frame prediction in the x (or y or z) dimension. The motion vector encoding value of the motion vector of each vertex in the current group in the x (or y or z) dimension is the difference between the original value of the motion vector of the current vertex and the inter-frame prediction value. x (r y ,r z )=(m x ,m y ,m z )-P x (P y ,P z ), where the inter-frame prediction value Reconstruct the motion vector value of the collocated point of the current vertex.

[0331] The present application further provides a decoding method. FIG26 is a fourth flowchart of an implementation of the decoding method provided by the present application. As shown in FIG26 , when the base grid of the current frame is in inter-frame decoding mode and the base grid of the reference frame of the current frame is in inter-frame decoding mode, the motion vector of each group of the base grids is decoded in groups (i.e., the following operations are performed on each group):

[0332] Parse the syntax element B that indicates whether the motion vector of the current group is skipped for decoding. For example, a value of 1 indicates that the motion vector of the current group is skipped for decoding, that is, the decoding value of the motion vector of the current group is 0. For example, if there are N points in the current group, the decoding value of the motion vector of each point in the group is All are (0,0,0);

[0333] B is 0, it indicates that the motion vector of the current group is not skipped decoding, and syntax elements C, D, E indicating whether the motion vector of the current group is skipped decoding in three coordinate dimensions (x, y, z) are parsed, for example, C (or D or E) is 1, it indicates that the motion vector of the current group is skipped decoding in x (or y or z) dimension, that is, the decoded value of the motion vector of the current group in x (or y or z) dimension is 0, and if the current group has N points, the decoded value of the motion vector of each point in the group in x (or y or z) dimension is (or or ) is 0.

[0334] C (or D or E) is 0, it indicates that the motion vector of the current group is not skipped decoding in x (or y or z) dimension, and syntax elements F (or G or H) indicating the prediction mode of the motion vector of the current group in x (or y or z) dimension and the decoded value of the motion vector of the current group in x (or y or z) dimension are parsed.

[0335] For example, F (or G or H) is 0 (binary symbol string is 0), it indicates that the motion vector of the current group is not predicted in x (or y or z) dimension, and the motion vector reconstruction value of the motion vector of the current group in x (or y or z) dimension is the decoded value of the motion vector.

[0336] F (or G or H) is 1 (binary symbol string is 10), it indicates that the motion vector of the current group adopts non-offset intra prediction in x (or y or z) dimension, and the motion vector reconstruction value of the motion vector of each vertex in the current group in x (or y or z) dimension is the sum of the decoded value of the motion vector of the current vertex and the non-offset intra prediction value, Wherein the non-offset intra prediction value predCount is the number of intra prediction points of the current vertex, when predCount is 0, the non-offset intra prediction value is 0, is the motion vector reconstruction value of the i-th intra prediction point of the current vertex.

[0337] F (or G or H) is 2 (binary symbol string is 110), it indicates that the motion vector of the current group adopts offset intra prediction in x (or y or z) dimension, and the motion vector reconstruction value of the motion vector of each vertex in the current group in x (or y or z) dimension is the sum of the decoded value of the motion vector of the current vertex and the offset intra prediction value, Wherein the offset intra prediction value predCount is the number of intra prediction points of the current vertex, when predCount is 0, the offset intra prediction value is 0, motion vector reconstruction value of the i-th intra-predicted point of the current vertex, bias = predCount » 1;

[0338] F (or G or H) takes value 3 (binary string is represented as 111) indicates that the motion vector of the current group adopts inter-prediction in x (or y or z) dimension, and the motion vector reconstruction value of the motion vector of each vertex in the current group in x (or y or z) dimension is the sum of the motion vector decoding value of the current vertex and the inter-prediction value, where the inter-prediction value motion vector reconstruction value of the co-located point of the current vertex.

[0339] The following describes the extension schemes a) - d).

[0340] The extension scheme a) replaces or adds inter-prediction modes in the above embodiments:

[0341] inter-prediction value predCount is the number of inter-predicted points of the current vertex, motion vector reconstruction value of the i-th inter-predicted point of the current vertex.

[0342] The extension scheme b) replaces or adds inter-prediction modes in the above embodiments:

[0343] inter-prediction value predCount is the number of inter-predicted points of the current vertex, motion vector reconstruction value of the i-th inter-predicted point of the current vertex, bias = predCount » 1.

[0344] The extension scheme c) adopts weighted average for the intra / inter-prediction value:

[0345] intra-prediction value w ix (w iy ,w iz ) is the weight of the i-th intra-predicted point of the current vertex, w ix ,w iy ,w iz may be the same or different;

[0346] intra-prediction value w ix (w iy ,w iz ) is the weight of the i-th intra-predicted point of the current vertex, wix ,w iy ,w iz may be the same or different;

[0347] inter prediction value w ix (w iy ,w iz is a weight of the i-th inter prediction point of the current vertex, w ix ,w iy ,w iz may be the same or different;

[0348] inter prediction value w ix (w iy ,w iz is a weight of the i-th inter prediction point of the current vertex, w ix ,w iy ,w iz may be the same or different.

[0349] Extension scheme d) merge three dimensions

[0350] The three dimensions adopt the same prediction mode, and the syntax elements F, G and H only need one.

[0351] Based on the foregoing embodiments, an embodiment of the present application provides a decoding device, applied to a decoder, and Fig. 27 is a structural schematic diagram one of a decoding device provided by an embodiment of the present application, as shown in Fig. 27, the decoding device 270 includes:

[0352] The decoding module 2701 is configured to decode a code stream, and determine a first syntax element, the first syntax element being used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension; the prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; the current vertex is a vertex in a basic grid of a current image;

[0353] The first determination module 2702 is configured to, in a case where the prediction mode indicated by the first syntax element is an inter prediction mode, determine a reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to a reconstructed value of a motion vector of an inter prediction point of the current vertex in the first coordinate dimension; wherein the inter prediction point is a vertex in a basic grid of a reference image.

[0354] In some embodiments, the inter prediction point includes a homonym of the current vertex in the basic grid of the reference image and / or at least one vertex in the basic grid of the reference image which has a connection relationship with the homonym.

[0355] In some embodiments, the first determining module 2702 is configured to: in case that the prediction mode indicated by the first syntax element is an inter prediction mode, determine the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension; and determine the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension.

[0356] Further, in some embodiments, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to an average or a weighted average of the motion vector reconstructed values of the inter prediction points in the first coordinate dimension.

[0357] Further, in some other embodiments, the inter prediction point is the collocated point, and the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the motion vector reconstructed value of the collocated point.

[0358] Further, in some other embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension comprises: determining a first offset value; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension and the first offset value.

[0359] Exemplarily, in some embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension and the first offset value comprises: determining the weight coefficients corresponding to the inter prediction points respectively; determining the weighted values of the motion vector reconstructed values of the corresponding inter prediction points in the first coordinate dimension according to the weight coefficients of the inter prediction points; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weighted values of the inter prediction points and the first offset value.

[0360] Further, in some embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension and the first offset value comprises: determining a first accumulated value of the motion vector reconstructed values of the inter prediction points in the first coordinate dimension; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the first accumulated value and the first offset value.

[0361] Further, in some embodiments, the determining the first offset value comprises: determining the first offset value according to a number of the inter prediction points.

[0362] In some embodiments, the decoding module 2701 is further configured to: decode the bitstream to determine a second syntax element, the second syntax element being used to indicate an inter prediction mode of the current vertex in the first coordinate dimension.

[0363] In some other embodiments, different values of the first syntax element indicate different inter prediction modes.

[0364] In some embodiments, the first determining module 2702 is further configured to: in a case where the prediction mode indicated by the first syntax element is an intra prediction mode, determine an intra prediction point of the current vertex in a base mesh of the current image; wherein the intra prediction point comprises at least one vertex in the base mesh of the current image which has a connection relationship with the current vertex and a decoding order before the current vertex; and determine the motion vector reconstruction value of the current vertex in the first coordinate dimension according to a motion vector reconstruction value of the intra prediction point in the first coordinate dimension.

[0365] Further, in some embodiments, the first determining module 2702 is configured to: determine a motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction values of the intra prediction points in the first coordinate dimension; and determine the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension.

[0366] Exemplarily, in some embodiments, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to an average or a weighted average of the motion vector reconstruction values of the intra prediction points.

[0367] Exemplarily, in some other embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction values of the intra prediction points in the first coordinate dimension comprises: determining a second offset value; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction values of the intra prediction points in the first coordinate dimension and the second offset value.

[0368] Further, in some embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value comprises: determining weight coefficients corresponding to the intra prediction points respectively; and determining a weighted value of the motion vector reconstructed value of the corresponding intra prediction point in the first coordinate dimension according to the weight coefficients of the intra prediction points; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weighted value of the intra prediction point and the second offset value.

[0369] In some embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value comprises: determining a second accumulated value of the motion vector reconstructed value of the intra prediction point in the first coordinate dimension; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the second accumulated value and the second offset value.

[0370] In some embodiments, the determining the second offset value comprises: determining the second offset value according to the number of the intra prediction points.

[0371] In some embodiments, the decoding module 2701 is further configured to: decode the bitstream to determine a third syntax element, the third syntax element being used to indicate an intra prediction mode of the motion vector of the current vertex in the first coordinate dimension.

[0372] In some other embodiments, different values of the first syntax element indicate different intra prediction modes.

[0373] In some embodiments, the first syntax element is used to indicate a prediction mode of the motion vector of a current group in the first coordinate dimension; the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group.

[0374] In some embodiments, the decoding module 2701 is further configured to: decode the bitstream to determine a motion vector decoded value of the current vertex in the first coordinate dimension; and the determining the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension comprises: determining the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector decoded value of the current vertex in the first coordinate dimension and the motion vector prediction value.

[0375] In some embodiments, the first determining module 2702 is further configured to: determine a co-located point of the current vertex in a base mesh of a reference image; and determine the coordinate reconstruction value of the current vertex in the first coordinate dimension according to the coordinate reconstruction value of the co-located point in the first coordinate dimension and the motion vector reconstruction value of the current vertex in the first coordinate dimension.

[0376] In some embodiments, the decoding apparatus 270 performs the operations of any one or more of the above-described embodiments on the current vertex, in a case that the base mesh of the reference image of the current image uses the inter-decoding mode and the base mesh of the current image uses the inter-decoding mode.

[0377] In some embodiments, the decoding module 2701 is further configured to: decode the bitstream to determine a fourth syntax element; wherein the fourth syntax element is used to indicate whether the base mesh of the current image uses the inter-decoding mode.

[0378] Based on the above-described embodiments, an encoding apparatus is provided in an embodiment of the present application, and the encoding apparatus is applied to an encoder. FIG. 28 is a structural schematic diagram one of an encoding apparatus provided in an embodiment of the present application. As shown in FIG. 28, the encoding apparatus 280 includes:

[0379] A fourth determining module 2801 is configured to determine, from candidate prediction modes of a motion vector of a current vertex in a first coordinate dimension, a prediction mode of the motion vector of the current vertex in the first coordinate dimension; wherein the candidate prediction modes include an inter-prediction mode; and the current vertex is a vertex in a base mesh of a current image.

[0380] A fifth determining module 2802 is configured to determine a first syntax element according to the prediction mode; wherein the first syntax element is used to indicate the prediction mode of the motion vector of the current vertex in the first coordinate dimension; and prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements.

[0381] An encoding module 2803 is configured to write the first syntax element into a bitstream.

[0382] In some embodiments, the fourth determining module 2801 is configured to: in a case that the prediction mode is the inter-prediction mode, determine a motion vector residual value of the current vertex in the first coordinate dimension according to a motion vector reconstruction value of an inter-prediction point of the current vertex in the first coordinate dimension; wherein the inter-prediction point is a vertex in a base mesh of a reference image; and the encoding module 2803 is further configured to write the motion vector residual value of the current vertex in the first coordinate dimension into the bitstream.

[0383] In some embodiments, the inter prediction point comprises a co-located point of the current vertex in a base mesh of the reference image and / or at least one vertex connected with the co-located point in the base mesh of the reference image.

[0384] Further, in some embodiments, the fourth determining module 2801 is configured to: determine a motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed values of the inter prediction points in the first coordinate dimension; and determine a motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension.

[0385] In some embodiments, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to an average or a weighted average of the motion vector reconstructed values of the inter prediction points.

[0386] In some other embodiments, the inter prediction point is the co-located point, and the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the motion vector reconstructed value of the co-located point.

[0387] In yet some embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed values of the inter prediction points in the first coordinate dimension comprises: determining a first offset value; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed values of the inter prediction points in the first coordinate dimension and the first offset value.

[0388] Further, in some embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed values of the inter prediction points in the first coordinate dimension and the first offset value comprises: determining weight coefficients corresponding to the inter prediction points respectively; determining weighted values of the motion vector reconstructed values of the corresponding inter prediction points in the first coordinate dimension according to the weight coefficients of the inter prediction points; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weighted values of the inter prediction points and the first offset value.

[0389] In some other embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed values of the inter prediction points in the first coordinate dimension and the first offset value comprises: determining a first accumulated value of the motion vector reconstructed values of the inter prediction points in the first coordinate dimension; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the first accumulated value and the first offset value.

[0390] In some embodiments, the determining the first offset value comprises determining the first offset value according to a number of the inter prediction points.

[0391] In some embodiments, the encoding module 2803 is further configured to write a second syntax element into the bitstream, the second syntax element being used to indicate an inter prediction mode of the current vertex in the first coordinate dimension.

[0392] In some other embodiments, different values of the first syntax element indicate different inter prediction modes.

[0393] In some embodiments, the fourth determining module 2801 is configured to, in a case where the prediction mode is an intra prediction mode, determine an intra prediction point of the current vertex in a base mesh of the current image, wherein the intra prediction point comprises at least one vertex in the base mesh of the current image that has a connection relationship with the current vertex and has a decoding order before the current vertex, determine a motion vector residual value of the current vertex in the first coordinate dimension according to a motion vector reconstructed value of the intra prediction point in the first coordinate dimension, and the encoding module 2803 is further configured to write the motion vector residual value of the current vertex in the first coordinate dimension into the bitstream.

[0394] Further, in some embodiments, the fourth determining module 2801 is configured to determine a motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension, and determine the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension.

[0395] In some embodiments, the motion vector prediction value of the current vertex in the first coordinate dimension is equal to an average value or a weighted average value of the motion vector reconstructed values of the intra prediction points.

[0396] In some other embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension comprises determining a second offset value, and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value.

[0397] In some embodiments, the determining the motion vector predictor of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value comprises: determining weight coefficients corresponding to the intra prediction point respectively; determining a weighted value of the motion vector reconstructed value of the corresponding intra prediction point in the first coordinate dimension according to the weight coefficients of the intra prediction point; and determining the motion vector predictor of the current vertex in the first coordinate dimension according to the weighted value of the intra prediction point and the second offset value.

[0398] In yet some embodiments, the determining the motion vector predictor of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value comprises: determining a second accumulated value of the motion vector reconstructed value of the intra prediction point in the first coordinate dimension; and determining the motion vector predictor of the current vertex in the first coordinate dimension according to the second accumulated value and the second offset value.

[0399] In some embodiments, the determining the second offset value comprises: determining the second offset value according to the number of the intra prediction points.

[0400] In some embodiments, the encoding module 2803 is further configured to: write a third syntax element, the third syntax element being used to indicate the intra prediction mode of the motion vector of the current vertex in the first coordinate dimension.

[0401] In some other embodiments, different intra prediction modes are indicated by different values of the first syntax element.

[0402] In some embodiments, the first syntax element is used to indicate the prediction mode of the motion vector of the current group in the first coordinate dimension; the current group is a group of vertices in the base mesh of the current image, and the current vertex belongs to the current group.

[0403] In some embodiments, the fourth determining module 2801 is configured to: determine the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector residual value of the current vertex in the first coordinate dimension.

[0404] In some embodiments, the encoding apparatus 280 performs the operations of any one or more embodiments described above on the current vertex in the case that the base mesh of the reference image of the current image uses an inter coding mode and the base mesh of the current image uses an inter coding mode.

[0405] In some embodiments, the encoding module 2803 is further configured to: write a fourth syntax element into the bitstream; wherein the fourth syntax element is used to indicate whether the base mesh of the current picture uses an inter-decoding mode.

[0406] The descriptions of the above apparatus embodiments are similar to those of the above method embodiments, and have similar beneficial effects. For technical details not disclosed in the apparatus embodiments of the present application, please refer to the descriptions of the method embodiments of the present application.

[0407] Based on the foregoing embodiments, the present embodiment provides a decoding apparatus applied to a decoder. FIG. 29 is a second structural schematic diagram of the decoding apparatus provided by the present embodiment. As shown in FIG. 29, the decoding apparatus 290 includes:

[0408] The decoding module 2901 is configured to decode the bitstream, and determine a first syntax element. The first syntax element is used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension. The prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements. The current vertex is a vertex in a base mesh of a current picture.

[0409] The second determination module 2902 is configured to, in a case where the prediction mode indicated by the first syntax element is an intra prediction mode, determine a weight coefficient of an intra prediction point of the current vertex. The intra prediction point is a vertex in the base mesh of the current picture.

[0410] The third determination module 2903 is configured to determine a reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and a reconstructed value of the motion vector of the intra prediction point in the first coordinate dimension.

[0411] In some embodiments, the intra prediction point includes at least one vertex in the base mesh of the current picture that has a connection relationship with the current vertex and has a decoding sequence before the current vertex.

[0412] In some embodiments, the third determination module 2903 is configured to: determine a prediction value of the motion vector of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point of the current vertex and a reconstructed value of the motion vector of the intra prediction point in the first coordinate dimension; and determine the reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to the prediction value of the motion vector of the current vertex in the first coordinate dimension.

[0413] Further, in some embodiments, the prediction value of the motion vector of the current vertex in the first coordinate dimension is equal to a weighted average of the reconstructed values of the motion vectors of the intra prediction points.

[0414] Further, in some embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstructed value of the intra prediction point in the first coordinate dimension comprises: determining a second offset value; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point, the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value.

[0415] For example, in some embodiments, the determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point, the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value comprises: determining a weighted value of the motion vector reconstructed value of the corresponding intra prediction point in the first coordinate dimension according to the weight coefficient of the intra prediction point; and determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weighted value of the intra prediction point and the second offset value.

[0416] In some embodiments, the determining the second offset value comprises: determining the second offset value according to the number of the intra prediction points.

[0417] In some embodiments, the decoding module 2901 is further configured to: decode the bitstream to determine a third syntax element, the third syntax element being used to indicate an intra prediction mode of the motion vector of the current vertex in the first coordinate dimension.

[0418] In some embodiments, different values of the first syntax element indicate different intra prediction modes.

[0419] In some embodiments, the first syntax element is used to indicate a prediction mode of the motion vector of a current group in the first coordinate dimension; the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group.

[0420] In some embodiments, the decoding module 2901 is further configured to: decode the bitstream to determine a motion vector decoded value of the current vertex in the first coordinate dimension. The determining the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension comprises: determining the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector decoded value of the current vertex in the first coordinate dimension and the motion vector prediction value.

[0421] In some embodiments, the second determining module 2902 is configured to: determine a homonym of the current vertex in a base mesh of a reference image; and determine the coordinate reconstruction value of the current vertex in the first coordinate dimension according to the coordinate reconstruction value of the homonym in the first coordinate dimension and the motion vector reconstruction value of the current vertex in the first coordinate dimension.

[0422] Based on the foregoing embodiments, an encoding device is provided in an embodiment of the present application, which is applied to an encoder. FIG. 30 is a schematic structural diagram of the encoding device provided in an embodiment of the present application. As shown in FIG. 30, the encoding device 300 includes:

[0423] The sixth determining module 3001 is configured to determine a weight coefficient of an intra-prediction point of the current vertex when the prediction mode of the motion vector of the current vertex in the first coordinate dimension is an intra-prediction mode; wherein the intra-prediction point is a vertex in a base mesh of the current image.

[0424] The seventh determining module 3002 is configured to determine a motion vector residual value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra-prediction point and the motion vector reconstruction value of the intra-prediction point in the first coordinate dimension; wherein the inter-prediction point is a vertex in a base mesh of a reference image.

[0425] The encoding module 3003 is configured to write the motion vector residual value of the current vertex in the first coordinate dimension into a bitstream.

[0426] In some embodiments, the encoding module 3003 is further configured to: determine a first syntax element according to the prediction mode; wherein the first syntax element is used to indicate the prediction mode of the motion vector of the current vertex in the first coordinate dimension; and the prediction modes of the motion vectors of the current vertex in different coordinate dimensions are indicated by different syntax elements; and write the first syntax element into the bitstream.

[0427] In some embodiments, the intra-prediction point includes at least one vertex in the base mesh of the current image which has a connection relationship with the current vertex and has a decoding sequence before the current vertex.

[0428] In some embodiments, the seventh determining module 3002 is configured to: determine a motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra-prediction point and the motion vector reconstruction value of the intra-prediction point in the first coordinate dimension; and determine the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension.

[0429] Further, in some embodiments, the motion vector predictor of the current vertex in the first coordinate dimension is equal to a weighted average of the motion vector reconstruction values of the intra prediction points.

[0430] Further, in some other embodiments, the determining the motion vector predictor of the current vertex in the first coordinate dimension according to the weight coefficients of the intra prediction points and the motion vector reconstruction values of the intra prediction points in the first coordinate dimension comprises: determining a second offset value; and determining the motion vector predictor of the current vertex in the first coordinate dimension according to the weight coefficients of the intra prediction points, the motion vector reconstruction values of the intra prediction points in the first coordinate dimension and the second offset value.

[0431] In some embodiments, the determining the motion vector predictor of the current vertex in the first coordinate dimension according to the weight coefficients of the intra prediction points, the motion vector reconstruction values of the intra prediction points in the first coordinate dimension and the second offset value comprises: determining a weighted value of the motion vector reconstruction values of the corresponding intra prediction points in the first coordinate dimension according to the weight coefficients of the intra prediction points; and determining the motion vector predictor of the current vertex in the first coordinate dimension according to the weighted value of the intra prediction points and the second offset value.

[0432] In some embodiments, the determining the second offset value comprises: determining the second offset value according to the number of the intra prediction points.

[0433] In some embodiments, the encoding module 3003 is further configured to: write a third syntax element into the bitstream, the third syntax element being used to indicate the intra prediction mode of the motion vector of the current vertex in the first coordinate dimension.

[0434] In some other embodiments, different values of the first syntax element indicate different intra prediction modes.

[0435] In some embodiments, the first syntax element is used to indicate the prediction mode of the motion vector of the current group in the first coordinate dimension; and the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group.

[0436] In some embodiments, the seventh determining module 3002 is further configured to: determine the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector residual value of the current vertex in the first coordinate dimension.

[0437] The description of the above device embodiments is similar to that of the above method embodiments, and has similar beneficial effects to the method embodiments. For technical details not disclosed in the device embodiments of the present application, please refer to the description of the method embodiments of the present application.

[0438] It should be noted that the division of the device into modules described in the embodiments of the present application is illustrative, and is only a logical functional division. In actual implementation, there can be another division manner. In addition, each functional unit in each embodiment of the present application can be integrated in one processing unit, or can be physically separated, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware, or in the form of a software functional unit. It can also be realized in the form of a combination of software and hardware.

[0439] It should be noted that if the above method is realized in the form of a software functional module and sold or used as an independent product in the embodiments of the present application, it can also be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the embodiments of the present application can be embodied in the form of a software product, which is stored in a storage medium and includes a plurality of instructions for causing an electronic device to execute all or part of the methods described in the embodiments of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a magnetic disk or an optical disk, and various program code storage media. Thus, the embodiments of the present application are not limited to any specific combination of hardware and software.

[0440] The embodiments of the present application provide a decoder. FIG. 31 is a structural schematic diagram of a decoder provided by the embodiments of the present application. As shown in FIG. 31, the decoder 310 includes a first communication interface 3101, a first memory 3102 and a first processor 3103; each component is coupled together through a first bus system 3104. It can be understood that the first bus system 3104 is used to realize the connection communication between the components. In addition to including a data bus, the first bus system 3104 also includes a power bus, a control bus and a state signal bus. However, in order to clearly illustrate, all kinds of buses are marked as the first bus system 3104 in FIG. 31. Among them,

[0441] The first communication interface 3101 is used for receiving and sending signals in the process of transceiving information with other external network elements;

[0442] The first memory 3102 is used for storing a computer program capable of running on the first processor 3103;

[0443] The first processor 3103 is configured to execute the decoding method described in the embodiments of the present application when the computer program is run.

[0444] It can be understood that the first memory 3102 in the embodiments of the present application can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. The non-volatile memory can be a Read-Only Memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an Electrically EPROM (EEPROM), or a flash memory. The volatile memory can be a Random Access Memory (RAM) used as an external cache. By way of example, and not limitation, many forms of RAM can be used, such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The first memory 3102 of the system and method described in the present application is intended to include, without being limited to, these and any other suitable types of memory.

[0445] The first processor 3103 can be an integrated circuit chip having a processing capability of signals. In the implementation process, each step of the above method can be completed by the integrated logic circuit of hardware or the instruction in the form of software in the first processor 3103. The first processor 3103 described above can be a general processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component. Each method, step and logic block disclosed in the embodiment of the present application can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor. The steps of the method disclosed in combination with the embodiment of the present application can be directly embodied as a hardware code processor to execute, or be executed by a combination of hardware and software modules in the code processor. The software module can be located in a random access memory, a flash memory, a read only memory, a programmable read only memory or an electrically erasable programmable memory, a register or other mature storage medium in the art. The storage medium is located in the first memory 3102, and the first processor 3103 reads the information in the first memory 3102 and combines the hardware to complete the steps of the above method.

[0446] It can be understood that the embodiments described in the present application can be realized by hardware, software, firmware, middleware, microcode or a combination thereof. For hardware implementation, the processing unit can be realized in one or more application specific integrated circuits (Application Specific Integrated Circuits, ASIC), digital signal processors (Digital Signal Processing, DSP), digital signal processing devices (DSP Device, DSPD), programmable logic devices (Programmable Logic Device, PLD), field programmable gate arrays (Field-Programmable Gate Array, FPGA), general processors, controllers, microcontrollers, microprocessors, other electronic units for executing functions described in the present application or a combination thereof. For software implementation, the technology described in the present application can be realized by modules (such as processes, functions, etc.) for executing functions described in the present application. The software code can be stored in the memory and executed by the processor. The memory can be implemented in the processor or outside the processor.

[0447] Optionally, as another embodiment, the first processor 3103 is further configured to, when executing the computer program, implement the foregoing decoding method embodiments.

[0448] The application provides an encoder. FIG. 32 is a structural schematic diagram of an encoder provided by an embodiment of the application. As shown in FIG. 32, the encoder 320 includes a second communication interface 3201, a second memory 3202, and a second processor 3203. Each component is coupled together through a second bus system 3204. It can be understood that the second bus system 3204 is used to realize the connection and communication between the components. The second bus system 3204 includes not only a data bus, but also a power supply bus, a control bus, and a status signal bus. However, for the purpose of clear illustration, all kinds of buses are marked as the second bus system 3204 in FIG. 32. Among them,

[0449] The second communication interface 3201 is used for receiving and sending signals in the process of transceiving information with other external network elements.

[0450] The second memory 3202 is used for storing a computer program capable of running on the second processor 3203.

[0451] The second processor 3203 is used for, when executing the computer program, implementing the encoding method provided by the embodiments of the application.

[0452] Optionally, as another embodiment, the second processor 3203 is further configured to, when executing the computer program, implement the foregoing encoding method embodiments.

[0453] It can be understood that the hardware functions of the second memory 3202 are similar to those of the first memory 3102, and the hardware functions of the second processor 3203 are similar to those of the first processor 3103. Details are not described here.

[0454] The application provides an electronic device. FIG. 33 is a structural schematic diagram of an electronic device provided by an embodiment of the application. As shown in FIG. 33, the electronic device 330 includes a memory 3301 and a processor 3302. The memory 3301 stores a computer program capable of running on the processor 3302. When the processor 3302 executes the program, the steps in the method provided in the foregoing embodiments are implemented.

[0455] It should be noted that the memory 3301 is configured to store instructions and applications executable by the processor 3302, and can also buffer data (for example, image data, audio data, voice communication data, and video communication data) to be processed or having been processed in the processor 3302 and the electronic device 330. This can be realized through FLASH or RAM.

[0456] An embodiment of the present application provides a computer readable storage medium, wherein the computer readable storage medium stores a computer program, and the computer program is executed to implement the encoding method at the encoder side or implement the decoding method at the decoder side.

[0457] An embodiment of the present application provides a code stream, and the code stream is obtained by the encoding method.

[0458] An embodiment of the present application provides a computer program product, comprising a computer program or instructions, and the computer program or instructions are executed by a processor to implement the encoding method at the encoder side or implement the decoding method at the decoder side.

[0459] It should be noted that the descriptions of the above-mentioned encoder, decoder, storage medium, device, code stream and program product embodiments are similar to the descriptions of the above-mentioned method embodiments, and have similar beneficial effects to the method embodiments. For technical details of the encoder, decoder, storage medium, device, code stream and program product embodiments not disclosed in the present application, please refer to the description of the method embodiments.

[0460] It should be understood that the "one embodiment" or "an embodiment" or "some embodiments" mentioned throughout the specification means that the specific features, structures or characteristics related to the embodiments are included in at least one embodiment of the present application. Therefore, "in one embodiment" or "in an embodiment" or "in some embodiments" appearing throughout the specification does not necessarily mean the same embodiment. In addition, these specific features, structures or characteristics can be combined in one or more embodiments in any suitable manner. It should be understood that in various embodiments of the present application, the size of the sequence number of each process does not mean the execution order, and the execution order of each process should be determined according to its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present application. The sequence number of the above-mentioned embodiments of the present application is only for description, not representing the advantages and disadvantages of the embodiments. The above description of each embodiment tends to emphasize the differences between each embodiment, and the same or similar parts can be referred to each other. For the sake of brevity, this paper will not repeat here.

[0461] The term "and / or" in this paper is only a description of the association relationship between the associated objects, which means that there may be three kinds of relationships, for example, object A and / or object B, which can represent the following three cases: object A exists alone, object A and object B exist together, and object B exists alone.

[0462] It should be noted that, in the present document, the terms "comprising", "containing", or any other similar term are intended to encompass non-exclusive inclusion, such that processes, methods, articles, or apparatuses that comprise a list of elements are not limited to those elements, but can also include other elements not expressly listed, or inherent to such processes, methods, articles, or apparatuses. Without further limitation, an element defined by the phrase "comprising a" does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes the element.

[0463] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. The above-described embodiments are merely illustrative, for example, the division of the modules is only a logical functional division, and actual implementation can have another division manner, such as: a plurality of modules or components can be combined, or can be integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the displayed or discussed components can be indirect coupling or communication connection between the interfaces, devices or modules, which can be electrical, mechanical or other forms.

[0464] The modules described above as separate components can or can not be physically separated, and the components displayed as modules can or can not be physical modules; they can be located in one place or distributed on multiple network units; and part or all of the modules can be selected according to actual needs to achieve the purpose of the present embodiment.

[0465] In addition, each functional module in each embodiment of the present application can be integrated in one processing unit, or each module can be a separate unit, or two or more modules can be integrated in one unit; the integrated modules can be realized in the form of hardware or hardware plus software functional units.

[0466] Those skilled in the art can understand that all or part of the steps of the above method embodiments can be completed by program instruction related hardware, and the foregoing program can be stored in a computer readable storage medium, and the program executes the steps of the above method embodiments when executed; and the foregoing storage medium includes: mobile storage device, read only memory (Read Only Memory, ROM), magnetic disc or optical disc, and various program code storage media.

[0467] Alternatively, the above-mentioned integrated units of the present application, if realized in the form of software function modules and sold or used as independent products, can also be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the embodiments of the present application can be embodied in the form of a software product, and the computer software product is stored in a storage medium, and includes several instructions for causing an electronic device to execute all or part of the methods described in the embodiments of the present application. The aforementioned storage medium includes: mobile storage devices, ROM, magnetic disks or optical disks, and various media that can store program codes.

[0468] The methods disclosed in the several method embodiments provided by the present application can be combined arbitrarily without conflict, to obtain new method embodiments.

[0469] The features disclosed in the several product embodiments provided by the present application can be combined arbitrarily without conflict, to obtain new product embodiments.

[0470] The features disclosed in the several method or device embodiments provided by the present application can be combined arbitrarily without conflict, to obtain new method or device embodiments.

[0471] The above is only an implementation of the present application, but the protection scope of the present application is not limited thereto, and any person skilled in the art can easily think of changes or replacements within the technical scope disclosed by the present application, which should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A decoding method, the method being applied to a decoder, the method comprising: decoding a bitstream to determine a first syntax element, the first syntax element being used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension; a prediction mode of a motion vector of the current vertex in a different coordinate dimension being indicated by a different syntax element; the current vertex being a vertex in a base mesh of a current picture; in a case where the prediction mode indicated by the first syntax element is an inter prediction mode, determining a reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to a reconstructed value of a motion vector of an inter prediction point of the current vertex in the first coordinate dimension; wherein the inter prediction point is a vertex in a base mesh of a reference picture.

2. The method of claim 1, wherein, the determining the reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to the reconstructed value of the motion vector of the inter prediction point of the current vertex in the first coordinate dimension comprises: determining a predicted value of the motion vector of the current vertex in the first coordinate dimension according to the reconstructed value of the motion vector of the inter prediction point in the first coordinate dimension; determining the reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to the predicted value of the motion vector of the current vertex in the first coordinate dimension.

3. The method of claim 2, wherein, the predicted value of the motion vector of the current vertex in the first coordinate dimension is equal to an average or a weighted average of the reconstructed value of the motion vector of the inter prediction point in the first coordinate dimension.

4. The method of claim 2, wherein, the determining the predicted value of the motion vector of the current vertex in the first coordinate dimension according to the reconstructed value of the motion vector of the inter prediction point in the first coordinate dimension comprises: determining a first offset value; determining the predicted value of the motion vector of the current vertex in the first coordinate dimension according to the reconstructed value of the motion vector of the inter prediction point in the first coordinate dimension and the first offset value.

5. The method of claim 4, wherein, the determining the predicted value of the motion vector of the current vertex in the first coordinate dimension according to the reconstructed value of the motion vector of the inter prediction point in the first coordinate dimension and the first offset value comprises: determining weight coefficients corresponding to the inter prediction points respectively; determining weighted values of the reconstructed values of the motion vectors of the inter prediction points in the first coordinate dimension according to the weight coefficients of the inter prediction points; determining the predicted value of the motion vector of the current vertex in the first coordinate dimension according to the weighted values of the inter prediction points and the first offset value.

6. The method of claim 1, wherein, the method further comprises: in a case where the prediction mode indicated by the first syntax element is an intra prediction mode, determining an intra prediction point of the current vertex in the base mesh of the current picture; wherein the intra prediction point comprises at least one vertex in the base mesh of the current picture which has a connection relationship with the current vertex and has a decoding order before the current vertex; determining the reconstructed value of the motion vector of the current vertex in the first coordinate dimension according to a reconstructed value of a motion vector of the intra prediction point in the first coordinate dimension.

7. The method of claim 6, wherein, The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises: determining a second offset value; determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value.

8. The method of claim 7, wherein, The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value comprises:

9. The method of claim 7, wherein, determining weight coefficients corresponding to the intra prediction points respectively; determining a weighted value of the motion vector reconstruction value of the corresponding intra prediction point in the first coordinate dimension according to the weight coefficients of the intra prediction points; determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weighted value of the intra prediction points and the second offset value.

10. The method of claim 9, wherein, The inter prediction point comprises a homonymic point of the current vertex in a base mesh of the reference image and / or at least one vertex connected with the homonymic point in the base mesh of the reference image. The inter prediction point is the homonymic point, and the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the motion vector reconstruction value of the homonymic point. The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the inter prediction point in the first coordinate dimension and the first offset value comprises: determining a first accumulated value of the motion vector reconstruction value of the inter prediction point in the first coordinate dimension; 11. The method of claim 1, wherein, determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the first accumulated value and the first offset value.

12. The method of claim 2, wherein, The determining the first offset value comprises:

13. The method of claim 4, wherein, determining the first offset value according to the number of the inter prediction points. The method further comprises: decoding a code stream to determine a second syntax element, the second syntax element being used to indicate an inter prediction mode of the motion vector of the current vertex in the first coordinate dimension.

14. The method of any one of claims 4, 5, or 13, wherein, Different values of the first syntax element indicate different inter prediction modes. The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value comprises:

15. The method of any one of claims 1-5, 11-13, wherein, determining a second offset value; determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value.

16. The method of any one of claims 1-5, 11-13, wherein, The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value comprises:

17. The method of claim 9, wherein, determining weight coefficients corresponding to the intra prediction points respectively; determining a weighted value of the motion vector reconstruction value of the corresponding intra prediction point in the first coordinate dimension according to the weight coefficients of the intra prediction points; determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weighted value of the intra prediction points and the second offset value. The inter prediction point comprises a homonymic point of the current vertex in a base mesh of the reference image and / or at least one vertex connected with the homonymic point in the base mesh of the reference image. The inter prediction point is the homonymic point, and the motion vector prediction value of the current vertex in the first coordinate dimension is equal to the motion vector reconstruction value of the homonymic point. The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the inter prediction point in the first coordinate dimension and the first offset value comprises: determining a first accumulated value of the motion vector reconstruction value of the inter prediction point in the first coordinate dimension; determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the first accumulated value and the first offset value. The determining the first offset value comprises: determining the first offset value according to the number of the inter prediction points. The method further comprises: decoding a code stream to determine a second syntax element, the second syntax element being used to indicate an inter prediction mode of the motion vector of the current vertex in the first coordinate dimension. Different values of the first syntax element indicate different inter prediction modes. The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value comprises: determining a second accumulated value of the motion vector reconstruction value of the first coordinate dimension of the intra prediction point; determining a motion vector prediction value of the first coordinate dimension of the current vertex according to the second accumulated value and the second offset value.

18. The method of claim 9, 10, or 17, wherein, The determining the second offset value comprises: determining the second offset value according to the number of the intra prediction points.

19. The method of any one of claims 6-10, 17-18, wherein, The method further comprises: decoding a bitstream to determine a third syntax element, the third syntax element being used to indicate an intra prediction mode of a motion vector of the current vertex in the first coordinate dimension.

20. The method of any one of claims 6-10, 17-18, wherein, Different values of the first syntax element indicate different intra prediction modes.

21. The method of claim 2 or 7, wherein, The method further comprises: decoding a bitstream to determine a motion vector decoding value of the first coordinate dimension of the current vertex; The determining the motion vector reconstruction value of the first coordinate dimension of the current vertex according to the motion vector prediction value of the first coordinate dimension of the current vertex comprises: determining the motion vector reconstruction value of the first coordinate dimension of the current vertex according to the motion vector decoding value of the first coordinate dimension of the current vertex and the motion vector prediction value.

22. The method of any one of claims 1-21, wherein, The first syntax element is used to indicate a prediction mode of a motion vector of a current group in the first coordinate dimension; the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group.

23. The method of any one of claims 1-21, wherein, The method further comprises: determining a homologous point of the current vertex in a base mesh of a reference image; determining a coordinate reconstruction value of the first coordinate dimension of the current vertex according to a coordinate reconstruction value of the first coordinate dimension of the homologous point and the motion vector reconstruction value of the first coordinate dimension of the current vertex.

24. The method of any one of claims 1-23, wherein, In a case where an inter decoding mode is used in a base mesh of a reference image of the current image and an inter decoding mode is used in a base mesh of the current image, performing the steps of the decoding method on the current vertex.

25. A decoding method, the method being applied to a decoder, the method comprising: decoding a bitstream to determine a first syntax element, the first syntax element being used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension; a prediction mode of the motion vector of the current vertex in a different coordinate dimension is indicated by a different syntax element; the current vertex is a vertex in a base mesh of a current image; in a case where the prediction mode indicated by the first syntax element is an intra prediction mode, determining a weight coefficient of an intra prediction point of the current vertex; wherein the intra prediction point is a vertex in a base mesh of the current image; determining a motion vector reconstruction value of the first coordinate dimension of the current vertex according to the weight coefficient of the intra prediction point and a motion vector reconstruction value of the first coordinate dimension of the intra prediction point.

26. The method of claim 25, wherein, The intra prediction point comprises at least one vertex in the base mesh of the current image which has a connection relationship with the current vertex and has a decoding sequence before the current vertex.

27. The method of claim 25, wherein, The determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises: The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises: The determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises:

28. The method of claim 27, wherein, The motion vector prediction value of the current vertex in the first coordinate dimension is equal to a weighted average of the motion vector reconstruction values of the intra prediction points.

29. The method of claim 27, wherein, The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises: The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises: The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises:

30. The method of claim 29, wherein, The determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises: The determining the second offset value comprises: The determining the second offset value comprises:

31. The method of claim 29, wherein, The method further comprises: Decoding a bitstream to determine a third syntax element, the third syntax element being used to indicate an intra prediction mode of a motion vector of the current vertex in the first coordinate dimension.

32. The method of any one of claims 25-31, wherein, Different values of the first syntax element indicate different intra prediction modes. The method further comprises decoding a bitstream to determine a motion vector decoded value of the current vertex in the first coordinate dimension.

33. The method of any one of claims 25-31, wherein, The determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension comprises:

34. The method of claim 27, wherein, The determining the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension comprises: The first syntax element is used to indicate a prediction mode of a motion vector of a current group in the first coordinate dimension; the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group. The method further comprises:

35. The method of any one of claims 25-34, wherein, Determining a homologous point of the current vertex in a base mesh of a reference image; 36. The method of any one of claims 25-34, wherein, According to the coordinate reconstruction value of the homologous point in the first coordinate dimension and the motion ​ ​ determining a motion vector residual value of the current vertex in the first coordinate dimension according to a motion vector reconstructed value of an inter prediction point of the current vertex in the first coordinate dimension, wherein the inter prediction point is a vertex in a base mesh of a reference image; and 37. A method of encoding, the method being applied to an encoder, the method comprising: determining a prediction mode of a motion vector of a current vertex in a first coordinate dimension from candidate prediction modes of the motion vector of the current vertex in the first coordinate dimension, wherein the candidate prediction modes comprise an inter prediction mode; and determining a first syntax element according to the prediction mode, wherein the first syntax element is used to indicate the prediction mode of the motion vector of the current vertex in the first coordinate dimension; and writing the first syntax element into a bitstream.

38. The method of claim 37, wherein, The method further comprises: determining a motion vector residual value of the current vertex in the first coordinate dimension according to a motion vector reconstructed value of an inter prediction point of the current vertex in the first coordinate dimension, wherein the inter prediction point is a vertex in a base mesh of a reference image; and writing the motion vector residual value of the current vertex in the first coordinate dimension into the bitstream.

39. The method of claim 38, wherein, The determining a motion vector residual value of the current vertex in the first coordinate dimension according to a motion vector reconstructed value of an inter prediction point of the current vertex in the first coordinate dimension comprises: determining a motion vector predictor value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension; and determining the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector predictor value of the current vertex in the first coordinate dimension.

40. The method of claim 39, wherein, The motion vector predictor value of the current vertex in the first coordinate dimension is equal to an average or a weighted average of the motion vector reconstructed values of the inter prediction points.

41. The method of claim 39, wherein, The determining a motion vector predictor value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension comprises: determining a first offset value; and determining the motion vector predictor value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension and the first offset value.

42. The method of claim 41, wherein, The determining a motion vector predictor value of the current vertex in the first coordinate dimension according to the motion vector reconstructed value of the inter prediction point in the first coordinate dimension and the first offset value comprises: determining weight coefficients corresponding to the inter prediction points, respectively; and determining a weighted value of the motion vector reconstructed value of the corresponding inter prediction point in the first coordinate dimension according to the weight coefficients of the inter prediction points; and determining the motion vector predictor value of the current vertex in the first coordinate dimension according to the weighted value of the inter prediction point and the first offset value.

43. The method of claim 37, wherein, The method further comprises: In a case where the prediction mode is the intra prediction mode, determine an intra prediction point of the current vertex in a base mesh of the current image; wherein the intra prediction point comprises at least one vertex in the base mesh of the current image which has a connection relationship with the current vertex and a decoding sequence before the current vertex; determine a motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension; write the motion vector residual value of the current vertex in the first coordinate dimension into a bitstream.

44. The method of claim 43, wherein, The determining of the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises: determine a motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension; determine the motion vector residual value of the current vertex in the first coordinate dimension according to the motion vector prediction value of the current vertex in the first coordinate dimension.

45. The method of claim 44, wherein, The motion vector prediction value of the current vertex in the first coordinate dimension is equal to an average value or a weighted average value of the motion vector reconstruction values of the intra prediction points.

46. The method of claim 44, wherein, The determining of the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension comprises: determine a second offset value; determine the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value.

47. The method of claim 46, wherein, The determining of the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value comprises: determine weight coefficients corresponding to the intra prediction points respectively; determine a weighted value of the motion vector reconstruction value of the corresponding intra prediction point in the first coordinate dimension according to the weight coefficients of the intra prediction points; determine the motion vector prediction value of the current vertex in the first coordinate dimension according to the weighted value of the intra prediction point and the second offset value.

48. The method of claim 38, wherein, The inter prediction point comprises a homonym of the current vertex in a base mesh of the reference image and / or at least one vertex in the base mesh of the reference image which has a connection relationship with the homonym.

49. The method of claim 39, wherein, The inter prediction point is the homonym, and the motion vector prediction value of the current vertex in the first coordinate dimension is equal to a motion vector reconstruction value of the homonym.

50. The method of claim 41, wherein, The determining of the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the inter prediction point in the first coordinate dimension and the first offset value comprises: determine a first accumulated value of the motion vector reconstruction value of the inter prediction point in the first coordinate dimension; determine the motion vector prediction value of the current vertex in the first coordinate dimension according to the first accumulated value and the first offset value.

51. The method of claim 41, 42, or 50, wherein, The determining of the first offset value comprises: The first offset value is determined according to the number of the inter prediction points.

52. The method of any one of claims 37-42, 48-50, wherein, The method further comprises: writing, into a bitstream, a second syntax element used for indicating an inter prediction mode of the current vertex in the first coordinate dimension.

53. The method of any one of claims 37-42, 48-50, wherein, Different values of the first syntax element indicate different inter prediction modes.

54. The method of claim 46, wherein, The determining of the motion vector prediction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the intra prediction point in the first coordinate dimension and the second offset value comprises: determining a second accumulated value of the motion vector reconstruction value of the intra prediction point in the first coordinate dimension; determining the motion vector prediction value of the current vertex in the first coordinate dimension according to the second accumulated value and the second offset value.

55. The method of any one of claims 46, 47, 54, wherein, The determining of the second offset value comprises: determining the second offset value according to the number of the intra prediction points.

56. The method of any one of claims 43-47, 54, wherein, The method further comprises: writing, into a bitstream, a third syntax element used for indicating an intra prediction mode of the current vertex in the first coordinate dimension.

57. The method of any one of claims 43-47, 54, wherein, Different values of the first syntax element indicate different intra prediction modes.

58. The method of claim 37 or 43, wherein, The method further comprises: The determining of the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector residual value of the current vertex in the first coordinate dimension.

59. The method of any one of claims 37-58, wherein, The first syntax element is used for indicating a prediction mode of a motion vector of a current group in a first coordinate dimension; the current group is a group of vertices in a base mesh of the current image, and the current vertex belongs to the current group.

60. The method of any one of claims 37-58, wherein, In a case where the base mesh of the reference image of the current image uses an inter coding mode and the base mesh of the current image uses an inter coding mode, performing the steps of the coding method on the current vertex. 61.A coding method, applied to an encoder, the method comprising: in a case where a prediction mode of a motion vector of a current vertex in a first coordinate dimension is an intra prediction mode, determining a weight coefficient of an intra prediction point of the current vertex; wherein the intra prediction point is a vertex in a base mesh of the current image; determining a motion vector residual value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and a motion vector reconstruction value of the intra prediction point in the first coordinate dimension; writing, into a bitstream, the motion vector residual value of the current vertex in the first coordinate dimension.

62. The method of claim 61, wherein, The method further comprises: determining a first syntax element according to the prediction mode; wherein the first syntax element is used for indicating the prediction mode of the motion vector of the current vertex in the first coordinate dimension; and prediction modes of the motion vector of the current vertex in different coordinate dimensions are indicated by different syntax elements; writing, into a bitstream, the first syntax element.

63. The method of claim 61, wherein, The intra prediction point comprises at least one vertex in the base mesh of the current image which has a connection relationship with the current vertex and is in a decoding order before the current vertex.

64. The method of claim 61, wherein, The determining the motion vector residual value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstructed value of the intra prediction point in the first coordinate dimension comprises: The determining the motion vector predicted value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstructed value of the intra prediction point in the first coordinate dimension comprises: The determining the motion vector predicted value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstructed value of the intra prediction point in the first coordinate dimension comprises:

65. The method of claim 64, wherein, The motion vector predicted value of the current vertex in the first coordinate dimension is equal to a weighted average value of the motion vector reconstructed value of the intra prediction point.

66. The method of claim 64, wherein, The determining the motion vector predicted value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstructed value of the intra prediction point in the first coordinate dimension comprises: The determining the second offset value comprises: The determining the motion vector predicted value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point, the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value comprises:

67. The method of claim 66, wherein, The determining the motion vector predicted value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point, the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value comprises: The determining the motion vector predicted value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point, the motion vector reconstructed value of the intra prediction point in the first coordinate dimension and the second offset value comprises: The determining the second offset value comprises:

68. The method of claim 66, wherein, The determining the second offset value comprises: The method further comprises:

69. The method of any one of claims 62-68, wherein, writing a third syntax element into the bitstream, the third syntax element being used for indicating the intra prediction mode of the motion vector of the current vertex in the first coordinate dimension. Different values of the first syntax element indicate different intra prediction modes.

70. The method of any one of claims 62-68, wherein, The method further comprises:

71. The method of any one of claims 62-68, wherein, The determining the motion vector reconstructed value of the current vertex in the first coordinate dimension according to the motion vector residual value of the current vertex in the first coordinate dimension. The first syntax element is used for indicating the prediction mode of the motion vector of the current group in the first coordinate dimension; the current group is a group of vertices in the base mesh of the current image, and the current vertex belongs to the current group.

72. The method of any one of claims 62-68, wherein, 73.A decoding apparatus applied to a decoder, the apparatus comprising: a decoding module configured to decode a bitstream and determine a first syntax element, the first syntax element being used for indicating the prediction mode of the motion vector of a current vertex in a first coordinate dimension; the prediction mode of the motion vector of the current vertex in a different coordinate dimension is indicated by a different syntax element; the current vertex is a vertex in a base mesh of a current image; ​ The first determining module is configured to determine the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the motion vector reconstruction value of the inter prediction point of the current vertex in the first coordinate dimension, in the case that the prediction mode indicated by the first syntax element is the inter prediction mode. The inter prediction point is a vertex in a base grid of a reference image.

74. A decoding apparatus applied to a decoder, the apparatus comprising: A decoding module configured to decode a bitstream to determine a first syntax element, the first syntax element being used to indicate a prediction mode of a motion vector of a current vertex in a first coordinate dimension; the prediction mode of the motion vector of the current vertex in a different coordinate dimension being indicated by a different syntax element; the current vertex being a vertex in a base grid of a current image; A second determining module configured to determine a weight coefficient of an intra prediction point of the current vertex, in the case that the prediction mode indicated by the first syntax element is the intra prediction mode; the intra prediction point being a vertex in the base grid of the current image; A third determining module configured to determine the motion vector reconstruction value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and the motion vector reconstruction value of the intra prediction point in the first coordinate dimension.

75. An encoding apparatus applied to an encoder, the apparatus comprising: A fourth determining module configured to determine a prediction mode of a motion vector of a current vertex in a first coordinate dimension from candidate prediction modes of the motion vector of the current vertex in the first coordinate dimension; the candidate prediction modes including an inter prediction mode; the current vertex being a vertex in a base grid of a current image; A fifth determining module configured to determine a first syntax element according to the prediction mode; the first syntax element being used to indicate the prediction mode of the motion vector of the current vertex in the first coordinate dimension; the prediction mode of the motion vector of the current vertex in a different coordinate dimension being indicated by a different syntax element; An encoding module configured to write the first syntax element into a bitstream.

76. An encoding apparatus applied to an encoder, the apparatus comprising: A sixth determining module configured to determine a weight coefficient of an intra prediction point of a current vertex, in the case that a prediction mode of a motion vector of the current vertex in a first coordinate dimension is an intra prediction mode; the intra prediction point being a vertex in a base grid of a current image; A seventh determining module configured to determine a motion vector residual value of the current vertex in the first coordinate dimension according to the weight coefficient of the intra prediction point and a motion vector reconstruction value of the intra prediction point in the first coordinate dimension; the inter prediction point being a vertex in a base grid of a reference image; An encoding module configured to write the motion vector residual value of the current vertex in the first coordinate dimension into a bitstream.

77. A decoder comprising a first memory and a first processor; wherein the first memory is configured to store a computer program capable of running on the first processor; The first processor is configured to implement a method according to any one of claims 1-24 when executing the computer program, or implement a method according to any one of claims 25-36 when executing the computer program.

78. An encoder comprising a second memory and a second processor; wherein, The second memory is configured to store a computer program capable of running on the second processor; The second processor is configured to implement a method according to any one of claims 37-60 when executing the computer program, or implement a method according to any one of claims 61-72 when executing the computer program.

79. A code stream, wherein the code stream is obtained by the method of any one of claims 37-60, or the code stream is obtained by the method of any one of claims 61-72.

80. An electronic device comprising: a processor adapted to execute a computer program; a computer readable storage medium having stored therein a computer program which, when executed by the processor, implements a method according to any one of claims 1-24, or when executed by the processor, implements a method according to any one of claims 25-36, or when executed by the processor, implements a method according to any one of claims 37-60, or when executed by the processor, implements a method according to any one of claims 61-72.

81. A computer readable storage medium, wherein, The computer readable storage medium has stored therein a computer program which, when executed by the processor, implements a method according to any one of claims 1-24, or when executed by the processor, implements a method according to any one of claims 25-36, or when executed by the processor, implements a method according to any one of claims 37-60, or when executed by the processor, implements a method according to any one of claims 61-72.

82. A computer program product comprising computer programs or instructions, wherein, The computer program or instructions, when executed by the processor, implement a method according to any one of claims 1-24, or when executed by the processor, implement a method according to any one of claims 25-36, or when executed by the processor, implement a method according to any one of claims 37-60, or when executed by the processor, implement a method according to any one of claims 61-72.

Citation Information

Patent Citations

  • Vertex rearrangement for mesh compression

    CN116324912A

  • Mesh Compression Using Coding Units with Different Encoding Parameters

    US20230401755A1

  • Parameterization-guided packing of displacements for dynamic mesh coding

    WO2024079653A1