Using artificial intelligence modules to learn how to process facial recognition
By introducing artificial intelligence modules into the face recognition system, users can correct and update the recognition results based on feature point information, solving the problem that identification errors cannot be corrected immediately in the existing system, and improving the accuracy of identification and the immediacy of the system.
Patent Information
- Application Number
- CN202010227893.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-12-25
- Filing Date
- 2020-03-27
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2040-12-14
AI Technical Summary
The existing facial recognition system with multiple users and multiple faces cannot be corrected or updated immediately when encountering identification errors, resulting in repeated identification errors and affecting the user experience.
By introducing an artificial intelligence module, users can extract feature point information from face images, remove, confirm and update the recognition results based on feature point distance information, and dynamically respond and update the recognition method of face recognition.
It realizes the user's convenient correction criteria, improves the accuracy of the next identification, and is suitable for face recognition systems with multiple users and multiple faces, improving the immediacy and accuracy of the system.
Smart Images

Figure CN113033271B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to face recognition. Background Art
[0002] Facial recognition is a type of biometric recognition technology, specifically a computer technology that analyzes and compares facial visual feature information for identity verification. Facial recognition has been applied in many fields, such as access control, mobile phone unlocking, identity authentication, etc. However, for facial recognition systems with multiple users and multiple faces, there will still be recognition errors. Generally, facial recognition systems are closed, and it is difficult or impossible for ordinary users to modify the recognition model or update the data. If a recognition error occurs for a face, the same recognition error will occur the next time the same face is recognized. Although this approach ensures security, it is inconvenient to use in applications with immediate needs. Summary of the invention
[0003] In view of the above problems, the purpose of the present invention is to provide a processing method and electronic device for learning face recognition using an artificial intelligence module, which allows users to easily modify the criteria to improve the accuracy of the next recognition.
[0004] In one embodiment, a facial recognition processing method includes: extracting feature point information from a facial image; outputting a facial recognition result based on the feature point information, the recognition result including a recognized person's name and feature point distance information; determining whether the recognized person's name is in a list; when the recognized person's name is in the list, performing a removal confirmation step to determine whether the recognition result needs to be removed based on the feature point distance information; when the recognition result does not need to be removed, displaying the recognized person's name; when the recognition result needs to be removed, displaying a negative prompt; and a facial recognition recognition method that dynamically and instantly feedbacks and updates the recognition result.
[0005] In one embodiment, the step of removing confirmation includes: determining whether the recognition result is ambiguous; when the recognition result is ambiguous, providing multiple candidate names for the user to select the correct name from; when the correct name is different from the recognized name, updating the face database according to the distance information between the correct name and the feature point.
[0006] In one embodiment, the feature point distance information includes the feature point distance, and the step of determining whether the recognition result is ambiguous includes: when the feature point distance is less than a low threshold value, the recognition result does not need to be removed; when the feature point distance is greater than a high threshold value, the recognition result needs to be removed, wherein the high threshold value is greater than the low threshold value; and when the feature point distance is between the low threshold value and the high threshold value, the recognition result is ambiguous.
[0007] In one embodiment, the step of providing multiple candidate names includes: calculating each facial feature data in the face database to obtain multiple facial distance data; sorting these facial distance data; listing the first N closest facial distance data as candidate distance data; counting the names according to the names corresponding to these candidate distance data; and displaying the name counting results, which include these candidate names.
[0008] In one embodiment, the step of updating the face database includes: removing the least similar record of the correct name in the face database; and adding a record of the correct name in the face database according to the feature point distance information.
[0009] In one embodiment, the removal confirmation step further includes: when the correct name is the same as the recognized name, the face database is not updated, and the recognized name is displayed.
[0010] In one embodiment, the processing method further includes: when the identified person's name is not in the list, performing an update confirmation step to add a new person's name data to the list.
[0011] In one embodiment, the neural network of the artificial intelligence module is used to extract feature point information from the facial image, and the classifier of the artificial intelligence module is used to output a recognition result based on the feature point information.
[0012] In one embodiment, a facial recognition processing method includes: extracting feature point information from a facial image; outputting a facial recognition result according to the feature point information, the recognition result including a recognized name and feature point distance information; determining whether the recognized name is in a list; when the recognized name is not in the list, performing an update confirmation step to add a new name data to the list; when the recognized name is in the list, performing a removal confirmation step to determine whether the recognition result needs to be removed according to the feature point distance information; when the recognition result does not need to be removed, displaying the recognized name; when the recognition result needs to be removed, displaying a negative prompt; and dynamically and instantly giving feedback and updating the facial recognition recognition method. The removal confirmation step includes: determining whether the recognition result is ambiguous; when the recognition result is ambiguous, providing multiple candidate names for the user to select the correct name from; when the correct name is the same as the recognized name, not updating the facial database and displaying the recognized name; when the correct name is different from the recognized name, updating the facial database according to the correct name and the feature point distance information. The feature point distance information includes the feature point distance, and the step of judging whether the recognition result is ambiguous includes: when the feature point distance is less than a low threshold value, the recognition result does not need to be removed; when the feature point distance is greater than a high threshold value, the recognition result needs to be removed, wherein the high threshold value is greater than the low threshold value; and when the feature point distance is between the low threshold value and the high threshold value, the recognition result is ambiguous. The step of providing multiple candidate names includes: calculating each facial feature data in the face database to obtain multiple facial distance data; sorting these facial distance data; listing the first N closest distances from these facial distance data as candidate distance data; counting names according to the names corresponding to these candidate distance data; and displaying the name counting results, the name counting results including these candidate names. The step of updating the face database includes: in the face database, removing the least similar record of the correct name; and in the face database, adding a record of the correct name according to the feature point distance information.
[0013] In one embodiment, a method for performing facial recognition in an electronic device is provided.
[0014] As mentioned above, the facial recognition processing method and electronic device disclosed in the present invention can allow users to easily modify the criteria to improve the accuracy of the next recognition. It can be applied to a facial recognition system with multiple users and multiple faces, and can instantly add facial data and feedback to the recognition process to improve the accuracy of the next facial recognition. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 A block diagram of a facial recognition processing method according to an embodiment.
[0016] Figure 2 A schematic diagram of facial feature points.
[0017] Figure 3 for Figure 1 Remove the confirmation block from the process block diagram.
[0018] Figure 4 and Figure 5 A block diagram of an electronic device for performing a facial recognition processing method. DETAILED DESCRIPTION
[0019] A facial recognition processing method and an electronic device according to a preferred embodiment of the present invention will be described below with reference to the related drawings, wherein the same elements will be described with the same reference numerals.
[0020] like Figure 1 As shown, Figure 1 This is a flow block diagram of a facial recognition processing method according to an embodiment. Each block represents a step, and each step may have further detailed steps. The facial recognition processing method includes blocks 102 to 110 and blocks 200 to 214, which include: obtaining an input image (block 102); detecting a face from the input image and extracting a facial image (block 104); extracting feature point information from the facial image (block 106); outputting a facial recognition result according to the feature point information, the recognition result including a recognized name and feature point distance information (block 108); determining whether the recognized name is in a list (block 202); when the recognized name is in the list, performing a removal confirmation step to determine whether the recognition result needs to be removed according to the feature point distance information (block 204); when the recognition result does not need to be removed, displaying the recognized name (block 206); when the recognition result needs to be removed, displaying a negative prompt (block 208); when the recognized name is not in the list, performing an update confirmation step to add a new name data in the list (block 212). In addition, the user may be asked whether to update (block 210) beforehand. If not, the user may proceed to block 208. If the user does, the user may proceed to block 212. Through blocks 210, 212, 214 and even block 204, the facial recognition method may be dynamically and instantly fed back and updated.
[0021] In block 102, the image source may be a camera or a communication device, etc. The camera may take a photo of the user in real time to generate an input image, and the communication device may receive an image from a remote end, which may also be connected to a camera to take a photo to generate an input image. Then, in block 104, a face is detected in the image, and a portion of the face is extracted from the input image for subsequent facial feature recognition.
[0022] In block 106, feature point information is extracted from the facial image. Figure 2As shown, the facial feature point information includes multiple embedded features, and facial landmark extraction uses multiple embedded feature points to mark the facial features. This block can be implemented using a neural network, such as a deep learning neural network. The number of embedded feature points is, for example, 256 points, which is calculated by a deep architecture and an L2 norm.
[0023] In block 108, the Euclidean distance is calculated based on the feature point information of the input image and the feature point information of a face in the face database. The calculation formula is as follows (1), and then the classifier is used to classify based on the calculated distance. The classification result is used as the recognition result of the face recognition. The recognition result includes the recognized name and the feature point distance information. For example, the number of recognized names is one, and the feature point distance information is the Euclidean distance between these embedded feature points between the two face images.
[0024]
[0025] k: the number of embedded feature points, for example 256;
[0026] Xi: is the feature point of the input image;
[0027] Yi: Feature points of a face in the face database.
[0028] Blocks 104 to 108 may be in block 110, which indicates that it may be implemented as an artificial intelligence module (AI module). The artificial intelligence module may be a chip, a program code, or a firmware composed of a chip and a program code. Blocks 202 to 212 may be in block 200, which indicates that it may be implemented as a computing device. The computing device may have a processor and a memory, the processor is configured to execute the program code, and the memory is configured to store the program code and data. For example, block 200 may be an application program (Application Program) of a mobile computing device. The neural network of the artificial intelligence module is used in block 106 to extract feature point information from a facial image, and the classifier of the artificial intelligence module is used in block 108 to output a recognition result based on the feature point information. The combination of blocks 110 and 200 is a processing method for learning facial recognition using an artificial intelligence module.
[0029] In block 202 , it is determined whether the recognized name is in the list. The names in the list represent that the names have corresponding facial feature data stored in the face database. The list can be stored in the face database.
[0030] In block 204, when the recognized name is in the list, a removal confirmation step is performed to determine whether the recognition result needs to be removed based on the feature point distance information. If the recognition result is wrong, there is a mechanism for the user to correct and feedback to the recognition process, which can improve the accuracy of facial recognition next time.
[0031] In block 206 , when the recognition result does not need to be removed, the recognized person's name is displayed, which means that the recognition result is correct.
[0032] In block 208 , when the recognition result needs to be removed, a negative prompt is displayed, such as an error message or an expression that the recognition result is unknown.
[0033] In blocks 210 to 212, when the recognized name is not in the list, the user is first asked whether to update. If not, the user enters block 208 to display a negative prompt. If the user wants to update, the user enters block 212 to perform the update confirmation step. The update confirmation step is to add a new name data to the list and add the corresponding facial feature information to the face database, and update the model of the classifier used in block 108. In block 214, the model of the classifier used in block 108 is further stored, so that block 110 can recognize the newly added face during the next facial recognition and output the correct recognition result. In addition, the data in block 212 can also be updated. Figure 3 The low threshold value T1 and the high threshold value T2 used in the block.
[0034] like Figure 3 As shown, Figure 3 for Figure 1 FIG. 2 is a flow block diagram of removing the confirmation block 204. Each block represents a step, and each step may include further detailed steps.
[0035] The steps performed in the removal confirmation block include: determining whether the recognition result is ambiguous (block 310); when the recognition result is ambiguous, providing multiple candidate names for the user to select the correct name from (block 320); when the correct name is the same as the recognized name, not updating the face database and displaying the recognized name (block 334); when the correct name is different from the recognized name, updating the face database according to the distance information between the correct name and the feature point (block 340).
[0036] In block 310 , feature point distance information includes feature point distances, and block 310 includes blocks 302 to 306 .
[0037] In block 302 , the feature point distance is obtained, and a low threshold value T1 and a high threshold value T2 are initialized, wherein the high threshold value T2 is greater than the low threshold value T1 .
[0038] In block 304, it is determined whether the feature point distance is less than the low threshold value T1 (block 304). When the feature point distance is less than the low threshold value T1, the recognition result is that it does not need to be removed, and then enters block 308; when the feature point distance is not less than the low threshold value T1, enter block 306. Block 308 is to enter block 206 to display the recognized name.
[0039] Next, in block 306, it is determined whether the feature point distance is greater than the high threshold value T2, wherein the high threshold value T2 is greater than the low threshold value T1, and entering block 312 means that when the feature point distance is greater than the high threshold value T2, the recognition result is to be removed. Block 314 is to enter block 208 to display a negative prompt. When the feature point distance is between the low threshold value T1 and the high threshold value T2, the recognition result is ambiguous and then enter block 320.
[0040] In block 320, the step of providing multiple candidate names includes: calculating each facial feature data in the facial database to obtain multiple facial distance data (block 322); sorting these facial distance data (block 324); listing the first N closest facial distance data as candidate distance data (block 326), and filtering out N data; counting the names according to the names corresponding to these candidate distance data (block 328); and displaying the name counting results, which include these candidate names (block 330).
[0041] In block 322 , the feature data of the currently input facial image and each facial feature data in the facial database are respectively calculated with Euclidean distances to obtain a facial distance data respectively, and a plurality of facial distance data are obtained as a whole.
[0042] In block 324, the sorting is from nearest to farthest, ie, smaller distances are given higher priority.
[0043] In blocks 326 to 330, N is, for example, 10. Assuming that among the 10 data, 5 are data of the name C, 3 are data of the name A, and 2 are data of the name B, regardless of the order, the name counting in block 328 will be generated in order according to the number of votes, such as the order of C, A, B. In block 330, the order of C, A, B and the name will be displayed, and the name with the highest order represents the best prediction result of recognition.
[0044] In block 332 , the user can determine whether the highest ranked name is correct based on the displayed name counting results. If it is correct, the user can choose not to update and use the best prediction result, the highest ranked name as the identified name, and then enter block 334 , otherwise enter block 340 .
[0045] In block 334, the face database and the classifier are not updated, the model of the classifier used in block 108 is maintained, and the threshold values T1 and T2 are not updated. Then, block 206 can be entered to display the recognized name.
[0046] In block 340, the steps of updating the face database include: the user inputs the correct name (block 342); in the face database, removing the least similar record of the correct name (block 344); and in the face database, adding a record of the correct name according to the feature point distance information (block 346), and the newly added name is used as the recognized name; entering block 206 to display the recognized name (block 348).
[0047] In block 342 , the user can select one of the candidate names as the correct name. The candidate names are names in the list, and the user cannot select or add a name that is not in the list.
[0048] In block 344, in the face database, the correct person name has multiple feature records, which are generated for different facial images of the same person. Each feature record has its own feature point distance. Among these feature records, the one with the farthest feature point distance is considered the least similar and is the record to be removed in this step. The missing data will be supplemented in the next block step.
[0049] In block 346, a new record of the correct name is added to the face database according to the feature point distance information of the input image, and the classifier model used by the storage block 108 is updated so that the block 110 can recognize the newly added face in the next face recognition and output the correct recognition result. In addition, the low threshold value T1 and the high threshold value T2 can also be updated in block 346.
[0050] Figure 4 and Figure 5 A block diagram of an electronic device for performing a facial recognition processing method. Figure 4As shown, the electronic device 400 may be a computer device, which includes a processing unit 402, a display unit 404, a camera unit 406, an input unit 408, a storage unit 410, and a recognition unit 416. The processing unit 402 is coupled to the display unit 404, the camera unit 406, the input unit 408, the storage unit 410, and the recognition unit 416. The processing unit 402 is configured to execute program codes, and the program codes and related data may be stored in the storage unit 410. Figure 1 Block 200 and Figure 3 The blocks in the program code and the processing unit that executes the program code can be implemented. For example, the storage unit 410 stores the proofreading module 412 and the face database 414. The block 200 can be the proofreading module 412 stored in the storage unit 410. The proofreading module 412 includes program code and data. The camera unit 406 can perform the function of the block 102, and the recognition unit 416 can perform the function of the block 110 and can be a chip. The display unit 404 may include a display, which can perform the display function of each block or step. The input unit 408 may include an input element such as a touch panel, a keyboard, etc., which can perform the user input function of each block or step.
[0051] in addition, Figure 4 The identification unit 416 can be changed to Figure 5 The identification module 418 stored in the storage unit 410, Figure 5 In the electronic device 400a, the block 110 may be an identification module 418 stored in the storage unit 410, and the identification module 418 includes program codes and data.
[0052] As mentioned above, the facial recognition processing method and electronic device disclosed in the present invention allow users to easily modify the criteria to improve the accuracy of the next recognition. It can be applied to a facial recognition system with multiple users and multiple faces, and can instantly add facial data and feedback to the recognition process to improve the accuracy of the next facial recognition.
[0053] The embodiments disclosed above are only used to illustrate various uses of the present invention. It should be understood that, in view of the above teachings, various modifications, changes and combinations of the functional elements and features of the present disclosure are possible, and therefore, within the scope of the appended claims, and the present disclosure can be implemented in a manner different from that specifically disclosed.
[0054] The above description is for illustrative purposes only and is not intended to be limiting. Any equivalent modifications or changes made thereto without departing from the spirit and scope of the present invention shall be included in the scope of the appended claims.
Claims
1. A facial recognition processing method, comprising: Extract feature point information from facial images; Outputting a recognition result of face recognition according to the feature point information, the recognition result including the recognized person's name and feature point distance information; Determining whether the identified person's name is in the list; When the identified person's name is in the list, performing a removal confirmation step to determine whether the identification result needs to be removed based on the feature point distance information; When the recognition result does not need to be removed, displaying the recognized person's name; When the recognition result needs to be removed, a negative prompt is displayed; as well as Dynamic instant feedback and update of the facial recognition recognition method; The removal confirmation step includes: Determining whether the recognition result is ambiguous; When the recognition result is ambiguous, a plurality of candidate names are provided for the user to select the correct name; When the correct name is different from the recognized name, the face database is updated according to the distance information between the correct name and the feature point.
2. The processing method according to claim 1, wherein: The feature point distance information includes feature point distance, and the step of determining whether the recognition result is ambiguous includes: When the distance between the feature points is less than the lower threshold value, the recognition result does not need to be removed; When the feature point distance is greater than a high threshold value, the recognition result needs to be removed, wherein the high threshold value is greater than the low threshold value; and When the feature point distance is between the lower threshold value and the upper threshold value, the recognition result is ambiguous.
3. The processing method according to claim 1, wherein: The steps for providing multiple candidate names include: Calculating each facial feature data in the facial database to obtain a plurality of facial distance data; sorting the face distance data; Listing N heads with the closest distance from the face distance data as candidate distance data; Counting votes according to the names corresponding to the candidate distance data; and The name counting result is displayed, and the name counting result includes the candidate name.
4. The processing method according to claim 1, wherein: The steps of updating the face database include: In the face database, removing the least similar record of the correct name; and In the face database, a record of the correct name is newly added according to the feature point distance information.
5. The processing method according to claim 1, wherein: The removal confirmation step further includes: When the correct name is the same as the recognized name, the face database is not updated and the recognized name is displayed.
6. The processing method according to claim 1, further comprising: When the identified name is not in the list, an update confirmation step is performed to add a new name data to the list.
7. The processing method according to claim 1, wherein: The neural network of the artificial intelligence module is used to extract the feature point information from the facial image, and the classifier of the artificial intelligence module is used to output the recognition result according to the feature point information.
8. A facial recognition processing method, comprising: Extract feature point information from facial images; Outputting a recognition result of face recognition according to the feature point information, the recognition result including the recognized person's name and feature point distance information; Determining whether the identified person's name is in the list; When the identified name is not in the list, an update confirmation step is performed to add a new name data to the list; When the identified person's name is in the list, performing a removal confirmation step to determine whether the identification result needs to be removed based on the feature point distance information; When the recognition result does not need to be removed, displaying the recognized person's name; When the recognition result needs to be removed, a negative prompt is displayed; as well as Dynamic instant feedback and update of the facial recognition recognition method, The removal confirmation step includes: Determining whether the recognition result is ambiguous; When the recognition result is ambiguous, a plurality of candidate names are provided for the user to select the correct name; When the correct name is the same as the recognized name, the face database is not updated and the recognized name is displayed; When the correct name is different from the recognized name, the face database is updated according to the distance information between the correct name and the feature point. The feature point distance information includes feature point distance, and the step of determining whether the recognition result is ambiguous includes: When the distance between the feature points is less than the lower threshold value, the recognition result does not need to be removed; When the feature point distance is greater than a high threshold value, the recognition result needs to be removed, wherein the high threshold value is greater than the low threshold value; and When the feature point distance is between the lower threshold value and the upper threshold value, the recognition result is ambiguous. The steps of providing multiple candidate names include: Calculating each facial feature data in the facial database to obtain a plurality of facial distance data; sorting the face distance data; Listing N heads with the closest distance from the face distance data as candidate distance data; Counting votes according to the names corresponding to the candidate distance data; and Display the name counting result, the name counting result includes the candidate name, Wherein, the step of updating the face database comprises: In the face database, removing the least similar record of the correct name; and In the face database, a record of the correct name is newly added according to the feature point distance information.
9. An electronic device, carrying out the processing method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Dynamic face recognition method and system
CN106156688A
Smart glass and method for recognizing and prompting face using smart glass
TWI512644B