A face recognition engine multi-algorithm evaluation and optimal scheduling system and method
Patent Information
- Application Number
- CN202411210727.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2026-09-15
- Estimated Expiration
- 2044-08-30
AI Technical Summary
一是缺乏横向对比评价机制,只依赖于现有人脸识别引擎进行改进,缺少在同类型人脸识别引擎中横向比较的过程,无法有效识别和引入行业内更先进的解决方案,限制了技术创新和性能提升的可能性
[0024] The beneficial effects of this invention are as follows: This invention integrates key technologies such as algorithm evaluation, optimal scheduling, and cyclical feedback to construct a comprehensive cyclical mechanism for algorithm evaluation, optimal scheduling, and feedback. First, the performance indicators of different face recognition engines are analyzed through algorithm evaluation. Then, based on the algorithm evaluation results, the weight of each algorithm is dynamically adjusted to ensure that the optimal face recognition engine is selected according to business requirements. Furthermore, the performance indicators of each face recognition engine are regularly analyzed and evaluated in depth, and detailed face recognition engine performance reports are output, providing directions for continuous optimization of the face recognition engines. This creates a healthy competitive environment, promotes continuous improvement of face recognition engines, enhances the fit between face recognition engines and business needs, and ultimately optimizes the user experience.
Smart Images

