Methods, apparatus, electronic devices and computer-readable media for creating facial data

By decoding a pre-stored face dataset and randomly generating a set of face feature codes, face datasets with different attributes are generated and fused, solving the problems of difficult face recognition dataset collection and attribute entanglement, and achieving both increased data volume and improved accuracy.

CN115376191BActive Publication Date: 2026-03-17GUANGDONG VIMICRO +2
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-29
Publication Date
2026-03-17

AI Technical Summary

Technical Problem

Collecting face recognition datasets is difficult, the amount of data is small, and there is attribute entanglement between face attribute feature vectors, resulting in low accuracy of face attribute fitting models.

Method used

By decoding the facial attribute information of a pre-stored face dataset, a target face feature code set is generated, and a face feature code set is randomly generated. First and second face datasets with different attributes are generated respectively, and finally they are merged to form a face recognition dataset.

Benefits of technology

It effectively increases the amount of face recognition datasets, improves the accuracy and robustness of face recognition technology, solves the problems of difficult dataset collection and attribute entanglement, and improves the accuracy of face attribute fitting models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115376191B_ABST
    Figure CN115376191B_ABST
Patent Text Reader

Abstract

This disclosure discloses a method, apparatus, electronic device, and computer-readable medium for generating face data. One specific implementation of the method includes: decoding face attribute information in a pre-stored face dataset to obtain a set of face feature codes for that dataset, serving as a target face feature code set, wherein the face feature code is a feature vector representing face attribute information; randomly generating a set of face feature codes as a random face feature code set; generating a first face dataset for different attributes based on the target face feature code set; generating a second face dataset for different attributes based on the random face feature code set; and fusing the first and second face datasets to determine a face recognition dataset. This implementation can effectively increase the amount of face recognition data, thereby improving the accuracy and robustness of face recognition technology.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments disclosed herein relate to the field of computer technology, and more specifically to methods, apparatus, electronic devices, and computer-readable media for creating face data. Background Technology

[0002] Facial recognition technology is currently the most widely used identification technology. Facial recognition datasets are the foundation of facial recognition technology, and their quality directly affects the level of facial recognition performance. Common methods for collecting facial recognition datasets include: directly using publicly available online datasets or collecting datasets specifically tailored to a particular application scenario.

[0003] However, the inventors discovered that when using the above method to create facial data, the following technical problems often arise:

[0004] First, collecting facial recognition datasets is difficult, and the number of facial data in facial recognition datasets is relatively small.

[0005] Second, the entanglement between facial attribute feature vectors leads to low accuracy in facial attribute fitting models.

[0006] The information disclosed in this background section is only intended to enhance the understanding of the background of the inventive concept, and therefore may contain information that does not constitute prior art known to those skilled in the art. Summary of the Invention

[0007] The summary portion of this disclosure is intended to provide a brief overview of the concepts, which will be described in detail in the detailed description portion. This summary portion is not intended to identify key or essential features of the claimed technical solutions, nor is it intended to limit the scope of the claimed technical solutions.

[0008] Some embodiments of this disclosure provide methods, apparatus, electronic devices, and computer-readable media for generating face data to address one or more of the technical problems mentioned in the background section above.

[0009] In a first aspect, some embodiments of this disclosure provide a method for generating face data, comprising: decoding face attribute information of a pre-stored face dataset to obtain a face feature code set for the face dataset, as a target face feature code set, wherein the face feature code is a feature vector representing face attribute information; randomly generating a face feature code set as a random face feature code set; generating a first face dataset for different attributes based on the target face feature code set; generating a second face dataset for different attributes based on the random face feature code set; and fusing the first face dataset and the second face dataset to determine a face recognition dataset.

[0010] Secondly, some embodiments of this disclosure provide a face data generation apparatus, comprising: a decoding unit configured to decode face attribute information of a pre-stored face dataset to obtain a face feature code set for the face dataset, serving as a target face feature code set, wherein the face feature code is a feature vector representing face attribute information; a first generation unit configured to randomly generate a face feature code set, serving as a random face feature code set; a second generation unit configured to generate a first face dataset for different attributes based on the target face feature code set; a third generation unit configured to generate a second face dataset for different attributes based on the random face feature code set; and a fusion unit configured to fuse the first face dataset and the second face dataset to determine a face recognition dataset.

