A method and related device for generating an object expression model

By determining the corresponding relationship between the vertex in the object -reference model and using the deformation algorithm to generate an object emoji, the problem of low carving efficiency caused by the large number of vertices is solved, and the efficient object emoticons are generated.

CN116503542BActive Publication Date: 2025-01-28TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210056874.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-18
Publication Date
2025-01-28
Estimated Expiration
2042-01-18

AI Technical Summary

Technical Problem

When the object base model has a large number of vertices, when using DCC software to engrave object expressions, the number of vertices leads to a large amount of engraving work, which consumes a lot of time and energy, reducing the generation efficiency of object expression models.

Method used

By obtaining the targeted model with a small number of vertices, determine the corresponding relationship between the vertices between the two object base models, set the control point required for the deformation of the targeted model with a large number of vertices, and use the preset deformed algorithm to change the control point position to generate the position of the control point to generate generate The expression model with a large number of vertices.

Benefits of technology

There is no need to carve the expression of the object, saving a lot of time and energy, and improving the generating efficiency of the object's expression model.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116503542B_ABST
    Figure CN116503542B_ABST
Patent Text Reader

Abstract

The embodiment of the present application discloses a method and related device for generating an object expression model, which is applied to various scenarios such as cloud technology, artificial intelligence, smart transportation, and assisted driving. The method includes: obtaining a first object reference model, a first object expression model, and a second object reference model of an object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and neither the first object reference model nor the second object reference model has object expression; in the second vertex of the second object reference model, the control point corresponding to the first vertex of the first object reference model is determined. By using a preset deformation algorithm, the target coordinates of the control point are set to the original coordinates of the third vertex of the first object expression model, the second object reference model is deformed, and the second object expression model is generated. This method does not require carving the expression of the object, saving time and energy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing, and in particular to a method and related device for generating an object expression model. Background Art

[0002] With the rapid development of Digital Content Creation (DCC) software, in various fields where 3D modeling technology is applied, DCC software can be used to perform object-oriented 3D modeling to generate object models.

[0003] Objects usually show a variety of expressions. In order to make the object model have object expressions, it is necessary to use DCC software to carve object expressions on the basis of the object model that does not have object expressions to generate an object model with object expressions; that is, to carve object expressions from the object baseline model to generate an object expression model.

[0004] However, when the object base model has a large number of vertices, when carving the object expression using DCC software, the large number of vertices leads to a large carving workload, and carving the object expression requires more time and energy, thereby reducing the generation efficiency of the object expression model. Summary of the invention

[0005] In order to solve the above technical problems, the present application provides a method and related devices for generating an object expression model, which does not require carving the object expression, saves a lot of time and energy, and thus improves the generation efficiency of the object expression model.

[0006] The embodiments of the present application disclose the following technical solutions:

[0007] On the one hand, the present application provides a method for generating an object expression model, the method comprising:

[0008] Acquire a first object expression model, a first object reference model, and a second object reference model of an object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, the first object reference model does not have object expression, the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have object expression;

[0009] Based on a first vertex of the first object reference model and a second vertex of the second object reference model, determining a control point corresponding to the first vertex from the second vertex;

[0010] Based on a preset deformation algorithm and the target coordinates of the control point, the second object reference model is deformed to generate a second object expression model; the target coordinates of the control point are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

[0011] On the other hand, the present application provides a method for generating an object expression model, the method comprising:

[0012] In response to a selection operation of a first object expression model, a first object reference model, and a second object reference model for an object, the first object expression model, the first object reference model, and the second object reference model are obtained; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, the first object reference model does not have object expression, the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have object expression;

[0013] In response to the deformation operation on the second object reference model, a second object expression model is generated based on the first object expression model, the first object reference model and the second object reference model.

[0014] On the other hand, the present application provides a device for generating an object expression model, the device comprising: a first acquisition unit, a determination unit, and a first generation unit;

[0015] The acquisition unit is used to acquire a first object expression model, a first object reference model, and a second object reference model of the object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, and the first object reference model does not have object expression; the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have object expression;

[0016] The determining unit is configured to determine, based on a first vertex of the first object reference model and a second vertex of the second object reference model, a control point corresponding to the first vertex from the second vertex;

[0017] The generating unit is used to perform deformation processing on the second object reference model based on a preset deformation algorithm and the target coordinates of the control point to generate a second object expression model; the target coordinates of the control point are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

[0018] On the other hand, the present application provides a device for generating an object expression model, the device comprising: a second acquisition unit and a second generation unit;

[0019] The second acquisition unit is used to acquire the first object expression model, the first object reference model and the second object reference model in response to the selection operation of the first object expression model, the first object reference model and the second object reference model for the object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, the first object reference model does not have the object expression, the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have the object expression;

[0020] The second generating unit is configured to generate a second object expression model based on the first object expression model, the first object reference model and the second object reference model in response to a deformation operation on the second object reference model.

[0021] On the other hand, the present application provides a computer device for generating an expression model of an object, the computer device comprising a processor and a memory:

[0022] The memory is used to store program code and transmit the program code to the processor;

[0023] The processor is used to execute the method for generating an object expression model described in the above aspect according to the instructions in the program code.

[0024] On the other hand, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium is used to store a computer program, and the computer program is used to execute the method for generating an object expression model described in the above aspect.

[0025] On the other hand, an embodiment of the present application provides a computer program product, which includes a computer program or instructions; when the computer program or instructions are executed by a processor, the method for generating an object expression model described in the above aspect is executed.

[0026] It can be seen from the above technical solution that the first object expression model, the first object reference model and the second object reference model of the object are obtained; wherein the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, and the first object reference model does not have the object expression; the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have the object expression; in the second vertex of the second object reference model, the control point corresponding to the first vertex of the first object reference model is determined. Through a preset deformation algorithm, the target coordinates of the control point are set as the original coordinates of the third vertex of the first object expression model, and the second object reference model is deformed to generate the second object expression model; wherein the third vertex corresponds to the first vertex.

[0027] Based on this, when the object reference model has a large number of vertices, it is only necessary to obtain the object reference model with a smaller number of vertices, determine the vertex correspondence between the two object reference models, and set the control points required for the deformation of the object reference model with a larger number of vertices; according to the vertex position of the object expression model with a smaller number of vertices, the control point position is changed through a preset deformation algorithm to change the vertex position of the object reference model with a larger number of vertices, and the corresponding object expression model with a larger number of vertices can be automatically generated; this method does not require carving of object expressions, saves a lot of time and energy, and thus improves the generation efficiency of object expression models. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0029] Figure 1 A schematic diagram of an expression of a carved object provided in an embodiment of the present application;

