A method, device, computer equipment and storage medium for constructing a face model
By adjusting the template face data to generate low-mode data corresponding to the target face high-mode data and performing noise filtering, the problem of low efficiency in building a three-dimensional deformable face model in the existing technology is solved, and efficient and accurate face model construction is achieved.
Patent Information
- Application Number
- CN202210230920.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-03-10
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2042-03-10
AI Technical Summary
In the prior art, the efficiency of building a three-dimensional deformable face model is low, mainly because multiple rounds of adjustment of the template low-mode data when acquiring the three-dimensional face low-mode data, resulting in inefficient process.
By acquiring multiple target face high-mode data, adjusting the pre-stored template face data to generate the first face low-mode data, and performing noise filtering based on the reference face low-mode data set, the second face low-mode data is obtained, and finally generating the target face model through data fusion.
This method greatly reduces the adjustment rounds and data volume, simplifies the adjustment process of template face data, improves the efficiency of building face models, and ensures the accuracy of the model.
Smart Images

Figure CN116797712B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a method, apparatus, computer equipment and storage medium for constructing a face model. Background Art
[0002] With the continuous development of science and technology, more and more devices can collect multiple 3D face high-polygon data, and build a 3D deformable face model based on the 3D face low-polygon data corresponding to each of the multiple 3D face high-polygon data, where the resolution of the face formed by the 3D face high-polygon data is higher than the resolution of the face formed by the 3D face low-polygon data. Therefore, the device can achieve the purpose of reconstructing the corresponding 3D face based on different 2D faces by setting different deformation coefficients for the 3D deformable face model.
[0003] In the related technology, in order to ensure the accuracy of constructing a 3D deformable face model, the device needs to accurately obtain the 3D face low-polygon data corresponding to each of the multiple 3D face high-polygon data. Therefore, in the process of obtaining the 3D face low-polygon data, the device needs to make multiple rounds of adjustments to the preset template low-polygon data based on the 3D face high-polygon data until the face formed by the 3D face high-polygon data has the same facial features as the face formed by the template low-polygon data after multiple rounds of adjustments, and then use the template low-polygon data after multiple rounds of adjustments as the 3D face low-polygon data corresponding to the 3D face high-polygon data to obtain accurate 3D face low-polygon data.
[0004] However, since human faces usually contain rich features, more rounds of adjustment are required when adjusting the template low-poly data, which makes the process of obtaining the three-dimensional face low-poly data corresponding to the three-dimensional face high-poly data less efficient, thereby reducing the efficiency of constructing a three-dimensional deformable face model.
[0005] It can be seen that under the relevant technology, the efficiency of constructing a three-dimensional deformable face model is low. Summary of the invention
[0006] The embodiments of the present application provide a method, apparatus, computer device and storage medium for constructing a face model, which are used to solve the problem of low efficiency in constructing a face model.
[0007] In a first aspect, a method for constructing a face model is provided, comprising:
[0008] Obtain multiple target face high-polygon data;
[0009] Based on the multiple target face high-poly model data, adjust the pre-stored template face data to generate first face low-poly model data corresponding to each of the multiple target face high-poly model data;
[0010] Based on a pre-stored reference face low-poly model data set, performing noise filtering processing on the plurality of first face low-poly model data respectively to obtain corresponding second face low-poly model data, wherein the reference face low-poly model data set includes facial features of each reference face;
[0011] The obtained multiple second face low-polygon data are subjected to data fusion processing to generate a target face model.
[0012] In a second aspect, a device for constructing a face model is provided, comprising:
[0013] Acquisition module: used to obtain multiple target face high-polygon data;
[0014] Processing module: used for adjusting the pre-stored template face data based on the multiple target face high-poly model data, and generating first face low-poly model data corresponding to each of the multiple target face high-poly model data;
[0015] The processing module is further used to: based on a pre-stored reference face low-poly data set, respectively perform noise filtering processing on the plurality of first face low-poly data to obtain corresponding second face low-poly data, wherein the reference face low-poly data set includes facial features of each reference face;
[0016] The processing module is also used to perform data fusion processing on the obtained multiple second face low-polygon data to generate a target face model.
[0017] Optionally, for the plurality of target face high-polygon data, the processing module is specifically configured to respectively perform the following operations:
[0018] Based on a target face high-polygon data, determining facial features of a target face formed by the target face high-polygon data, wherein the facial features include facial shape features and facial expression features;
[0019] Based on the facial expression features and the facial shape features, the template face data is adjusted in sequence to generate first facial low-poly data corresponding to the target facial high-poly data, wherein the facial expression features and facial shape features of the simulated face formed by the first facial low-poly data are respectively adapted to the facial expression features and facial shape features of the target face.
[0020] Optionally, the processing module is specifically used for:
[0021] Based on the multiple target face high-polygon data, determine the pose size of the target face formed by each of the multiple target face high-polygon data, and determine the comprehensive pose size feature based on the weighted sum of each pose size;
[0022] Based on the facial expression features, the facial shape features and the comprehensive posture and size features, the template face data is adjusted in sequence to generate first facial low-poly data corresponding to the target face high-poly data, wherein the facial expression features and facial shape features of the simulated face formed by the first facial low-poly data are respectively adapted to the facial expression features and facial shape features of the target face, and the posture and size of the simulated face are adapted to the comprehensive posture and size features.
[0023] Optionally, the processing module is specifically used for:
[0024] Determine a plurality of key data representing facial features of each reference face in the reference face low-poly model data set;
[0025] Performing data fusion processing on the multiple key data to generate an intermediate face model;
[0026] For the plurality of first face low-polygon data, the following operations are performed respectively:
[0027] Based on a first low-poly face data, adjusting the deformation coefficient of the intermediate face model to obtain a deformed face whose similarity with the simulated face formed by the first low-poly face data satisfies a similarity condition;
[0028] The facial data of the deformed face is used as the second facial low-polygon data corresponding to the first facial low-polygon data.
[0029] Optionally, the processing module is specifically used for:
[0030] Performing dimensionality reduction processing on each reference human face low-poly model data in the reference human face low-poly model data set, respectively generating corresponding candidate data, and the key degrees corresponding to each generated candidate data, wherein each key degree represents the degree to which the corresponding candidate data represents the facial features of the corresponding reference human face;
[0031] Based on the criticality corresponding to each of the candidate data, a plurality of candidate data whose criticality meets the criticality condition are selected from the candidate data as the key data.
[0032] Optionally, the processing module is specifically used for:
[0033] For the plurality of first face low-polygon data, the following operations are performed respectively:
[0034] When it is determined that among the plurality of first human face low-poly model data, there is a first human face low-poly model data for which corresponding second human face low-poly model data has been obtained, based on the reference human face low-poly model data set and the obtained second human face low-poly model data, a noise filtering process is performed on one first human face low-poly model data to obtain second human face low-poly model data corresponding to the one first human face low-poly model data;
[0035] When it is determined that there is no first human face low-poly data for which corresponding second human face low-poly data has been obtained among the multiple first human face low-poly data, noise filtering is performed on one first human face low-poly data based on the reference human face low-poly data set to obtain the second human face low-poly data corresponding to the one first human face low-poly data.
[0036] Optionally, the processing module is specifically used for:
[0037] Based on the pre-stored reference face low-poly model data set, the plurality of first face low-poly model data are respectively subjected to multiple rounds of noise filtering processing, wherein after each round of noise filtering processing, the following steps are included:
[0038] Generate third human face low-poly model data corresponding to each of the plurality of first human face low-poly model data;
[0039] Based on the average error between the obtained multiple third human face low-poly data and the corresponding first human face low-poly data, when it is determined that the average error does not meet the error condition, the next round of noise filtering processing is performed. Until it is determined that the average error meets the error condition, the multiple third human face low-poly data processed by this round of noise filtering are respectively used as the second human face low-poly data.
[0040] Optionally, the processing module is specifically used for:
[0041] For the multiple rounds of filtering, the following operations are performed respectively:
[0042] When it is determined that there is a previous round of noise filtering processing, based on a pre-stored reference face low-poly model data set and a plurality of third face low-poly model data generated by the previous round of noise filtering processing, respectively perform the current round of noise filtering processing on the plurality of first face low-poly model data;
[0043] When it is determined that there is no previous round of noise filtering processing, based on the pre-stored reference face low-poly model data set, the current round of noise filtering processing is performed on the multiple first face low-poly model data respectively.
[0044] According to a third aspect, a computer program product is provided, comprising a computer program, which implements the method according to the first aspect when executed by a processor.
[0045] According to a fourth aspect, a computer device is provided, comprising:
[0046] A memory for storing program instructions;
[0047] The processor is used to call the program instructions stored in the memory and execute the method as described in the first aspect according to the obtained program instructions.
[0048] According to a fifth aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to enable a computer to execute the method described in the first aspect.
[0049] In an embodiment of the present application, only one round of adjustment is performed on the template face data, and the simulated face formed by the first face low-poly model data obtained after the adjustment is not limited to having the same facial features as the target face formed by the corresponding target face high-poly model data, which greatly reduces the number of adjustment rounds required and the amount of data required to be adjusted, simplifies the adjustment process for the template face data, and improves the efficiency of building the face model.
[0050] Furthermore, after obtaining the first face low-poly data corresponding to each of the multiple target face high-poly data, noise filtering is performed on the multiple first face low-poly data based on the facial features of each reference face contained in the pre-stored reference face low-poly data set, so that each second face low-poly data obtained is key data that can be used to accurately characterize facial features. Then, each second face low-poly data is subjected to data fusion processing, and the generated target face model can accurately characterize facial features, so that the purpose of accurately reconstructing different three-dimensional faces can be achieved by adjusting the deformation coefficient of the target face model.
[0051] Therefore, in the embodiment of the present application, the efficiency of constructing the three-dimensional deformable face model is improved while ensuring the accuracy of constructing the three-dimensional deformable face model. BRIEF DESCRIPTION OF THE DRAWINGS
[0052] Figure 1a A schematic diagram of a method for constructing a face model in related art;
[0053] Figure 1b A schematic diagram of a method for constructing a face model in related technology Figure 2 ;
[0054] Figure 1c An application scenario of the method for constructing a face model provided in an embodiment of the present application;
[0055] Figure 2 Schematic diagram 1 of a flow chart of a method for constructing a face model provided in an embodiment of the present application;
[0056] Figure 3aA schematic diagram of a method for constructing a face model provided in an embodiment of the present application;
[0057] Figure 3b A schematic diagram of the principle of the method for constructing a face model provided in the embodiment of the present application Figure 2 ;
[0058] Figure 4a A third schematic diagram of a principle of a method for constructing a face model provided in an embodiment of the present application;
[0059] Figure 4b A fourth schematic diagram of a principle of a method for constructing a face model provided in an embodiment of the present application;
[0060] Figure 5a A fifth schematic diagram of a principle of a method for constructing a face model provided in an embodiment of the present application;
[0061] Figure 5b A sixth schematic diagram of a principle of a method for constructing a face model provided in an embodiment of the present application;
[0062] Figure 6a A schematic diagram of a method for constructing a face model provided in an embodiment of the present application;
[0063] Figure 6b A schematic diagram of the principle of the method for constructing a face model provided in the embodiment of the present application Figure 8 ;
[0064] Figure 6c A schematic diagram of the principle of the method for constructing a face model provided in the embodiment of the present application Figure 9 ;
[0065] Figure 7a A schematic diagram of the process of constructing a face model provided in the embodiment of the present application Figure 2 ;
[0066] Figure 7b A schematic diagram of a principle of a method for constructing a face model provided in an embodiment of the present application is shown in Figure 10;
[0067] Figure 7c A schematic diagram of a principle of a method for constructing a face model provided in an embodiment of the present application is shown in FIG11;
[0068] Figure 8 A structural schematic diagram 1 of a device for constructing a face model provided in an embodiment of the present application;
[0069] Fig. 9 A structural diagram of a device for constructing a face model provided in an embodiment of the present application Figure 2 . DETAILED DESCRIPTION
[0070] In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.
[0071] Some of the terms used in the embodiments of the present application are explained below to facilitate understanding by those skilled in the art.
[0072] (1) 3D Morphable Face Model (3DMM):
[0073] The 3D deformable face model is a general 3D face parametric model that uses a fixed number of points to represent the face. The core idea of the 3D deformable face model is that faces can be matched one-to-one in 3D space and can be obtained by weighted linear addition of many other faces orthogonal bases.
[0074] (2) Principal Component Analysis (PCA):
[0075] Principal component analysis is a common data analysis method, which is often used for dimensionality reduction of high-dimensional data and can be used to extract the main characteristic components of data. Principal component analysis is an unsupervised machine learning algorithm and a technology used to explore the structure of high-dimensional data. By reducing the dimensionality of data, more understandable semantic features can be discovered, which speeds up the processing of valuable information.
[0076] (3) Iterative Closest Point (ICP) and Normal Iterative Closest Point (NICP):
[0077] The ICP algorithm is a point set to point set registration method that finds the matching relationship between point sets. The result of the solution is the translation and rotation between the two point sets.
[0078] The NICP algorithm is based on the ICP algorithm. In point cloud matching, in addition to constraining the distance between points, the NICP algorithm also adds constraints on the normal vector and the curvature of the surface where the point cloud is located.
[0079] (4) 3D face high-polygon data and 3D face low-polygon data:
[0080] The segmentation of 3D face high-poly data is very fine, contains more faces, and the formed 3D face is finer. On the contrary, the segmentation of 3D face low-poly data is coarser, contains fewer faces, and the formed 3D face is blurrier. The resolution of the face formed by 3D face high-poly data is higher than the resolution of the face formed by 3D face low-poly data.
[0081] (5) Low-poly wrapping and semantic alignment:
[0082] Low-poly wrapping is to deform the template (low-poly, shape A, topology A) according to the high-poly (shape B, topology B) to obtain a result in which the shape is the high-poly and the topology is the low-poly (shape B, topology A). In the process of low-poly wrapping, semantic alignment is required. For example, the nose tip, mouth corners and other special parts of the template will still be the nose tip, mouth corners and other parts after deformation. That is, in the process of deformation, some special positions of the template need to correspond to the corresponding positions of the high-poly. Among them, the general step of establishing the corresponding relationship is that the artist points out the corresponding key points on the template and the high-poly. After obtaining each corresponding relationship, the artist uses art tools such as wrap3D for subsequent wrapping processing.
[0083] The embodiments of the present application relate to the field of artificial intelligence (AI), are designed based on computer vision (CV) technology and machine learning (ML) technology, and can be applied to cloud computing, smart transportation, assisted driving, maps and other fields.
[0084] Artificial intelligence is the 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. It studies the design principles and implementation methods of various machines, attempts to understand the essence of intelligence, and produces a new intelligent machine that can respond in a similar way to human intelligence, so that the machine has the functions of perception, reasoning and decision-making.
[0085] Artificial intelligence is a comprehensive discipline that covers a wide range of fields, including both hardware-level and software-level technologies. The basic technologies of artificial intelligence generally include sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation interaction systems, mechatronics and other technologies. The software technology of artificial intelligence mainly includes computer vision technology, speech processing technology, natural language processing technology, machine learning / deep learning, automatic driving, smart transportation and other major directions. With the development and progress of artificial intelligence, artificial intelligence has been able to carry out research and application in many fields, such as common smart homes, smart customer service, virtual assistants, smart speakers, smart marketing, smart wearable devices, unmanned driving, automatic driving, drones, robots, smart medical care, Internet of Vehicles, automatic driving, smart transportation and other fields. It is believed that with the further development of future technology, artificial intelligence will be applied in more fields and play an increasingly important role. The solution provided in the embodiment of this application involves technologies such as deep learning and augmented reality of artificial intelligence, which are further explained by the following embodiments.
[0086] Computer vision is a science that studies how to make machines "see". To put it more specifically, it refers to machine vision that uses cameras and computers to replace human eyes to identify, track and measure targets, and further performs graphic processing to make computer processing 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 multi-dimensional data. Computer vision technology usually includes image processing, image recognition, image semantic understanding, image retrieval, OCR, video processing, video semantic understanding, video content / behavior recognition, three-dimensional object reconstruction, 3D technology, virtual reality, augmented reality, simultaneous positioning and mapping, autonomous driving, smart transportation and other technologies, as well as common biometric recognition technologies such as face recognition and fingerprint recognition.
[0087] Machine learning is an interdisciplinary subject that involves probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory and other disciplines. It specializes in studying how computers can acquire new knowledge or skills and reorganize existing knowledge structures by simulating human learning behaviors, so that computers can continuously improve their performance.
[0088] Machine learning is the core of artificial intelligence and the fundamental way to make computers intelligent. Its applications are spread across all areas of artificial intelligence. The core of machine learning is deep learning, a technology that implements machine learning. Machine learning usually includes deep learning, reinforcement learning, transfer learning, inductive learning, artificial neural networks, and self-learning. Deep learning includes convolutional neural networks (CNN), deep belief networks, recursive neural networks, autoencoders, generative adversarial networks, and other technologies.
[0089] It should be noted that in the embodiments of the present application, facial data and other related data are involved. When the above embodiments of the present application are applied to specific products or technologies, the user's permission or consent must be obtained each time the data is acquired, and the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0090] The following is a brief introduction to the application fields of the method for constructing a face model provided in the embodiments of the present application.
[0091] With the continuous development of technology, more and more devices can collect multiple 3D face high-polygon data, and build a 3D deformable face model based on the 3D face low-polygon data corresponding to the multiple 3D face high-polygon data. The resolution of the face formed by the 3D face high-polygon data is higher than the resolution of the face formed by the 3D face low-polygon data. Please refer to Figure 1a ,in, Figure 1a (1) A face formed by three-dimensional high-polygon data. Figure 1a (2) A face formed by three-dimensional low-polygon data.
[0092] Thus, the device can achieve the purpose of reconstructing corresponding three-dimensional faces based on different two-dimensional faces by setting different deformation coefficients for the three-dimensional deformable face model.
[0093] For example, a three-dimensional deformable face model can be represented by two vectors, one of which is a vector S used to represent the shape of the face, S = (X 1 , Y 1 , Z 1 , X 2 , Y 2 , Z 2 , ..., X n , Y n , Z n ), the vector S can represent the face shape, the shape of the facial features or the hairstyle of the face; the other is the vector T used to represent the texture of the face, T = (R 1 , G 1 , B 1 , R 2 , G2 , B 2 , ..., R n , G n , B n ), the vector T can represent the skin condition, facial features or hairstyle of the face. For the three-dimensional deformable face model, please refer to formula (1) and formula (2):
[0094]
[0095]
[0096] in, is the average value of the face shapes of m people, is the average value of m face textures, a i and b i is the deformation coefficient of the 3D deformable face model. Any 3D face can be represented by the 3D deformable face model, and each face can be represented by adjusting the deformation coefficient of the 3D deformable face model.
[0097] In the related technology, in order to ensure the accuracy of constructing a 3D deformable face model, the device needs to accurately obtain the 3D face low-polygon data corresponding to each of the multiple 3D face high-polygon data. Therefore, in the process of obtaining the 3D face low-polygon data, the device needs to make multiple rounds of adjustments to the preset template low-polygon data based on the 3D face high-polygon data until the face formed by the 3D face high-polygon data has the same facial features as the face formed by the template low-polygon data after multiple rounds of adjustments, and then use the template low-polygon data after multiple rounds of adjustments as the 3D face low-polygon data corresponding to the 3D face high-polygon data to obtain accurate 3D face low-polygon data.
[0098] For example, see Figure 1b , the device can first obtain the 3D face high-polygon data, please refer to Figure 1b (1) The face is formed by the 3D high-polygon data. The device then obtains the template low-polygon data. Please refer to Figure 1b (2) The face formed by the template low-poly data. The device first needs to make multiple rounds of adjustments to the template low-poly data so that the facial features and face shape of the face formed by the adjusted template low-poly data are similar to the facial features and face shape of the face formed by the 3D face high-poly data. Please refer to Figure 1b (3) is a face formed by a 3D face low-polygon data. The device then continues to make multiple rounds of adjustments to the adjusted template low-polygon data so that the position, posture, size, etc. of the face formed by the adjusted template low-polygon data are similar to the position, posture, size, etc. of the face formed by the 3D face high-polygon data. Please refer to Figure 1b (4) is a face formed by three-dimensional low-polygon data.
[0099] However, since human faces usually contain rich features, multiple attempts to adjust the data are required before the data can be adjusted to the appropriate value. When adjusting the template low-poly data, the number of adjustment rounds and the number of times each round of data needs to be adjusted are relatively large. At the same time, the adjustment process is usually completed manually by art staff, which makes the process of obtaining the three-dimensional face low-poly data corresponding to the three-dimensional face high-poly data less efficient, thereby reducing the efficiency of constructing a three-dimensional deformable face model.
[0100] It can be seen that under the relevant technology, the efficiency of constructing a three-dimensional deformable face model is low.
[0101] In order to solve the problem of low efficiency in constructing a three-dimensional deformable face model, the present application proposes a method for constructing a face model. In the method, after obtaining multiple target face high-poly data, the pre-stored template face data is adjusted based on the multiple target face high-poly data, and the first face low-poly data corresponding to each of the multiple target face high-poly data is generated respectively. Based on the pre-stored reference face low-poly data set, each of the multiple first face low-poly data is subjected to noise filtering processing to obtain corresponding second face low-poly data, wherein the reference face low-poly data set contains the face features of each reference face. The obtained multiple second face low-poly data are subjected to data fusion processing to generate a target face model.
[0102] In an embodiment of the present application, only one round of adjustment is performed on the template facial data, so that the simulated face formed by the first facial low-polygon data obtained after the adjustment can have a roughly similar face shape, or a roughly similar expression, or a roughly similar posture, etc. with the target face formed by the corresponding target facial high-polygon data, and does not limit the simulated face to be exactly the same or highly similar to the target face. Therefore, the number of adjustment rounds and the amount of data required to be adjusted are greatly reduced, the adjustment process for the template facial data is simplified, and the efficiency of building the facial model is improved.
[0103] Furthermore, after obtaining the first face low-poly data corresponding to each of the multiple target face high-poly data, based on the facial features of each reference face contained in the pre-stored reference face low-poly data set, the multiple first face low-poly data are respectively subjected to noise filtering processing, so that each of the obtained second face low-poly data is key data that can be used to accurately characterize facial features. At the same time, through noise filtering, the second face low-poly data can also more accurately characterize the facial features of the target face.
[0104] Finally, the target face model generated by data fusion processing of each second face low-poly data can accurately represent the facial features, so that by adjusting the deformation coefficient of the target face model, the purpose of accurately reconstructing different three-dimensional faces can be achieved. In the process of generating the target face model, there is no need to repeatedly compare the target face high-poly data and make multiple rounds of adjustments to the template face data, so that accurate second face low-poly data for constructing the target face model can be obtained. Under the premise of ensuring the accuracy of the target face model, the efficiency of constructing the face model is greatly improved.
[0105] Therefore, in the embodiment of the present application, the efficiency of constructing the three-dimensional deformable face model is improved while ensuring the accuracy of constructing the three-dimensional deformable face model.
[0106] The following describes the application scenarios of the method for constructing a face model provided by the present application.
[0107] Please refer to Figure 1c , is a schematic diagram of an application scenario of the method for constructing a face model provided by the present application. The application scenario includes a client 101 and a server 102. The client 101 and the server 102 can communicate with each other. The communication method can be to communicate using wired communication technology, for example, by connecting a network cable or a serial port cable; or to communicate using wireless communication technology, for example, by communicating using Bluetooth or wireless fidelity (WIFI) and other technologies, without specific limitation.
[0108] The client 101 generally refers to a device that can provide the target face high-model data to the server 102, such as a terminal device, a third-party application that the terminal device can access, or a webpage that the terminal device can access. Terminal devices include but are not limited to mobile phones, computers, intelligent transportation equipment, smart appliances, etc. The server 102 generally refers to a device that can build a face model, such as a terminal device or a server. The server includes but is not limited to a cloud server, a local server, or an associated third-party server. Both the client 101 and the server 102 can use cloud computing to reduce the occupation of local computing resources; cloud storage can also be used to reduce the occupation of local storage resources.
[0109] As an embodiment, the client 101 and the server 102 can be the same device. For example, the embodiment of the present application can be implemented only through the client 101, or only through the server 102, etc., without specific limitation. In the embodiment of the present application, the client 101 and the server 102 are different devices as an example for introduction.
[0110] The following is based on Figure 1c , the method for constructing a face model provided in the embodiment of the present application is specifically introduced. Please refer to Figure 2 , which is a flow chart of a method for constructing a face model provided in an embodiment of the present application.
[0111] S201, obtaining multiple target face high-polygon data.
[0112] The facial data is data that can form a visualized face, and the target face high-polygon data is facial data with a higher resolution of the target face. For example, the resolution of the target face formed by the target face high-polygon data is 1902*1080, which is higher than the resolution of the template face formed by the template face data, which is 800*600.
[0113] Multiple target face high-model data can be obtained by reading target face high-model data stored in the memory; multiple target face high-model data can also be obtained by receiving target face high-model data sent by other devices; multiple target face high-model data can also be downloaded from network resources, etc., without specific restrictions.
[0114] Taking the example of obtaining multiple target face high-model data by receiving target face high-model data sent by other devices, for example, a scanning device scans a real face to obtain target face high-model data, the scanning device sends the obtained target face high-model data to a device, and receives the target face high-model data sent by the scanning device. By receiving the target face high-model data sent by the scanning device within a preset time length, multiple target face high-model data are obtained.
[0115] Please refer to Figure 3a , which is a target face formed by the target face high-poly data obtained by scanning a real face by a scanning device. Although the target face formed by the target face high-poly data is relatively clear, it contains a lot of noise. Then, in the face model established based on multiple target face high-poly data, the number of vertices is large and disordered, the face pieces are irregular, and the topological structure is inconsistent. Therefore, based on multiple target face high-poly data, it is impossible to accurately establish a face model for reconstructing different three-dimensional faces, such as a three-dimensional deformable face model (3DMM).
[0116] Therefore, it is necessary to obtain the target face high-poly data, which is a three-dimensional face high-poly data, and the corresponding face low-poly data, based on the face low-poly data with relatively regular vertex numbers and patches and consistent topological structure, to accurately establish a face model for reconstructing different three-dimensional faces. The face low-poly data is the face data with a lower resolution of the simulated face. For example, the resolution of the simulated face formed by the face low-poly data is 800*600, which is lower than the resolution of the target face formed by the target face high-poly data, which is 1902*1080.
[0117] The following describes the process of accurately and efficiently acquiring the 3D human face low-polygon data corresponding to the 3D human face high-polygon data through S202 and S203.
[0118] S202, based on the multiple target face high-poly model data, adjusting the pre-stored template face data, and generating the first face low-poly model data corresponding to each of the multiple target face high-poly model data.
[0119] After obtaining multiple target face high-poly model data, pre-stored template face data can be obtained, and based on the multiple target face high-poly model data, the template face data is adjusted to generate first face low-poly model data corresponding to each of the multiple target face high-poly model data.
[0120] Please refer to Figure 3b , which is a template face formed by template face data. Template face data is fixed. However, faces in different regions, faces of different ages, faces of different genders, and faces with different expressions are all different. Based directly on template face data, art staff need to go through a lot of trial and error and a lot of adjustments to accurately obtain the three-dimensional face low-poly data corresponding to the target face high-poly data. Not only is it very time-consuming, but when the amount of target face high-poly data is large, due to the limited energy of art staff, it is also easy to obtain wrong or inaccurate three-dimensional face low-poly data.
[0121] Therefore, in an embodiment of the present application, when adjusting the template facial data, only simple adjustments are performed, such as only one round of adjustment. The simulated face formed by the first facial low-polygon data obtained after the adjustment has a roughly similar face shape, or has a roughly similar expression, or has a roughly similar posture, etc. to the target face formed by the corresponding target facial high-polygon data. There is no restriction on the simulated face being exactly the same or highly similar to the target face, and there is no restriction on the simulated face being exactly the same or highly similar to the target face. Therefore, the number of rounds required for adjustment and the amount of data required for adjustment are greatly reduced, the adjustment process for the template facial data is simplified, and the efficiency of constructing the facial model is improved.
[0122] As an embodiment, when adjusting the template face data based on the target face high-poly model data, the template face data may be adjusted based on the facial features of the target face formed by the target face high-poly model data. The following takes a target face high-poly model data as an example to introduce the process of obtaining the first face low-poly model data. The process for other target face high-poly model data is similar and will not be repeated here.
[0123] Based on a target face high-polygon data, facial features of a target face formed by the target face high-polygon data can be determined, and the facial features can include facial shape features and facial expression features. The facial shape features can represent the face shape or facial features of the target face, and the facial expression features can represent the facial movements or facial features positions, facial features rotation angles, etc. of the target face.
[0124] After obtaining the facial shape features and facial expression features, the template face data can be adjusted based on the facial expression features and facial shape features in turn to generate a first face low-polygon data corresponding to the target face high-polygon data. The facial expression features and facial shape features of the simulated face formed by the first face low-polygon data are respectively adapted to the facial expression features and facial shape features of the target face. Adjustment can be made based on the facial expression features first, and then based on the facial shape features; adjustment can also be made based on the facial shape features first, and then based on the facial expression features; adjustment can also be made based on both the facial expression features and the facial shape features at the same time, without specific restrictions.
[0125] The facial expression features and facial shape features of the simulated face formed by the first facial low-poly data are adapted to the facial expression features and facial shape features of the target face respectively. The facial expression features of the simulated face and the facial expression features of the target face may be matched correspondingly, and the facial shape features of the simulated face and the facial shape features of the target face may be matched correspondingly; or the average matching degree of the matching degree between the facial expression features of the simulated face and the facial expression features of the target face, and the matching degree between the facial shape features of the simulated face and the facial shape features of the target face may be greater than a matching threshold, etc., without specific limitation.
[0126] For example, the template face data can be adjusted based on the facial expression features, and the adjusted template face data can be used as the initial adjustment face data. The facial expression features of the initial adjustment face formed by the initial adjustment face data are adapted to the facial expression features of the target face. Figure 4a The target face has raised eyebrows and no other expressions. Therefore, the expression of the template face is adjusted according to the expression of the target face, so that the eyebrows of the initially adjusted face are raised and no other expressions are obtained, that is, the expression of the initially adjusted face matches the expression of the target face.
[0127] The facial expression features of the initially adjusted face are adapted to the facial expression features of the target face. The facial expression features of the initially adjusted face may have a similarity greater than an expression feature similarity threshold between them. The facial expression features of the initially adjusted face may also include sub-features included in the facial expression features of the initially adjusted face, and the number of sub-features that are similar to the sub-features included in the facial expression features of the target face may be greater than an expression feature number threshold. The sub-features included in the facial expression features may be local facial expression features, such as upturned corners of the mouth or crow's feet.
[0128] After obtaining the preliminary adjusted face data, the preliminary adjusted face data can be adjusted based on the face shape features, and the adjusted preliminary adjusted face data can be used as the first face low-poly data corresponding to the corresponding target face high-poly data.
[0129] The facial shape features of the simulated face formed by the first face low-polygon data are adapted to the facial shape features of the target face. Figure 4b The eyebrows of the target face are generally wider, and are narrow in front and wide in the back, there are strip-shaped protrusions at the outer corners of the eyes and the lower eyelids, and the lips have obvious outer contours, etc. According to the facial shape of the target face, the facial shape of the initially adjusted face is adjusted, so that the eyebrows of the obtained simulated face are generally wider, and are narrow in front and wide in the back, there are strip-shaped protrusions at the outer corners of the eyes and the lower eyelids, and the lips have obvious outer contours, etc., that is, the facial shape of the obtained simulated face matches the facial shape of the target face.
[0130] The facial shape features of the simulated face are adapted to the facial shape features of the target face. The facial expression features of the simulated face may be such that the similarity between the facial expression features of the simulated face and the facial shape features of the target face is greater than a shape feature similarity threshold. The facial shape features of the simulated face may be such that the number of sub-features similar to the sub-features included in the facial shape features of the target face is greater than a shape feature number threshold. The sub-features included in the facial shape features may be local face shape features, such as lip thickness or eye distance.
[0131] As an embodiment, when adjusting the template face data based on facial expression features and facial shape features in turn to generate the first face low-poly data corresponding to the target face high-poly data, the pose size of the template face can also be adjusted so that the pose size of the simulated face formed by the first face low-poly data is compatible with the comprehensive pose size features represented by the multiple target face high-poly data, further improving the accuracy of the first face low-poly data in representing the target face high-poly data. The pose size can include the position, angle, size, etc. of the face. The position of the face is, for example, the position where the simulated face and the target face are mirror images of each other; the angle of the face is, for example, the side angle, the top view angle, etc.; the size of the face is, for example, the area of the projection of the face in a plane coordinate system; another example is the product of the length and width of the face, such as 50*30 in centimeters; another example is the resolution corresponding to the face, such as 600*800, etc.
[0132] Based on multiple target face high-poly model data, the pose size of the target face formed by each of the multiple target face high-poly model data can be determined, and based on the weighted sum of each pose size, the comprehensive pose size feature can be determined.
[0133] Then, based on the facial expression features, facial shape features and comprehensive posture and size features, the template face data is adjusted to generate a first face low-polygon data corresponding to the target face high-polygon data. The facial expression features and facial shape features of the simulated face formed by the first face low-polygon data are respectively adapted to the facial expression features and facial shape features of the target face, and the posture and size of the simulated face are adapted to the comprehensive posture and size features.
[0134] For example, after obtaining a target face high-polygon data and template face data, first adjust the template face data based on the facial expression features of the target face to obtain the initial face data. Please refer to Figure 5a , the target face represents a target face high-polygon data, the template face represents the template face data, and the initial adjustment face represents the initial adjustment face data. After obtaining the initial adjustment face data, continue to adjust the initial adjustment face data based on the face shape features of the target face to obtain the polyphonic face data. Please continue to refer to Figure 5a After obtaining the polyphonic face data, continue to adjust the polyphonic face data based on the comprehensive posture and size features to obtain the first face low-polygon data. Please continue to refer to Figure 5a , using a simulated face to represent the first face low-polygon data, the facial expression features and facial shape features of the simulated face are respectively adapted to the facial expression features and facial shape features of the target face, and the pose size of the simulated face is adapted to the comprehensive pose size features.
[0135] Among them, please refer to Figure 5b (1) indicates the comprehensive pose size feature determined based on the pose size of the target face formed by multiple target face high-polygon data. For example, the comprehensive pose size feature indicates that the face length is 120 cm, the face width is 80 cm, and the face orientation is 60° rotated to the left about the face center axis. When adjusting the template face data based only on the face expression features and face shape features to obtain the corresponding first face low-polygon data, please refer to Figure 5b (2) The pose size of the simulated face obtained is the same as the pose size of the template face. The pose size of the simulated face includes a face length of 60 cm, a face width of 40 cm, and a face orientation of 55° rotated to the right about the face center axis. At this time, the pose size of the simulated face is not compatible with the comprehensive pose size feature. Therefore, when adjusting the template face data, the template face data can be adjusted based on the facial expression features, facial shape features and comprehensive pose size features at the same time, so that the facial expression features and facial shape features of the simulated face are respectively adapted to the facial expression features and facial shape features of the target face, while the pose size of the simulated face is adapted to the comprehensive pose size feature. Please refer to Figure 5b (3).
[0136] S203: Based on a pre-stored reference face low-poly model data set, perform noise filtering processing on each of the plurality of first face low-poly model data to obtain corresponding second face low-poly model data.
[0137] After obtaining each first face low-poly model data, a pre-stored reference face low-poly model data set may be obtained, and based on the reference face low-poly model data set, noise filtering processing may be performed on each of the multiple first face low-poly model data to obtain corresponding second face low-poly model data.
[0138] Each reference face low-poly data in the reference face low-poly data set may be reference face low-poly data sent by other devices, or reference face low-poly data obtained from network resources, etc., without any specific limitation.
[0139] The reference low-poly face data may be obtained based on the reference high-definition face data, may be obtained by performing multiple rounds of adjustments on the template face data, or may be obtained by the method for obtaining the second low-poly face data introduced in the embodiment of the present application, etc., without specific limitation. Regardless of the method used to obtain the reference low-poly face data, the purpose of improving the efficiency of establishing the face model can be achieved by simplifying the process of obtaining the second low-poly face data corresponding to each of the multiple target high-poly face data.
[0140] The reference face low-poly data set includes facial features of each reference face. When noise filtering is performed on multiple first face low-poly data respectively based on the reference face low-poly data set, noise filtering can be performed on multiple first face low-poly data respectively based on the facial features of each reference face, so as to avoid the negative impact of the noise data contained in the first face low-poly data on the generation of the target face model and improve the accuracy of establishing the target face model.
[0141] As an embodiment, when noise filtering is performed on multiple first face low-poly data respectively based on a reference face low-poly data set, a deformable intermediate face model can be generated based on the data representing the facial features of each reference face in the reference face low-poly data set. Through the deformable intermediate face model, each first face low-poly data is fitted to obtain corresponding second face low-poly data, so that each second face low-poly data is obtained by using the data representing the facial features of each reference face, and is not mixed with noise data, thereby achieving the purpose of noise filtering the first face low-poly data.
[0142] The following is a detailed introduction to the process of performing noise filtering on multiple first face low-poly data based on a reference face low-poly data set to obtain corresponding second face low-poly data.
[0143] We can first determine multiple key data that characterize the facial features of each reference face in the reference face low-poly data set, and generate an intermediate face model by performing data fusion processing on the multiple key data. Then, we can use the intermediate face model to fit each first face low-poly data to obtain corresponding second face low-poly data, thereby achieving the purpose of noise filtering processing.
[0144] As an example, when determining multiple key data, please refer to Figure 6a , each reference face low-poly data in the reference face low-poly data set can be subjected to dimensionality reduction processing to generate corresponding candidate data, such as obtaining candidate data A, candidate data B, ... and candidate data N, and the key degrees corresponding to each generated candidate data, such as obtaining key degrees A, key degrees B, ... and key degrees N, each key degree characterizes the degree to which the corresponding candidate data characterizes the facial features of the corresponding reference face. Based on the key degrees corresponding to each candidate data, multiple candidate data whose key degrees meet the key degree conditions can be selected from each candidate data as key data, such as obtaining key data A, key data B, ... and key data M. The candidate data whose key degrees do not meet the key degree conditions are used as noise data.
[0145] For example, the PCA algorithm is used to perform dimensionality reduction processing on each reference face low-poly data, and the principal components of each reference face low-poly data are extracted to obtain each data component, and each data component can be used as candidate data. At the same time, when the PCA algorithm is used for dimensionality reduction processing, each data component is scored based on the variance. The contribution score is used to characterize the contribution of the data component to the facial features used to characterize the reference face. Therefore, each contribution score obtained can be used as the criticality of the corresponding candidate data. Therefore, the top 99% of the candidate data with the largest criticality can be selected from each candidate data as the key data. The remaining 1% of the candidate data is high-frequency information, and the noise is mainly reflected in the high-frequency information, so it can be regarded as noise data.
[0146] After obtaining the intermediate face model, the deformation coefficient of the intermediate face model can be adjusted based on the first face low-poly data to fit the first face low-poly data and obtain the second face low-poly data corresponding to the first face low-poly data.
[0147] The following is an introduction to the process of obtaining the corresponding second face low-poly data for a first face low-poly data as an example. The process for other first face low-poly data is similar and will not be repeated here.
[0148] Based on a first low-poly face data, the deformation coefficient of the intermediate face model can be adjusted to obtain a deformed face whose similarity with a simulated face formed by the first low-poly face data satisfies a similarity condition. The facial data of the deformed face can be used as second low-poly face data corresponding to the first low-poly face data.
[0149] Since the intermediate face model is a deformable face model constructed based on the key data, no matter how the intermediate face model is deformed, the deformed face is composed of the key data. Therefore, using the facial data of the deformed face as the second facial low-poly data corresponding to the first facial low-poly data is equivalent to data cleaning of the first facial low-poly data, filtering out the noise data therein, so that the obtained second facial low-poly data is more accurate.
[0150] Furthermore, since the intermediate face model is constructed from a reference face low-poly data set, and each reference face low-poly data in the reference face low-poly data set is an accurate simulation of each reference high-definition face data, the reference face formed by the reference face low-poly data and the high-definition face formed by the reference high-definition face data are accurately aligned. Therefore, no matter how the constructed intermediate face model is deformed, the deformed face obtained can also be accurately aligned with the high-definition face, that is, the deformed face can be accurately aligned with the target face, thereby reducing the alignment deviation between the simulated face formed by the first face low-poly data and the target face formed by the target face high-poly data, and further improving the accuracy of the second face low-poly data.
[0151] As an embodiment, not only can each first face low-poly model data be noise filtered based on a reference face low-poly model data set to obtain second face low-poly model data corresponding to each first face low-poly model data; but also the remaining first face low-poly model data can be noise filtered based on the reference face low-poly model data set and the second face low-poly model data obtained through noise filtering, so as to increase the reference basis for the filtering process and thus improve the accuracy of the filtering process.
[0152] The following is an introduction to the process of obtaining the corresponding second face low-poly data for a first face low-poly data as an example. The process for other first face low-poly data is similar and will not be repeated here.
[0153] It may be first determined whether there is any first face low-poly model data for which corresponding second face low-poly model data has been obtained among the plurality of first face low-poly model data. When it is determined that there is any first face low-poly model data for which corresponding second face low-poly model data has been obtained among the plurality of first face low-poly model data, a noise filtering process is performed on one first face low-poly model data based on the reference face low-poly model data set and the obtained second face low-poly model data to obtain second face low-poly model data corresponding to the first face low-poly model data;
[0154] When it is determined that among multiple first human face low-poly data, there is no first human face low-poly data for which corresponding second human face low-poly data has been obtained, based on a reference human face low-poly data set, a first human face low-poly data is subjected to noise filtering processing to obtain second human face low-poly data corresponding to the first human face low-poly data.
[0155] The obtained second face low-poly model data may be stored in a set, and by determining whether the data exists in the set, it is determined whether there is first face low-poly model data for which corresponding second face low-poly model data has been obtained in the plurality of first face low-poly model data.
[0156] Each first face low-poly model data may also be sorted, and the second face low-poly model data corresponding to each first face low-poly model data may be determined in sequence according to the arrangement order. Thus, each time a first face low-poly model data is processed, the second face low-poly model data corresponding to all first face low-poly model data arranged before the first face low-poly model data may be obtained at the same time, and by determining whether the first face low-poly model data is arranged in the first order, it may be determined whether there is first face low-poly model data for which corresponding second face low-poly model data has been obtained among the multiple first face low-poly model data, etc., without any specific limitation.
[0157] For example, see Figure 6b , each first face low-poly data includes first face low-poly data A, first face low-poly data B, ... and first face low-poly data Z, and an arrangement number is set for each first face low-poly data, the arrangement number of the first face low-poly data A is 1, the arrangement number of the first face low-poly data B is 2, ..., the arrangement number of the first face low-poly data Z is n. When processing the first face low-poly data B, the arrangement number of the first face low-poly data B is 2, then it can be determined that there is a first face low-poly data that has obtained the corresponding second face low-poly data. Obtain the first face low-poly data A and the first face low-poly data B with arrangement numbers of 1 and 2 respectively. Based on the second face low-poly data A corresponding to the first face low-poly data A and the reference face low-poly data set, perform noise filtering on the first face low-poly data B to obtain the second face low-poly data B.
[0158] As an embodiment, based on a pre-stored reference face low-poly data set, multiple rounds of noise filtering processing can be performed on multiple first face low-poly data respectively, so as to further avoid the obtained second face low-poly data containing noise data, thereby achieving the purpose of improving the accuracy of the obtained second face low-poly data.
[0159] After each round of noise filtering, a plurality of third face low-poly data corresponding to each of the first face low-poly data can be generated. The average error can be calculated based on the errors between the obtained plurality of third face low-poly data and the corresponding first face low-poly data. Thus, it can be determined whether the average error between the plurality of third face low-poly data obtained in this round of noise filtering and the corresponding first face low-poly data meets the error condition. When it is determined that the average error does not meet the error condition, the next round of noise filtering is performed. In the next round of filtering, the plurality of first face low-poly data can continue to be subjected to noise filtering based on the pre-stored reference face low-poly data set and the third face low-poly data obtained in this round, until it is determined that the average error meets the error condition, the plurality of third face low-poly data obtained in the current round of noise filtering are respectively used as the second face low-poly data.
[0160] Based on the pre-stored reference face low-poly data set and the third face low-poly data obtained in this round, when the next round of noise filtering processing is performed on multiple first face low-poly data, since the data on which the next round of noise filtering processing is based is larger than the data contained in the reference face low-poly data set, the filtering accuracy in the next round of noise filtering processing is higher, and the noise data contained in the first face low-poly data can be further accurately filtered out.
[0161] Furthermore, the third face low-poly data obtained after each round of noise filtering processing contains less noise data than the third face low-poly data obtained after previous rounds of noise filtering processing. Therefore, when the next round of noise filtering processing is performed on multiple first face low-poly data based on the pre-stored reference face low-poly data set and the third face low-poly data obtained in this round of noise, the data based on which the filtering processing is based is more accurate, and therefore the noise data contained in the first face low-poly data can be further accurately filtered out.
[0162] For example, see Figure 6c, the plurality of first low-poly face data includes first low-poly face data A, first low-poly face data B, ... and first low-poly face data Z. When performing the first round of noise filtering, based on the reference low-poly face data set, each first low-poly face data is filtered to obtain corresponding third low-poly face data, that is, including third low-poly face data A, third low-poly face data B, ... and third low-poly face data Z. The average error between each third low-poly face data and the corresponding first low-poly face data can be determined to obtain a first average error. If the first average error does not meet the error condition, then based on the reference low-poly face data set and each third low-poly face data, each first low-poly face data is filtered again, and the corresponding third low-poly face data is updated. The average error between each third low-poly face data and the corresponding first low-poly face data can be further determined to obtain a second average error. And so on, until the i-th average error obtained during the i-th round of noise filtering meets the error condition, then each third face low-poly data obtained after the i-th round of noise filtering is used as the corresponding second face low-poly data, namely, second face low-poly data A, second face low-poly data B, ... and second face low-poly data Z.
[0163] The average errors obtained by comparing the noise filtering processing of historical rounds with those of the current round can be used to determine whether they are in a convergence state. If they are not converged, it can be determined that the average error obtained by the current round of noise filtering processing does not meet the error condition. If they are converged, it can be determined that the average error obtained by the current round of noise filtering processing meets the error condition, and the error condition is not specifically limited.
[0164] For example, the average error obtained in the first round of noise filtering is 0.5, the average error obtained in the second round of noise filtering is 0.3, the average error obtained in the third round of noise filtering is 0.4, the average error obtained in the fourth round of noise filtering is 0.5, the average error obtained in the fifth round of noise filtering is 0.6, and the average error obtained in the sixth round of noise filtering is 0.2. It can be seen that after six rounds of noise filtering, the average error has not converged to any value, so it can be determined that the average error obtained in this round of noise filtering does not meet the error condition.
[0165] For another example, the average error obtained in the first round of noise filtering is 0.5, the average error obtained in the second round of noise filtering is 0.3, the average error obtained in the third round of noise filtering is 0.4, the average error obtained in the fourth round of noise filtering is 0.2, the average error obtained in the fifth round of noise filtering is 0.1, and the average error obtained in the sixth round of noise filtering is 0.1. It can be seen that after six rounds of noise filtering, the average error converges to 0.1, so it can be determined that the average error obtained in this round of noise filtering meets the error condition.
[0166] As an embodiment, when performing multiple rounds of noise filtering processing, not only can each first face low-poly model data be noise filtered based on the reference face low-poly model data set, but also each first face low-poly model data can be noise filtered based on the reference face low-poly model data set and the second face low-poly model data obtained in the current round of noise filtering processing. In addition, each first face low-poly model data can be noise filtered based on the reference face low-poly model data set and each third face low-poly model data obtained after historical rounds of noise filtering processing. In addition, each first face low-poly model data can be noise filtered based on the reference face low-poly model data set, the second face low-poly model data obtained in the current round of noise filtering processing, and each third face low-poly model data obtained after historical rounds of noise filtering processing, etc., without specific limitation.
[0167] The following is an introduction using one round of noise filtering process in multiple rounds of noise filtering process as an example.
[0168] It can be determined first whether there is a previous round of noise filtering processing. If it is determined that there is a previous round of noise filtering processing, the current round of noise filtering processing is performed on the multiple first face low-polygon data based on the pre-stored reference face low-polygon data set and the multiple third face low-polygon data generated by the previous round of noise filtering processing. If it is determined that there is no previous round of noise filtering processing, the current round of noise filtering processing is performed on the multiple first face low-polygon data based on the pre-stored reference face low-polygon data set, etc., without specific restrictions.
[0169] S204, performing data fusion processing on the obtained plurality of second face low-polygon data to generate a target face model.
[0170] After obtaining a plurality of second face low-polygon data, the obtained plurality of second face low-polygon data may be subjected to data fusion processing to generate a target face model; the reference face low-polygon data set and the obtained plurality of second face low-polygon data may also be subjected to data fusion processing to generate a target face model, etc. For example, the PCA algorithm may be used to perform dimensionality reduction processing on each reference face low-polygon data in the reference face low-polygon data set and the plurality of second face low-polygon data, extract the main feature components of the data, and then perform orthogonal basis weighting on each main feature component to obtain a deformable target face model.
[0171] The following is an example of the method for building a face model provided in an embodiment of the present application, taking the server as the execution entity, and actually does not limit the execution entity.
[0172] Please refer to Figure 7a , which is a flowchart of building a face model.
[0173] S701, the server obtains a reference low-poly face data set, each reference low-poly face data in the reference low-poly face data set is obtained by accurately semantically aligning and low-poly wrapping each reference high-definition face data, and can be obtained by using a multi-round adjustment method in the relevant technology, or by using the method described in the embodiment of the present application. After obtaining the reference low-poly face data set, the reference low-poly face data set is pre-stored in the server and is recorded as set A.
[0174] S702, the server obtains multiple target face high-poly model data, which can be multiple target face high-poly model data received by the server and sent by the scanning device. Since the scanning device obtains multiple target face high-poly model data by scanning real faces, the target face high-poly model data form more target face noise, and the surface formed between each point is irregular and smooth, that is, the topological structure is inconsistent. It is necessary to perform low-poly model wrapping on the multiple target face high-poly model data respectively to obtain low-poly model data of the simulated face with less noise and consistent topological results, so that a deformable face model can be constructed based on the obtained face low-poly model data for reconstructing different three-dimensional faces.
[0175] S703, the server performs preprocessing based on multiple target face high-polygon data respectively, and the preprocessing includes at least two steps. Step 1: Acquire template face data, and align the template face data with the target face high-polygon data. Position alignment is, for example, mapping in the same coordinate system, and for example, aligning the nose tip of the template face formed by the template face data with the nose tip of the target face formed by the target face high-polygon data, etc., without specific limitation. The template face data only needs to be aligned with one target face high-polygon data to achieve the effect of aligning the template face data with all target face high-polygon data.
[0176] Step 2: Based on multiple target face high-poly model data, the server uses the NICP algorithm to perform low-poly wrapping on the multiple target face high-poly model data, that is, adjust the template face data obtained in step 1, and generate first face low-poly model data corresponding to each of the multiple target face high-poly model data. The obtained first face low-poly model data can be regarded as a set, which is recorded as set B'.
[0177] By aligning and adjusting the positions of the template faces based on multiple target face high-poly data, each first face low-poly data is obtained. Since only one round of adjustment is performed on the template face data, the obtained first face low-poly data is relatively rough and cannot accurately represent the corresponding target face high-poly data.
[0178] As an embodiment, the NICP algorithm is used to adjust the template face data obtained in step one respectively, and the adjusted data is used as set B. The server can also calculate the average face low-poly data of each reference face low-poly data based on set A. The server can use the ICP algorithm to continue to adjust the pose size of each data in set B based on the average face low-poly data, so that the pose size of each data in set B is adapted to the comprehensive position size feature represented by the average face low-poly data. Therefore, after adjusting the pose size, the first face low-poly data corresponding to each of the multiple target face high-poly data can be generated respectively, and the obtained first face low-poly data can be regarded as a set, recorded as set B'.
[0179] S704, the server determines whether there is any second facial low-poly model data that has been obtained. If there is no second facial low-poly model data that has been obtained, the server uses the PCA algorithm to perform dimensionality reduction processing on each reference facial low-poly model data respectively to obtain the candidate data corresponding to each reference facial low-poly model data, where the candidate data is the data after the dimensionality reduction processing of the corresponding reference facial low-poly model data.
[0180] If there is second face low-poly model data that has been obtained, the server uses the PCA algorithm to perform dimensionality reduction processing on each reference face low-poly model data and each second face low-poly model data, and obtains the alternative data corresponding to each reference face low-poly model data and the alternative data corresponding to each second face low-poly model data. The alternative data is the data after dimensionality reduction processing of the corresponding reference face low-poly model data or the second face low-poly model data.
[0181] At the same time, after the dimensionality reduction process, the criticality corresponding to each candidate data can also be obtained. The criticality is, for example, the variance contribution rate. Based on each criticality, the server can select 99% of the candidate data with the largest criticality as the corresponding key data.
[0182] After obtaining each key data, the server can perform orthogonal basis weighted summation on each key data to construct a deformable intermediate face model. The intermediate face model only contains key data that can characterize facial features. Therefore, the face noise fitted by the intermediate face model is small, achieving the purpose of filtering noise.
[0183] For example, the first face low-polygon data in set B' have an arrangement order, please refer to Figure 7b , the server can select the first face low-poly data arranged in the first I order from the set B', the initial value of I is 1, and the value of I increases by 1 after obtaining the second face low-poly data corresponding to the first face low-poly data. When the value of I is greater than the number of each first face low-poly data, each second face low-poly data is obtained, which is recorded as set C.
[0184] If the first selected face low-poly data, denoted as f, is the first face low-poly data in the first arrangement order, it means that there is no second face low-poly data that has been obtained. Then the server uses the PCA algorithm to perform dimensionality reduction processing on each reference face low-poly data respectively to establish an intermediate face model.
[0185] If the selected first face low-polygon data f is not in the first order, it means that there is already obtained second face low-polygon data, where the obtained second face low-polygon data is the second face low-polygon data corresponding to each first face low-polygon data that is arranged before the first face low-polygon data f. Then the server uses the PCA algorithm to perform dimensionality reduction processing on each reference face low-polygon data and each second face low-polygon data to establish an intermediate face model.
[0186] S705, after obtaining the intermediate face model, the server can use the least square method based on the intermediate face model to fit each first face low-poly data in turn to obtain the corresponding second face low-poly data. For example, the server uses the intermediate face model to fit the first face low-poly data f to obtain the corresponding second face low-poly data f'. Based on each second face low-poly data obtained each time, a set is formed, which is recorded as C.
[0187] As an embodiment, the server may perform multiple rounds of noise filtering on the set B', please refer to Figure 7c , the server can perform the i-th round of noise filtering on set B' based on set A and set C, where the initial value of i is 1 and the initial value of set C is an empty set.
[0188] If i=1, that is, the first round of noise filtering is performed, the server can establish an intermediate face model based on set A according to S704, fit each first face low-poly data in set B', and obtain corresponding third face low-poly data.
[0189] If i>1, that is, the first round of noise filtering is not being performed, then the server can establish an intermediate face model based on set A and set C obtained by the previous round of noise filtering according to S704, fit each first face low-poly data in set B', and obtain corresponding third face low-poly data.
[0190] After obtaining each third person face low-poly model data, the average error can be determined based on the error between each third person face low-poly model data and the corresponding first person face low-poly model data. If the average error meets the error condition, each third person face low-poly model data is used as the corresponding second person face low-poly model data. If the average error does not meet the error condition, then based on each third person face low-poly model data, the set C is updated, and at the same time, the value of i is increased by 1, and the next round of noise filtering is continued.
[0191] During multiple rounds of noise filtering, the intermediate face model established based on set A and set C is based on more data, making it have stronger facial expression ability, so that it can extract the main facial features contained in the first face low-poly data in set B', playing a positive feedback role.
[0192] S706, after obtaining each second face low-poly model data, the server uses the PCA algorithm to perform dimensionality reduction processing on each reference face low-poly model data and each second face low-poly model data, extracts each principal component component, and constructs a deformable target face model by performing orthogonal basis weighted summation processing on each principal component component.
[0193] Based on the same inventive concept, the present application embodiment provides a device for constructing a face model, which can realize the functions corresponding to the aforementioned method for constructing a face model. Figure 8 , the device includes an acquisition module 801 and a processing module 802, wherein:
[0194] Acquisition module 801: used to acquire multiple target face high-polygon data;
[0195] Processing module 802: used to adjust the pre-stored template face data based on the multiple target face high-poly model data, and respectively generate the first face low-poly model data corresponding to each of the multiple target face high-poly model data;
[0196] The processing module 802 is further used to: based on a pre-stored reference face low-polygon data set, respectively perform noise filtering processing on a plurality of first face low-polygon data to obtain corresponding second face low-polygon data, wherein the reference face low-polygon data set includes face features of each reference face;
[0197] The processing module 802 is further used to perform data fusion processing on the obtained multiple second face low-polygon data to generate a target face model.
[0198] In a possible embodiment, for multiple target face high-polygon data, the processing module 802 is specifically configured to respectively perform the following operations:
[0199] Based on a target face high-polygon data, determining facial features of a target face formed by the target face high-polygon data, wherein the facial features include facial shape features and facial expression features;
[0200] Based on the facial expression features and facial shape features, the template face data is adjusted in sequence to generate first face low-poly data corresponding to the target face high-poly data, wherein the facial expression features and facial shape features of the simulated face formed by the first face low-poly data are respectively adapted to the facial expression features and facial shape features of the target face.
[0201] In a possible embodiment, the processing module 802 is specifically configured to:
[0202] Based on multiple target face high-polygon data, determine the pose size of the target face formed by each of the multiple target face high-polygon data, and determine the comprehensive pose size feature based on the weighted sum of each pose size;
[0203] Based on the facial expression features, facial shape features and comprehensive posture and size features, the template face data is adjusted in sequence to generate first face low-poly data corresponding to the target face high-poly data, wherein the facial expression features and facial shape features of the simulated face formed by the first face low-poly data are respectively adapted to the facial expression features and facial shape features of the target face, and the posture and size of the simulated face are adapted to the comprehensive posture and size features.
[0204] In a possible embodiment, the processing module 802 is specifically configured to:
[0205] Determine a plurality of key data representing facial features of each reference face in the reference face low-polygon data set;
[0206] Perform data fusion processing on multiple key data to generate an intermediate face model;
[0207] For multiple first face low-polygon data, perform the following operations respectively:
[0208] Based on a first human face low-polygon data, adjusting the deformation coefficient of the intermediate human face model to obtain a deformed human face whose similarity with the simulated human face formed by the first human face low-polygon data satisfies a similarity condition;
[0209] The facial data of the deformed face is used as the second facial low-poly data corresponding to the first facial low-poly data.
[0210] In a possible embodiment, the processing module 802 is specifically configured to:
[0211] Performing dimensionality reduction processing on each reference human face low-poly data in the reference human face low-poly data set, generating corresponding candidate data and the criticality corresponding to each generated candidate data, wherein each criticality represents the degree to which the corresponding candidate data represents the facial features of the corresponding reference face;
[0212] Based on the criticality corresponding to each candidate data, a plurality of candidate data whose criticality meets the criticality condition are selected from the candidate data as key data.
[0213] In a possible embodiment, the processing module 802 is specifically configured to:
[0214] For multiple first face low-polygon data, perform the following operations respectively:
[0215] When it is determined that among the plurality of first human face low-poly data, there is a first human face low-poly data for which corresponding second human face low-poly data has been obtained, based on the reference human face low-poly data set and the obtained second human face low-poly data, a noise filtering process is performed on one of the first human face low-poly data to obtain a second human face low-poly data corresponding to the first human face low-poly data;
[0216] When it is determined that among multiple first human face low-poly data, there is no first human face low-poly data for which corresponding second human face low-poly data has been obtained, based on a reference human face low-poly data set, noise filtering processing is performed on one first human face low-poly data to obtain second human face low-poly data corresponding to the first human face low-poly data.
[0217] In a possible embodiment, the processing module 802 is specifically configured to:
[0218] Based on the pre-stored reference face low-poly model data set, multiple rounds of noise filtering processing are performed on the plurality of first face low-poly model data respectively, wherein after each round of noise filtering processing, the following steps are included:
[0219] Generate a plurality of third person face low-poly data corresponding to each of the first person face low-poly data;
[0220] Based on the average error between the obtained multiple third human face low-poly data and the corresponding first human face low-poly data, when it is determined that the average error does not meet the error condition, the next round of noise filtering processing is performed. Until it is determined that the average error meets the error condition, the multiple third human face low-poly data processed by this round of noise filtering are respectively used as the second human face low-poly data.
[0221] In a possible embodiment, the processing module 802 is specifically configured to:
[0222] For multiple rounds of noise filtering, perform the following operations respectively:
[0223] When it is determined that there is a previous round of noise filtering processing, based on the pre-stored reference face low-poly model data set and the multiple third face low-poly model data generated by the previous round of noise filtering processing, respectively perform the current round of noise filtering processing on the multiple first face low-poly model data;
[0224] When it is determined that there is no previous round of noise filtering processing, the current round of noise filtering processing is performed on the plurality of first human face low-polygon data respectively based on the pre-stored reference human face low-polygon data set.
[0225] Please refer to Fig. 9 The above-mentioned apparatus for constructing a face model may be run on a computer device 900, and the current version and the historical version of the data storage program and the application software corresponding to the data storage program may be installed on the computer device 900, and the computer device 900 includes a processor 980 and a memory 920. In some embodiments, the computer device 900 may include a display unit 940, and the display unit 940 includes a display panel 941 for displaying an interactive operation interface by a user.
[0226] In a possible embodiment, the display panel 941 may be configured in the form of a liquid crystal display (LCD) or an organic light-emitting diode (OLED).
[0227] The processor 980 is used to read the computer program and then execute the method defined by the computer program. For example, the processor 980 reads the data storage program or file, so as to run the data storage program on the computer device 900 and display the corresponding interface on the display unit 940. The processor 980 may include one or more general-purpose processors and may also include one or more DSPs (Digital Signal Processors) to perform related operations to implement the technical solutions provided in the embodiments of the present application.
[0228] The memory 920 generally includes internal memory and external memory, and the internal memory can be a random access memory (RAM), a read-only memory (ROM), and a cache (CACHE), etc. The external memory can be a hard disk, an optical disk, a USB disk, a floppy disk, or a tape drive, etc. The memory 920 is used to store computer programs and other data, and the computer program includes applications corresponding to each client, etc. Other data may include data generated after the operating system or application is run, and the data includes system data (such as configuration parameters of the operating system) and user data. In the embodiment of the present application, program instructions are stored in the memory 920, and the processor 980 executes the program instructions in the memory 920 to implement any of the methods discussed in the previous figure.
[0229] The display unit 940 is used to receive input digital information, character information or contact touch operation / contactless gesture, and generate signal input related to user settings and function control of the computer device 900. Specifically, in the embodiment of the present application, the display unit 940 may include a display panel 941. The display panel 941 is, for example, a touch screen, which can collect user touch operations on or near it (such as operations performed by the user using fingers, stylus, or any other suitable object or accessory on or on the display panel 941), and drive corresponding connection devices according to a pre-set program.
[0230] In a possible embodiment, the display panel 941 may include two parts: a touch detection device and a touch controller. The touch detection device detects the touch position of the player, 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 980, and can receive and execute the command sent by the processor 980.
[0231] The display panel 941 may be implemented in various types such as resistive, capacitive, infrared, and surface acoustic wave. In addition to the display unit 940, in some embodiments, the computer device 900 may further include an input unit 930, which may include an image input device 931 and other input devices 932, wherein the other input devices may include, but are not limited to, one or more of a physical keyboard, a function key (such as a volume control key, a switch key, etc.), a trackball, a mouse, a joystick, and the like.
[0232] In addition to the above, the computer device 900 may also include a power supply 990 for supplying power to other modules, an audio circuit 960, a near field communication module 970, and an RF circuit 910. The computer device 900 may also include one or more sensors 950, such as an acceleration sensor, a light sensor, a pressure sensor, etc. The audio circuit 960 specifically includes a speaker 961 and a microphone 962, etc. For example, the computer device 900 can collect the user's voice through the microphone 962 to perform corresponding operations, etc.
[0233] As an embodiment, the number of processors 980 may be one or more, and the processor 980 and the memory 920 may be coupled or relatively independently configured.
[0234] As an example, Fig. 9 The processor 980 in the embodiment can be used to implement the following Figure 8 The functions of the acquisition module 801 and the processing module 802 in .
[0235] As an example, Fig. 9The processor 980 in can be used to implement the corresponding functions of the server or terminal device discussed above.
[0236] 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 aforementioned 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 aforementioned storage medium includes: mobile storage devices, read-only memories (ROM, Read-Only Memory), random access memories (RAM, Random Access Memory), disks or optical disks, etc. Various media that can store program codes.
[0237] Alternatively, if the above-mentioned integrated unit of the present invention is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present invention can be essentially or partly reflected in the form of a software product, for example, through a computer program product, which is stored in a storage medium and includes a number of instructions for a computer device to execute all or part of the methods described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as mobile storage devices, ROM, RAM, magnetic disks or optical disks.
[0238] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A method for constructing a face model, characterized in that: include: Obtain multiple target face high-polygon data; Based on the multiple target face high-polygon data, the pre-stored template face data are adjusted to generate first face low-polygon data corresponding to each of the multiple target face high-polygon data; wherein the resolution of the target face formed by the target face high-polygon data is higher than the resolution of the template face formed by the template face data, and higher than the resolution of the simulated face formed by the first face low-polygon data; Based on a pre-stored reference face low-poly model data set, performing noise filtering processing on the plurality of first face low-poly model data respectively to obtain corresponding second face low-poly model data, wherein the reference face low-poly model data set includes facial features of each reference face; Performing data fusion processing on the obtained multiple second face low-polygon data to generate a target face model; The step of performing noise filtering on the plurality of first low-poly face data based on a pre-stored reference low-poly face data set to obtain corresponding second low-poly face data includes: Based on the facial features of each reference face, generating an intermediate face model; Based on the intermediate face model, the plurality of first face low-polygon data are respectively fitted to obtain corresponding second face low-polygon data.
2. The method according to claim 1, characterized in that Based on the plurality of target face high-poly model data, adjusting the pre-stored template face data, and respectively generating first face low-poly model data corresponding to the plurality of target face high-poly model data, including: For the multiple target face high-polygon data, the following operations are performed respectively: Based on a target face high-polygon data, determining facial features of a target face formed by the target face high-polygon data, wherein the facial features include facial shape features and facial expression features; Based on the facial expression features and the facial shape features, the template face data is adjusted in sequence to generate first facial low-poly data corresponding to the target facial high-poly data, wherein the facial expression features and facial shape features of the simulated face formed by the first facial low-poly data are respectively adapted to the facial expression features and facial shape features of the target face.
3. The method according to claim 2, characterized in that The template face data is adjusted based on the face expression feature and the face shape feature to generate first face low-polygon data corresponding to the target face high-polygon data, including: Based on the multiple target face high-polygon data, determine the pose size of the target face formed by each of the multiple target face high-polygon data, and determine the comprehensive pose size feature based on the weighted sum of each pose size; Based on the facial expression features, the facial shape features and the comprehensive posture and size features, the template face data is adjusted in sequence to generate first facial low-poly data corresponding to the target face high-poly data, wherein the facial expression features and facial shape features of the simulated face formed by the first facial low-poly data are respectively adapted to the facial expression features and facial shape features of the target face, and the posture and size of the simulated face are adapted to the comprehensive posture and size features.
4. The method according to claim 1, characterized in that: Based on the pre-stored reference face low-poly data set containing the facial features of each reference face, an intermediate face model is generated, including: Determine a plurality of key data representing facial features of each reference face in the reference face low-poly model data set; Performing data fusion processing on the multiple key data to generate an intermediate face model; Fitting the plurality of first face low-polygon data respectively based on the intermediate face model to obtain corresponding second face low-polygon data includes: For the plurality of first face low-polygon data, the following operations are performed respectively: Based on a first low-poly face data, adjusting the deformation coefficient of the intermediate face model to obtain a deformed face whose similarity with the simulated face formed by the first low-poly face data satisfies a similarity condition; The facial data of the deformed face is used as the second facial low-polygon data corresponding to the first facial low-polygon data.
5. The method according to claim 4, characterized in that Determine a plurality of key data representing facial features of each reference face in the reference face low-poly model data set, including: Performing dimensionality reduction processing on each reference human face low-poly model data in the reference human face low-poly model data set, respectively generating corresponding candidate data, and the key degrees corresponding to each generated candidate data, wherein each key degree represents the degree to which the corresponding candidate data represents the facial features of the corresponding reference human face; Based on the criticality corresponding to each of the candidate data, a plurality of candidate data whose criticality meets the criticality condition are selected from the candidate data as the key data.
6. The method according to any one of claims 1 to 5, characterized in that: Based on a pre-stored reference face low-poly model data set, performing noise filtering processing on the plurality of first face low-poly model data respectively to obtain corresponding second face low-poly model data, including: For the plurality of first face low-polygon data, the following operations are performed respectively: When it is determined that among the plurality of first human face low-poly model data, there is a first human face low-poly model data for which corresponding second human face low-poly model data has been obtained, based on the reference human face low-poly model data set and the obtained second human face low-poly model data, a noise filtering process is performed on one first human face low-poly model data to obtain second human face low-poly model data corresponding to the one first human face low-poly model data; When it is determined that there is no first human face low-poly data for which corresponding second human face low-poly data has been obtained among the multiple first human face low-poly data, noise filtering is performed on one first human face low-poly data based on the reference human face low-poly data set to obtain the second human face low-poly data corresponding to the one first human face low-poly data.
7. The method according to any one of claims 1 to 5, characterized in that: Based on a pre-stored reference face low-poly model data set, performing noise filtering processing on the plurality of first face low-poly model data respectively to obtain corresponding second face low-poly model data, including: Based on the pre-stored reference face low-poly model data set, the plurality of first face low-poly model data are respectively subjected to multiple rounds of noise filtering processing, wherein after each round of noise filtering processing, the following steps are included: Generate third human face low-poly model data corresponding to each of the plurality of first human face low-poly model data; Based on the average error between the obtained multiple third human face low-poly data and the corresponding first human face low-poly data, when it is determined that the average error does not meet the error condition, the next round of noise filtering processing is performed. Until it is determined that the average error meets the error condition, the multiple third human face low-poly data processed by this round of noise filtering are respectively used as the second human face low-poly data.
8. The method according to claim 7, characterized in that Based on a pre-stored reference face low-poly model data set, performing multiple rounds of noise filtering processing on the plurality of first face low-poly model data respectively, including: For the multiple rounds of noise filtering, the following operations are performed respectively: When it is determined that there is a previous round of noise filtering processing, based on a pre-stored reference face low-poly model data set and a plurality of third face low-poly model data generated by the previous round of noise filtering processing, respectively perform the current round of noise filtering processing on the plurality of first face low-poly model data; When it is determined that there is no previous round of noise filtering processing, the current round of noise filtering processing is performed on the multiple first human face low-poly model data respectively based on the pre-stored reference human face low-poly model data set.
9. A device for constructing a face model, characterized in that: include: Acquisition module: used to obtain multiple target face high-polygon data; Processing module: used for adjusting the pre-stored template face data based on the multiple target face high-poly data, and respectively generating the first face low-poly data corresponding to each of the multiple target face high-poly data; wherein the resolution of the target face formed by the target face high-poly data is higher than the resolution of the template face formed by the template face data, and higher than the resolution of the simulated face formed by the first face low-poly data; The processing module is further used to: based on a pre-stored reference face low-poly data set, respectively perform noise filtering processing on the plurality of first face low-poly data to obtain corresponding second face low-poly data, wherein the reference face low-poly data set includes facial features of each reference face; The processing module is also used to: perform data fusion processing on the obtained plurality of second face low-polygon data to generate a target face model; Wherein, the processing module is specifically used for: Based on the facial features of each reference face, generating an intermediate face model; Based on the intermediate face model, the plurality of first face low-polygon data are respectively fitted to obtain corresponding second face low-polygon data.
10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.
11. A computer device, characterized in that: include: A memory for storing program instructions; The processor is used to call the program instructions stored in the memory, and execute the method according to any one of claims 1 to 8 according to the obtained program instructions.
12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to enable a computer to execute the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Face reconstruction method and device, computer equipment and storage medium
CN111710035A
Three-dimensional cartoon face generation method and device, electronic equipment and storage medium
CN112085835A