[0011] Thirdly, some embodiments of this disclosure provide an electronic device, including: one or more processors; and a storage device having one or more programs stored thereon, such that when the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any implementation of the first aspect.

[0012] Fourthly, some embodiments of this disclosure provide a computer-readable medium having a computer program stored thereon, wherein the program, when executed by a processor, implements the method as described in any implementation of the first aspect.

[0013] Fifthly, some embodiments of this disclosure provide a computer program product, including a computer program that, when executed by a processor, implements the method described in any of the implementations of the first aspect above.

[0014] The above embodiments of this disclosure have the following beneficial effects: the face data creation method of some embodiments of this disclosure can effectively increase the number of face recognition datasets and improve the accuracy and robustness of face recognition technology. Specifically, the reason for the relatively small number of related face recognition datasets is that the collection of face recognition datasets is relatively difficult, and the number of face data in the face recognition datasets is relatively small. Based on this, the face data creation method of some embodiments of this disclosure firstly decodes the face attribute information of a pre-stored face dataset to obtain a face feature code set for the aforementioned face dataset, which serves as the target face feature code set. Here, the face feature code is a feature vector representing face attribute information. Here, the obtained face feature code can be used for subsequent face image generation to obtain more face image data. Secondly, a face feature code set is randomly generated as a random face feature code set. Here, the randomly generated face feature code can be used for subsequent face image generation to obtain more face image data. Next, based on the aforementioned target face feature code set, a first face dataset for different attributes is generated. Then, based on the aforementioned random facial feature code set, a second facial dataset targeting different attributes is generated. Here, new facial data is generated in two different ways: one is to generate new faces based on the original facial data, and the other is to generate new faces based on the original facial feature code vector. Finally, the facial data obtained by fusing the first and second facial datasets is determined as the facial recognition dataset. Here, the new facial data obtained in two different ways are merged into one database, providing a new facial recognition database and effectively increasing the quantity of facial recognition datasets. Therefore, this facial generation method can effectively increase the quantity of facial recognition datasets and improve the accuracy and robustness of facial recognition technology. Attached Figure Description

[0015] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and elements are not necessarily drawn to scale.

[0016] Figure 1 This is a flowchart of some embodiments of the face data creation method according to the present disclosure;

[0017] Figure 2 These are schematic diagrams illustrating the structure of some embodiments of the face data creation apparatus according to this disclosure;

[0018] Figure 3 This is a schematic diagram of the structure of an electronic device suitable for implementing some embodiments of the present disclosure. Detailed Implementation

[0019] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.

[0020] It should also be noted that, for ease of description, only the parts relevant to the invention are shown in the accompanying drawings. Unless otherwise specified, the embodiments and features described in this disclosure can be combined with each other.

[0021] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.

[0022] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".

[0023] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.

[0024] This disclosure will now be described in detail with reference to the accompanying drawings and embodiments.

[0025] refer to Figure 1 The diagram illustrates a flow 100 of some embodiments of a face data creation method according to the present disclosure. This face data creation method includes the following steps:

[0026] Step 101: Decode the facial attribute information of the pre-stored face dataset to obtain the face feature code set for the face dataset, which is used as the target face feature code set.

[0027] In some embodiments, the executing entity (e.g., an electronic device) can decode facial attribute information from a pre-stored face dataset to obtain a set of facial feature codes for the face dataset, which serves as the target face feature code set. Here, a face feature code is a feature vector representing facial attribute information. The pre-stored face dataset can be a face dataset used for face data augmentation. For example, the pre-stored face dataset can be a publicly available online dataset or a face dataset specifically collected for an application scenario. The face feature code can be a feature vector representing facial attributes. For example, if the face length is 23.1cm, the face width is 15.8cm, the lip width is 5.2cm, and the nose length is 4.4cm, then the corresponding face feature code could be (23.1, 15.8, 5.2, 4.4).