[0030] Figure 2 A schematic diagram of an application scenario of a method for generating an object expression model provided in an embodiment of the present application;

[0031] Figure 3 A flowchart of a method for generating an object expression model provided in an embodiment of the present application;

[0032] Figure 4 A schematic diagram of a first object reference model and a second object reference model provided in an embodiment of the present application;

[0033] Figure 5 A schematic diagram of changing the position of a control point provided in an embodiment of the present application;

[0034] Figure 6 A schematic diagram of multiple second object expression models provided in an embodiment of the present application;

[0035] Figure 7 A flowchart of another method for generating an object expression model provided in an embodiment of the present application;

[0036] Figure 8 A schematic diagram of an interface of a plug-in that can be called by Maya software provided in an embodiment of the present application;

[0037] Fig. 9A schematic diagram of a facial expression low model, a neutral face high model and a facial expression high model provided in an embodiment of the present application;

[0038] Fig.10 A schematic diagram of a device for generating an object expression model provided in an embodiment of the present application;

[0039] Fig.11 A schematic diagram of another device for generating an object expression model provided in an embodiment of the present application;

[0040] Fig.12 A schematic diagram of the structure of a terminal device provided in an embodiment of the present application;

[0041] Fig.13 A schematic diagram of the structure of a server provided in an embodiment of the present application. DETAILED DESCRIPTION

[0042] The embodiments of the present application are described below in conjunction with the accompanying drawings.

[0043] In the related art, the object model generated by three-dimensional modeling using DCC software needs to have object expression. For the object reference model that does not have object expression, it is necessary to use DCC software to carve the object expression to generate an object expression model with object expression. Figure 1 A schematic diagram of an expression of a sculptured object is shown; wherein, for a facial reference model that does not have facial expressions, the eyelid expressions in the facial expressions are carved using DCC software to generate a facial expression model with facial expressions.

[0044] However, for an object reference model with a large number of vertices, when using DCC software to carve the object's expression, the large number of vertices leads to a large carving workload, and carving the object's expression requires more time and energy, thereby reducing the generation efficiency of the object expression model.

[0045] In view of this, the present application proposes a method and related devices for generating an object expression model. In the case where the object reference model has a large number of vertices, it is only necessary to obtain the object reference model with a small number of vertices, determine the vertex correspondence between the two object reference models, and set the control points required for the deformation of the object reference model with a large number of vertices; according to the vertex positions of the object expression model with a small number of vertices, the control point positions are changed through a preset deformation algorithm to change the vertex positions of the object reference model with a large number of vertices, thereby automatically generating the corresponding object expression model with a large number of vertices; this method does not require carving of the object expression, saves a lot of time and energy, and thus improves the generation efficiency of the object expression model.

[0046] The object expression model generated by the embodiment of the present application is based on artificial intelligence. Artificial Intelligence (AI) is a theory, method, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can respond in a similar way to human intelligence. Artificial intelligence is to study the design principles and implementation methods of various intelligent machines so that the machines have the functions of perception, reasoning and decision-making.

[0047] Artificial intelligence technology is a comprehensive discipline that covers a wide range of fields, including both hardware-level and software-level technologies. Basic artificial intelligence technologies generally include sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operating / interactive systems, mechatronics and other technologies. Artificial intelligence software technologies mainly include computer vision technology, speech processing technology, natural language processing technology, as well as machine learning / deep learning, autonomous driving, smart transportation and other major directions.

[0048] In the embodiments of the present application, the artificial intelligence software technology mainly involved includes the above-mentioned computer vision technology and other directions. Computer vision is a science that studies how to make machines "see". To put it more concretely, it refers to machine vision such as using cameras and computers to replace human eyes to identify, follow and measure targets, and further perform graphic processing so that the computer processes the images into images that are more suitable for human eye observation or transmission to instruments for detection. As a scientific discipline, computer vision studies related theories and technologies, and attempts to establish an artificial intelligence system that can obtain information from images or multidimensional data. For example, it may involve technologies such as image processing (Image Processing), three-dimensional object reconstruction, and 3D technology in computer vision technology (CV).

[0049] The method for generating an object expression model provided in the embodiment of the present application can be applied to a device that generates an object expression model with data processing capabilities, such as a terminal device, a server, etc. Among them, the terminal device can be a smart phone, a computer, a personal digital assistant (PDA), a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, an intelligent voice interaction device, a smart home appliance, a car terminal, etc.; the server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services, but is not limited to this. The terminal device and the server can be directly or indirectly connected by wired or wireless communication, and this application does not limit this.

[0050] The method for generating an object expression model provided in the embodiment of the present application can be applied to various scenarios, including but not limited to cloud technology, artificial intelligence, smart transportation, assisted driving, etc.

[0051] In order to facilitate understanding of the technical solution of the present application, the method for generating an object expression model provided in an embodiment of the present application is introduced below in combination with actual application scenarios.

[0052] See also Figure 2 , Figure 2 A schematic diagram of an application scenario of a method for generating an object expression model provided in an embodiment of the present application. Figure 2 The application scenario shown includes a terminal device 200, wherein the terminal device 200 is used as a device for generating an object expression model. The terminal device 200 is loaded and runs DCC software, and the DCC software can call a plug-in to generate an object expression model.

[0053] First, the user selects and determines the first object expression model, the first object baseline model and the second object baseline model of the object through the above-mentioned plug-in on the terminal device 200, and the terminal device 200 can obtain the first object expression model, the first object baseline model and the second object baseline model of the object; the number of vertices of the first object baseline model is equal to the number of vertices of the first object expression model, and the first object baseline model does not have object expression, the number of vertices of the second object baseline model is greater than the number of vertices of the first object baseline model, and the second object baseline model does not have object expression.

[0054] For example, the user selects and determines the facial expression low model, neutral face low model and neutral face high model of face a through the above-mentioned plug-in on the terminal device 200, then the terminal device 200 can obtain the facial expression low model, neutral face low model and neutral face high model of face a; the facial expression low model has a smaller number of vertices and has facial expression, the neutral face low model has a smaller number of vertices and does not have facial expression, and the neutral face high model has a larger number of vertices and does not have facial expression.

[0055] Secondly, the terminal device 200 can determine the control point corresponding to the first vertex from the second vertex based on the first vertex of the first object reference model and the second vertex of the second object reference model through the above plug-in. For example, the terminal device 200 determines the control point corresponding to the first vertex from the second vertex based on the first vertex of the neutral face low model and the second vertex of the neutral face high model through the above plug-in.

