A Method and System for Generating Virtual Digital Humans Based on Modular Parameters
By employing geometric splicing, adaptive skeletal placement, and graph neural network refinement, the problem of poor animation effects in modular virtual digital human generation was solved, achieving efficient and automated virtual digital human generation with natural and realistic animation effects.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- DAOYOUDAO TECH GRP CO LTD
- Filing Date
- 2025-12-26
- Publication Date
- 2026-04-21
AI Technical Summary
Existing automated skinning technology struggles to achieve natural and realistic animation effects in modular virtual digital human generation, especially at module joints and joint areas, resulting in visual flaws that require extensive manual adjustments and impact production efficiency.
A virtual digital human generation method based on modular parameters is adopted. Through geometric splicing, adaptive bone placement, global geodesic distance field calculation, initial weight coarse allocation, and weight refinement based on graph neural network, a smooth and accurate final weight matrix is generated to achieve automated skinning.
It generates virtual digital humans without human intervention, achieving natural and realistic animation effects at splicing points and joints. It realizes a highly efficient and fully automated generation process, solving the problem of relying on manual correction in existing technologies.
Smart Images

Figure CN121437698B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of virtual digital human generation technology, specifically to a method and system for generating virtual digital humans based on modular parameters. Background Technology
[0002] With the development of industries such as metaverse, film and animation, and gaming, virtual digital humans, as a core interactive carrier and content production element, are increasingly widely used. To meet the massive, diverse, and personalized market demands, efficiently generating virtual digital humans with realistic animation effects has become a key technology in the industry. Modular parameter generation methods have emerged, allowing users to quickly customize and create unique virtual avatars by combining different body parts, greatly improving generation efficiency. However, seamlessly integrating these independently generated modules into a unified whole capable of natural and realistic animation still faces technical challenges.
[0003] Before a virtual digital human can function, the assembled 3D mesh model must be bound to its internal driving skeleton—a process known as skinning or weighting. Its core is assigning appropriate weight values to each vertex of the mesh, influenced by one or more bones. As the skeleton moves, the mesh deforms smoothly and naturally. Existing automated skinning techniques typically use methods based on geometric proximity, such as geodesic distance, to initially estimate weights. While these methods can quickly complete the initial assignment, their results often fall short of ideal standards. Because they rely solely on the distance information between vertices and bones, unreasonable weighting often occurs when dealing with areas with complex model structures or unique topological connections, such as the neck at module joints and joint areas like the shoulders and hips. This leads to serious visual flaws during animation, compromising the realism of the virtual digital human. To correct these defects, technical artists have to invest significant time in tedious manual weight drawing and adjustment, which contradicts the efficiency and automation goals pursued by modular generation, hindering the production efficiency and application of virtual digital humans.
[0004] Therefore, an optimized, modular parameter-based virtual digital human generation scheme is needed to solve the aforementioned technical problems. Summary of the Invention
[0005] The present invention aims to solve at least one of the technical problems existing in the prior art, and provides a method and system for generating virtual digital humans based on modular parameters.
[0006] In a first aspect, an embodiment of the present invention provides a method for generating a virtual digital human based on modular parameters, characterized in that it includes:
[0007] Geometrically stitch the head module mesh data and the torso module mesh data to obtain a composite mesh;
[0008] Based on the composite mesh, the template skeleton is adaptively placed to obtain the adapted skeleton.
[0009] Global geodesic distance field calculations are performed on the combined mesh and the adapted skeleton to obtain the geodesic distance matrix;
[0010] The initial weight matrix is obtained by coarsely assigning initial weights based on the geodesic distance matrix.
[0011] Based on the geodesic distance matrix and the initial weight matrix, the combined mesh is refined using a graph neural network to obtain the final weight matrix;
[0012] The final weight matrix is applied to the combined mesh to obtain a skinned virtual digital human.
[0013] Secondly, embodiments of the present invention provide a virtual digital human generation system based on modular parameters, characterized in that it includes:
[0014] The geometric stitching module is used to geometrically stitch together the head module mesh data and the torso module mesh data to obtain a combined mesh.
[0015] The skeleton placement module is used to adaptively place the skeleton of the template skeleton based on the composite mesh to obtain the adapted skeleton.
[0016] The geodesic distance field calculation module is used to perform global geodesic distance field calculations on the combined mesh and the adapted skeleton to obtain the geodesic distance matrix.
[0017] The coarse weight allocation module is used to perform initial coarse weight allocation based on the geodesic distance matrix to obtain the initial weight matrix.
[0018] The weight refinement module is used to refine the combined mesh based on the geodesic distance matrix and the initial weight matrix to obtain the final weight matrix.
[0019] The weight matrix application module is used to apply the final weight matrix to the combined mesh to obtain a skinned virtual digital human.
[0020] Beneficial Effects: Compared with existing technologies, this invention proposes an automatic generation and skinning method for modular virtual digital humans that combines traditional geometric processing with deep learning. Specifically, to address the problem of poor animation effects at the joints and seams of modular characters, which rely on manual correction, the invention first automatically splices and stitches the user-specified head and torso module meshes to form a complete composite mesh, and adaptively places a driving skeleton for it. Subsequently, a two-stage strategy of coarse-fine adjustment is adopted for skinning weight allocation. It first obtains an initial, coarse weight scheme by calculating the global geodesic distance field. Further, by abstracting the composite mesh into an attribute graph, and using the geometric distance information and the initial weight information as features of the graph nodes, it inputs them into a pre-trained graph neural network model for intelligent refinement. Utilizing the powerful graph structure feature learning capability of the graph neural network, unreasonable weight distributions in the initial scheme are automatically corrected, and a smooth and accurate final weight matrix is finally output. Applying this weight to the model generates a virtual digital human that achieves natural and realistic animation effects at the joints and seams without manual intervention, realizing a highly efficient and fully automated generation process. Attached Figure Description
[0021] The above and other objects, features, and advantages of the present invention will become more apparent from the more detailed description of the embodiments of the invention in conjunction with the accompanying drawings. The drawings are provided to further illustrate the embodiments of the invention and form part of the specification. They are used together with the embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same parts or steps.
[0022] Figure 1 A flowchart of a virtual digital human generation method based on modular parameters according to an embodiment of the present invention;
[0023] Figure 2 This is a data flow diagram of a virtual digital human generation method based on modular parameters according to an embodiment of the present invention;
[0024] Figure 3 A flowchart illustrating the global geodesic distance field calculation of the combined mesh and the adapted skeleton according to an embodiment of the present invention to obtain the geodesic distance matrix;
[0025] Figure 4 This is a flowchart illustrating how, according to an embodiment of the present invention, a graph neural network-based weight refinement is performed on a combined mesh to obtain a final weight matrix based on a geodesic distance matrix and an initial weight matrix.
[0026] Figure 5 A flowchart illustrating how the combined mesh is constructed into an attribute graph based on a geodesic distance matrix and an initial weight matrix, according to an embodiment of the present invention;
[0027] Figure 6 This is a block diagram of a virtual digital human generation system based on modular parameters according to an embodiment of the present invention. Detailed Implementation
[0028] To enable those skilled in the art to better understand the technical solutions of the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. All other embodiments obtained by those skilled in the art based on the described embodiments of the present invention without creative effort are within the scope of protection of the present invention.
[0029] Unless otherwise specifically stated, the technical or scientific terms used in the embodiments of this invention should be understood in their ordinary meaning as understood by one of ordinary skill in the art to which this invention pertains. The terms "comprising" or "including," as used in the embodiments of this invention, do not limit the shapes, numbers, steps, actions, operations, components, elements, and / or groups thereof mentioned, nor do they exclude the appearance or addition of one or more other different shapes, numbers, steps, actions, operations, components, elements, and / or groups thereof, or the inclusion of these.
[0030] Unless otherwise specifically stated, the relative arrangement, numerical expressions, and values of the components and steps described in these embodiments do not limit the scope of the invention. It should also be understood that, for ease of description, the dimensions of the various parts shown in the drawings are not drawn to actual scale, and techniques, methods, and apparatus known to those skilled in the art may not be discussed in detail; however, where appropriate, the illustrated techniques, methods, and apparatus should be considered part of the specification. In all the examples shown and discussed herein, any other specific example may have different values. It should be noted that similar symbols and letters in the following figures denote similar items; therefore, once an item is defined in one figure, it need not be further discussed in subsequent figures.
[0031] In the description of the embodiments of the present invention, the terms "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of the present invention. In the embodiments of the present invention, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described may be combined in a suitable manner in any one or more embodiments or examples. Furthermore, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in the embodiments of the present invention, as well as the features of different embodiments or examples.
[0032] Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. It is obvious that the described embodiments are merely some embodiments of the present invention, and not all embodiments of the present invention, and it should be understood that the present invention is not limited to the exemplary embodiments described herein.
[0033] It should be noted in advance that all acquisition and processing of images, information or data in this invention are carried out in compliance with relevant data protection laws and policies and with authorization from the owners of the relevant devices.
[0034] In the technical solution of this invention, a method for generating virtual digital humans based on modular parameters is proposed. Figure 1 This is a flowchart of a virtual digital human generation method based on modular parameters according to an embodiment of the present invention. Figure 2 This is a schematic diagram of the data flow in a virtual digital human generation method based on modular parameters according to an embodiment of the present invention. Figure 1 and Figure 2 As shown, the method and system for generating virtual digital humans based on modular parameters according to an embodiment of the present invention includes the following steps: S100, geometrically stitching together head module mesh data and torso module mesh data to obtain a combined mesh; S200, based on the combined mesh, adaptively placing the skeleton of the template to obtain an adapted skeleton; S300, performing global geodesic distance field calculation on the combined mesh and the adapted skeleton to obtain a geodesic distance matrix; S400, performing initial weight coarse allocation based on the geodesic distance matrix to obtain an initial weight matrix; S500, based on the geodesic distance matrix and the initial weight matrix, performing weight refinement on the combined mesh based on a graph neural network to obtain a final weight matrix; S600, applying the final weight matrix to the combined mesh to obtain a skinned virtual digital human.
[0035] Specifically, in step S100, the head module mesh data and the torso module mesh data are geometrically stitched together to obtain a combined mesh. Specifically, since the input head module mesh data and torso module mesh data are two independent geometric entities, they cannot be treated as a whole for subsequent skeleton rigging and skinning weight calculation. Therefore, in the technical solution of this application, the head module mesh data and torso module mesh data are geometrically stitched together to obtain a combined mesh, thereby merging the separate body parts into a topologically continuous and watertight single mesh model. This provides a unified geometric basis for subsequent steps such as adaptive skeleton placement, global distance field calculation, and skinning weight allocation, ensuring that the various parts of the virtual digital human body can deform collaboratively and naturally.
[0036] More specifically, in a specific example of this application, the virtual digital human generation method based on modular parameters geometrically stitches together head module mesh data and torso module mesh data to obtain a composite mesh, including: identifying the lower edge of the neck in the head module mesh data; identifying the upper edge of the neck in the torso module mesh data; and performing vertex merging and patch reconstruction on the lower edge of the neck in the head module mesh data and the upper edge of the neck in the torso module mesh data to obtain the composite mesh. That is, more specifically, after receiving the head module mesh data and torso module mesh data, boundary recognition is first performed, that is, accurately identifying a sequence of open boundary vertices representing the lower edge of the neck in the head module mesh data, and another sequence of open boundary vertices representing the upper edge of the neck in the torso module mesh data. While ensuring that the number of vertices in the two boundary rings is consistent, a one-to-one correspondence is established between the two vertex sequences. Finally, vertex merging and patch reconstruction operations are performed, that is, merging each pair of corresponding boundary vertices into a new vertex, and filling the gaps between the newly generated vertex rings by creating new polygonal patches, ultimately generating a seamlessly connected composite mesh.
[0037] Specifically, in step S200, based on the combined mesh, the template skeleton is adaptively placed to obtain the adapted skeleton. Specifically, since the combined mesh generated in the previous step is only a static 3D model, it does not inherently possess the ability to drive animation, and its shape and size dynamically change according to the module combination, it cannot be directly matched with a standardized template skeleton. Therefore, in the technical solution of this application, the template skeleton is further adaptively placed based on the combined mesh to obtain the adapted skeleton, thereby generating an internally driving skeleton that precisely matches the combined mesh of this specific shape. This ensures that the joints of the skeleton correctly correspond to the anatomical key positions of the mesh model, providing the necessary prerequisite for achieving realistic and natural skin deformation effects in the future.
[0038] More specifically, in a specific example of this application, based on a composite mesh, adaptive bone placement is performed on the template skeleton to obtain the adapted skeleton, including: locating mesh semantic feature points on the composite mesh to obtain a target feature point set; performing alignment transformation on the target feature point set and the template skeleton to obtain a global transformation matrix and a bone scaling factor; and applying a hierarchical transformation to the template skeleton based on the global transformation matrix and the bone scaling factor to skeleton generation to obtain the adapted skeleton. That is, more specifically, firstly, mesh semantic feature point location is performed on the composite mesh, i.e., automatically identifying and marking a series of preset anatomical key points such as shoulder, elbow, wrist, hip, knee, and ankle on the mesh surface to obtain the target feature point set. Subsequently, this target feature point set is compared with a predefined corresponding feature point set on the template skeleton, and a global transformation matrix and a series of bone scaling factors that achieve the best match between the two are calculated using an alignment transformation algorithm. Finally, the obtained global transformation matrix and bone scaling factor are applied to the template skeleton in the form of layered transformation. The global transformation matrix is responsible for translating and rotating the entire skeleton to align with the center and orientation of the mesh, while the bone scaling factor adjusts the length of each bone one by one to match the body proportion of the mesh, and finally generates an adapted skeleton that perfectly fits the combined mesh.
[0039] Specifically, in step S300, a global geodesic distance field calculation is performed on the combined mesh and the adapted skeleton to obtain a geodesic distance matrix. Specifically, if only the linear spatial distance between the bones and mesh vertices is used as the influence criterion when assigning skinning weights, incorrect associations will occur. For example, a vertex on the left arm might be unexpectedly affected by the right torso bones due to its short spatial distance. Therefore, in the technical solution of this application, a global geodesic distance field calculation is further performed on the combined mesh and the adapted skeleton to obtain a geodesic distance matrix. This accurately calculates the shortest path distance from each mesh vertex along the model surface to each bone, generating a geodesic distance matrix that accurately reflects the true topological proximity between the bones and the mesh surface. This provides crucial, high-quality numerical basis for subsequent initial weight coarse allocation and weight refinement that are more anatomically consistent, effectively avoiding erroneous influence allocation problems caused by the complexity of the model pose.
[0040] Figure 3 This is a flowchart illustrating the global geodesic distance field calculation of the combined mesh and the adapted skeleton according to an embodiment of the present invention to obtain the geodesic distance matrix. (See flowchart for example.) Figure 3As shown, step S300 includes: S310, extracting vertex data from the combined mesh; S320, extracting line segment data of each bone from the adapted skeleton; S330, calculating the Euclidean distance between each vertex data and the line segment data of each bone to obtain an initial distance field; S340, performing geodesic distance propagation based on the fast travel method on the initial distance field to obtain the geodesic distance matrix.
[0041] In steps S310 and S320, vertex data is extracted from the combined mesh, and line segment data of each bone is extracted from the adapted skeleton. Specifically, since the combined mesh and the adapted skeleton are data structures containing complex information such as topology and hierarchical relationships, they cannot be directly used for numerical calculation of geometric distance. Therefore, in the technical solution of this application, vertex data is further extracted from the combined mesh, and line segment data of each bone is extracted from the adapted skeleton. This simplifies the complex model object into the basic geometric elements required for distance calculation, namely a set of three-dimensional points and a set of three-dimensional line segments. This provides regular and clear input data for subsequent calculation of the initial Euclidean distance field, enabling the distance solution process to be executed efficiently.
[0042] Specifically, in a concrete example of this application, to extract vertex data, the method iterates through all vertices in the composite mesh and records the coordinates of each vertex in three-dimensional space in turn. To extract skeletal segment data, this method iterates through all bones in the adapted skeleton, for the first... For the root bone, obtain its starting joint endpoint. and end joint endpoint The spatial coordinates of these two endpoints together constitute the line segment data representing the skeleton.
[0043] In step S330, the Euclidean distance between each vertex data and the line segment data of each bone is calculated to obtain an initial distance field. Specifically, since the subsequent geodesic distance propagation algorithm requires an initial distance distribution as the starting point for calculation, the technical solution of this application further calculates the Euclidean distance between each vertex data and the line segment data of each bone to obtain an initial distance field. This provides a basic, unobstructed straight-line distance reference value for all vertices on the mesh, providing the necessary initialization conditions for subsequent geodesic distance calculations. This allows distance propagation and updates to be performed along the mesh surface based on this initial value, thereby obtaining a more accurate geodesic distance.
[0044] More specifically, in a particular example of this application, for the first Vertex data and by endpoints and The defined first The method first uses the formula: (The data consists of several skeletal segments.)
[0045]
[0046] Calculate the projection position parameters of the vertex onto the line containing the skeletal segment. ,in, and It is the first The two endpoints of the line segment data of a skeleton. For the first Each vertex has its own data. Then, using the formula... By constraining the projection points between the two endpoints of the skeletal line segment, the point on the line segment closest to the vertex can be found. Finally, using the formula Calculate vertices With the nearest point The straight-line distance between the vertex and the bone is the Euclidean distance from that vertex to that bone. This process is repeated for all combinations of vertices and bones to obtain the complete initial distance field.
[0047] In step S340, the initial distance field is propagated using geodesic distance propagation based on the fast-walking method to obtain the geodesic distance matrix. Specifically, since the initial distance field calculated in the previous step is based on Euclidean distance, it only represents the straight-line spatial distance between vertices and bones, failing to consider the surface topology of the combined mesh, which can lead to illogical proximity judgments. Therefore, in the technical solution of this application, the initial distance field is further propagated using geodesic distance propagation based on the fast-walking method to obtain the geodesic distance matrix. This propagates the distance values outward from the bones along the mesh surface, calculates the true shortest surface path length from each vertex to each bone, and generates a geodesic distance matrix that accurately reflects the topological proximity relationship of the model, providing a more reliable geometric basis that conforms to anatomical logic for subsequent weight allocation.
[0048] Specifically, in a concrete example of this application, the geodesic distance propagation process is accomplished using a numerical algorithm called the fast travel method, which simulates the process of wavefront expansion from the source point onto the mesh surface. Specifically, for a bone in the adapted skeleton, the set of vertices closest to that bone in the initial distance field is first taken as the source set, and their geodesic distance values are initialized to their Euclidean distance values and placed in a priority queue; the geodesic distances of all other vertices are initialized to infinity. Subsequently, the algorithm enters an iterative propagation phase: continuously retrieving the vertex with the smallest current geodesic distance from the priority queue and marking its state as determined. For each adjacent vertex of this determined vertex, the algorithm updates its geodesic distance through that determined vertex by solving the Eikona equation. If the newly calculated distance value is less than the original recorded value of the adjacent vertex, its distance value is updated, and its position in the priority queue is adjusted. This process is repeated until the priority queue is empty, at which point the geodesic distances from all vertices on the mesh to the bone have been calculated. Applying this process to each bone in the adapted skeleton will eventually build a complete geodesic distance matrix.
[0049] Specifically, in step S400, an initial weight matrix is obtained by coarsely allocating initial weights based on the geodesic distance matrix. Since the geodesic distance matrix obtained in the previous step only contains path length information between vertices and bones, its values cannot be directly used as skinning weights. Therefore, in the technical solution of this application, an initial weight matrix is further obtained by coarsely allocating initial weights based on the geodesic distance matrix. This transforms the geometric measure of geodesic distance into weight influence values that meet skinning requirements, generating a preliminary but logically reasonable weight allocation scheme, providing a high-quality input foundation for the subsequent weight refinement step based on the graph neural network.
[0050] More specifically, in a concrete example of this application, the initial coarse weight allocation process is accomplished by converting geodesic distances into raw influence scores using an inverse proportional function, and then normalizing the scores. That is, the method first uses the formula:
[0051] To calculate the original influence score matrix. In this formula, It is the first The vertex data is transferred to the first vertex. Geodesic distance of each bone It is an adjustable decay exponent used to control the decay rate of the weight as distance increases, while This is a stabilization constant used to avoid division by zero errors when the distance is zero. This formula ensures that bones closer to each other receive higher initial influence scores. After calculating the initial influence scores of all vertices on all bones, the method then performs vertex-by-vertex weight normalization on the score matrix. That is, for each vertex, the initial scores of its influence from all bones are summed, and then each initial score is divided by this sum, so that the sum of all bone weights assigned to that vertex is exactly equal to 1, thus obtaining an initial weight matrix that conforms to the skinning criteria.
[0052] Specifically, in step S500, the combined mesh is refined using a graph neural network based on the geodesic distance matrix and the initial weight matrix to obtain the final weight matrix. Specifically, since the initial weight matrix generated in the previous step based on the geodesic distance is only a preliminary estimate based on geometric proximity, it still suffers from stiff weight distribution and unsmooth transitions when dealing with complex topological joint areas such as the shoulder and hip joints, easily resulting in unnatural deformations during animation. Therefore, in the technical solution of this application, the combined mesh is further refined using a graph neural network based on the geodesic distance matrix and the initial weight matrix to obtain the final weight matrix. This leverages the powerful graph structure feature learning and reasoning capabilities of deep learning models to automatically optimize and smooth the coarse initial weights. This simulates the process of technical art experts manually correcting weights, intelligently improving the distribution of weights in key areas, and ultimately generating a final weight matrix capable of driving high-quality, realistic animation effects. This solves the technical pain points of traditional automated skinning methods, which suffer from poor results and reliance on manual adjustments.
[0053] Figure 4 This is a flowchart illustrating how, according to an embodiment of the present invention, weight refinement of a composite mesh based on a graph neural network is performed to obtain a final weight matrix, using a geodesic distance matrix and an initial weight matrix; as shown below. Figure 4 As shown, step S500 includes: S510, constructing an attribute graph from the combined grid based on the geodesic distance matrix and the initial weight matrix; S520, inputting the attribute graph into a pre-trained graph neural network model to obtain a refined feature matrix; S530, normalizing the refined feature matrix to obtain the final weight matrix.
[0054] In step S510, the combined mesh is constructed into an attribute graph based on the geodesic distance matrix and the initial weight matrix. Specifically, since the graph neural network model needs to receive graph structure data in a specific format as input, and the combined mesh itself and its associated geodesic distance matrix and initial weight matrix are not data formats that the graph neural network can directly process, the technical solution of this application further constructs the combined mesh into an attribute graph based on the geodesic distance matrix and the initial weight matrix. This integrates and encodes the geometric topology of the 3D model with key numerical features, generating a data structure that can describe the connection relationships between mesh vertices and carry rich attribute information at each vertex. This provides the necessary and appropriate input for subsequent feature propagation, aggregation, and updating of the graph neural network model, thereby achieving weight refinement.
[0055] Figure 5 This is a flowchart illustrating how, according to an embodiment of the present invention, the combined mesh is constructed as an attribute graph based on a geodesic distance matrix and an initial weight matrix. For example... Figure 5 As shown, step S510 includes: S511, extracting the first weight from the geodesic distance matrix and the initial weight matrix. The row vector of the row is used to obtain the first row. The first feature subpart of the node and the first The second feature sub-part of the node; S512, fused with the first The first feature subpart of the node and the first The second feature sub-part of the nth node is used to obtain the nth node in the attribute graph. Initial characteristics of each node.
[0056] In step S511, the first weight is extracted from the geodesic distance matrix and the initial weight matrix. The row vector of the row is used to obtain the first row. The first feature subpart of the node and the first The second feature sub-part of each node. Specifically, when constructing the attribute graph, each graph node representing a grid vertex needs to be assigned a set of initial numerical features for subsequent graph neural network model learning and processing. Therefore, in the technical solution of this application, the row vector of the i-th row is further extracted from the geodesic distance matrix and the initial weight matrix to obtain the first feature sub-part and the second feature sub-part of the i-th node. This configures a set of initial feature vectors that can comprehensively describe its geometric and weight attributes for each graph node, and can encode the global relationship between the vertex and the entire skeleton into structured numerical information, providing the necessary data foundation for subsequent feature fusion and weight refinement.
[0057] More specifically, in a concrete example of this application, to construct the initial features of the i-th node corresponding to the i-th grid vertex in the attribute graph, the method first accesses the geodesic distance matrix and extracts its entire i-th row. The dimension of this row vector is equal to the number of bones in the skeleton, and each element represents the geodesic distance from the i-th vertex to the corresponding bone. This row vector is defined as the first feature sub-component of the i-th node. Next, the method accesses the initial weight matrix in the exact same way and extracts its i-th row. This row vector also contains values related to all bones, and each element represents the magnitude of the initial weight influence of the corresponding bone on the i-th vertex. This row vector is defined as the second feature sub-component of the i-th node.
[0058] In step S512, the fusion of the first The first feature subpart of the node and the first The second feature sub-part of the nth node is used to obtain the nth node in the attribute graph. The initial features of each node. Specifically, since the first and second feature sub-parts extracted from the geodesic distance matrix and the initial weight matrix represent the geometric attributes and initial weight attributes of the node, respectively, these two features are regarded as probability distributions sampled from different underlying data manifolds. If they are fused by simple linear combination, it is impossible to capture the deep-seated intrinsic correspondence between the two regarding geometric shape and distribution structure. Therefore, in the technical solution of this application, the first feature sub-part of the i-th node and the second feature sub-part of the i-th node are further integrated to obtain the initial feature of the i-th node in the attribute graph. This elevates the feature interaction from the traditional linear combination paradigm to the category of geometric alignment and manifold transformation in the learned non-Euclidean space. By using optimal transport theory, a nonlinear distortion scheme with global optimality is calculated to simulate the structural influence of the geometric feature space on the weight feature space. This model can model the interaction process itself as a principled and continuous manifold deformation, ultimately generating a compact and information-rich initial feature vector. This vector not only contains the original state but also encodes the contextual information of the two features after deep structural alignment, providing high-quality input for subsequent weight refinement of the graph neural network model.
[0059] Specifically, in the embodiments of this application, the fusion of the first The first feature subpart of the node and the first The second feature sub-part of the nth node is used to obtain the nth node in the attribute graph. The initial features of each node include: extracting local features of the first and second feature sub-parts using manifold local features based on one-dimensional convolutional coding to obtain a set of local scale encoded vectors of the first and second feature sub-parts; calculating the cost matrix between the set of local scale encoded vectors of the first and second feature sub-parts to obtain the feature sub-part cost matrix; deriving the optimal transfer mapping matrix of the feature sub-parts based on the feature sub-part cost matrix; using the optimal transfer mapping matrix of the feature sub-parts to perform feature manifold registration on the set of local scale encoded vectors of the second feature sub-parts to obtain a set of local scale encoded vectors after feature reconstruction of the second feature sub-parts; and performing fine-grained fusion interaction between the set of local scale encoded vectors of the first and second feature sub-parts and the set of local scale encoded vectors after feature reconstruction of the second feature sub-parts to obtain the initial features.
[0060] More specifically, manifold local feature extraction based on one-dimensional convolutional coding is performed on the first and second feature sub-parts to obtain a set of local scale encoded vectors of the first and second feature sub-parts, expressed by the following formula:
[0061]
[0062] in, Let be the set of local scale encoding vectors for the m-th feature sub-unit. Let τ be the local scale encoding vector at the τ-th position in the set. It is a non-linear activation function (such as ReLU or GeLU). The number of one-dimensional convolution kernels. Let be the weight matrix of the k-th convolutional filter. For the m-th feature sub-part, This is a sliding window slice of the m-th feature sub-part at position τ, with a window size of w. is the length of the sequence after convolution.
[0063] Specifically, since the first and second feature sub-parts extracted in the previous step are flat one-dimensional vectors, they are isolated points in high-dimensional space and lack representation of local dependencies and combination patterns within the features. Therefore, in the technical solution of this application, the first and second feature sub-parts are further subjected to manifold local feature extraction based on one-dimensional convolutional coding to obtain a set of local scale encoded vectors of the first and second feature sub-parts. This treats the unstructured flat vectors as one-dimensional signals and effectively captures the local dependencies and combination patterns within the features through the sliding window operation of the convolutional kernel. This enables the discretization sampling of an implicit, continuous feature manifold, transforming the features of the original feature sub-parts into a set of ordered local scale encoded vectors containing contextual information, laying a structured data foundation for subsequent geometric space measurement and alignment.
[0064] More specifically, the cost matrix between the set of local scale encoded vectors of the first feature sub-part and the set of local scale encoded vectors of the second feature sub-part is calculated to obtain the feature sub-part cost matrix, which is expressed by the following formula:
[0065]
[0066] in, is the element in the u-th row and v-th column of the feature sub-cost matrix, representing the matching cost between the u-th local scale encoded vector of the first feature sub-component in the set of local scale encoded vectors of the first feature sub-component and the v-th local scale encoded vector of the second feature sub-component in the set of local scale encoded vectors of the second feature sub-component. For set The local scale encoding vector of the u-th first feature sub-part in the data. For set The local scale encoding vector of the vth second feature sub-part in the data. Represents the L2 norm. To prevent tiny constants with a denominator of zero.
[0067] Specifically, since the previous step discretized the two feature sub-parts into sets of local scale encoding vectors, but these are only independent representations, the correspondence and distribution differences between them have not yet been quantified. Therefore, in the technical solution of this application, the cost matrix between the set of local scale encoding vectors of the first feature sub-part and the set of local scale encoding vectors of the second feature sub-part is further calculated to obtain the feature sub-part cost matrix. This defines a distance or cost metric between the two discretized feature manifolds, thereby quantifying the cost required to match any sampling point on the first manifold with any sampling point on the second manifold. This generates the geometric blueprint of the entire interaction process, providing a basic and quantitative basis for the subsequent derivation of the optimal mapping scheme based on optimal transmission theory.
[0068] More specifically, based on the cost matrix of the feature sub-parts, the optimal transport mapping matrix of the feature sub-parts is derived, expressed by the following formula:
[0069]
[0070] in, This is the optimal transfer mapping matrix for the characteristic sub-part. Let r and c be the set of transmission polyhedra distributed on the edges. For matrix The Shannon entropy, as a regularization term, is the entropy regularization coefficient, which controls the sparsity of the mapping. and This is the scale vector calculated using the Sinkhorn-Knopp iterative algorithm. To obtain the minimum value , It involves constructing a diagonal matrix.
[0071] Specifically, since the cost matrix generated in the previous step only quantifies the local cost of matching between arbitrary sampling points on two feature manifolds, but does not provide a global, structured alignment scheme, the technical solution of this application further derives the optimal transfer mapping matrix of the feature sub-parts based on the feature sub-part cost matrix. This introduces the optimal transfer theory to seek a globally optimal matching scheme that can transport or reshape a feature distribution into another feature distribution with the minimum total cost. This yields a soft transfer mapping that describes how to perform nonlinear, structure-preserving manifold transformations, providing a core transformation basis for subsequent principled and geometrically clear feature manifold registration operations.
[0072] More specifically, using the optimal transfer mapping matrix of the feature sub-part, feature manifold registration is performed on the set of local scale encoded vectors of the second feature sub-part to obtain the set of local scale encoded vectors after feature reconstruction of the second feature sub-part, expressed by the following formula:
[0073]
[0074] in, This represents the set of local scale encoding vectors after feature reconstruction of the second feature sub-feature. Let u be the local scale encoded vector of the second feature sub-feature after reconstruction in the set of local scale encoded vectors. At this point, it is geometrically aligned with the u-th local position of the first feature. This is a normalization factor (depending on the setting of the marginal distribution) used to preserve the scale of the feature amplitude. The weights in the optimal transport mapping matrix represent how much mass has moved from point v of the second feature to the corresponding point u.
[0075] Specifically, since the optimal transfer mapping matrix derived in the previous step is only a transformation scheme describing how to optimally align two feature distributions, and the second feature sub-part itself has not yet undergone actual geometric reshaping according to this scheme, the technical solution of this application further utilizes the optimal transfer mapping matrix of the feature sub-part to perform feature manifold registration on the set of local scale encoding vectors of the second feature sub-part to obtain a set of local scale encoding vectors after feature reconstruction of the second feature sub-part. This allows the transformation scheme to be actually applied to the second feature sub-part. Through a geometrically meaningful centroid projection, its feature manifold is reshaped according to the optimal path, generating a new set of reconstructed feature encoding vectors. This set is no longer an isolated self-representation but contains contextual information after deep structural alignment with the first feature sub-part, providing aligned input for the final fine-grained feature fusion interaction.
[0076] More specifically, a fine-grained fusion interaction is performed on the set of local scale encoded vectors of the first feature sub-part and the set of local scale encoded vectors after feature reconstruction of the second feature sub-part to obtain the initial features, expressed by the following formula:
[0077]
[0078] in, The initial features of the i-th node obtained after the fusion interaction are: Global aggregation functions (such as Global Average Pooling or Flatten followed by a fully connected layer) are used to compress sequence information into node-level features. This indicates an operation to traverse or concatenate the sequence along its dimension u. This represents a vector concatenation operation. This is the Hadamard product, used to capture the co-occurrence intensity between features. This is the squared difference term, used to explicitly capture the feature differences (changes) after alignment. It is a multilayer perceptron used to fuse the interactive signals from the above four dimensions.
[0079] Specifically, since the previous step aligned the feature manifold of the second feature sub-part to the first feature sub-part, they are still separate feature sets and have not yet been merged into a unified single feature that can characterize their interaction. Therefore, in the technical solution of this application, a fine-grained fusion interaction is performed on the set of local scale encoded vectors of the first feature sub-part and the set of local scale encoded vectors after feature reconstruction of the second feature sub-part to obtain initial features, thereby explicitly capturing and modeling the changes caused by the interaction between geometric and weighted features. In this way, a high-dimensional interaction tensor that simultaneously encodes the original feature sub-part state, the aligned feature sub-part state, and the difference information between the two can be constructed, and the interaction signals most critical to the weight refinement task can be adaptively extracted and integrated from it, ultimately generating a compact and information-rich initial feature vector as a high-quality attribute input for graph nodes.
[0080] Specifically, in step S600, the final weight matrix is applied to the combined mesh to obtain a skinned virtual digital human. Specifically, since the final weight matrix generated in the previous step is only a set of numerical data defining the rules for associating vertices and bones, and the combined mesh itself has not yet established an actual driving association with the adapted skeleton, in the technical solution of this application, the final weight matrix is further applied to the combined mesh to obtain a skinned virtual digital human. This formally assigns the refined weight information to each vertex of the combined mesh, completing the final binding between the mesh and the skeleton. This generates a complete virtual digital human asset that can be directly used for animation production. When the skeleton moves, its combined mesh can produce smooth, natural, and flawless surface deformation according to the precise definition of the final weight matrix.
[0081] More specifically, in a concrete example of this application, the skinning data structure associated with the composite mesh object is first accessed. Then, each vertex in the composite mesh is traversed, for example, the i-th vertex. For that vertex, the i-th row of the final weight matrix is read; this row vector contains the influence weights of all bones on that vertex. Next, for each non-zero weight value in this row vector, the method creates an influence record in the vertex's skinning data, indicating the index of the bone that exerted the influence and the corresponding weight value. This process is repeated for all vertices until all information in the final weight matrix is fully mapped into the composite mesh's skinning data structure. At this point, a skinned virtual digital human capable of responding to skeletal animation is generated.
[0082] Furthermore, a virtual digital human generation system based on modular parameters is also provided.
[0083] Figure 6This is a block diagram of a virtual digital human generation system based on modular parameters according to an embodiment of the present invention. Figure 6 As shown, the virtual digital human generation system based on modular parameters according to an embodiment of the present invention includes: a geometric splicing module 110, used to geometrically splice head module mesh data and torso module mesh data to obtain a combined mesh; a skeleton placement module 120, used to adaptively place the skeleton of the template based on the combined mesh to obtain an adapted skeleton; a geodesic distance field calculation module 130, used to calculate the global geodesic distance field of the combined mesh and the adapted skeleton to obtain a geodesic distance matrix; a weight coarse allocation module 140, used to perform initial weight coarse allocation based on the geodesic distance matrix to obtain an initial weight matrix; a weight refinement module 150, used to refine the weight of the combined mesh based on a graph neural network based on the geodesic distance matrix and the initial weight matrix to obtain a final weight matrix; and a weight matrix application module 160, used to apply the final weight matrix to the combined mesh to obtain a skinned virtual digital human.
[0084] As described above, the modular parameter-based virtual digital human generation system according to the present invention can be deployed in digital content creation production environments, such as designer workstations, cloud rendering servers, or integrated into online virtual avatar customization platforms. In one possible implementation, the system can be integrated as a software module and / or functional plug-in into the development pipeline of mainstream 3D modeling software or game engines. For example, on the client side, the system can be an automated processing tool running in 3D software, containing core functions such as modular geometric stitching, adaptive skeleton placement, geodesic distance field calculation, coarse weight allocation, and weight refinement based on graph neural networks; of course, the graph neural network model used to perform weight refinement in the system can also be deployed on dedicated computing hardware, such as the graphics processing unit of a workstation or server, to accelerate the automated skinning and generation process of modular composite characters.
[0085] It is understood that the above embodiments are merely exemplary embodiments used to illustrate the principles of the present invention, and the present invention is not limited thereto. For those skilled in the art, various modifications and improvements can be made without departing from the spirit and essence of the present invention, and these modifications and improvements are also considered to be within the scope of protection of the present invention.
Claims
1. A method for generating virtual digital humans based on modular parameters, characterized in that, include: Geometrically stitch the head module mesh data and the torso module mesh data to obtain a composite mesh; Based on the composite mesh, the template skeleton is adaptively placed to obtain the adapted skeleton. Global geodesic distance field calculations are performed on the combined mesh and the adapted skeleton to obtain the geodesic distance matrix; The initial weight matrix is obtained by coarsely assigning initial weights based on the geodesic distance matrix. Based on the geodesic distance matrix and the initial weight matrix, the combined mesh is refined using a graph neural network to obtain the final weight matrix; The final weight matrix is applied to the combined mesh to obtain a skinned virtual digital human; Based on the geodesic distance matrix and the initial weight matrix, the combined mesh is refined using a graph neural network to obtain the final weight matrix, including: Based on the geodesic distance matrix and the initial weight matrix, the combined mesh is constructed into an attribute graph; The attribute graph is input into a pre-trained graph neural network model to obtain a refined feature matrix; The refined feature matrix is normalized to obtain the final weight matrix; Based on the geodesic distance matrix and the initial weight matrix, the combined mesh is constructed into an attribute graph, including: Extract the first from the geodesic distance matrix and the initial weight matrix. The row vector of the row is used to obtain the first row. The first feature subpart of the node and the first The second feature sub-part of each node; Fusion The first feature subpart of the node and the first The second feature sub-part of the nth node is used to obtain the nth node in the attribute graph. Initial characteristics of each node; Fusion The first feature subpart of the node and the first The second feature sub-part of the nth node is used to obtain the nth node in the attribute graph. The initial characteristics of each node include: Local feature extraction of the first and second feature sub-components based on one-dimensional convolutional coding is performed to obtain the set of local scale encoded vectors of the first and second feature sub-components, expressed by the following formula: ; in, Let be the set of local scale encoding vectors for the m-th feature sub-unit. Let τ be the local scale encoding vector at the τ-th position in the set. It is a non-linear activation function. The number of one-dimensional convolution kernels. Let be the weight matrix of the k-th convolutional filter. For the m-th feature sub-part, This is a sliding window slice of the m-th feature sub-part at position τ, with a window size of w. The length of the sequence after convolution; The cost matrix between the set of local scale encoded vectors of the first feature sub-part and the set of local scale encoded vectors of the second feature sub-part is calculated to obtain the feature sub-part cost matrix, which is expressed by the following formula: ; in, is the element in the u-th row and v-th column of the feature sub-cost matrix, representing the matching cost between the u-th local scale encoded vector of the first feature sub-component in the set of local scale encoded vectors of the first feature sub-component and the v-th local scale encoded vector of the second feature sub-component in the set of local scale encoded vectors of the second feature sub-component. For set The local scale encoding vector of the u-th first feature sub-part in the data. For set The local scale encoding vector of the vth second feature sub-part in the data. Represents the L2 norm. To prevent tiny constants with a denominator of zero; Based on the cost matrix of the eigenpart, the optimal transport mapping matrix of the eigenpart is derived, expressed by the following formula: ; in, This is the optimal transfer mapping matrix for the characteristic sub-part. Let r and c be the set of transmission polyhedra distributed on the edges. For matrix The Shannon entropy, as a regularization term, is the entropy regularization coefficient, which controls the sparsity of the mapping. and This is the scale vector calculated using the Sinkhorn-Knopp iterative algorithm. To obtain the minimum value , It involves constructing a diagonal matrix; Using the optimal transfer mapping matrix of the feature sub-part, feature manifold registration is performed on the set of local scale encoded vectors of the second feature sub-part to obtain the set of local scale encoded vectors after feature reconstruction of the second feature sub-part, expressed by the following formula: ; in, This represents the set of local scale encoding vectors after feature reconstruction of the second feature sub-feature. Let u be the local scale encoded vector of the second feature sub-feature after reconstruction in the set of local scale encoded vectors. At this point, it is geometrically aligned with the u-th local position of the first feature. This is a normalization factor used to preserve the scale of the feature amplitude. The weights in the optimal transport mapping matrix represent how much mass has moved from point v of the second feature to the corresponding point u. The set of local scale encoded vectors of the first feature sub-part and the set of local scale encoded vectors after feature reconstruction of the second feature sub-part are subjected to fine-grained fusion interaction to obtain the initial features, which are expressed by the following formula: ; in, The initial features of the i-th node obtained after the fusion interaction are: This is a global aggregation function used to compress sequence information into node-level features. This indicates an operation to traverse or concatenate the sequence along its dimension u. This represents a vector concatenation operation. This is the Hadamard product, used to capture the co-occurrence intensity between features. This is the difference squared term, used to explicitly capture the feature differences after alignment. It is a multilayer perceptron used to fuse the interactive signals from the above four dimensions.
2. The virtual digital human generation method based on modular parameters according to claim 1, characterized in that, The head module mesh data and the torso module mesh data are geometrically stitched together to obtain a composite mesh, including: Identify the lower edge of the neck in the head module mesh data; Identify the upper edge of the neck in the torso module mesh data; Vertex merging and patch reconstruction are performed on the lower edge of the neck of the head module mesh data and the upper edge of the neck of the torso module mesh data to obtain the combined mesh.
3. The virtual digital human generation method based on modular parameters according to claim 1, characterized in that, Based on the composite mesh, the template skeleton is adaptively placed to obtain the adapted skeleton, including: The combined mesh is used to locate the semantic feature points of the mesh to obtain the target feature point set; The global transformation matrix and the skeleton scaling factor are obtained by performing alignment transformation on the target feature point set and the template skeleton. Based on the global transformation matrix and the bone scaling factor, a hierarchical transformation of the template skeleton is applied to skeleton generation to obtain the adapted skeleton.
4. The virtual digital human generation method based on modular parameters according to claim 1, characterized in that, Global geodesic distance field calculations are performed on the combined mesh and the adapted skeleton to obtain the geodesic distance matrix, including: Extract individual vertex data from the composite mesh; Extract the line segment data of each bone from the adapted skeleton; Calculate the Euclidean distance between each vertex data and the line segment data of each bone to obtain the initial distance field; The initial distance field is propagated using a geodesic distance propagation method based on fast travel to obtain the geodesic distance matrix.
5. The virtual digital human generation method based on modular parameters according to claim 4, characterized in that, Calculating the Euclidean distance between each vertex data point and the line segment data of each bone to obtain the initial distance field includes: calculating the Euclidean distance between each vertex data point and the line segment data of each bone using the following formula: ; ; ; in, and It is the first The two endpoints of the line segment data of a skeleton. For the first Vertex data, It is the projection position parameter of the vertex onto the straight line containing the skeletal line segment. It is the point on the line segment closest to the vertex. It is the vertex With the nearest point The straight-line distance between them.
6. The virtual digital human generation method based on modular parameters according to claim 5, characterized in that, The initial weight matrix is obtained by coarsely allocating initial weights based on the geodesic distance matrix, including: The original influence score matrix of the geodesic distance matrix is calculated using the following formula: ; in, The decay exponent, For the first The vertex data is transferred to the first vertex. Geodesic distance of line segment data for each skeleton. It is the stabilization constant; The original influence score matrix is subjected to vertex-by-vertex weight normalization to obtain the initial weight matrix.
7. A virtual digital human generation system based on modular parameters, for performing the method as described in any one of claims 1 to 6, characterized in that, include: The geometric stitching module is used to geometrically stitch together the head module mesh data and the torso module mesh data to obtain a combined mesh. The skeleton placement module is used to adaptively place the skeleton of the template skeleton based on the composite mesh to obtain the adapted skeleton. The geodesic distance field calculation module is used to perform global geodesic distance field calculations on the combined mesh and the adapted skeleton to obtain the geodesic distance matrix. The coarse weight allocation module is used to perform initial coarse weight allocation based on the geodesic distance matrix to obtain the initial weight matrix. The weight refinement module is used to refine the combined mesh based on the geodesic distance matrix and the initial weight matrix to obtain the final weight matrix. The weight matrix application module is used to apply the final weight matrix to the combined mesh to obtain a skinned virtual digital human.
Citation Information
Patent Citations
Skin covering weight automatic calculation method and calculation system
CN111598980A
Three-dimensional virtual character intelligent skinning method
CN112802161A
Feature matching method based on cross-scale local features and global features
CN118537602A
Method and system for automatically supplementing and generating process die surface of die based on deep learning
CN120495526A
Multi-modal data alignment method and system based on iterative Riemannian manifold, terminal and storage medium
CN120763861A