[0028] As an example, the aforementioned execution entity could utilize the algorithm interface provided by an open-source machine learning library to decode the facial attribute information of the face dataset, thereby obtaining the facial feature code for the aforementioned face dataset, which would then serve as the target facial feature code set.

[0029] In some optional implementations of certain embodiments, the execution entity may decode the facial attribute information of a pre-stored face dataset to obtain a face feature code set for the face dataset, which can be used as the target face feature code set. This may include the following steps:

[0030] Based on a pre-trained face decoder, facial attribute information is decoded from a pre-stored face dataset to obtain a set of facial feature codes for that dataset, which serves as the target face feature code set. The face decoder can be a decoder that decodes face data to generate facial attribute information. For example, the face decoder can be a fully connected neural network model.

[0031] Optionally, the aforementioned face decoder includes: a first input layer, a first hidden layer, and a first output layer; and the process of decoding the face attribute information of a pre-stored face dataset using a pre-trained face decoder to obtain a face feature code set for the aforementioned face dataset as the target face feature code set may further include the following steps:

[0032] The first step is to input the aforementioned face dataset into the first input layer to obtain the first face feature code set.

[0033] The second step is to input the first face feature code set into the first hidden layer to obtain the second face feature code set.

[0034] The third step is to input the second face feature code set into the first output layer to obtain the third face feature code set, which is used as the target face feature code set.

[0035] Step 102: Randomly generate a set of facial feature codes as a random set of facial feature codes.

[0036] In some embodiments, the executing entity may randomly generate a set of facial feature codes as a random set of facial feature codes. This random set of facial feature codes may be a collection of facial feature codes from different faces.

[0037] Step 103: Generate a first face dataset for different attributes based on the target face feature code set.

[0038] In some embodiments, the aforementioned executing entity can generate a first face dataset for different attributes based on the target face feature code set. The first face data for different attributes can be first face data obtained by editing at least one face attribute feature.

[0039] As an example, the age attribute information of the original face data may be between 20 and 35 years old. By using StyleGAN (A Style-Based Generator Architecture for Generative Adversarial Networks), the age attribute information of the face data can be changed to obtain a face dataset with the age attribute information between 40 and 45 years old.

[0040] In some optional implementations of certain embodiments, the execution entity may generate a first face dataset for different attributes based on the target face feature code set, and may further include the following steps:

[0041] The first step is to generate a third face dataset based on the target face feature code set and the pre-trained generative adversarial network model.

[0042] As an example, the target face feature code set is used as the training dataset and input into a pre-trained GAN (Generative Adversarial Network) network model to output a third face dataset.

[0043] The second step involves classifying the attributes of each third-face data in the aforementioned third-face dataset using a pre-trained attribute classifier to generate a set of third-face attribute feature vectors. The attribute classifier can be a CNN (Convolutional Neural Network) model with the same number of convolutional kernels and pooling units, capable of classifying attributes from a large number of face image data.

[0044] As an example, a skin color attribute classifier is used to classify each third-face data in the third-face dataset according to its skin color attribute, thereby generating a set of third-face attribute feature vectors with different skin color attributes, resulting in a group of third-face attribute feature vector sets with different skin color attributes. For example, the group of third-face attribute feature vector sets may include at least one of the following: a set of third-face attribute feature vectors for black skin, a set of third-face attribute feature vectors for yellow skin, and a set of third-face attribute feature vectors for white skin.

[0045] The third step involves editing the attributes of each third face attribute feature vector set in the aforementioned third face attribute feature vector set group based on a pre-trained face attribute fitting model. This generates an edited third face attribute feature vector set group. The face attribute fitting model can be a model that edits face attributes. For example, it could be a multi-layer convolutional neural network that fits and edits skin color attributes.

[0046] As an example, using a skin color facial attribute fitting model, the third-party facial attribute feature vector set for black skin is modified by fitting skin color attributes to obtain the third-party facial attribute feature vector set for white skin. The third-party facial attribute feature vector set for black skin is then modified by fitting skin color attributes to obtain the third-party facial attribute feature vector set for yellow skin. The resulting set of edited third-party facial attribute feature vectors is then obtained.

[0047] The fourth step is to generate the first face dataset based on the edited third face attribute feature vector set.