[0056] Finally, the user determines the deformation through the above plug-in on the terminal device 200. The terminal device 200 can use the above plug-in to deform the second object reference model based on the preset deformation algorithm and the target coordinates of the control point to generate the second object expression model; the target coordinates of the control point are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex; based on this, the terminal device 200 can display the second object expression model generated by the above plug-in to the user through the above DCC software. For example, the user determines the deformation through the above plug-in on the terminal device 200. The terminal device 200 uses the above plug-in to set the target coordinates of the control point to the original coordinates of the third vertex of the low-poly model of the facial expression based on the Laplace deformation algorithm, and deforms the neutral face high-poly model to generate a high-poly model of the facial expression. The high-poly model of the facial expression has a large number of vertices and has facial expressions. The terminal device 200 displays the high-poly model of the facial expression generated by the above plug-in to the user through the above DCC software.

[0057] It can be seen that when the object reference model has a large number of vertices, the terminal device 200 only needs to call the plug-in through the DCC software to obtain the object reference model with a small number of vertices, determine the vertex correspondence between the two object reference models, and set the control points required for the deformation of the object reference model with a large number of vertices; according to the vertex position of the object expression model with a small number of vertices, the control point position is changed through a preset deformation algorithm to change the vertex position of the object reference model with a large number of vertices, so as to automatically generate the corresponding object expression model with a large number of vertices; this method does not need to use DCC software to carve object expressions, saves a lot of time and energy, and thus improves the generation efficiency of object expression models.

[0058] Next, the method for generating an object expression model provided in an embodiment of the present application is specifically introduced by taking a terminal device as a device for generating an object expression model.

[0059] See also Figure 3 , which is a flow chart of a method for generating an object expression model provided by an embodiment of the present application. Figure 3 As shown, the method for generating an object expression model is executed by a terminal device, comprising the following steps:

[0060] S301: Acquire a first object expression model, a first object reference model, and a second object reference model of an object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, and the first object reference model does not have object expression; the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have object expression.

[0061] Generally speaking, objects show a variety of expressions, so the object model generated by 3D modeling with DCC software also needs to have object expressions. Based on this, for object reference models that do not have object expressions, it is necessary to use DCC software to carve object expressions to generate object expression models with object expressions. However, for object reference models with a large number of vertices, when using DCC software to carve object expressions, the large number of vertices leads to a large amount of carving work, so carving object expressions requires more time and effort, thereby reducing the efficiency of generating object expression models.

[0062] In the embodiment of the present application, considering that for an object reference model with a small number of vertices, when DCC software is used to carve an object expression, the small number of vertices reduces the carving workload, and carving the object expression only requires less time and energy to obtain an object expression model with a small number of vertices; therefore, on the basis of the object expression model with a small number of vertices, the object reference model with a large number of vertices can be deformed through the vertex correspondence between the object reference model with a small number of vertices and the object reference model with a large number of vertices, so that the deformed object reference model with a large number of vertices has the object expression of the object expression model with a small number of vertices; that is, an object expression model with a large number of vertices is generated. Based on this, it is first necessary to obtain the object expression model with a small number of vertices, the object reference model with a small number of vertices, and the object reference model with a large number of vertices.

[0063] The object expression model with fewer vertices is recorded as the first object expression model, the object reference model with fewer vertices is recorded as the first object reference model, and the object reference model with more vertices is recorded as the second object reference model. Among them, the first object expression model has object expression; the first object reference model does not have object expression, and the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model; the second object reference model also does not have object expression, and the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model.

[0064] As an example, Figure 4 A schematic diagram of a first object reference model and a second object reference model is shown. The left figure is the first object reference model, and the right figure is the second object reference model; specifically, the object is a human face, the first object reference model is a neutral face low-poly model, the number of vertices of the neutral face low-poly model is small and does not have a human face expression; the second object reference model is a neutral face high-poly model, the number of vertices of the neutral face high-poly model is large and does not have a human face expression.

[0065] In the embodiments of the present application, it is considered that the object of the expression can be a face, a body, or a combination of the face and the body. Therefore, the present application provides a possible implementation method, where the object includes one or more of the face and the body. The face can be, for example, a human face or an animal face, and the body can be, for example, a human body or an animal body, etc.

[0066] S302: Based on a first vertex of the first object reference model and a second vertex of the second object reference model, determine a control point corresponding to the first vertex from the second vertex.

[0067] The first object reference model is an object reference model with a small number of vertices, and needs to be combined with a second object reference model with a large number of vertices to determine the vertex correspondence between the object reference model with a small number of vertices and the object reference model with a large number of vertices. In the embodiment of the present application, after obtaining the first object reference model and the second object reference model of the object in S301, it is necessary to determine the second vertex corresponding to the first vertex of the first object expression model in the second vertex of the second object reference model and record it as a control point.

[0068] When S302 is specifically implemented, first, on the basis that the first object reference model and the second object reference model correspond to the same object, the first object reference model and the second object reference model can be aligned; since the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, that is, the number of second vertices is greater than the number of first vertices; therefore, after aligning the first object reference model and the second object reference model, the first vertex has a second vertex around it, so that the surrounding vertices of the first vertex can be determined from the second vertex. Then, the first distance between the surrounding vertices of the first vertex and the first vertex is calculated, and the control point corresponding to the first vertex is determined from the surrounding vertices according to the size of the first distance. Therefore, the present application provides a possible implementation method, and S302 may include the following S3021-S3022, for example:

[0069] S3021: Align the first object reference model and the second object reference model, and determine surrounding vertices of the first vertex from the second vertex.

[0070] For example, the first object reference model and the second object reference model may be placed at the same position, and the first object reference model and the second object reference model may be aligned by adjusting an angle, thereby determining the surrounding vertices of the first vertex from the second vertex.

[0071] S3022: Determine a control point from the surrounding vertices based on a first distance between the surrounding vertices and the first vertex.

[0072] In the specific implementation of S3022, the surrounding vertices closest to the first vertex can be used as the control points corresponding to the first vertex, and the surrounding vertices corresponding to the minimum first distance can be determined as the control points corresponding to the first vertex according to the size of the first distance. Therefore, the present application provides a possible implementation method, and S3022 can include, for example: determining the surrounding vertices corresponding to the minimum first distance as control points.

[0073] Of course, the first distances may also be sorted from small to large, and the surrounding vertices corresponding to the first distances ranked second are determined as control points. Specific circumstances may be set specifically, and the embodiments of the present application are not limited thereto.

[0074] S303: Based on a preset deformation algorithm and the target coordinates of the control points, deform the second object reference model to generate a second object expression model; the target coordinates of the control points are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

