Method and system for processing a reference face
By converting and encrypting facial images into feature vectors, and generating random noise feature vectors, the problem of privacy leakage in facial recognition systems is solved, and accurate similarity calculation and privacy protection of encrypted feature vectors are achieved.
Patent Information
- Application Number
- CN202280003004.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-02-10
- Filing Date
- 2022-01-13
- Publication Date
- 2025-12-16
- Estimated Expiration
- 2042-01-13
AI Technical Summary
In existing facial recognition systems, the original reference facial image or features are easily leaked, leading to privacy issues. Furthermore, existing encryption methods still pose a risk of recovering the original facial image.
The face image is converted into a face feature vector and encrypted. The reference face feature vector is encrypted using a random noise feature vector. After generating the encrypted feature vector, the original features are discarded, and only the encrypted features are stored for face recognition.
It effectively prevents privacy leaks by calculating similarity scores using encrypted feature vectors, ensuring that the original facial information cannot be recovered, thus improving data privacy and security.
Smart Images

Figure CN115211074B_ABST
Abstract
Description
Technical Field
[0001] This article relates generally, but not exclusively, to methods, systems, and apparatuses for processing reference faces used for face recognition. Background Technology
[0002] Facial recognition is a process that identifies or verifies a person's identity based on their face. In login or payment scenarios based on facial recognition, the system can first store one or more images of the user's face as reference faces for verification. When new facial data is received, the system compares the new face with the reference faces to verify whether they belong to the same person. Therefore, in this implementation, the reference face images are stored in the system, and if the user's facial data is leaked, it may lead to a privacy breach.
[0003] As an alternative to storing the original reference face image in the face recognition system, the face image can be converted into face features (e.g., in vector form), and then stored in the system to prevent the leakage of the original face image. However, there are methods that can use face features as input to reconstruct the original face image, and the privacy leakage issue still exists. Summary of the Invention
[0004] The described embodiments provide a method, system, apparatus, and device for processing reference faces to perform face recognition with enhanced privacy protection. In some embodiments, the face recognition model can convert a user's face image into a face feature vector. A similarity score between two faces (e.g., a face to be authenticated and a reference face) can be calculated based on two face feature vectors. In some embodiments, the face recognition system can use at least two reference faces. The at least two reference faces can be converted into corresponding reference face feature vectors, and the reference face feature vectors can be encrypted, after which the system can discard the original reference face image and the reference face feature vectors.
[0005] In some embodiments, the function used to calculate the similarity score between two facial feature vectors is a linear function, such as a vector dot product. For two or more reference faces, two or more corresponding similarity scores can be calculated for the authentication input (i.e., the face to be authenticated), and the average of these scores is determined as the final similarity score. In some embodiments, the reference facial feature vectors are encrypted such that the corresponding original reference face cannot be recovered from the encrypted facial feature vectors. In some embodiments, encryption may involve a random number generator to generate a random noise feature vector, which is used to encrypt each original reference facial feature vector. Subsequently, the encrypted reference facial feature vectors can be stored by the facial recognition system, and the original reference facial feature vectors can be discarded for privacy protection.
[0006] According to one embodiment, a computer-implemented method for processing reference faces is provided. The method includes: generating a plurality of reference features corresponding to a plurality of reference faces of a user; encrypting each of the plurality of reference features to obtain a plurality of encrypted features, wherein the plurality of encrypted features are associated with the plurality of reference features such that a final similarity score between an authentication input and the plurality of reference faces of the user can be calculated based on the authentication input and the plurality of encrypted features; and discarding the plurality of reference features.
[0007] According to another embodiment, a computer-implemented method for face recognition is provided. The method includes: receiving an authentication input; determining a corresponding similarity score between the authentication input and each of a plurality of encrypted features, wherein the plurality of encrypted features are obtained by encrypting each of a plurality of reference features corresponding to a plurality of reference faces of a user; calculating a final similarity score between the authentication input and the plurality of reference faces of the user based on the corresponding similarity scores; and verifying the authentication input based on the final similarity score.
[0008] According to other embodiments, one or more embodiments in these general and specific embodiments may be implemented using an apparatus, system, method, or computer-readable medium comprising multiple modules, or any combination of an apparatus, system, method, and computer-readable medium. The foregoing and other described embodiments may each optionally include or exclude some or all of the embodiments described below. Attached Figure Description
[0009] The embodiments and implementations are provided by way of example only, and will enable those skilled in the art to better understand and make clearer the embodiments and implementations based on the following written description read in conjunction with the accompanying drawings, wherein:
[0010] Figure 1 A flowchart illustrating an example of a computer-implemented method for processing a reference face according to an embodiment is shown.
[0011] Figure 2 An example is shown. Figure 1 A flowchart illustrating an example implementation of the method.
[0012] Figure 3 A flowchart illustrating an example of a computer-implemented method for face recognition according to an embodiment is shown.
[0013] Figure 4A This is a schematic diagram of an example module of a device for processing a reference face according to an embodiment.
[0014] Figure 4BThis is a schematic diagram illustrating an example of a module of a device for face recognition according to an embodiment.
[0015] Figure 5 It is applicable to the execution according to the embodiments. Figures 1 to 3 A block diagram of an example computer system illustrating at least some steps of the exemplary method shown.
[0016] Those skilled in the art will understand that the elements in the figures are shown simply and clearly, but not necessarily to scale. For example, the dimensions of some elements in the illustrations, block diagrams, or flowcharts may be exaggerated relative to other elements to aid in understanding the embodiments described herein. Detailed Implementation
[0017] Embodiments will be described by way of example only with reference to the accompanying drawings. The same reference numerals and characters in the drawings denote the same elements or equivalents.
[0018] Certain parts of the following description are presented, explicitly or implicitly, in the form of algorithms and functions or symbolic expressions for data manipulation within computer memory. These algorithmic descriptions and functions or symbolic expressions are means by which those skilled in the art of data processing most effectively communicate their work to others skilled in the art. Here, an algorithm is generally considered to be a series of self-consistent steps to achieve a desired result. These steps are steps that require physical manipulation of physical quantities, such as electrical, magnetic, or optical signals that can be stored, transmitted, combined, compared, and otherwise manipulated.
[0019] Unless otherwise specified and as will be apparent from the following text, it will be understood that throughout this document, the use of terms such as “receive,” “generate,” “obtain,” “determine,” “encrypt,” “match,” “save,” “store,” “discard,” “enter,” “calculate,” “add,” “subtract,” “compare,” “process,” “train,” “update,” “select,” “authenticate,” “verify,” “provide,” “input,” and “output” refers to the actions and processes of a computer system or similar electronic device that manipulates and converts data expressed in physical quantities within the computer system into similar data expressed in physical quantities within the computer system or other information storage, transmission, or display devices.
[0020] This document also discloses apparatus for performing these methods. Such apparatus may be specifically constructed for the desired purpose or may include a computer or other devices selectively activated or reconfigured by a computer program stored in the computer. The algorithms and displays presented herein are not inherently associated with any particular computer or other device. Various machines may be used with the program in accordance with the teachings of this document. Optionally, it may be appropriate to construct more specialized apparatus to perform the desired method steps. The architecture of a computer suitable for performing the various methods / processes described herein will become apparent from the following description.
[0021] Furthermore, this document implicitly discloses a computer program, as it will be apparent to those skilled in the art that the various steps of the methods described herein can be implemented using computer code. The computer program is not intended to be limited to any particular programming language or its implementation. It should be understood that various programming languages and their code can be used to implement the teachings contained herein. Moreover, the computer program is not intended to be limited to any particular control flow. Many other variations of the computer program, which may use different control flows, are possible without departing from the scope of this document.
[0022] Furthermore, one or more steps of a computer program can be executed in parallel rather than sequentially. Such a computer program can be stored on any computer-readable medium. Computer-readable media can include storage devices such as disks or optical discs, memory chips, or other storage devices suitable for interfacing with a computer. Computer-readable media can also include hardwired media, as exemplified in Internet systems, or wireless media, as exemplified in the Global System for Mobile Communications (GSM). When the computer program is loaded and executed on such a computer, it effectively generates means for implementing the steps of the method.
[0023] This document can also be implemented as a hardware module. More specifically, in a hardware sense, a module is a functional hardware unit designed to be used in conjunction with other components or modules. For example, a module can be implemented using discrete electronic components, or a module can form part of an overall electronic circuit, which can be, for example, an application-specific integrated circuit (ASIC) or a field-programmable gate array (FPGA). Many other possibilities exist. Those skilled in the art will understand that the system can also be implemented as a combination of hardware and software modules.
[0024] Facial recognition can be considered a form of identity authentication in the process of identifying or verifying a person's identity. Specifically, for security purposes, it verifies a user's legitimacy based on their face. Effective identity verification enhances system data security by allowing authenticated users access to their protected resources. Advantageously, this can effectively reduce or eliminate financial risks such as money laundering and fraud.
[0025] The embodiments described herein produce one or more technical effects. By encrypting the reference features of a user's reference face, potential privacy risks can be prevented. It is noteworthy that the original reference face or original reference features are not stored in the face recognition system. Once encrypted features are generated based on the original reference features, the original reference face and reference features can be discarded, and in some embodiments, the corresponding data or copy of the original reference face can also be deleted from the database or storage. Because the encrypted features are random, neither the original reference face nor the original reference features can be recovered through reverse engineering, thus improving data privacy. Furthermore, a final similarity score for the face to be authenticated can be calculated based on the encrypted features, which accurately reflects the similarity between the face to be authenticated and the reference face. In some embodiments, generating encrypted features involves encrypting the original reference features with random noise features, and once the encrypted features are generated, the random noise features can also be discarded to improve privacy.
[0026] Figure 1 A flowchart 100 of an exemplary method for processing reference faces of a user is shown. In some embodiments, at least two reference faces of the user may be used, and the exemplary method includes the following steps: step 110, generating a plurality of reference features corresponding to a plurality of reference faces of the user; step 120, encrypting each of the plurality of reference features to obtain a plurality of encrypted features, wherein the plurality of encrypted features are associated with the plurality of reference features such that a final similarity score between an authentication input and the plurality of reference faces of the user can be calculated based on the authentication input and the plurality of encrypted features; step 130, discarding the plurality of reference features.
[0027] In step 110, multiple reference features corresponding to multiple reference faces of the user can be generated. In some embodiments, the face recognition system can use at least two reference faces of the user, which can be collected from the user (e.g., via a device camera) or selected from the user's pool of face images. After receiving two or more reference faces, each reference face can be converted into a corresponding feature, such as a face feature vector, using a face recognition model. Such face recognition models may include FaceNet, DeepFace, ArcFace, InsightFace, and other machine learning models. Implementation is not limited to this document. After converting each reference face into a corresponding reference face feature vector, the original reference face can be discarded, so that no original face image is stored in the face recognition system.
[0028] In step 120, each reference face feature vector can be encrypted to obtain multiple encrypted feature vectors. This encryption advantageously prevents reverse engineering of the reference face feature vectors to recover the user's original reference face. The multiple encrypted features are associated with the multiple reference features such that when an input for authentication (e.g., a face to be authenticated) is received, a similarity score can be calculated based on that input and the multiple encrypted feature vectors. The similarity score can indicate the result of face verification or face matching between the authentication input and the user's multiple reference faces. It is noteworthy that although each encrypted feature vector is different from each reference face feature vector, the final similarity score (i.e., the similarity between the face to be authenticated and the user's reference faces) can be accurately calculated using the multiple encrypted feature vectors. This will be discussed later. Figure 2 To elaborate further.
[0029] In one embodiment, encrypting each of a plurality of reference face feature vectors can be performed by generating a random noise feature vector using a random number generator, and encrypting each of the plurality of reference face feature vectors based on the random noise feature vector. Encryption of the reference face feature vectors can also be performed in other ways, such as using other feature value obfuscation methods or feature length obfuscation methods. The implementation is not limited to this document.
[0030] In step 130, after encrypting each reference face feature vector, multiple reference face feature vectors can be discarded. In the implementation based on encryption using random noise feature vectors, the random noise feature vectors can also be discarded, minimizing the probability of obtaining the original reference face by reverse engineering from the encrypted feature vectors. Advantageously, this mitigates the risk of privacy breaches because no original reference face feature vectors are stored by the face recognition system.
[0031] In some implementations, the method may proceed to step 140, in which multiple encrypted feature vectors may be stored by the face recognition system. It is understood that the encrypted feature vectors stored in the face recognition system can be easily used for future face recognition processing, which helps improve efficiency and reduce processing time. It is also understood that since the user's original facial information cannot be recovered from the encrypted feature vectors, storing the encrypted feature vectors does not endanger the user's data privacy in the event of a security breach.
[0032] Figure 2 It shows Figure 1 Flowchart 200 illustrates an example implementation of the method described above. In this exemplary embodiment, two reference faces of the user are used, which are converted into two reference face feature vectors, denoted as F1 and F2, respectively, where F1 and F2 are unencrypted.
[0033] Next, F1 and F2 are input to the encryptor 202. In an exemplary embodiment, the encryptor 202 may include a random number generator represented by the function random(), which can generate a random noise feature vector F. d In the example, F1 and F2 can be encrypted as follows: by adding a random noise feature vector F to F1. d To encrypt F1, and by subtracting the random noise feature vector F from F2 d To encrypt F2, as shown in the flowchart, the encryption yields two encrypted feature vectors, E1 and E2.
[0034] In the implementation, after encryption, for privacy protection, the original feature vectors F1 and F2, as well as the random noise feature vector F, can be discarded. d Then, the encrypted feature vectors E1 and E2 can be used to calculate the final similarity score between the authentication input and the two reference faces. In the calculation below, the face feature vector corresponding to the authentication input is denoted as F0, and sim() represents a function that calculates the similarity score using the two feature vectors as input. In some embodiments, the sim() function can be a linear function, such as a vector dot product. For the two original reference features F1 and F2, the final similarity score S of the authentication input can be obtained by averaging the similarity scores (S1) between F0 and F1 and (S2) between F0 and F2.
[0035] S1 = sim(F0, F1)
[0036] S2 = sim(F0, F2)
[0037] S = 0.5 * (S1 + S2)
[0038] Similarity score S calculated based on E1 and E2 e The similarity score (S) between F0 and E1 can be calculated. e 1) Similarity score between F0 and E2 (S e The average value of 2) is obtained as follows:
[0039] S e 1 = sim(F0, E1)
[0040] S e 2 = sim(F0, E2)
[0041] S e =0.5*(S) e 1+S e 2)
[0042] =0.5*(sim(F0,E1)+sim(F0,E2))
[0043] =0.5*(sim(F0,F1+F d )+sim(F0,F2-F d ))
[0044] =0.5*(sim(F0,F1)+sim(F0,F d )+sim(F0,F2)–sim(F0,F d ))
[0045] =0.5*(sim(F0,E1)+sim(F0,E2))
[0046] =0.5*(S1+S2)
[0047] =S
[0048] The above calculations prove that the average similarity score S obtained based on the encrypted feature vectors E1 and E2 is... e The final similarity score S is the same. Effectively, the face recognition system can verify the face to be authenticated based on E1 and E2, where E1 and E2 are random vectors that do not contain information about the original reference face. It is also understood that privacy protection is achieved because the original reference face cannot be recovered from E1 and E2.
[0049] In some embodiments, more than two reference faces may be used and the encryptor 202 may be configured to encrypt the features of more than two reference faces. In some embodiments, the encryptor 202 may be configured to encrypt F1 and F2 using other known encryption techniques (e.g., other feature value obfuscation methods or feature length obfuscation methods), while allowing the calculation of the final similarity score S based on E1 and E2. Implementations are not limited herein.
[0050] This document may further provide methods, systems, and apparatus for performing face recognition with enhanced privacy protection, wherein two or more reference faces are processed by the methods described above. Figure 3 This is a flowchart 300 of an exemplary method for face recognition. The exemplary method includes the following steps: step 310, receiving authentication input; step 320, determining a corresponding similarity score between the authentication input and each of a plurality of encrypted features, wherein the plurality of encrypted features are obtained by encrypting each of a plurality of reference features corresponding to a plurality of reference faces of a user; step 330, calculating a final similarity score between the authentication input and the plurality of reference faces of the user based on the corresponding similarity scores; and step 340, verifying the authentication input based on the final similarity score.
[0051] In step 310, authentication input is received. In some embodiments, the authentication input may be a facial image of the user to be authenticated, for example, a user's facial image captured by the device's camera during a login process (e.g., unlocking a smartphone) or a payment process. The received facial image can be converted into a facial feature vector using a facial recognition model for subsequent calculations. Optionally, in other embodiments, the authentication input may be a facial feature vector corresponding to the user's facial data. Implementation methods are not limited herein.
[0052] In step 320, a corresponding similarity score can be determined between the authentication input and each of the multiple encrypted features. In some embodiments, one or more linear similarity functions, such as vector dot products, can be used to determine the corresponding similarity scores. The encrypted features can be obtained by encrypting each of the multiple reference features corresponding to multiple reference faces of the user, for example, based on... Figure 1 Step 120 of the method for storing the reference face. In an implementation, encrypted features can be pre-stored in the face recognition system. Advantageously, the face recognition system does not store the original reference face or face feature vector therein.
[0053] In step 330, a final similarity score between the authentication input and multiple reference faces of the user can be calculated based on the corresponding similarity scores determined in step 320. In embodiments that use one or more linear similarity functions to determine the corresponding similarity scores, the final similarity score can be calculated by averaging the corresponding similarity scores.
[0054] In step 340, the authentication input can be verified based on the final similarity score. As described herein, verifying the identity of the authentication input can include various scenarios, such as verifying whether the authentication input matches a specific user identity (e.g., logging in to unlock a personal smartphone based on facial recognition or logging into an online identity authentication system eKYC) or matches a specific identity from a set of registered identities (e.g., facial recognition-based payments, face search, face annotation, or album generation on merchant devices). For example, when a user logs in to unlock a smartphone based on facial recognition, the facial recognition system can pre-store encrypted features corresponding to two or more reference faces of the smartphone owner. If the final similarity score of the authentication input is low, the system can determine that the input may not belong to the legitimate owner of the phone, and the phone cannot be unlocked. As another example, in the face search scenario, the facial recognition system can pre-store encrypted features corresponding to reference faces of all registered users. The system can then calculate the corresponding final similarity score associated with each registered user and verify whether the identity of the authentication input matches any registered user. The implementation of verifying the authentication input is not limited. In the above scenario, the face recognition system can be configured to output similarity results for authenticating inputs without storing the original reference face or the user's reference features in the system.
[0055] Understandable, Figure 1 The processing reference face shown Figure 3 The face recognition shown can be a combined process, where the reference face is encrypted before face recognition. Optionally, processing the reference face and face recognition can be two independent processes, performed by the same party or different parties. Furthermore, the face recognition method can be implemented independently or in combination with other identity authentication and verification methods. The implementation is not limited to this document.
[0056] Figure 4A This is a schematic diagram of an exemplary device 400 including modules for processing reference faces. Device 400 includes at least a face recognition module 402, an encryption module 404, and a discard module 408. (Reference) Figure 1 and Figure 2The face recognition module 402 can be configured to generate multiple reference features corresponding to multiple reference faces of the user, such as converting the reference faces into reference face feature vectors. The encryption module 404 can be configured to encrypt each of the multiple reference features to obtain multiple encrypted features. In some embodiments, the device 400 may include a random number generation module 406 configured to generate random noise features for encryption. The random number generation module 406 may be part of the encryption module 404, or a separate module configured to generate random noise features and transmit the random noise features to the encryption module 404. The discard module 408 can be configured to discard multiple reference faces, reference features, and / or random noise features. The device 400 may also include a storage module 410 configured to store the multiple encrypted features in the face recognition system.
[0057] Figure 4B This is a schematic diagram of an exemplary device 450 including a module for face recognition. Device 450 includes at least a receiving module 452, a determining module 454, a calculating module 456, and a verification module 458. (See also...) Figure 3 The receiving module 452 can be configured to receive authentication input, which may include receiving a face image to be authenticated during login or payment. The received face image can be converted into a face feature vector for subsequent processing. The determining module 454 can be configured to determine a corresponding similarity score between the authentication input and each of a plurality of encrypted features. The plurality of encrypted features can be obtained by encrypting each of a plurality of reference features corresponding to a plurality of reference faces of the user. The calculating module 456 can be configured to calculate a final similarity score between the authentication input and the plurality of reference faces of the user based on the corresponding similarity scores. In some embodiments, one or more linear similarity functions (e.g., vector dot product) can be used to determine the corresponding similarity scores. The verification module 458 is configured to verify the authentication input based on the final similarity score calculated by the calculation module 456.
[0058] The systems, devices, modules, or units illustrated in the foregoing embodiments can be implemented using computer chips or physical entities, or by using products with specific functions. A typical implementing device is a computer, which can be a personal computer, laptop computer, mobile phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email sending and receiving device, game console, tablet computer, wearable device, or any combination of these devices. Modules described as separate components may or may not be physically separate, and components shown as modules may or may not be physical modules, may be located in one location, or may be distributed across multiple network modules. Some or all modules can be selected based on actual needs to achieve the objectives of the embodiments described herein. Those skilled in the art will understand and implement the embodiments of this application without inventive effort.
[0059] Figure 5 It is suitable for execution Figures 1 to 3 A block diagram of an exemplary computer system 500 illustrating at least some steps of the exemplary method. The following description of the computer system / computing device 500 is provided by way of example only and is not intended to be limiting.
[0060] like Figure 5 As shown, the exemplary computing device 500 includes a processor 502 for executing software routines. Although a single processor is shown for clarity, the computing device 500 may also include a multiprocessor system. The processor 502 is connected to a communication infrastructure 506 to communicate with other components of the computing device 500. The communication infrastructure 506 may include, for example, a communication bus, a crossbar switch, or a network.
[0061] The computing device 500 also includes a main memory 504 such as random access memory (RAM) and an auxiliary memory 510. The auxiliary memory 510 may include, for example, a storage drive 512 and / or a removable storage drive 514, wherein the storage drive 512 may be a hard disk drive, a solid-state drive, or a hybrid drive, and the removable storage drive 514 may include a magnetic tape drive, an optical disc drive, a solid-state storage drive (e.g., a USB flash drive, a flash memory device, a solid-state drive, or a memory card), etc. The removable storage drive 514 reads from and / or writes to the removable storage medium 518 in a manner well known. The removable storage medium 518 may include magnetic tape, optical disc, non-volatile memory storage media, etc., read from and written to by the removable storage drive 514. As those skilled in the art will understand, the removable storage medium 518 includes a computer-readable storage medium in which computer-executable program code instructions and / or data are stored.
[0062] In an alternative implementation, the auxiliary storage 510 may additionally or optionally include other similar means for allowing computer programs or other instructions to be loaded into the computing device 500. Such means may include, for example, removable storage unit 522 and interface 520. Examples of removable storage unit 522 and interface 520 include program cartridge memory and cartridge interface (e.g., a cartridge interface in a video game console device), removable storage chip (e.g., erasable programmable read-only memory (EPROM) or programmable read-only memory (PROM)) and associated slot, removable solid-state storage drive (e.g., a USB flash drive, flash device, solid-state drive, or memory card), and other removable storage unit 522 and interface 520 that allow software and data to be transferred from removable storage unit 522 to computer system 500.
[0063] The computing device 500 also includes at least one communication interface 524. The communication interface 524 allows software and data to be transferred between the computing device 500 and external devices via a communication path 526. In various embodiments herein, the communication interface 524 allows data to be transferred between the computing device 500 and a data communication network (e.g., a public or private data communication network). The communication interface 524 can be used to exchange data between different computing devices 500 that form part of an interconnected computer network. Examples of the communication interface 524 may include a modem, a network interface (e.g., an Ethernet card), a communication port (e.g., a serial interface, a parallel interface, a printer interface, a GPIB interface, an IEEE 1394 interface, an RJ45 interface, a USB interface), an antenna with associated circuitry, and the like. The communication interface 524 may be wired or wireless. The software and data transmitted through the communication interface 524 are in the form of signals, which may be electronic, electromagnetic, optical, or other signals that can be received by the communication interface 524. These signals are provided to the communication interface via the communication path 526.
[0064] like Figure 5 As shown, the computing device 500 also includes a display interface 528 and an audio interface 532. The display interface 528 performs operations for rendering images to an associated display 530, and the audio interface 532 performs operations for playing audio content through an associated speaker(group) 534.
[0065] As used herein, the term "computer program product" may refer in part to removable storage medium 518, removable storage unit 522, hard disk installed in storage drive 512, or a carrier wave carrying software via communication path 526 (wireless link or cable) to communication interface 524. Computer-readable storage medium means any non-transitory, non-volatile tangible storage medium that provides stored instructions and / or data to computing device 500 for execution and / or processing. Examples of such storage media include magnetic tape, CD-ROM, DVD, Blu-ray disc, hard disk drive, read-only memory (ROM) or integrated circuit, solid-state storage drive (e.g., USB flash drive, flash device, solid-state drive, or memory card), hybrid drive, magneto-optical disk, or computer-readable card such as a personal computer card (PCMCIA), whether these devices are internal or external to computing device 500. Temporary or non-tangible computer-readable transmission media may also be involved in providing software, applications, instructions, and / or data to computing device 500. Examples include radio or infrared transmission channels, network connections to another computer or networked device, and the Internet or intranet, which includes email transmissions and information recorded on websites, etc.
[0066] The computer program (also referred to as computer program code) is stored in main memory 504 and / or auxiliary memory 510. The computer program may also be received via communication interface 524. When executed, such a computer program enables computing device 500 to perform one or more features of the embodiments discussed herein. In various embodiments, when the computer program is executed, processor 502 is able to perform the features of the embodiments described above. Therefore, such a computer program represents a controller of computer system 500.
[0067] The software can be stored in a computer program product and can be loaded into a computing device 500 using a removable storage drive 514, a storage drive 512, or an interface 520. The computer program product can be a non-transitory computer-readable medium. Optionally, the computer program product can be downloaded to the computer system 500 via communication path 526. The software is run by the processor 502, enabling the computing device 500 to perform necessary operations to implement, for example... Figure 1 and Figure 2 The method shown.
[0068] It should be understood that, Figure 5The embodiments described herein are merely examples to illustrate the operation and structure of system 500. Therefore, in some embodiments, one or more features of computing device 500 may be omitted. Furthermore, in some embodiments, one or more features of computing device 500 may be combined together. Additionally, in some embodiments, one or more features of computing device 500 may be divided into one or more components.
[0069] It should be understood that, Figure 5 The elements shown are used to provide means for performing various functions and operations of the system as described in the above embodiments.
[0070] Those skilled in the art will understand that various changes and / or modifications can be made to this document, as illustrated in the specific embodiments, without departing from the broad scope thereof. Therefore, the embodiments herein should be considered illustrative rather than restrictive in all respects.
Claims
1. A computer-implemented method for processing a reference face, comprising: Generate multiple reference features corresponding to multiple reference faces of the user; wherein, the multiple reference features include multiple reference face feature vectors; Encryption is achieved by adding or subtracting random noise feature vectors to the multiple reference face feature vectors, thereby obtaining multiple encrypted features; wherein, the multiple encrypted features are associated with the multiple reference features, so that the final similarity score between the authentication input and the user's multiple reference faces can be calculated based on the authentication input and the multiple encrypted features; Discard the aforementioned reference features; The user's plurality of reference faces includes a first reference face and a second reference face. The first reference face is converted into a first reference face feature vector, and the second reference face is converted into a second reference face feature vector. The encryption by adding or subtracting random noise feature vectors to the plurality of reference face feature vectors includes: encrypting the first reference face feature vector by adding the random noise feature vector to the first reference face feature vector; and encrypting the second reference face feature vector by subtracting the random noise feature vector from the second reference face feature vector.
2. The method according to claim 1, further comprising: Store the aforementioned multiple encryption features.
3. The method according to claim 1, wherein generating the plurality of reference features corresponding to the plurality of reference faces of the user comprises: Receive the multiple reference faces of the user; Each of the multiple reference faces is converted into a corresponding reference face feature vector using a face recognition model; Discard the multiple reference faces.
4. The method according to claim 1, wherein, The random noise feature vector is generated by a random number generator; the method further includes discarding the random noise feature vector.
5. A computer-implemented method for face recognition, comprising: Receive authentication input; Determine the corresponding similarity score between the authentication input and each of the multiple encrypted features, wherein the multiple encrypted features include an encrypted first reference face feature vector and an encrypted second reference face feature vector. The first reference face feature vector is converted from the first reference face among the user's multiple reference faces, and the second reference face feature vector is converted from the second reference face among the user's multiple reference faces. The encrypted first reference face feature vector is obtained by adding a random noise feature vector to the first reference face feature vector, and the encrypted second reference face feature vector is obtained by subtracting the random noise feature vector from the second reference face feature vector. Calculate the final similarity score between the authentication input and the user's multiple reference faces based on the corresponding similarity scores; The authentication input is verified based on the final similarity score.
6. The method according to claim 5, wherein, Determining the corresponding similarity score includes: using a linear similarity function to determine the corresponding similarity score.
7. The method according to claim 6, wherein, The linear similarity function includes the vector dot product.
8. The method according to claim 6, wherein calculating the final similarity score between the authentication input and the plurality of reference faces of the user based on the corresponding similarity score comprises: Calculate the average of the corresponding similarity scores.
9. The method according to claim 5, wherein, Receiving the authentication input includes: Receive facial images of users to be authenticated; The received face image is converted into a face feature vector using a face recognition model.
10. The method according to claim 9, wherein, The facial images include those collected during the login or payment process.
11. A computer-implemented system for processing reference faces and face recognition, comprising: One or more processors; as well as One or more computer-readable storage devices coupled to the one or more processors and having instructions stored thereon, the instructions being executable by the one or more processors to perform the method of any one of claims 1 to 10.
12. An apparatus for processing a reference face and for face recognition, comprising a plurality of modules for performing the method of any one of claims 1 to 10.
Citation Information
Patent Citations
Face feature vector privacy protection identification method
CN109753921A