[0048] As an example, the edited third-person facial attribute feature vector set is input into a face database to obtain the first face dataset. Specifically, the edited third-person facial attribute feature vector set can be such that the number of third-person facial attribute feature vectors for black skin is three times the original number for black skin, the number for yellow skin is three times the original number for black skin, and the number for white skin is three times the original number for black skin.

[0049] Optionally, the aforementioned face attribute fitting model includes: a second input layer, a second hidden layer, and a second output layer; and the aforementioned method of editing the attributes of each third face attribute feature vector set in the aforementioned third face attribute feature vector set group according to the pre-trained face attribute fitting model to generate an edited third face attribute feature vector set, thereby obtaining the edited third face attribute feature vector set group, may further include the following steps:

[0050] Step 1: For at least one third-face attribute feature vector, where the at least one third-face attribute feature vector is at least one item in the set of third-face attribute feature vectors, perform the vector editing steps:

[0051] Sub-step 1: Input the at least one third face attribute feature vector into the second input layer to obtain at least one fifth face attribute feature vector.

[0052] Sub-step 2 involves inputting the at least one fifth face attribute feature vector into the second hidden layer to obtain at least one sixth face attribute feature vector.

[0053] Sub-step 3 involves inputting the at least one sixth facial attribute feature vector into the second output layer to obtain at least one seventh facial attribute feature vector, which serves as the edited third facial attribute feature vector set. The input layer can be a layer that only accepts external input without performing any functional processing. The hidden layer can be a hidden layer that extracts features from the input data. The output layer can be an output layer that processes the input data.

[0054] As an example, firstly, the facial attribute feature vector representing an age of 20 is input into the second input layer to obtain a facial attribute feature vector representing an age of 20. Then, this feature vector is input into the second hidden layer to process the age attribute information, resulting in a facial attribute feature vector with variable dimensions. Finally, this feature vector with variable dimensions is input into the second output layer to obtain a facial attribute feature vector representing an age of 30.

[0055] The above technical solution and its related content, as an inventive point of this disclosure, solve the second technical problem mentioned in the background art: "The entanglement of attributes between facial attribute feature vectors leads to a low accuracy of the facial attribute fitting model." Factors leading to a low accuracy of the facial attribute fitting model often include: the entanglement of attributes between facial attribute feature vectors. Solving these factors can improve the accuracy of the facial attribute fitting model. To achieve this effect, the facial attribute fitting model includes: a second input layer, a second hidden layer, and a second output layer. Furthermore, based on the pre-trained facial attribute fitting model, the model edits the attributes of each third facial attribute feature vector set in the aforementioned third facial attribute feature vector set to generate an edited third facial attribute feature vector set, resulting in an edited third facial attribute feature vector set group. This may further include the following steps: For at least one third facial attribute feature vector, where the at least one third facial attribute feature vector is at least one item in the aforementioned third facial attribute feature vector set, a vector editing step is performed: First, the at least one third facial attribute feature vector is input to the second input layer to obtain at least one fifth facial attribute feature vector. Therefore, at least one fifth facial attribute feature vector is obtained and used as subsequent input. Then, the at least one fifth facial attribute feature vector is input to the second hidden layer to obtain at least one sixth facial attribute feature vector. By adjusting the relevant weights, the input at least one fifth facial attribute feature vector is edited to obtain at least one sixth facial attribute feature vector for subsequent input. Finally, the at least one sixth facial attribute feature vector is input to the second output layer to obtain at least one seventh facial attribute feature vector, which serves as the edited third facial attribute feature vector set. By adjusting the relevant weights, the input at least one sixth facial attribute feature vector is edited to obtain at least one seventh facial attribute feature vector, which serves as the edited third facial attribute feature vector set. This completes the training of the facial attribute fitting model, thereby improving its accuracy.

[0056] Step 104: Generate a second face dataset for different attributes based on the random face feature code set.

[0057] In some embodiments, the aforementioned executing entity may generate a second face dataset for different attributes based on a random face feature code set.

[0058] As an example, a random face feature set can be a random face feature set with no facial expression. This random face feature set with no facial expression is input into the Cascade EF-GAN (Cascade Expression Focal GAN) model to edit the expression attribute information of the face data, resulting in a dataset of laughing faces.