[0075] In the embodiment of the present application, after S302 determines the control point of the second object reference model, the second object reference model needs to be deformed so that the deformed second object reference model has the object expression of the first object expression model, that is, the core of the deformation is to move the control point position of the second object reference model to the corresponding third vertex position of the first object expression model as much as possible, and the third vertex corresponds to the first vertex; then the original coordinates of the third vertex of the first object expression model need to be set as the target coordinates of the control point of the second object reference model, and the control point position is changed by a preset deformation algorithm to change the second vertex position of the second object reference model, so that the corresponding object expression model with a large number of vertices can be automatically generated, which is recorded as the second object expression model. For example, Figure 5 A schematic diagram of changing the position of a control point is shown, wherein the position of a control point is changed by a preset deformation algorithm, so that the positions of vertices around the control point can be changed.

[0076] The second object expression model has an object expression, the number of vertices of the second object expression model is greater than the number of vertices of the first object expression model, and the object expression similarity between the second object expression model and the first object expression model is greater than or equal to a preset similarity.

[0077] When S303 is specifically implemented, first, the target coordinates of the control point of the second object reference model are the original coordinates of the third vertex of the corresponding first object expression model, and the control point position is changed by a preset deformation algorithm to change the second vertex position of the second object reference model, so that the deformation coordinates of the second vertex of the second object reference model can be obtained; then, the second object reference model is deformed according to the deformation coordinates of the second vertex to obtain the second object expression model. Therefore, the present application provides a possible implementation method, and S303 may include the following S3031-S3032:

[0078] S3031: Based on a preset deformation algorithm and the target coordinates of the control point, the deformation coordinates of the second vertex are obtained.

[0079] When S3031 is specifically implemented, the deformation coordinates of the second vertex include the deformation coordinates of the control point. Since the deformation core is to move the control point position of the second object reference model to the corresponding third vertex position of the first object expression model as much as possible, it is necessary to minimize the second distance between the deformation coordinates of the control point and the target coordinates of the control point as much as possible; based on this, it can be considered that solving the deformation coordinates of the second vertex through the preset deformation algorithm and the target coordinates of the control point is an optimization problem. First, it is necessary to set the deformation coordinates of the second vertex as the design variable; then, through the design variables, the preset deformation algorithm and the target coordinates of the control point, a function with an optimization goal including minimizing the second distance between the deformation coordinates of the control point and the target coordinates of the control point can be constructed, which is recorded as the objective function; finally, the design variables are solved through the objective function to obtain the deformation coordinates of the second vertex. Therefore, the present application provides a possible implementation method, and S3031 may include the following S1-S3, for example:

[0080] S1: Determine the deformation coordinates of the second vertex as the design variable.

[0081] S2: constructing an objective function based on the design variables, the preset deformation algorithm and the target coordinates of the control points; the optimization goal of the objective function includes minimizing the second distance between the deformation coordinates of the control points and the target coordinates of the control points.

[0082] S3: Solve the design variables based on the objective function to obtain the deformation coordinates of the second vertex.

[0083] When S1-S3 are specifically implemented, the preset deformation algorithm may be, for example, a Laplace deformation algorithm. Since the principle of the Laplace deformation algorithm is that the Laplace coordinates of the point before deformation and the Laplace coordinates of the point after deformation are as equal as possible, the Laplace coordinates can represent the geometric details of the model; therefore, the Laplace coordinates of the second vertex of the second object reference model before and after deformation are as equal as possible, that is, the geometric details of the second object reference model before and after deformation are basically consistent. The Laplace coordinates of the second vertex of the second object reference model before deformation are recorded as the first Laplace coordinates of the second vertex, and the Laplace coordinates of the second vertex of the second object reference model after deformation are recorded as the second Laplace coordinates of the second vertex; then it is also necessary to minimize the third distance between the first Laplace coordinates of the second vertex and the second Laplace coordinates as much as possible, that is, the optimization goal of the objective function also needs to include minimizing the third distance between the first Laplace coordinates of the second vertex and the second Laplace coordinates.

[0084] The first Laplace coordinates of the second vertex are determined based on the original coordinates of the second vertex and the original coordinates of the adjacent vertices of the second vertex, and the second Laplace coordinates are determined based on the deformed coordinates of the second vertex and the deformed coordinates of the adjacent vertices of the second vertex. Specifically, the first Laplace coordinates of the second vertex are the difference between the original coordinates of the second vertex and the average value of the original coordinates of its adjacent vertices; the second Laplace coordinates are the difference between the deformed coordinates of the second vertex and the average value of the deformed coordinates of its adjacent vertices.

[0085] As an example, the objective function and the Laplace coordinates are given below:

[0086]

[0087]

[0088]

[0089] Among them, δ i represents the first Laplace coordinate of the second vertex, δ′ i represents the second Laplace coordinate of the second vertex, u i represents the target coordinates of the control point, that is, the original coordinates of the third vertex of the first object expression model, v i represents the original coordinates of the second vertex, v j Indicates v i The original coordinates of the adjacent vertices, d i Indicates v i The number of adjacent vertices, which form the set N i ; v′ i represents the deformed coordinates of the second vertex, v′ j Represents v′i The deformed coordinates of the adjacent vertices of, d′ i Denote v′ i The number of adjacent vertices of, and these adjacent vertices form the set N′ i . When i ∈ {m,..., n}, m < n, v′ i Denote the deformed coordinates of the control points.

[0090] The first term of the above objective function E(v′) represents the third distance between the first Laplacian coordinate and the second Laplacian coordinate of the second vertex, and the second term represents the second distance between the deformed coordinates of the control points and the target coordinates of the control points. Then, minimizing the objective function according to the optimization objective of the objective function can solve for v′ i , such that as much as possible: v′ i = u i , i ∈ {m,..., n}, m < n.

[0091] S3032: Deform the second object reference model based on the deformed coordinates of the second vertex to generate a second object expression model.

[0092] In addition, in the embodiments of the present application, on the basis of deforming the second object reference model through the deformed coordinates of the second vertex to generate a second object expression model, since there is actually a slight gap between the deformed coordinates of the control points and the target coordinates of the control points, that is, there is actually a slight gap between the deformed coordinates of the control points and the original coordinates of the third vertex of the first object expression model, resulting in a slight gap between the object expression of the second object expression model and the object expression of the first object expression model. Therefore, it is also necessary to fine-tune the second object expression model according to the target coordinates of the control points. For example, by fine-tuning the deformed coordinates of the control points to fine-tune the second object expression model, and further obtaining a fine-tuned second object expression model, so that the object expression of the fine-tuned second object expression model is more similar to the object expression of the first object expression model. That is, the present application provides a possible implementation manner. After S303, the method may further include S4: Fine-tune the second object expression model based on the target coordinates of the control points to obtain a fine-tuned second object expression model.