Figure CN119169684B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of face recognition technology, specifically to a multi-algorithm evaluation and optimization scheduling system and method for face recognition engines. Background Technology
[0002] Driven by big data and artificial intelligence (AI) technologies, information processing capabilities have undergone a qualitative leap, leading to the emergence of numerous innovative facial recognition algorithms. These algorithms have greatly enhanced the recognition and verification process of facial features, making it more convenient and secure. The "Internet+" Trusted Identity Authentication Platform (CTID Platform) has introduced advanced facial recognition technology, providing users with efficient and accurate facial comparison capabilities. However, given the unique advantages and optimal application scenarios of different facial recognition algorithms, how to combine them with the business scenarios of the CTID platform and continuously improve the fit between algorithms and business has become an urgent problem to be solved.
[0003] Existing feedback loop solutions generally consist of three main phases: data collection, data analysis, and implementation improvement. The first phase is data collection, which aims to gather as much relevant data as possible, including customer feedback, product performance data, and environmental adaptability. Next, the data analysis phase utilizes statistical tools and analytical methods to conduct in-depth analysis of the collected data, identifying key issues and improvement opportunities to provide data-driven support for subsequent actions. Finally, the implementation improvement phase involves developing specific improvement measures based on the data analysis results, which may include product adjustments, service optimization, or process improvements. After implementation, the cycle continues to ensure continuous optimization and progress.
[0004] While the aforementioned feedback loop approach enables continuous product optimization and improvement, it still suffers from two drawbacks. First, it lacks a horizontal comparison and evaluation mechanism, relying solely on improvements to existing facial recognition engines without a process of comparison with similar engines. This hinders the effective identification and introduction of more advanced solutions within the industry, limiting the potential for technological innovation and performance enhancement. Second, it lacks a competitive mechanism for selecting the best candidates. Facial recognition engines that do not meet business requirements may still be selected, failing to adapt promptly to changes in market and user needs. This is detrimental to resource allocation and hinders the continuous competitive advancement of facial recognition engines. Summary of the Invention
[0005] To address the shortcomings of existing technologies, this invention aims to provide a multi-algorithm evaluation and optimal scheduling system and method for face recognition engines.
[0006] To achieve the above objectives, the present invention adopts the following technical solution:
[0007] A multi-algorithm evaluation and optimization scheduling system for a face recognition engine includes a face recognition engine subsystem, a comprehensive evaluation subsystem, an optimization scheduling subsystem, and a business subsystem; the comprehensive evaluation subsystem includes a data acquisition module, a data analysis module, and a scoring module; the optimization scheduling subsystem includes a scheduling task generation module, a scheduling task selection module, and a scheduling execution module.
[0008] The face recognition engine in the face recognition engine subsystem generates multi-dimensional operational status data in real time during the face recognition process. The data acquisition module of the comprehensive evaluation subsystem is used to collect all the operational status data of the face recognition engine and transmit it to the data analysis module of the comprehensive evaluation subsystem.
[0009] The data analysis module is used to classify and categorize the operational status data of all face recognition engines. Based on the results of the classification and categorization, it generates statistical data for multiple scoring indicators and transmits it to the scoring module of the comprehensive evaluation subsystem. Data classification divides the operational status data into multiple levels based on the degree of impact on the CTID platform's business and assigns different weights to each level. Data categorization divides the operational status data into multiple categories based on different properties and assigns data from different categories to their corresponding levels. After data classification and categorization, statistical data for multiple scoring indicators is generated, and the weight of each scoring indicator is determined based on its level and category.
[0010] The scoring module calculates the score s of the face recognition engine on each scoring indicator based on the preset scoring rules for each scoring indicator. i Then, combined with the graded weight W of each scoring indicator item. i The comprehensive score of the face recognition engine is calculated. The higher the comprehensive score, the better the service quality of the face recognition engine. The scoring module outputs the comprehensive scores of each face recognition engine to the optimal scheduling subsystem.
[0011] After receiving the comprehensive scores of each face recognition engine from the comprehensive evaluation subsystem, the scheduling task generation module calculates the scheduling weight of each face recognition engine based on the comprehensive score of the face recognition engine and the call success rate of the business subsystem. Then, it pre-generates scheduling tasks according to the scheduling weight and puts them into the work bucket. A scheduling task contains multiple face recognition engines, and a business request selects one scheduling task to be processed.
[0012] The business subsystem invokes the face recognition engine by sending a request to the optimal scheduling subsystem. The scheduling execution module of the optimal scheduling subsystem requests a scheduling task from the scheduling task selection module. The scheduling task selection module selects a suitable scheduling task from the scheduling bucket and returns it to the scheduling execution module. The scheduling execution module executes each face recognition engine of the scheduling task in parallel and merges the results returned by each face recognition engine to generate a comprehensive face recognition result, which is then returned to the business subsystem.
[0013] Furthermore, the scheduling weight calculation process is as follows:
[0014] The overall score of the face recognition engine i is set to S. i The success rate T of the business subsystem y calling the face recognition engine i yi If the business impact coefficient is U, then the scheduling weight W of face recognition engine i is... i =S i ×(1-U)+T yi ×U×100.
[0015] Furthermore, the scheduling task generation rules are as follows:
[0016] The face recognition engine subsystem integrates n face recognition engines. A single scheduling task selects m face recognition engines, where 1 < m < n, and n and m are both positive integers. The scheduling weight of the i-th face recognition engine is W. i In the initial state of a cycle, the cycle weight R of the i-th face recognition engine is... i =mW i The entire cycle will involve ∑R i The selection of the face recognition engine can generate ∑W i The probability of selection by the face recognition engine in each scheduling task. When selecting a task for execution in a single scheduling operation, first consider R... i Calculate the selection space K = [1, ∑R i ], Set a random value selection function V(P) i =Random(K,1), where random(K,1) represents randomly selecting a single integer between 1 and K. If 1 ≤ V(P) i If R1 ≤ R1, then face recognition engine 1 is selected. Then, face recognition engine y is selected. Once face recognition engine y is selected, the next face recognition engine to be selected in the scheduling task will exclude face recognition engine y, that is, the selection space K = [1, ∑R i -R y ], and R y =R y-1, at this point, the random selection of the second face recognition engine is executed again, and the m face recognition engines of this scheduling task are selected in turn and put into the working bucket. Then the generation of the next scheduling task begins, until the cycle weight of all face recognition is reduced to 0, and the execution of this cycle is completed.
[0017] Furthermore, the scoring module is also used to output an evaluation report of the face recognition engine by comparing the scores of various indicators of different face recognition engines horizontally, and to feed the report back to the face recognition engine maintainer. The maintainer can then make targeted optimizations and upgrade the face recognition engine based on the feedback results.
[0018] This invention also provides a method for multi-algorithm evaluation and optimal scheduling of a face recognition engine using the above system, the specific process of which is as follows:
[0019] I. Horizontal Comparison and Evaluation of Face Recognition Engines:
[0020] In the face recognition engine subsystem, the face recognition engine generates real-time operational status data during face recognition. The data acquisition module of the comprehensive evaluation subsystem collects all operational status data of the face recognition engines and transmits it to the data analysis module of the comprehensive evaluation subsystem. The data analysis module performs hierarchical and classification processing on all operational status data of the face recognition engines, generates statistical data of multiple scoring indicators based on the hierarchical and classification processing results, and transmits it to the scoring module of the comprehensive evaluation subsystem. The scoring module calculates the score of each scoring indicator of the face recognition engine according to the preset scoring rules of each scoring indicator, and then calculates the comprehensive score of the face recognition engine by combining the hierarchical weight of the evaluation indicators. Finally, the comprehensive score of the face recognition engine is output to the optimal scheduling subsystem.
[0021] II. Optimal scheduling of the face recognition engine:
[0022] The scheduling task generation module of the optimal scheduling subsystem calculates the scheduling weight of the face recognition engine based on the comprehensive score of the face recognition engine, and then pre-generates scheduling tasks according to the scheduling weight and puts them into the work bucket. One scheduling task contains multiple face recognition engines, and one business request selects one scheduling task to be processed.
[0023] When a business subsystem needs facial recognition services, it initiates a request to the optimal scheduling subsystem to invoke the facial recognition engine. The scheduling execution module of the optimal scheduling subsystem requests a scheduling task from the scheduling task selection module. The scheduling task selection module selects a suitable scheduling task from the scheduling bucket and returns it to the scheduling execution module. The scheduling execution module executes each facial recognition engine of the scheduling task in parallel and merges the results returned by each facial recognition engine to finally generate a comprehensive facial recognition result, which is then returned to the business subsystem.
[0024] The beneficial effects of this invention are as follows: This invention integrates key technologies such as algorithm evaluation, optimal scheduling, and cyclical feedback to construct a comprehensive cyclical mechanism for algorithm evaluation, optimal scheduling, and feedback. First, the performance indicators of different face recognition engines are analyzed through algorithm evaluation. Then, based on the algorithm evaluation results, the weight of each algorithm is dynamically adjusted to ensure that the optimal face recognition engine is selected according to business requirements. Furthermore, the performance indicators of each face recognition engine are regularly analyzed and evaluated in depth, and detailed face recognition engine performance reports are output, providing directions for continuous optimization of the face recognition engines. This creates a healthy competitive environment, promotes continuous improvement of face recognition engines, enhances the fit between face recognition engines and business needs, and ultimately optimizes the user experience. Attached Figure Description
[0025] Figure 1 This is a schematic diagram of the overall framework of the system in Embodiment 1 of the present invention;
[0026] Figure 2 This is a flowchart of the horizontal comparison and evaluation process of the face recognition engine in Embodiment 2 of the present invention;
[0027] Figure 3 This is a flowchart of the optimal scheduling process for the face recognition engine in Embodiment 2 of the present invention. Detailed Implementation
[0028] The present invention will be further described below with reference to the accompanying drawings. It should be noted that this embodiment is based on the present technical solution and provides detailed implementation methods and specific operation processes, but the protection scope of the present invention is not limited to this embodiment.
[0029] Example 1
[0030] This embodiment provides a multi-algorithm evaluation and optimization scheduling system for face recognition engines, such as... Figure 1As shown, it includes a face recognition engine subsystem, a comprehensive evaluation subsystem, an optimal scheduling subsystem, and business subsystems in the CTID platform; the comprehensive evaluation subsystem includes a data acquisition module, a data analysis module, and a scoring module; the optimal scheduling subsystem includes a scheduling task generation module, a scheduling task selection module, and a scheduling execution module.
[0031] The face recognition engine in the face recognition engine subsystem generates multi-dimensional operational status data in real time during the face recognition process, including algorithm performance, stability, and security. The data acquisition module of the comprehensive evaluation subsystem is used to collect all the operational status data of the face recognition engine and transmit it to the data analysis module of the comprehensive evaluation subsystem.
[0032] The data analysis module is used to classify and categorize the operational status data of all face recognition engines. Based on the results of the classification and categorization, it generates statistical data of multiple scoring indicators and transmits them to the scoring module of the comprehensive evaluation subsystem.
[0033] Specifically, in this embodiment, data grading mainly divides operational status data into three levels—Level 1, Level 2, and Level 3—based on their impact on the CTID platform's business, assigning different weights to each level. Data classification mainly divides operational status data into multiple categories based on different properties. In this embodiment, it is specifically divided into four categories: algorithm performance, cost-effectiveness, stability and maintainability, and security, and data from different categories is categorized into corresponding levels. After data grading and classification, statistical data for multiple dimensions of scoring indicators are generated, and the grading weight of each scoring indicator is determined based on its level and category.
[0034] The detailed classification and grading information is shown in Table 1 below:
[0035] Table 1
[0036]
[0037]
[0038] The scoring module calculates the score s of the face recognition engine on each scoring indicator based on the preset scoring rules for each scoring indicator. i Then, combined with the graded weight w of each scoring indicator item i Calculate the overall score of the face recognition engine. 'n' represents the number of scoring indicators for the corresponding level. A higher overall score S indicates better service quality from the face recognition engine. The scoring module outputs the calculated overall score S for each face recognition engine to the optimal scheduling subsystem.
[0039] The scoring rules for the scoring metrics are based on the face recognition accuracy metric in algorithm performance, as shown in the following formula:
[0040] If R < 99.99%, s = 0; otherwise:
[0041] s=(1-10000×(1-R)) 3 ×100
[0042] Where s represents the score of the indicator item, and R is the face recognition accuracy.
[0043] In this embodiment, the scoring module is also used to output an evaluation report for each face recognition engine by comparing the scores of different face recognition engine metrics horizontally. This report is then fed back to the face recognition engine maintainer, who can then optimize and upgrade the face recognition engine based on the feedback. For example, regarding the response time metric, assuming face recognition engines A and B score 80 and 90 respectively, a horizontal comparison shows that face recognition engine A has a lower score, indicating that its algorithm response time is relatively longer. This comparison result will be reflected in the evaluation report of face recognition engine A, allowing the maintainer to optimize this metric.
[0044] After receiving the comprehensive scores of each face recognition engine from the comprehensive evaluation subsystem, the scheduling task generation module calculates the scheduling weight of each face recognition engine based on the comprehensive score of the face recognition engine and the call success rate of the business subsystem. Then, it pre-generates scheduling tasks according to the scheduling weight and puts them into the work bucket. A scheduling task contains multiple face recognition engines, and a business request selects one scheduling task to be processed.
[0045] In this embodiment, the scheduling weight calculation process is as follows:
[0046] The overall score of the face recognition engine i is set to S. i The success rate T of the business subsystem y calling the face recognition engine i yi If the business impact coefficient is U, then the scheduling weight W of face recognition engine i is... i =S i ×(1-U)+T yi ×U×100, considering the differences in the actual usage of various face recognition engines under different business scenarios, the business impact coefficient U is set to 0.5, with T... yi =0.98, S i Taking 90 as an example, the scheduling weight W of face recognition engine i is... i =90(1-0.5)+0.98×0.5×100=94.
[0047] In this embodiment, the scheduling task generation rule is as follows:
[0048] The face recognition engine subsystem integrates n face recognition engines. A single scheduling task selects m face recognition engines, where 1 < m < n (n and m are both positive integers). The scheduling weight of the i-th face recognition engine is W. i In the initial state of a cycle, the cycle weight R of the i-th face recognition engine is... i =mW i The entire cycle will involve ∑R i The selection of the face recognition engine can generate ∑W i The probability of selection by the face recognition engine in each scheduling task. When selecting a task for execution in a single scheduling operation, first consider R... i Calculate the selection space K = [1, ∑R i ], Set a random value selection function V(P) i =Random(K,1), where random(K,1) represents randomly selecting a single integer between 1 and K. If 1 ≤ V(P) i If R1 ≤ R1, then face recognition engine 1 is selected. Then, face recognition engine y is selected. Once face recognition engine y is selected, the next face recognition engine to be selected in the scheduling task will exclude face recognition engine y, that is, the selection space K = [1, ∑R i -R y ], and R y =R y -1, at this point, the random selection of the second face recognition engine is executed again, and the m face recognition engines of this scheduling task are selected in turn and put into the working bucket. Then the generation of the next scheduling task begins, until the cycle weight of all face recognition is reduced to 0, and the execution of this cycle is completed.
[0049] For example, the face recognition engine subsystem integrates three face recognition engines, namely A1, A2, and A3. A scheduling task includes two face recognition engines, and the scheduling weights of the face recognition engines are W1=2, W2=3, and W3=5, respectively. Then the periodic weights are R1=4, R2=6, and R3=10, respectively. When the scheduling task selects the first face recognition engine, K=[1,20]. If the random value is 12, then the first face recognition engine selected is A3. At this time, R3=10-1=9, and K=[1,10]. Then, the second face recognition engine is randomly selected in the same way to complete the generation of this scheduling task.
[0050] The business subsystem initiates a request to the optimal scheduling subsystem to invoke the face recognition engine. The scheduling execution module of the optimal scheduling subsystem sends a request to the scheduling task selection module to obtain a scheduling task. The scheduling task selection module selects a scheduling task from the work bucket according to the first-in-first-out rule and returns the selected scheduling task to the scheduling execution module.
[0051] The scheduling and execution module executes each face recognition engine in the scheduled task in parallel, and merges the results returned by each face recognition engine to obtain the final face recognition result. Finally, the face recognition result is returned to the business subsystem. In this embodiment, the specific fusion process is as follows: considering the differences in recognition performance of different face recognition engines, the recognition results of each face recognition engine are weighted and merged to obtain the final face recognition result. The comprehensive score of face recognition engine i is set as S. i The face recognition score is Z. i Then the weighted weight The final weighted fusion score S = ∑(w i '×Z i ).
[0052] Example 2
[0053] This embodiment provides a method for multi-algorithm evaluation and optimal scheduling of the face recognition engine using the system described in Embodiment 1. The specific process is as follows:
[0054] I. Horizontal Comparison and Evaluation of Face Recognition Engines (e.g.) Figure 2 As shown):
[0055] In the face recognition engine subsystem, the face recognition engine generates real-time operational status data during face recognition. The data acquisition module of the comprehensive evaluation subsystem collects all operational status data from the face recognition engines and transmits it to the data analysis module of the comprehensive evaluation subsystem. The data analysis module performs hierarchical and categorized processing on all operational status data of the face recognition engines, and generates statistical data for multiple dimensions of scoring indicators based on the hierarchical and categorized processing results, which is then transmitted to the scoring module of the comprehensive evaluation subsystem. The scoring module calculates the score for each scoring indicator of the face recognition engine according to the preset scoring rules for each scoring indicator, and then calculates the comprehensive score of the face recognition engine by combining the hierarchical weight of the evaluation indicators. Finally, the comprehensive score of the face recognition engine is output to the optimal scheduling subsystem.
[0056] II. Optimal scheduling of the face recognition engine (e.g.) Figure 3 As shown):
[0057] The scheduling task generation module of the optimal scheduling subsystem calculates the scheduling weight of the face recognition engine based on the comprehensive score of the face recognition engine, and then pre-generates scheduling tasks according to the scheduling weight and puts them into the work bucket. One scheduling task contains multiple face recognition engines, and one business request selects one scheduling task to be processed.
[0058] When a business subsystem requires facial recognition services, it initiates a request to the optimal scheduling subsystem to invoke the facial recognition engine. The scheduling execution module of the optimal scheduling subsystem requests a scheduling task from the scheduling task selection module. The scheduling task selection module selects a suitable scheduling task from the scheduling bucket and returns it to the scheduling execution module. The scheduling execution module executes each facial recognition engine of the scheduled task in parallel, merges the results returned by each facial recognition engine, and finally generates a comprehensive facial recognition result, which is then returned to the business subsystem.
[0059] In embodiments 1 and 2 above, the weights of the face recognition engine's metrics are calculated based on the optimal scheduling subsystem and the business impact coefficient. The business subsystems in the CTID platform can select the face recognition engine with the highest compatibility with the current business subsystem through the optimal scheduling subsystem to complete the face comparison business. Simultaneously, the comprehensive evaluation subsystem collects data on each face recognition engine operation, and outputs algorithm evaluation results after data analysis and horizontal comparative evaluation. These evaluation results can serve as improvement suggestions to guide the continuous optimization of the face recognition engine and provide weight data support for the optimal scheduling subsystem.
[0060] Furthermore, the optimal scheduling subsystem employs a "work bucket" technique. First, it calculates the weight of each face recognition engine based on the algorithm evaluation results. Then, the system initializes a bucket with a fixed capacity and continuously allocates tasks to the bucket according to the weight of each engine. When a business subsystem needs to call a face recognition engine, it retrieves the corresponding scheduling task from the bucket. This strategy not only ensures the fairness and transparency of the face recognition engine process but also dynamically adjusts the weight of each face recognition engine based on real-time business needs and engine performance, thereby achieving a more precise match with business requirements.
[0061] The comprehensive evaluation subsystem collects operational data from the face recognition engine across dimensions such as performance, stability, and security. This data is then graded and categorized to generate more detailed scoring metrics. These metrics are scored according to a pre-defined data analysis model. Finally, by comparing the scores of different face recognition engines across different metrics, the system outputs a comprehensive engine evaluation report. This report provides improvement suggestions for each engine and also provides data support for the weighting of each face recognition engine in the optimal scheduling subsystem, thereby driving continuous optimization of the face recognition engine.
[0062] For those skilled in the art, various corresponding changes and modifications can be made based on the above technical solutions and concepts, and all such changes and modifications should be included within the protection scope of the claims of this invention.
Claims
1. A multi-algorithm evaluation and optimization scheduling system for face recognition engines, characterized in that, It includes a face recognition engine subsystem, a comprehensive evaluation subsystem, an optimal scheduling subsystem, and a business subsystem; the comprehensive evaluation subsystem includes a data acquisition module, a data analysis module, and a scoring module; the optimal scheduling subsystem includes a scheduling task generation module, a scheduling task selection module, and a scheduling execution module; The face recognition engine in the face recognition engine subsystem generates multi-dimensional operational status data in real time during the face recognition process. The data acquisition module of the comprehensive evaluation subsystem is used to collect all the operational status data of the face recognition engine and transmit it to the data analysis module of the comprehensive evaluation subsystem. The data analysis module is used to classify and categorize the operational status data of all face recognition engines. Based on the results of the classification and categorization, it generates statistical data for multiple dimensions of scoring indicators and transmits it to the scoring module of the comprehensive evaluation subsystem. Data classification divides the operational status data into multiple levels based on the degree of impact on the CTID platform's business and assigns different weights to each level. Data categorization divides the operational status data into multiple categories based on different properties and classifies the data of different categories into corresponding levels. After data classification and categorization, statistical data for multiple dimensions of scoring indicators is generated, and the weight of each scoring indicator is determined based on its level and category. The scoring module calculates the score s of the face recognition engine on each scoring indicator based on the preset scoring rules for each scoring indicator. i Then, combined with the graded weight W of each scoring indicator item. i Calculate the overall score of the face recognition engine; the higher the overall score, the better the service quality of the face recognition engine. The scoring module outputs the comprehensive scores calculated from each face recognition engine to the optimal scheduling subsystem; After receiving the comprehensive scores of each face recognition engine from the comprehensive evaluation subsystem, the scheduling task generation module of the optimization scheduling subsystem calculates the scheduling weight of each face recognition engine based on the comprehensive score of the face recognition engine and the call success rate of the business subsystem, and then pre-generates scheduling tasks according to the scheduling weight and puts them into the work bucket. A scheduling task contains multiple face recognition engines, and a business request selects a scheduling task to be processed. The business subsystem invokes the face recognition engine by sending a request to the optimal scheduling subsystem. The scheduling execution module of the optimal scheduling subsystem requests a scheduling task from the scheduling task selection module. The scheduling task selection module selects a suitable scheduling task from the scheduling bucket and returns it to the scheduling execution module. The scheduling execution module executes each face recognition engine of the scheduling task in parallel and merges the results returned by each face recognition engine to generate a comprehensive face recognition result, which is then returned to the business subsystem. The scheduling weight calculation process is as follows: The overall score of the face recognition engine i is set to S. i The success rate T of the business subsystem y calling the face recognition engine i yi If the business impact coefficient is U, then the scheduling weight of face recognition engine i is... ; The scheduling task generation rules are as follows: The face recognition engine subsystem integrates n face recognition engines. A single scheduling task selects m face recognition engines, where 1 < m < n, and n and m are both positive integers. The scheduling weight of the i-th face recognition engine is W. i In the initial state of a cycle, the cycle weight of the i-th face recognition engine The entire cycle will proceed The next face recognition engine selection can generate The probability of selection by the face recognition engine in each scheduling task. When selecting a task for execution, first consider R. i Calculate the selection space Set a random value function random(K,1) means randomly selecting a single integer between 1 and K, where 1 ≤ V(P) i If R1 ≤ R1, then face recognition engine 1 is selected. <V(P) y )≤ If face recognition engine y is selected, then face recognition engine y will be excluded from the selection of the next face recognition engine for the scheduling task, i.e., the selection space will be expanded. And R y =R y -1, at this point, the random selection of the second face recognition engine is executed again, and the m face recognition engines of this scheduling task are selected in turn and put into the working bucket. Then the generation of the next scheduling task begins, until the cycle weight of all face recognition is reduced to 0, and the execution of this cycle is completed.
2. The system according to claim 1, characterized in that, The scoring module is also used to compare the scores of various indicators of different face recognition engines horizontally, output the evaluation result report of the face recognition engine, and feed the report back to the face recognition engine maintainer. The maintainer can then make targeted optimizations and upgrade the face recognition engine based on the feedback results.
3. A method for multi-algorithm evaluation and optimal scheduling of a face recognition engine using the system described in any one of claims 1-2, characterized in that, The specific process is as follows: I. Horizontal Comparison and Evaluation of Face Recognition Engines: The face recognition engine in the face recognition engine subsystem generates real-time running status data during the face recognition process. The data acquisition module of the comprehensive evaluation subsystem collects all the running status data of the face recognition engine and transmits it to the data analysis module of the comprehensive evaluation subsystem. The data analysis module performs hierarchical and classification processing on the operational status data of all face recognition engines, generates statistical data of multiple dimensions of scoring indicators based on the hierarchical and classification processing results, and transmits them to the scoring module of the comprehensive evaluation subsystem. The scoring module calculates the scores of each scoring indicator of the face recognition engine according to the preset scoring rules of each scoring indicator, and then calculates the comprehensive score of the face recognition engine by combining the hierarchical weight of the evaluation indicator. Finally, the comprehensive score of the face recognition engine is output to the optimal scheduling subsystem. II. Optimal scheduling of the face recognition engine: The scheduling task generation module of the optimal scheduling subsystem calculates the scheduling weight of the face recognition engine based on the comprehensive score of the face recognition engine, and then pre-generates scheduling tasks according to the scheduling weight and puts them into the work bucket. One scheduling task contains multiple face recognition engines, and one business request selects one scheduling task to be processed. When a business subsystem needs facial recognition services, it initiates a request to the optimal scheduling subsystem to invoke the facial recognition engine. The scheduling execution module of the optimal scheduling subsystem requests a scheduling task from the scheduling task selection module. The scheduling task selection module selects a suitable scheduling task from the scheduling bucket and returns it to the scheduling execution module. The scheduling execution module executes each facial recognition engine of the scheduling task in parallel and merges the results returned by each facial recognition engine to finally generate a comprehensive facial recognition result, which is then returned to the business subsystem.
Citation Information
Patent Citations
Method and device for integrating various face recognition engines
CN110097007A
Evaluation and calling method and system for face recognition algorithm engine
CN110287356A