[0059] In some optional implementations of certain embodiments, generating a second face dataset for different attributes based on the aforementioned random face feature code set may include the following steps:

[0060] The first step is to generate the fourth face dataset based on the above random face feature code set and the pre-trained generative adversarial network model.

[0061] As an example, the random facial feature set includes, but is not limited to, at least one of the following: expressionless, laughing, angry, and crying. Inputting the random facial feature set into a generative adversarial network model yields a fourth facial dataset including expressionless faces, laughing faces, angry faces, and crying faces.

[0062] The second step is to classify the attributes of each fourth face data in the above fourth face dataset according to the pre-trained attribute classifier, so as to generate the fourth face attribute feature vector set and obtain the fourth face attribute feature vector set group.

[0063] As an example, the pre-trained attribute classifier can be an expression-based attribute classifier. Using the attribute classifier, each face in the aforementioned fourth face dataset is classified according to its expression attributes, resulting in a vector set representing facial expressions such as expressionless, laughing, angry, and crying.

[0064] The third step involves editing the attributes of each fourth face attribute feature vector set in the aforementioned fourth face attribute feature vector set group based on the pre-trained face attribute fitting model, thereby generating the edited fourth face attribute feature vector set group.

[0065] As an example, a pre-trained facial attribute fitting model can be a model that edits facial attributes representing a smiling expression. The resulting facial attribute feature vectors are then input into the facial attribute fitting model to obtain a set of facial attribute feature vectors representing a smiling expression.

[0066] The fourth step is to generate the second face dataset based on the edited fourth face attribute feature vector set.

[0067] As an example, a dataset of faces representing smiling expressions is generated using a GAN network model based on a set of facial attribute features that represent smiling expressions.

[0068] Step 105: The face data obtained by fusing the first face dataset and the second face dataset is determined as the face recognition dataset.

[0069] In some embodiments, the aforementioned executing entity may determine the face data obtained by fusing the first face dataset and the second face dataset as a face recognition dataset.

[0070] As an example, the aforementioned executing entity can utilize a pre-established database to store the aforementioned first face dataset and the aforementioned second face dataset into the pre-established database, thereby identifying it as a face recognition dataset.

[0071] The above embodiments of this disclosure have the following beneficial effects: the face data creation method of some embodiments of this disclosure can effectively increase the number of face recognition datasets and improve the accuracy and robustness of face recognition technology. Specifically, the reason for the relatively small number of related face recognition datasets is that the collection of face recognition datasets is relatively difficult, and the number of face data in the face recognition datasets is relatively small. Based on this, the face data creation method of some embodiments of this disclosure firstly decodes the face attribute information of a pre-stored face dataset to obtain a face feature code set for the aforementioned face dataset, which serves as the target face feature code set. Here, the face feature code is a feature vector representing face attribute information. Here, the obtained face feature code can be used for subsequent face image generation to obtain more face image data. Secondly, a face feature code set is randomly generated as a random face feature code set. Here, the randomly generated face feature code can be used for subsequent face image generation to obtain more face image data. Next, based on the aforementioned target face feature code set, a first face dataset for different attributes is generated. Then, based on the aforementioned random facial feature code set, a second facial dataset targeting different attributes is generated. Here, new facial data is generated in two different ways: one is to generate new faces based on the original facial data, and the other is to generate new faces based on the original facial feature code vector. Finally, the facial data obtained by fusing the first and second facial datasets is determined as the facial recognition dataset. Here, the new facial data obtained in two different ways are merged into one database, providing a new facial recognition database and effectively increasing the quantity of facial recognition datasets. Therefore, this facial generation method can effectively increase the quantity of facial recognition datasets and improve the accuracy and robustness of facial recognition technology.

[0072] Further reference Figure 2As an implementation of the methods shown in the above figures, this disclosure provides some embodiments of a face data generation apparatus, which are similar to... Figure 1 Corresponding to the method embodiments shown, the device can be specifically applied to various electronic devices.