[0093] As an example, as Figure 6 shown in the schematic diagrams of various second object expression models; on the basis of various first object expression models, combined with the corresponding second object reference model, by using the method for generating an object expression model provided in the above embodiments, various second object expression models can be obtained.

[0094] The method for generating an object expression model provided in the above embodiment obtains a first object expression model, a first object reference model, and a second object reference model of an object; wherein the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, and the first object reference model does not have object expression, and the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have object expression; among the second vertices of the second object reference model, a control point corresponding to the first vertex of the first object reference model is determined. By using a preset deformation algorithm, the target coordinates of the control point are set as the original coordinates of the third vertex of the first object expression model, and the second object reference model is deformed to generate the second object expression model; wherein the third vertex corresponds to the first vertex.

[0095] Based on this, when the object reference model has a large number of vertices, it is only necessary to obtain the object reference model with a smaller number of vertices, determine the vertex correspondence between the two object reference models, and set the control points required for the deformation of the object reference model with a larger number of vertices; according to the vertex position of the object expression model with a smaller number of vertices, the control point position is changed through a preset deformation algorithm to change the vertex position of the object reference model with a larger number of vertices, and the corresponding object expression model with a larger number of vertices can be automatically generated; this method does not require carving of object expressions, saves a lot of time and energy, and thus improves the generation efficiency of object expression models.

[0096] Next, another method for generating an object expression model provided in an embodiment of the present application is specifically introduced by taking a terminal device as a device for generating an object expression model.

[0097] See also Figure 7 , which is a flow chart of another method for generating an object expression model provided by an embodiment of the present application. Figure 7 As shown, the method for generating an object expression model is executed by a terminal device, comprising the following steps:

[0098] S701: In response to the selection operation of the first object expression model, the first object baseline model and the second object baseline model for the object, the first object expression model, the first object baseline model and the second object baseline model are obtained; the number of vertices of the first object baseline model is equal to the number of vertices of the first object expression model, and the first object baseline model does not have the object expression, the number of vertices of the second object baseline model is greater than the number of vertices of the first object baseline model, and the second object baseline model does not have the object expression.

[0099] In the embodiment of the present application, the above method for generating an object expression model can be encapsulated in a plug-in that can be called by DCC software, for example, Figure 8The interface diagram of a plug-in that can be called by Maya software is shown. The terminal device is loaded and runs Maya software, and the Maya software can call the plug-in to generate an object expression model. Among them, Maya software is a three-dimensional modeling and animation software, which belongs to DCC software. The version of Maya software can be, for example, Maya2017, Maya2018, Maya2019, Maya2020, etc. The terminal device can provide an environment above Windows 10, for example.

[0100] The user can select the first object expression model, the first object reference model, and the second object reference model of the object through the plug-in, thereby obtaining the first object expression model, the first object reference model, and the second object reference model.

[0101] Specifically, in Figure 8 On the interface of the plug-in shown, the user clicks "Select facial expression low poly", selects the facial expression low poly of face a, which has a small number of vertices and has facial expression, and obtains the facial expression low poly of face a; the user clicks "Select neutral face low poly", selects the neutral face low poly of face a, which has a small number of vertices and does not have facial expression, and obtains the neutral face low poly of face a; the user clicks "Select neutral face high poly", selects the neutral face high poly of face a, which has a large number of vertices and does not have facial expression, and obtains the neutral face high poly of face a.

[0102] S702: In response to a deformation operation on the second object reference model, generate a second object expression model based on the first object expression model, the first object reference model and the second object reference model.

[0103] In an embodiment of the present application, after obtaining the first object expression model, the first object baseline model and the second object baseline model in S701, the user can perform a deformation operation on the second object baseline model through the above-mentioned plug-in, and combine the first object expression model, the first object baseline model and the second object baseline model to obtain the second object expression model.

[0104] Specifically, in Figure 8 On the interface of the plug-in shown, the user clicks "Deformation" to confirm the deformation. The terminal device determines the control point corresponding to the first vertex from the second vertex based on the first vertex of the neutral face low model and the second vertex of the neutral face high model through the plug-in. Based on the Laplace deformation algorithm, the target coordinates of the control point are set to the original coordinates of the third vertex of the facial expression low model, and the neutral face high model is deformed to generate a facial expression high model. The facial expression high model has a large number of vertices and has facial expressions.

[0105] Among them, the facial expression low model, neutral face high model and facial expression high model of face a can be referred to as Fig. 9A schematic diagram of a facial expression low model, a neutral face high model and a facial expression high model is shown.

[0106] It can be seen that when the neutral face high poly model has a large number of vertices, the terminal device only needs to obtain the facial expression low poly model with a small number of vertices, the neutral face low poly model with a small number of vertices and the neutral face high poly model with a large number of vertices, and the neutral face high poly model with a large number of vertices can be deformed to automatically generate the corresponding facial expression high poly model with a large number of vertices; this method does not need to carve the expression of the object, saves a lot of time and energy, and thus improves the generation efficiency of the facial expression high poly model.

[0107] In view of the method for generating an object expression model provided in the above embodiment, an embodiment of the present application also provides a device for generating an object expression model.

[0108] See also Fig.10 , Fig.10 Schematic diagram of a device for generating an object expression model provided in an embodiment of the present application. Fig.10 As shown, the device 1000 for generating an object expression model includes a first acquisition unit 1001, a determination unit 1002 and a first generation unit 1003;

[0109] A first acquisition unit 1001 is used to acquire a first object expression model, a first object reference model, and a second object reference model of an object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, and the first object reference model does not have object expression; the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have object expression;

[0110] A determining unit 1002, configured to determine a control point corresponding to the first vertex from the second vertex based on a first vertex of the first object reference model and a second vertex of the second object reference model;

[0111] The first generating unit 1003 is used to deform the second object reference model based on a preset deformation algorithm and the target coordinates of the control point to generate a second object expression model; the target coordinates of the control point are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

[0112] As a possible implementation, the determining unit 1002 includes a first determining subunit and a second determining subunit;

[0113] A first determining subunit is used to align the first object reference model with the second object reference model and determine surrounding vertices of the first vertex from the second vertex;

[0114] The second determining subunit is used to determine the control point from the surrounding vertices based on a first distance between the surrounding vertices and the first vertex.

[0115] As a possible implementation manner, the second determining subunit is configured to:

[0116] The surrounding vertices corresponding to the minimum first distance are determined as control points.

[0117] As a possible implementation, the generating unit 1003 includes an obtaining subunit and a generating subunit;

[0118] An obtaining subunit, used for obtaining the deformation coordinates of the second vertex based on a preset deformation algorithm and the target coordinates of the control point;

[0119] The generating subunit is used to perform deformation processing on the second object reference model based on the deformation coordinates of the second vertex to generate the second object expression model.

[0120] As a possible implementation, the obtaining subunit includes a determining module, a constructing module and an obtaining module;

[0121] A determination module, used for determining the deformation coordinates of the second vertex as a design variable;

[0122] A construction module is used to construct an objective function based on the design variables, the preset deformation algorithm and the target coordinates of the control point; the optimization target of the objective function includes minimizing the second distance between the deformation coordinates of the control point and the target coordinates of the control point;

[0123] The obtaining module is used to solve the design variables based on the objective function and obtain the deformation coordinates of the second vertex.

[0124] As a possible implementation method, when the preset deformation algorithm includes a Laplace deformation algorithm, the optimization objective also includes minimizing the third distance between the first Laplace coordinate of the second vertex and the second Laplace coordinate; the first Laplace coordinate is determined based on the original coordinates of the second vertex and the original coordinates of the adjacent vertices of the second vertex, and the second Laplace coordinate is determined based on the deformed coordinates of the second vertex and the deformed coordinates of the adjacent vertices of the second vertex.

[0125] As a possible implementation, the device further includes a fine-tuning unit;

[0126] The fine-tuning unit is used to perform fine-tuning processing on the second object expression model based on the target coordinates of the control point to obtain the fine-tuned second object expression model.

[0127] As a possible implementation manner, the object includes one or more of a face and a body.

[0128] The device for generating an object expression model provided by the above embodiment obtains a first object expression model, a first object reference model, and a second object reference model of an object; wherein the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, and the first object reference model does not have the object expression; the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have the object expression; among the second vertices of the second object reference model, a control point corresponding to the first vertex of the first object reference model is determined. By using a preset deformation algorithm, the target coordinates of the control point are set as the original coordinates of the third vertex of the first object expression model, and the second object reference model is deformed to generate the second object expression model; wherein the third vertex corresponds to the first vertex.

[0129] Based on this, when the object reference model has a large number of vertices, it is only necessary to obtain the object reference model with a smaller number of vertices, determine the vertex correspondence between the two object reference models, and set the control points required for the deformation of the object reference model with a larger number of vertices; according to the vertex position of the object expression model with a smaller number of vertices, the control point position is changed through a preset deformation algorithm to change the vertex position of the object reference model with a larger number of vertices, and the corresponding object expression model with a larger number of vertices can be automatically generated; this method does not require carving of object expressions, saves a lot of time and energy, and thus improves the generation efficiency of object expression models.

[0130] In view of the method for generating an object expression model provided in the above embodiment, the embodiment of the present application also provides another device for generating an object expression model.

[0131] See also Fig.11 , Fig.11 Schematic diagram of another device for generating an object expression model provided in an embodiment of the present application. Fig.11 As shown, the device 1100 for generating an object expression model includes a second acquisition unit 1001 and a second generation unit 1102;

[0132] The second acquisition unit 1101 is used to acquire the first object expression model, the first object benchmark model and the second object benchmark model in response to the selection operation of the first object expression model, the first object benchmark model and the second object benchmark model for the object; the number of vertices of the first object benchmark model is equal to the number of vertices of the first object expression model, the first object benchmark model does not have the object expression, the number of vertices of the second object benchmark model is greater than the number of vertices of the first object benchmark model, and the second object benchmark model does not have the object expression;

[0133] The second generating unit 1102 is configured to generate a second object expression model based on the first object expression model, the first object reference model and the second object reference model in response to a deformation operation on the second object reference model.

[0134] It can be seen that when the neutral face high poly model has a large number of vertices, the terminal device only needs to obtain the facial expression low poly model with a small number of vertices, the neutral face low poly model with a small number of vertices and the neutral face high poly model with a large number of vertices, and the neutral face high poly model with a large number of vertices can be deformed to automatically generate the corresponding facial expression high poly model with a large number of vertices; this method does not need to carve the expression of the object, saves a lot of time and energy, and thus improves the generation efficiency of the facial expression high poly model.

[0135] The embodiment of the present application also provides a device for generating an object expression model. The computer device provided by the embodiment of the present application will be introduced from the perspective of hardware instantiation.

[0136] With respect to the method for generating an object expression model described above, an embodiment of the present application further provides a terminal device for generating an object expression model, so that the method for generating an object expression model can be implemented and applied in practice.

[0137] See also Fig.12 , Fig.12 This is a schematic diagram of the structure of a terminal device provided in an embodiment of the present application. For the sake of convenience, only the parts related to the embodiment of the present application are shown. For specific technical details not disclosed, please refer to the method part of the embodiment of the present application. The terminal device can be any terminal device including a mobile phone, a tablet computer, a PDA, etc., taking the terminal device as a mobile phone as an example:

[0138] Fig.12 FIG. 1 is a block diagram showing a partial structure of a mobile phone related to a terminal device provided in an embodiment of the present application. Fig.12 The mobile phone includes: a radio frequency (RF) circuit 1210, a memory 1220, an input unit 1230, a display unit 1240, a sensor 1250, an audio circuit 1260, a wireless fidelity (WiFi) module 1270, a processor 1280, and a power supply 1290. Those skilled in the art will appreciate that Fig.12 The mobile phone structure shown in the figure does not constitute a limitation on the mobile phone, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0139] Combine the following Fig.12 A detailed introduction to the various components of the mobile phone:

[0140] The RF circuit 1210 can be used for receiving and sending signals during the process of sending and receiving information or making calls. In particular, after receiving the downlink information of the base station, it is sent to the processor 1280 for processing; in addition, the designed uplink data is sent to the base station. Usually, the RF circuit 1210 includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (Low Noise Amplifier, referred to as LNA), a duplexer, etc. In addition, the RF circuit 1210 can also communicate with the network and other devices through wireless communication. The above-mentioned wireless communication can use any communication standard or protocol, including but not limited to the Global System of Mobile communication (Global System of Mobile communication, referred to as GSM), General Packet Radio Service (General Packet Radio Service, referred to as GPRS), Code Division Multiple Access (Code Division Multiple Access, referred to as CDMA), Wideband Code Division Multiple Access (Wideband Code Division Multiple Access, referred to as WCDMA), Long Term Evolution (Long Term Evolution, referred to as LTE), email, Short Messaging Service (SMS), etc.