[0073] like Figure 2 As shown, a face data generation apparatus 200 includes: a decoding unit 201, a first generation unit 202, a second generation unit 203, a third generation unit 204, and a fusion unit 205. The decoding unit 201 is configured to: decode face attribute information from a pre-stored face dataset to obtain a set of face feature codes for the face dataset, serving as a target face feature code set, where each face feature code is a feature vector representing face attribute information. The first generation unit 202 is configured to: randomly generate a set of face feature codes, serving as a random face feature code set. The second generation unit 203 is configured to: generate a first face dataset for different attributes based on the target face feature code set. The third generation unit 204 is configured to: generate a second face dataset for different attributes based on the random face feature code set. The fusion unit 205 is configured to: fuse the first and second face datasets to obtain a face recognition dataset.

[0074] It is understandable that the units described in the device 200 are related to the reference. Figure 1 The steps in the described method correspond to each other. Therefore, the operations, features, and beneficial effects described above for the method also apply to the device 200 and the units contained therein, and will not be repeated here.

[0075] The following is for reference. Figure 3 It shows a schematic diagram of the structure of an electronic device (e.g., an electronic device) 300 suitable for implementing some embodiments of the present disclosure. Figure 3 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments of this disclosure.

[0076] like Figure 3 As shown, the electronic device 300 may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 301, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 302 or a program loaded from a storage device 308 into a random access memory (RAM) 303. The RAM 303 also stores various programs and data required for the operation of the electronic device 300. The processing unit 301, ROM 302, and RAM 303 are interconnected via a bus 304. An input / output (I / O) interface 305 is also connected to the bus 304.

[0077] Typically, the following devices can be connected to I / O interface 305: input devices 306 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 307 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 308 including, for example, magnetic tapes, hard disks, etc.; and communication devices 309. Communication device 309 allows electronic device 300 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 3 An electronic device 300 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively. Figure 3 Each box shown can represent a device or multiple devices as needed.

[0078] In particular, according to some embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, some embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication device 309, or installed from storage device 308, or installed from ROM 302. When the computer program is executed by processing device 301, it performs the functions defined in the methods of some embodiments of this disclosure.

[0079] It should be noted that, in some embodiments of this disclosure, the computer-readable medium described above may be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium may be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In some embodiments of this disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In some embodiments of this disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.

[0080] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.

[0081] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device. The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: decode facial attribute information from a pre-stored face dataset to obtain a set of facial feature codes for the aforementioned face dataset, serving as a target face feature code set, wherein the face feature code is a feature vector representing facial attribute information; randomly generate a set of face feature codes, serving as a random face feature code set; generate a first face dataset for different attributes based on the aforementioned target face feature code set; generate a second face dataset for different attributes based on the aforementioned random face feature code set; and fuse the first face dataset and the second face dataset to determine a face recognition dataset.

[0082] Computer program code for performing operations of some embodiments of this disclosure can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0083] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0084] The units described in some embodiments of this disclosure can be implemented in software or hardware. These units can also be housed in a processor; for example, a processor may be described as including a decoding unit, a first generation unit, a second generation unit, a third generation unit, and a fusion unit. The names of these units do not necessarily limit the specific unit itself. For instance, a decoding unit may be described as "a unit that decodes facial attribute information from a pre-stored face dataset to obtain a set of facial feature codes for the aforementioned face dataset, which serves as the target face feature code set."

[0085] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.

[0086] The above description is merely a selection of preferred embodiments of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of the invention involved in the embodiments of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described inventive concept. For example, technical solutions formed by substituting the above-described features with (but not limited to) technical features with similar functions disclosed in the embodiments of this disclosure.

Claims