[0141] The memory 1220 can be used to store software programs and modules. The processor 1280 implements various functional applications and data processing of the mobile phone by running the software programs and modules stored in the memory 1220. The memory 1220 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area can store data created according to the use of the mobile phone (such as audio data, a phone book, etc.), etc. In addition, the memory 1220 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.

[0142] The input unit 1230 can be used to receive input digital or character information, and to generate key signal input related to the user settings and function control of the mobile phone. Specifically, the input unit 1230 may include a touch panel 1231 and other input devices 1232. The touch panel 1231, also known as a touch screen, can collect the user's touch operation on or near it (such as the user's operation on the touch panel 1231 or near the touch panel 1231 using any suitable object or accessory such as a finger, stylus, etc.), and drive the corresponding connection device according to a pre-set program. Optionally, the touch panel 1231 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch orientation, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into the touch point coordinates, and then sends it to the processor 1280, and can receive and execute the command sent by the processor 1280. In addition, the touch panel 1231 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves. In addition to the touch panel 1231, the input unit 1230 may also include other input devices 1232. Specifically, other input devices 1232 may include but are not limited to one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, etc.

[0143] The display unit 1240 can be used to display information input by the user or information provided to the user and various menus of the mobile phone. The display unit 1240 may include a display panel 1241. Optionally, the display panel 1241 may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), etc. Further, the touch panel 1231 may cover the display panel 1241. When the touch panel 1231 detects a touch operation on or near it, it is transmitted to the processor 1280 to determine the type of touch event. Subsequently, the processor 1280 provides a corresponding visual output on the display panel 1241 according to the type of touch event. Although in Fig.12 In the embodiment, the touch panel 1231 and the display panel 1241 are used as two independent components to realize the input and output functions of the mobile phone, but in some embodiments, the touch panel 1231 and the display panel 1241 can be integrated to realize the input and output functions of the mobile phone.

[0144] The mobile phone may also include at least one sensor 1250, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 1241 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 1241 and / or the backlight when the mobile phone is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that identify the posture of the mobile phone (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.; as for other sensors that can be configured in the mobile phone, such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc., they will not be repeated here.

[0145] The audio circuit 1260, the speaker 1261, and the microphone 1262 can provide an audio interface between the user and the mobile phone. The audio circuit 1260 can transmit the received audio data to the speaker 1261 after converting the received audio data into an electrical signal, which is converted into a sound signal for output; on the other hand, the microphone 1262 converts the collected sound signal into an electrical signal, which is received by the audio circuit 1260 and converted into audio data, and then the audio data is output to the processor 1280 for processing, and then sent to another mobile phone through the RF circuit 1210, or the audio data is output to the memory 1220 for further processing.

[0146] WiFi is a short-range wireless transmission technology. The mobile phone can help users send and receive emails, browse web pages and access streaming media through the WiFi module 1270. It provides users with wireless broadband Internet access. Fig.12 A WiFi module 1270 is shown, but it is understandable that it is not an essential component of the mobile phone and can be omitted as needed without changing the essence of the invention.

[0147] The processor 1280 is the control center of the mobile phone. It uses various interfaces and lines to connect various parts of the entire mobile phone. It executes various functions of the mobile phone and processes data by running or executing software programs and / or modules stored in the memory 1220, and calling data stored in the memory 1220, thereby controlling the mobile phone as a whole. Optionally, the processor 1280 may include one or more processing units; preferably, the processor 1280 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 1280.

[0148] The mobile phone also includes a power supply 1290 (such as a battery) for supplying power to various components. Preferably, the power supply can be logically connected to the processor 1280 through a power management system, so that the power management system can manage functions such as charging, discharging, and power consumption management.

[0149] Although not shown, the mobile phone may also include a camera, a Bluetooth module, etc., which will not be described in detail here.

[0150] In the embodiment of the present application, the memory 1220 included in the mobile phone can store program codes and transmit the program codes to the processor.

[0151] The processor 1280 included in the mobile phone can execute the following steps according to the instructions in the program code:

[0152] Acquire a first object expression model, a first object reference model, and a second object reference model of the object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, the first object reference model does not have the object expression, the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have the object expression;

[0153] Based on a first vertex of the first object reference model and a second vertex of the second object reference model, determining a control point corresponding to the first vertex from the second vertex;

[0154] Based on a preset deformation algorithm and the target coordinates of the control points, the second object reference model is deformed to generate a second object expression model; the target coordinates of the control points are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

[0155] See also Fig.13 , Fig.13 13 is a schematic diagram of a server structure provided in an embodiment of the present application. The server 1300 may have relatively large differences due to different configurations or performances, and may include one or more central processing units (CPU) 1322 (for example, one or more processors) and a memory 1332, and one or more storage media 1330 (for example, one or more mass storage devices) storing application programs 1342 or data 1344. Among them, the memory 1332 and the storage medium 1330 may be short-term storage or permanent storage. The program stored in the storage medium 1330 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the server. Furthermore, the central processing unit 1322 may be configured to communicate with the storage medium 1330 to execute a series of instruction operations in the storage medium 1330 on the server 1300.

[0156] The server 1300 may also include one or more power supplies 1326, one or more wired or wireless network interfaces 1350, one or more input and output interfaces 1358, and / or one or more operating systems 1341, such as Windows Server 2003, ... TM , Mac OS X TM , Unix TM , Linux TM , FreeBSD TM etc.

[0157] The steps performed by the server in the above embodiment can be based on the Fig.13 The server structure shown.

[0158] For example, the CPU 1322 is used to execute the following steps:

[0159] Acquire a first object expression model, a first object reference model, and a second object reference model of the object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, the first object reference model does not have the object expression, the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have the object expression;

[0160] Based on a first vertex of the first object reference model and a second vertex of the second object reference model, determining a control point corresponding to the first vertex from the second vertex;

[0161] Based on a preset deformation algorithm and the target coordinates of the control points, the second object reference model is deformed to generate a second object expression model; the target coordinates of the control points are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

[0162] An embodiment of the present application also provides a computer-readable storage medium for storing a computer program, wherein the computer program is used to execute the method for generating an object expression model provided in the above embodiment.

[0163] The embodiment of the present application also provides a computer program product or a computer program, which includes a computer instruction, and the computer instruction is stored in a computer-readable storage medium. The processor of the device for generating an object expression model reads the computer instruction from the computer-readable storage medium, and the processor executes the computer instruction, so that the device for generating an object expression model performs the method for generating an object expression model provided in various optional implementations of the above aspects.

[0164] A person skilled in the art can understand that all or part of the steps of implementing the above method embodiment can be completed by hardware related to program instructions, and the above program can be stored in a computer-readable storage medium. When the program is executed, it executes the steps of the above method embodiment; and the above storage medium can be at least one of the following media: read-only memory (English: Read-Only Memory, abbreviated: ROM), RAM, magnetic disk or optical disk, etc. Various media that can store program codes.

[0165] It should be noted that each embodiment in this specification is described in a progressive manner, and the same and similar parts between the embodiments can refer to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the device and system embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can refer to the partial description of the method embodiments. The device and system embodiments described above are merely schematic, in which the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative work.

[0166] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions that can be easily thought of by a person skilled in the art within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A method for generating an object expression model, characterized in that: The method comprises: Acquire a first object expression model, a first object reference model, and a second object reference model of an object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, the first object reference model does not have object expression, the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have object expression; Based on a first vertex of the first object reference model and a second vertex of the second object reference model, determining a control point corresponding to the first vertex from the second vertex; Based on a preset deformation algorithm and the target coordinates of the control point, the second object reference model is deformed to generate a second object expression model; the target coordinates of the control point are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

2. The method according to claim 1, characterized in that The step of determining a control point corresponding to the first vertex from the second vertex based on the first vertex of the first object reference model and the second vertex of the second object reference model comprises: aligning the first object reference model and the second object reference model, and determining surrounding vertices of the first vertex from the second vertices; The control point is determined from the surrounding vertices based on a first distance between the surrounding vertices and the first vertex.

3. The method according to claim 2, characterized in that The determining the control point from the surrounding vertices based on a first distance between the surrounding vertices and the first vertex comprises: The surrounding vertices corresponding to the minimum first distance are determined as the control points.

4. The method according to claim 1, characterized in that: The step of deforming the second object reference model based on a preset deformation algorithm and the target coordinates of the control points to generate a second object expression model comprises: Based on the preset deformation algorithm and the target coordinates of the control point, obtaining the deformation coordinates of the second vertex; The second object reference model is deformed based on the deformation coordinates of the second vertex to generate the second object expression model.

5. The method according to claim 4, characterized in that The obtaining the deformed coordinates of the second vertex based on the preset deformation algorithm and the target coordinates of the control point includes: determining the deformed coordinates of the second vertex as design variables; Based on the design variables, the preset deformation algorithm and the target coordinates of the control points, an objective function is constructed; the optimization target of the objective function includes minimizing a second distance between the deformed coordinates of the control points and the target coordinates of the control points; The design variables are solved based on the objective function to obtain the deformation coordinates of the second vertex.

6. The method according to claim 5, characterized in that When the preset deformation algorithm includes a Laplace deformation algorithm, the optimization goal further includes minimizing a third distance between the first Laplace coordinate and the second Laplace coordinate of the second vertex; The first Laplace coordinates are determined based on original coordinates of the second vertex and original coordinates of vertices adjacent to the second vertex, and the second Laplace coordinates are determined based on deformed coordinates of the second vertex and deformed coordinates of vertices adjacent to the second vertex.

7. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: The second object expression model is fine-tuned based on the target coordinates of the control point to obtain a fine-tuned second object expression model.

8. The method according to any one of claims 1 to 6, characterized in that: The object includes one or more of a face and a body.

9. A method for generating an object expression model, characterized in that: The method comprises: In response to a selection operation of a first object expression model, a first object reference model, and a second object reference model for an object, the first object expression model, the first object reference model, and the second object reference model are obtained; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, the first object reference model does not have object expression, the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have object expression; In response to a deformation operation on the second object reference model, a second object expression model is generated based on the first object expression model, the first object reference model and the second object reference model, wherein the second object expression model is generated in the following manner: based on the first vertex of the first object reference model and the second vertex of the second object reference model, a control point corresponding to the first vertex is determined from the second vertices; based on a preset deformation algorithm and the target coordinates of the control point, the second object reference model is deformed to generate the second object expression model, the target coordinates of the control point are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

10. A device for generating an object expression model, characterized in that: The device comprises: a first acquisition unit, a determination unit and a first generation unit; The first acquisition unit is used to acquire a first object expression model, a first object reference model, and a second object reference model of the object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, and the first object reference model does not have object expression; the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have object expression; The determining unit is configured to determine, based on a first vertex of the first object reference model and a second vertex of the second object reference model, a control point corresponding to the first vertex from the second vertex; The first generating unit is used to deform the second object reference model based on a preset deformation algorithm and the target coordinates of the control point to generate a second object expression model; the target coordinates of the control point are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

11. The device according to claim 10, characterized in that The determining unit includes a first determining subunit and a second determining subunit; The first determining subunit is used to align the first object reference model and the second object reference model, and determine the surrounding vertices of the first vertex from the second vertices; The second determining subunit is configured to determine the control point from the surrounding vertices based on a first distance between the surrounding vertices and the first vertex.

12. A device for generating an expression model of an object, characterized in that: The device comprises: a second acquisition unit and a second generation unit; The second acquisition unit is used to acquire the first object expression model, the first object reference model and the second object reference model in response to the selection operation of the first object expression model, the first object reference model and the second object reference model for the object; the number of vertices of the first object reference model is equal to the number of vertices of the first object expression model, the first object reference model does not have the object expression, the number of vertices of the second object reference model is greater than the number of vertices of the first object reference model, and the second object reference model does not have the object expression; The second generating unit is used to generate a second object expression model based on the first object expression model, the first object reference model and the second object reference model in response to a deformation operation on the second object reference model, wherein the second object expression model is generated in a manner comprising: determining a control point corresponding to the first vertex from the second vertices based on a first vertex of the first object reference model and a second vertex of the second object reference model; and deforming the second object reference model based on a preset deformation algorithm and the target coordinates of the control point to generate the second object expression model, wherein the target coordinates of the control point are the original coordinates of the third vertex of the first object expression model, and the third vertex corresponds to the first vertex.

13. A computer device, characterized in that: The device comprises a processor and a memory: The memory is used to store program code and transmit the program code to the processor; The processor is used to execute the method for generating an object expression model according to any one of claims 1 to 8, or the method for generating an object expression model according to claim 9, according to the instructions in the program code.

14. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store a computer program, and the computer program is used to execute the method for generating an object expression model according to any one of claims 1 to 8, or the method for generating an object expression model according to claim 9.

15. A computer program product, characterized in that Comprising a computer program or an instruction; when the computer program or the instruction is executed by a processor, the method for generating an object expression model described in any one of claims 1 to 8, or the method for generating an object expression model described in claim 9 is executed.

Citation Information

Patent Citations

  • 3D model processing method and device

    CN109300188A

  • Systems and methods for real-time complex character animations and interactivity

    CN111465965A