1. A face data production method, comprising: decoding face attribute information of a pre-stored face data set to obtain a face feature code set for the face data set as a target face feature code set, wherein a face feature code is a feature vector representing face attribute information; randomly generating a face feature code set as a random face feature code set; generating a first face data set for different attributes according to the target face feature code set, comprising: generating a third face data set according to the target face feature code set and a pre-trained generative adversarial network model; performing attribute classification on each third face data in the third face data set according to a pre-trained attribute classifier to generate a third face attribute feature vector set, obtaining a third face attribute feature vector set group; performing attribute editing on each third face attribute feature vector set in the third face attribute feature vector set group according to a pre-trained face attribute fitting model to generate an edited third face attribute feature vector set, obtaining an edited third face attribute feature vector set group; and generating the first face data set according to the edited third face attribute feature vector set group; generating a second face data set for different attributes according to the random face feature code set, comprising: generating a fourth face data set according to the random face feature code set and the pre-trained generative adversarial network model; performing attribute classification on each fourth face data in the fourth face data set according to the pre-trained attribute classifier to generate a fourth face attribute feature vector set, obtaining a fourth face attribute feature vector set group; performing attribute editing on each fourth face attribute feature vector set in the fourth face attribute feature vector set group according to the pre-trained face attribute fitting model to generate an edited fourth face attribute feature vector set, obtaining an edited fourth face attribute feature vector set group; and generating the second face data set according to the edited fourth face attribute feature vector set group; determining face recognition data set as face data fused from the first face data set and the second face data set.

2. The method of claim 1, wherein, The decoding of face attribute information of a pre-stored face data set to obtain a face feature code set for the face data set as a target face feature code set comprises: decoding face attribute information of a pre-stored face data set according to a pre-trained face decoder to obtain a face feature code set for the face data set as a target face feature code set.

3. The method of claim 2, wherein, The face decoder comprises: a first input layer, a first hidden layer, and a first output layer; and The decoding of face attribute information of a pre-stored face data set according to a pre-trained face decoder to obtain a face feature code set for the face data set as a target face feature code set comprises: inputting the face data set into the first input layer to obtain a first face feature code set; inputting the first face feature code set into the first hidden layer to obtain a second face feature code set; inputting the second face feature code set into the first output layer to obtain a third face feature code set as a target face feature code set.

4. A face data production apparatus, comprising: a decoding unit configured to decode face attribute information of a pre-stored face data set to obtain a face feature code set for the face data set as a target face feature code set, wherein a face feature code is a feature vector representing face attribute information; a first generation unit configured to randomly generate a face feature code set as a random face feature code set; a second generation unit configured to generate a first face data set for different attributes according to the target face feature code set, comprising: generating a third face data set according to the target face feature code set and a pre-trained generative adversarial network model; performing attribute classification on each third face data in the third face data set according to a pre-trained attribute classifier to generate a third face attribute feature vector set, obtaining a third face attribute feature vector set group; performing attribute editing on each third face attribute feature vector set in the third face attribute feature vector set group according to a pre-trained face attribute fitting model to generate an edited third face attribute feature vector set, obtaining an edited third face attribute feature vector set group; and generating the first face data set according to the edited third face attribute feature vector set group; a third generation unit configured to generate a second face data set for different attributes according to the random face feature code set, comprising: generating a fourth face data set according to the random face feature code set and a pre-trained generative adversarial network model; performing attribute classification on each fourth face data in the fourth face data set according to a pre-trained attribute classifier to generate a fourth face attribute feature vector set, obtaining a fourth face attribute feature vector set group; performing attribute editing on each fourth face attribute feature vector set in the fourth face attribute feature vector set group according to a pre-trained face attribute fitting model to generate an edited fourth face attribute feature vector set, obtaining an edited fourth face attribute feature vector set group; and generating the second face data set according to the edited fourth face attribute feature vector set group; a fusion unit configured to determine face recognition data set as face data fused from the first face data set and the second face data set.

5. An electronic device, comprising: one or more processors; a storage device having one or more programs stored thereon, when the one or more programs are executed by the one or more processors, the one or more processors implement the method of any one of claims 1-3.

6. A computer readable medium having stored thereon a computer program, wherein, The program is executed by the processor to implement the method of any one of claims 1-3.

7. A computer program product comprising a computer program which, when executed by a processor, implements the method of any one of claims 1-3.

7. A computer program product comprising a computer program which, when executed by a processor, implements the method of any one of claims 1-3.

Citation Information

Patent Citations

  • Method and device for establishing training set, electronic equipment and medium

    CN111062426A

  • Method and device for generating face image, electronic equipment and computer readable medium

    CN111062995A

  • Face editor training, face editing and live broadcasting methods and related devices

    CN113255551A