Information processing device, information processing method, and program
By converting feature quantities into a narrower range and using binarization to select high-scoring registrants, the facial recognition authentication method speeds up the authentication process by limiting score calculations to only relevant registrants, addressing the inefficiencies of existing methods.
Patent Information
- Application Number
- PCT/JP2024/009984
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-06-22
- Filing Date
- 2024-03-14
- Publication Date
- 2024-12-26
AI Technical Summary
Existing facial recognition authentication methods are time-consuming due to the need to calculate similarity scores for multiple registered faces, increasing processing time as the number of registrants grows.
Converting feature quantities from a wide numerical range into a narrower range, specifically using binarization to generate Sign Bit Match (SBM) values, which allows for the selection of feature amounts with high expected scores, thereby limiting score calculations to only relevant registrants.
This approach significantly reduces the time required for face authentication by focusing score calculations on registrants with high expected scores, enhancing processing efficiency.
Smart Images

Figure JP2024009984_26122024_PF_FP_ABST
Abstract
Description
Information processing device, information processing method, and program
[0001] The present disclosure relates to an information processing device, an information processing method, and a program.
[0002] In recent years, the use of facial recognition to authenticate people and manage their entry and exit has been considered. For example, in facilities such as offices and schools where entry is permitted only to people registered in advance and entry is restricted to people who are not registered, the use of facial recognition to authenticate that a person attempting to enter (for example, a person to be authenticated) is a person permitted to enter has been considered.
[0003] For example, Patent Document 1 describes that a face detection process is performed on a captured image, a face image is extracted from a face area that is thought to be a person's face, the face image is normalized to a predetermined number of pixels, and the similarity between the features in the normalized target face image and the features in a registered face image is calculated as a score, thereby calculating the "likeliness" of the target face image to be a specific person.
[0004] JP 2013-134736 A
[0005] However, the method described in Patent Document 1 requires calculating a score for each registered face image, which increases the time required for face authentication.
[0006] Non-limiting examples of the present disclosure contribute to providing an information processing device, an information processing method, and a program that can reduce the time required for face authentication.
[0007] An information processing device according to one embodiment of the present disclosure includes a feature conversion unit that converts a feature acquired from a facial image and included in a first numerical range into a conversion value within a second numerical range that is narrower than the first numerical range, and a calculation unit that calculates, for each first conversion value that is stored in association with a first feature of each pre-registered person, an evaluation value indicating the similarity between the first conversion value and a second conversion value that is associated with a second feature of a person to be subjected to facial authentication, and selects a first feature that is associated with a first conversion value for which the evaluation value is equal to or greater than a threshold.
[0008] In an information processing method according to one embodiment of the present disclosure, an information processing device converts features acquired from a facial image and falling within a first numerical range into conversion values within a second numerical range that is narrower than the first numerical range, calculates an evaluation value indicating the similarity between each first conversion value stored in association with the first feature of each pre-registered person and a second conversion value associated with the second feature of the subject of facial authentication, and selects a first feature associated with a first conversion value whose evaluation value is equal to or greater than a threshold.
[0009] A program according to one embodiment of the present disclosure causes an information processing device to execute a process of converting a feature acquired from a facial image and falling within a first numerical range into a conversion value within a second numerical range that is narrower than the first numerical range, calculating an evaluation value indicating the similarity between each first conversion value that is stored in association with the first feature of each pre-registered person and a second conversion value that is associated with the second feature of the subject of facial authentication, and selecting a first feature that is associated with a first conversion value for which the evaluation value is equal to or greater than a threshold.
[0010] These comprehensive or specific aspects may be realized as a system, an apparatus, a method, an integrated circuit, a computer program, or a recording medium, or may be realized as any combination of a system, an apparatus, a method, an integrated circuit, a computer program, and a recording medium.
[0011] Non-limiting examples of the present disclosure can reduce the time required for facial recognition.
[0012] Further advantages and benefits of an embodiment of the present disclosure will become apparent from the specification and drawings. Such advantages and / or benefits may be provided by some of the embodiments and features described in the specification and drawings, respectively, but not necessarily all of them may be provided to obtain one or more identical features.
[0013] FIG. 1 shows an example of the relationship between the number of SBMs and the score. FIG. 2 shows an example of the configuration of an information processing device according to an embodiment. FIG. 3 shows a first example of the feature amount and SB sequence of a registered person. FIG. 4 shows a second example of the feature amount and SB sequence of a registered person. FIG. 5 shows an example of setting an SBM threshold. FIG. 6 shows an example of the relationship between the number of SBMs and the number of cases. FIG. 7 shows an example of the distribution of the number of cases based on the relationship shown in FIG. 6. FIG. 8 shows an example of setting an SBM threshold. FIG. 9 supplements the processing of setting an SBM threshold.
[0014] Hereinafter, preferred embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In this specification and drawings, components having substantially the same functions are designated by the same reference numerals, and redundant description will be omitted.
[0015] (One embodiment) <Knowledge that led to the present disclosure> Facial recognition is one method for verifying the identity of a subject of facial recognition (hereinafter, subject). Facial recognition is used to determine whether the subject is a person registered in advance (hereinafter, registrant), and, if multiple registrants are registered, to determine which of the registrants the subject is. In the facial recognition process, a matching score indicating the degree of similarity between facial features extracted from a facial image of the subject and facial features extracted from a facial image of the registrant is calculated, and a determination is made as to which of the registrants the subject is based on the level of the matching score. The facial features are designed so that the matching score is relatively high when the subject and the registrant are the same person, and the matching score is low when the subject and the registrant are not the same person. Hereinafter, facial features may be abbreviated as features, and matching score may be abbreviated as score.
[0016] Since the calculation of the score between the feature amount of the subject and the feature amount of the registrant is performed for each registrant, the more registrants there are, i.e., the more feature amounts there are for the registrants, the longer the score calculation process takes.
[0017] Since facial recognition is used to determine who the subject is among the registered users, the score calculation process can be sped up by limiting the targets for score calculation to the features of registered users that are expected to produce high scores.
[0018] Therefore, in this embodiment, a method is described in which the feature is converted into another value based on the feature, and the converted value is used to make a judgment to select the feature of a registered person who is expected to have a high score, thereby limiting the objects for calculating the score to the feature of a registered person who is expected to have a high score, and speeding up the score calculation process.
[0019] <Example of Feature Transformation> In this embodiment, the feature is transformed into a binary value, for example. Hereinafter, the transformation into a binary value will be referred to as binarization.
[0020] The score is calculated by using an inner product calculation. For example, the inner product calculation of a feature quantity expressed as an n-dimensional vector (n is an integer equal to or greater than 1) will be described.
[0021] When two features are written as n-dimensional vectors v0 and v1, the element of dimension i (i is an integer between 1 and n) of vector v0 is written as v0[i], and the element of dimension i of vector v1 is written as v1[i], the score is calculated as shown in equation (1).
[0022]
[0023] Here, when v0[i] and v1[i] have the same sign (positive or negative), for example, when the values of v0[i] and v1[i] are both positive or negative, the product of v0[i] and v1[i] is positive. In this case, the score represented by the sum of the products for each element increases.
[0024] On the other hand, if v0[i] and v1[i] have different signs, for example, if one of v0[i] and v1[i] is positive and the other is negative, the product of v0[i] and v1[i] is negative. In this case, the score represented by the sum of the products for each element decreases.
[0025] When v0[i] and v1[i] have the same positive or negative sign as v1[i], they are written as v0p[i] and v1p[i]. When v0[i] and v1[i] have a different positive or negative sign from v1[i], they are written as v0m[i] and v1m[i]. In this case, the score shown in formula (1) is calculated as shown in formula (2).
[0026]
[0027] Here, p indicates the number of pairs of v0p[i] and v1p[i] with the same positive or negative sign, and m indicates the number of pairs of v0m[i] and v1m[i] with different positive or negative signs.
[0028] The fact that the score increases when v0[i] and v1[i] have the same positive or negative sign means that the score is expected to increase as the number of p increases. Hereinafter, if the number of p, i.e., the number of pairs of v0p[i] and v1p[i] with the same positive or negative sign, is referred to as the SBM (Sign Bit Match) number, then the larger the SBM number between two feature amounts, the larger the score calculated between the two feature amounts is expected to be.
[0029] FIG. 1 is a diagram illustrating an example of the relationship between the number of SBMs and the score. FIG. 1 shows the results of calculating, for each set of 1 million evaluation images, the score between feature quantities extracted from the evaluation images and the number of SBMs between the feature quantities. The horizontal axis of FIG. 1 represents the number of SBMs, and the vertical axis represents the score. FIG. 1 also shows a graph illustrating the maximum score relative to the number of SBMs and a graph illustrating the minimum score relative to the number of SBMs. Information indicating the maximum score relative to the number of SBMs is referred to as maximum score information, and information indicating the minimum score relative to the number of SBMs is referred to as minimum score information. The maximum score information and the minimum score information may be collectively referred to as score information. The score information may be an example of a statistical relationship between the number of SBMs and the score.
[0030] As shown in FIG. 1, the greater the number of SBMs between two feature amounts, the greater the score calculated between the two feature amounts.
[0031] The number of SBMs between two features is calculated using binarized features obtained by binarizing the two features according to their positive and negative signs. A vector (a sequence of numbers) made up of values binarized according to their positive and negative signs is sometimes referred to as an SB sequence (Sign Bit sequence).
[0032] In this embodiment, the features are binarized, the binarized values are used to calculate the SBM number, and a determination is made to select features of registered users who are expected to have a high score based on the SBM number. Note that, hereinafter, the binarized features may be referred to as binarized features or SB strings. The SBM number may also be referred to as the degree of agreement between two binarized features. The degree of agreement between two binarized features corresponds to an example of an evaluation value indicating the similarity between the two binarized features.
[0033] 2 is a diagram showing an example of the configuration of the information processing device 1 according to this embodiment. The information processing device 1 shown in FIG. 2 includes a communication unit 11, a processor 12, and a storage unit 13.
[0034] The communication unit 11 is an interface that performs transmission processing related to transmitting information to an external device and reception processing related to receiving information from an external device. Here, the external device may be, for example, a device that requests the information processing device 1 to register information about a registrant in face authentication, and / or a device that requests face authentication from the information processing device 1. The communication unit 11 may be divided into a transmission unit that performs transmission processing and a reception unit that performs reception processing. Note that the transmission and reception of information correspond to the transmission and reception of a signal containing information, respectively. Furthermore, the reception of information corresponds to an example of acquiring information.
[0035] When the information processing device 1 registers information about a registrant, the communication unit 11 receives personal information about the registrant (such as identification information, name, and facial image of the registrant). When the information processing device 1 performs face authentication, the communication unit 11 receives feature amounts of the target person for face authentication.
[0036] The processor 12 runs an operating system to control the entire information processing device 1. The processor 12 may be configured as a central processing unit (CPU) including an interface with peripheral devices, a control device, an arithmetic unit, a register, etc. The processor 12 reads programs (program codes), software modules, data, etc. from at least one of the storage unit 13 and the communication unit 11 into memory (omitted in FIG. 2 ) and executes various processes in accordance with these. The program used is a program that causes the information processing device to execute at least some of the operations described in this embodiment. The program may also be transmitted from a network via a telecommunications line.
[0037] The processor 12 processes information related to face authentication and includes a feature conversion unit 121, a calculation unit 122, a threshold setting unit 123, and an encryption processing unit 124.
[0038] The feature transformer 121 acquires a feature and binarizes it to generate a binarized feature. The relationship between a feature and a binarized feature is such that the feature falls within a certain numerical range (e.g., a range of real numbers with a defined upper and lower limit), whereas the binarized feature falls within a numerical range that has only two values narrower than the numerical range of the feature. When the range that includes the feature is referred to as a first numerical range, the feature transformer 121 transforms the feature included in the first numerical range into a transformed value (e.g., a binarized feature) within a numerical range (e.g., two values) narrower than the first numerical range.
[0039] For example, when the information processing device 1 registers information about a registrant, the feature conversion unit 121 binarizes the feature of the registrant to generate binary feature of the registrant, and associates the feature of the registrant, the binary feature of the registrant, and personal information of the registrant, and stores the associated information in the storage unit 13. Furthermore, when the information processing device 1 performs face authentication, the feature conversion unit 121 binarizes the feature of the subject of face authentication to generate binary feature of the subject.
[0040] The calculation unit 122 selects the binary feature of the registrant stored in the storage unit 13. The calculation unit 122 acquires the binary feature of the subject from the feature conversion unit 121 and calculates the degree of match between the binary feature of the selected registrant and the binary feature of the subject. If the degree of match is equal to or greater than a threshold, the calculation unit 122 selects (selects) the feature linked to the binary feature of the selected registrant as a target for score calculation. The calculation unit 122 calculates a score between the feature linked to the binary feature of the registrant selected as a target for score calculation and the feature of the subject. If the degree of match is not equal to or greater than the threshold, the calculation unit 122 selects the next registrant. Note that the term "select" may be replaced with other terms such as "decide" or "set."
[0041] The calculation unit 122 sequentially selects each of the binary features of the registered person stored in the memory unit 13, calculates the degree of match between the binary features of the selected registered person and the binary features of the subject person, and calculates a score between the feature linked to the binary feature of the registered person whose degree of match is equal to or greater than a threshold and the feature of the subject person.
[0042] The calculation unit 122 determines whether the highest score among the calculated scores is equal to or greater than a predetermined score, and if the highest score is equal to or greater than the predetermined score, determines that the registrant corresponding to the highest score corresponds to the target person. This identifies the registrant who corresponds to the target person. The calculation unit 122 transmits information indicating the determination result to an external device via the communication unit 11.
[0043] The information processing device 1 does not need to perform a process of identifying a registrant who corresponds to the subject. In this case, the calculation unit 122 may transmit information indicating the calculated score to an external device via the communication unit 11 without identifying a registrant who corresponds to the subject.
[0044] Furthermore, the information processing device 1 may not need to calculate the score. In this case, the calculation unit 122 may determine a registrant whose degree of match is equal to or greater than a threshold, and then transmit information (e.g., feature amounts) about the determined registrant to an external device via the communication unit 11.
[0045] The threshold setting unit 123 sets a threshold used for comparison with the degree of coincidence in the calculation unit 122. For example, when conditions related to threshold setting are instructed from an external device via the communication unit 11, the threshold setting unit 123 sets the threshold based on the instruction. Note that a method for setting the threshold will be described later. Note that when the threshold is provided by a user or when the threshold is fixed, the information processing device 1 does not need to include the threshold setting unit 123.
[0046] The encryption processing unit 124 encrypts the feature amounts and decrypts the encrypted feature amounts. Note that if feature amount encryption is not required, the information processing device 1 does not need to include the encryption processing unit 124.
[0047] Information related to face authentication is stored in the storage unit 13. For example, the storage unit 13 stores personal information of a registrant (identification information, name, facial image, etc. of the registrant), features extracted from the facial image of the registrant, and binarized features converted by the feature conversion unit 121 in association with each other.
[0048] Note that the configuration of the information processing device 1 shown in Figure 2 is an example, and the present disclosure is not limited thereto. For example, some of the configuration shown in Figure 2 may be omitted, or configurations not shown in Figure 2 may be included in the information processing device 1. Furthermore, in Figure 2, the configuration included in the information processing device 1 may be divided into two or more devices. For example, the threshold setting unit 123 and / or the encryption processing unit 124 of the information processing device 1 may be included in a separate device.
[0049] <Registration of Registrant Information> Next, an example of registration of registrant information will be described. When the information processing device 1 registers information of a registrant, a process of converting the feature amount of the registrant into a binary feature amount and a process of storing the converted binary feature amount are performed.
[0050] For example, when registering information about registrant #k, the feature conversion unit 121 calculates the SB sequence from the feature Pk of registrant #k, where #k is identification information for identifying the registrant, and k is an integer between 1 and N, inclusive, where N represents the total number of registrants.
[0051] The method for generating the SB sequence from the feature quantity Pk is not particularly limited. For example, if the value of the i-th element of the feature quantity Pk is a negative value, the i-th element of the SB sequence is calculated as "1," and if the value of the i-th element of the feature quantity Pk is not a negative value, the i-th element of the SB sequence is calculated as "0." Note that i is an integer between 1 and n, and n indicates the number of dimensions of the feature quantity Pk. This calculation of the elements of the SB sequence is performed for each of the first to n-th elements of the feature quantity Pk, and the first to n-th elements of the SB sequence are calculated.
[0052] For example, if the feature is expressed three-dimensionally and the feature Pk=[-10, 5, -12], the SB sequence for the feature Pk is calculated as [1, 0, 1]. Note that the SB sequence=[1, 0, 1] will be abbreviated as "101" below.
[0053] The feature amount conversion unit 121 associates the feature amount Pk with the SB sequence calculated from the feature amount Pk and stores them in the storage unit 13.
[0054] 3 is a diagram illustrating a first example of the feature amounts of a registrant and the SB sequence. As shown in FIG. 3, the storage unit 13 stores the identification information of the registrant, the feature amounts corresponding to the identification information, and the SB sequence in association with each other.
[0055] When the feature amount is encrypted, the feature amount stored in FIG. 3 may be the encrypted feature amount.
[0056] Because the SB sequence is a binarized feature, the pattern of the SB sequence is limited. When registering information of a registrant, the feature conversion unit 121 may perform grouping based on the SB sequence. For example, if the SB sequences of multiple feature amounts are the same, the multiple feature amounts may be grouped into the same group.
[0057] For example, for two feature quantities Pk and Pj (j is an integer between 1 and N and different from k), if feature quantity Pk = [-10, 5, -12] and feature quantity Pj = [-1, 20, -2], the SB strings of feature quantity Pk and feature quantity Pj are both "101." In this case, feature quantity Pk and feature quantity Pj (i.e., registrant #k and registrant #j) belong to the same group.
[0058] 4 is a diagram showing a second example of the feature amounts of registrants and the SB sequence. In FIG. 4, the feature amounts of registrants #1 to #N, which are the same as those in FIG. 3, are grouped based on the SB sequence.
[0059] As shown in Fig. 4, by performing grouping based on the SB sequence, it is possible to omit the calculation of the number of SBMs for features with the same SB sequence. For example, in the example of Fig. 4, the number of SBMs for feature P2 is the same as the number of SBMs for feature P5, so it is possible to omit the calculation of the number of SBMs for either one of them. This reduces the time required for face recognition.
[0060] In the following description, a feature associated with a certain SB sequence (a certain degree of coincidence) may be referred to as a feature of the SB sequence.
[0061] <Selection (Decision) of Feature Quantities Based on SBM Number> Next, the selection of feature quantities based on the SBM number when facial recognition is performed will be described. As described above, the calculation unit 122 of the information processing device 1 sequentially selects each of the SB sequences (an example of binarized feature quantities) of the registrants stored in the storage unit 13, and calculates an SBM number indicating the degree of match between the SB sequence of the selected registrant and the SB sequence of the subject. Of the SBM numbers calculated in this manner, the feature quantities of the SB sequence corresponding to an SBM number equal to or greater than a threshold are selected as feature quantities to be used for score calculation. Here, the selection of feature quantities to be used for score calculation may also be described as narrowing down feature quantities to be used for score calculation or pruning feature quantities to be used for score calculation.
[0062] For example, when the feature quantity Pα of subject α is [−10, 6, −14], the SB sequence of the feature quantity Pα is “101.” In this case, the SBM number indicating the degree of match between the SB sequence of the feature quantity Pα and the SB sequence “101” is “3.” Similarly, the SB sequences having an SBM number of “2,” indicating the degree of match with the SB sequence of the feature quantity Pα, are “001,” “100,” and “111.” Similarly, the SB sequences having an SBM number of “1,” indicating the degree of match with the SB sequence of the feature quantity Pα, are “000,” “011,” and “110.” Here, when the threshold for the SBM number is “2,” the SB sequences corresponding to SBM numbers equal to or greater than the threshold are “101,” “001,” “100,” and “111,” and therefore the features of the SB sequences “101,” “001,” “100,” and “111” are selected as the features to be used for score calculation. In this case, the feature amounts of SB sequences corresponding to SBM numbers less than the threshold, i.e., "000," "011," "110," and "010," are excluded from the score calculation. Score calculation is not performed for feature amounts excluded from the score calculation. Therefore, the process related to face recognition can be speeded up without calculating scores for the feature amounts of each registered person, and the time required for face recognition can be shortened.
[0063] <Setting the Threshold> As described above, the calculation unit 122 compares the SBM number, which indicates the degree of match between two SB sequences, with a threshold. Hereinafter, the threshold compared with the SBM number will be referred to as the "SBM threshold." The SBM threshold may be fixed in advance or determined using a predetermined method. For example, the predetermined method may be a method that uses the magnitude of the feature score as a condition, or a method that uses the order of the scores as a condition. Below, as setting example 1, a method of setting the threshold using the magnitude of the feature score as a condition will be described, and as setting example 2, a method of setting the threshold using the order of the scores as a condition will be described.
[0064] <Setting Example 1> In setting example 1, when the scores between the feature amounts of each registrant and the feature amounts of the subject are calculated, an SBM threshold is set to select feature amounts of registrants whose scores with the feature amounts of the subject are likely to be equal to or greater than the score threshold Sc. In other words, an SBM threshold is set to exclude feature amounts of registrants who are unlikely to be equal to or greater than the score threshold Sc (or registrants who are extremely unlikely to be equal to or greater than the score threshold Sc) from the score calculation targets.
[0065] 5 is a diagram showing a first example of setting the SBM threshold value. Similar to FIG. 1, FIG. 5 shows the maximum score and the minimum score for the number of SBMs.
[0066] 5, the number of SBMs whose maximum score is the score threshold Sc is determined, and the determined number of SBMs is set as the SBM threshold. With this setting, feature quantities with SBM numbers equal to or greater than the SBM threshold are likely to be equal to or greater than the score threshold Sc. In other words, with this setting, feature quantities of registrants who are unlikely to be equal to or greater than the score threshold Sc (or registrants who are extremely unlikely to be equal to or greater than the score threshold Sc) are excluded from score calculation targets.
[0067] When setting example 1 is applied, for example, when a condition that the score threshold value is equal to or greater than Sc is specified, the threshold setting unit 123 has maximum score information indicating the maximum score for the number of SBMs, as illustrated in Fig. 5. When the score threshold value Sc is specified, the threshold setting unit 123 determines the number of SBMs whose maximum score is the score threshold value Sc based on the maximum score information, and sets the determined number of SBMs as the SBM threshold value.
[0068] <Setting Example 2> In setting example 2, when a score is calculated between the feature amount of each registrant and the feature amount of the target person, an SBM threshold is set to select the feature amount of the registrant whose score is likely to be included in the top T. In other words, an SBM threshold is set to exclude the feature amount of the registrant whose score is unlikely to be included in the top T (or the registrant whose score is extremely unlikely to be included in the top T) from the score calculation targets.
[0069] FIG. 6 is a diagram illustrating an example of the relationship between the number of SBMs and the number of cases. In FIG. 6, the number of SBMs, the number of cases corresponding to the number of SBMs, and the corresponding SB string are associated with each other. Here, the number of cases may be interpreted as the number of features linked to the SB string corresponding to the number of SBMs, or as the number of registered users corresponding to the features linked to the SB string. In the example of FIG. 6, the SB string linked to the feature of the subject is "101".
[0070] Fig. 7 is a diagram showing an example of the distribution of the number of cases based on the relationship shown in Fig. 6. The horizontal axis of Fig. 7 represents the number of cases. In the example of Fig. 7, the number of cases where the SBM number is 1 or more is 22, and the number of cases where the SBM number is 2 or more is 12.
[0071] Here, when T is 10, that is, when an SBM threshold is set that selects features of registered individuals who are expected to be included in the top 10 scores, the number of SBMs corresponding to T=10 is determined to be SBM number=2, as shown in Fig. 7. For this determined SBM number=2, the SBM threshold is set using the correspondence relationship between the maximum score and the minimum score for the SBM number.
[0072] Fig. 8 is a diagram showing a setting example 2 of the SBM threshold value. Similar to Fig. 1, Fig. 8 shows the maximum score and the minimum score for the number of SBMs.
[0073] As described with reference to FIG. 7 , the number of SBMs (in the example of FIG. 7 , the number of SBMs = 2) corresponding to the top T items (10 items in the example of FIG. 7 ) is determined based on the distribution of the number of items. The number of SBMs determined based on the distribution is referred to as a tentative SBM number. The tentative SBM number may be an example of a determination value for the number of SBMs.
[0074] In setting example 2, as shown in FIG. 8 , a score St is determined as the minimum score corresponding to the tentative SBM number. Next, the number of SBMs is determined such that the maximum score is the score St, the minimum score corresponding to the tentative SBM number. Here, the determined number of SBMs is set as the SBM threshold. With this setting, the feature quantities with SBM numbers equal to or greater than the SBM threshold may include the top T scores.
[0075] When setting example 2 is applied, for example, when a condition to select the top T scores is specified, the threshold setting unit 123 has score information indicating the minimum and maximum scores for the number of SBMs, as illustrated in FIG. 8. When the top T scores are specified, the threshold setting unit 123 first determines a provisional number of SBMs corresponding to the top T scores based on the distribution of the number of SBMs (see, for example, FIGS. 6 and 7). The threshold setting unit 123 then determines a minimum score corresponding to the provisional number of SBMs based on the minimum score information, determines a number of SBMs whose maximum score is the determined minimum score based on the maximum score information, and sets the determined number of SBMs as the SBM threshold.
[0076] Here, the reason why setting example 2 is applied will be explained.
[0077] As described above, the larger the number of SBMs, the higher the likelihood that the calculated score will be. Therefore, for example, in order to select feature quantities of registrants whose scores are likely to be in the top T, it is conceivable to select feature quantities of registrants whose SBM numbers are in the top T as targets for score calculation. However, in this selection, there is a possibility that feature quantities of registrants whose SBM numbers are not in the top T but whose scores are likely to be in the top T will be excluded from the targets for score calculation.
[0078] Therefore, in setting example 2, the minimum score is determined among the scores calculated from the features of registered users whose SBM numbers are in the top T, and the SBM number corresponding to the determined minimum score is set as the SBM threshold so as not to exclude registered users with features that may result in a score greater than the determined minimum score.
[0079] 9 is a diagram supplementing the process of SBM threshold setting example 2. FIG. 9 shows the maximum and minimum scores for the number of SBMs, similar to FIG. 8. In addition, FIG. 9 also shows two ranges, range A and range B, and two points, point Pc and point Pd, superimposed on each other.
[0080] 9 , range A is the range from the maximum SBM count to the provisional SBM count, and is the range surrounded by the maximum score and the minimum score. As described above, the provisional SBM count corresponds to the lower limit of the SBM count in the range that includes the feature quantities of registrants with the top T SBM counts. Therefore, range A is the range that corresponds to the feature quantities of registrants with the top T SBM counts. Point Pc shows the relationship between the score and the SBM count calculated from the feature quantities of registrant c, and point Pd shows the relationship between the score and the SBM count calculated from the feature quantities of registrant d.
[0081] 9 shows a relationship in which point Pc is included in range A, while point Pd is not included in range A. This relationship corresponds to the number of SBMs for the feature of registrant c corresponding to point Pc being included in the top T, while the number of SBMs for the feature of registrant d corresponding to point Pd being not included in the top T. On the other hand, as shown in FIG. 9 , the score indicated by point Pd is higher than the score indicated by point Pc, and therefore the possibility that the score calculated from the feature of registrant d corresponding to point Pd will be included in the top T is higher than the possibility that the score calculated from the feature of registrant c corresponding to point Pc will be included in the top T.
[0082] In this way, if features included in range A are selected as features of a registrant whose SBM count is in the top T, and features not included in range A are not selected, the features of a registrant whose SBM count is not in the top T but whose score may be in the top T (for example, registrant d in Figure 9) will be excluded from score calculation.
[0083] Therefore, in setting example 2, the minimum value of the score calculated from the features included in range A as the features of registered users whose SBM counts are in the top T is determined, and the SBM threshold is set so that features that may have a score equal to or greater than the determined minimum value are included in the score calculation.
[0084] As described above, in setting example 2, a tentative SBM number corresponding to the lower limit of the number of SBMs in range A that includes the features of the top T registered users in terms of the number of SBMs is determined, and a minimum score St corresponding to the tentative SBM number is determined. The minimum score St corresponds to the smallest value of the scores calculated from the features included in range A.
[0085] The number of SBMs with a maximum score of St is then determined as the SBM threshold. For example, if the number of SBMs for a certain feature X is equal to or greater than this SBM threshold, the score calculated from the feature X is likely to be equal to or greater than St. In other words, if the number of SBMs for a certain feature X is less than this SBM threshold, the score calculated from the feature X is unlikely to be equal to or greater than St (or the possibility is extremely low).
[0086] By determining the number of SBMs with St as the maximum score as the SBM threshold, feature quantities that may be calculated to have a score equal to or greater than St are included in the score calculation. In the example of FIG. 9 , by determining the number of SBMs with St as the SBM threshold, feature quantities that are included in range B can be included in the score calculation. Note that range B is a range that is not included in range A but includes feature quantities that will result in a calculated score equal to or greater than St. In other words, range B corresponds to a range that includes feature quantities of a registrant (e.g., registrant d in FIG. 9 ) whose number of SBMs is not among the top T but whose score may be among the top T.
[0087] The above-described two setting examples allow the SBM threshold to be appropriately set for selecting feature quantities that are expected to satisfy desired conditions.
[0088] In the two setting examples described above, the condition instruction may be acquired from an external device via the communication unit 11. The two setting examples described above may also be combined. For example, when a condition is specified that the score is equal to or greater than Sc and the top T scores are to be selected, two SBM thresholds may be set based on the two setting examples described above, or either of the two SBM thresholds may be set.
[0089] <Updating the Relationship Between the Number of SBMs and the Score> As described above, score information indicating the maximum score and / or the minimum score for the number of SBMs is used to set the threshold. The score information may change due to changes in the conditions of the space in which face recognition is performed. Changes in the conditions in which face recognition is performed include, for example, changes that occur due to differences in the time of day (daytime, evening, nighttime, etc.) when face recognition is performed and differences in the weather (for example, sunny, cloudy, rainy, etc.) when face recognition is performed. Because such changes occur, the score information indicating the maximum score and / or the minimum score for the number of SBMs may be updated. For example, the score information may be updated by the threshold setting unit 123.
[0090] The score information may be updated based on scores calculated up to that point. The scores calculated up to that point include, for example, a pair of a score calculated in face recognition score calculation and the SBM number corresponding to that score. The scores calculated up to that point may be scores calculated within a predetermined time period prior to the present point in time. The scores calculated up to that point in time are an example of history information indicating the history of score calculation.
[0091] Furthermore, the scores calculated up to now include, for example, a score calculated for a set of feature amounts that was excluded from the calculation target in the face recognition score calculation, and a pair of the calculated score and the SBM number corresponding to that score. For example, the score for a set of feature amounts that was excluded from the calculation target in the face recognition score calculation is calculated during idle time in processing (for example, time when face recognition is not performed).
[0092] The method for updating the score information is not particularly limited. The maximum score and / or the minimum score may be updated from the scores calculated up to that point. For example, the maximum score Smax for the SBM number Xu shown in the score information is updated to the maximum score calculated up to that point for the SBM number Xu. Also, for example, the minimum score Smin for the SBM number Xu shown in the score information is updated to the minimum score calculated up to that point for the SBM number Xu.
[0093] Furthermore, the maximum score and / or the minimum score may be updated based on the statistical properties of the scores calculated up to that point. For example, the frequency of the scores calculated up to that point for the SBM number Xu (e.g., under a normal distribution assumption) is calculated, and the standard deviation σ is calculated from the calculated frequency. Then, for example, the maximum score Smax for the SBM number Xu is updated to a value that is +3 times the standard deviation σ (i.e., 3σ). Also, for example, the minimum score Smin for the SBM number Xu is updated to a value that is -3 times the standard deviation σ (i.e., -3σ).
[0094] If there are SBM numbers for which scores have not been calculated (hereinafter referred to as uncalculated SBM numbers), the maximum and minimum scores for the uncalculated SBM numbers are not updated. The maximum and minimum scores for the uncalculated SBM numbers may be interpolated using the maximum and minimum scores for the other updated SBM numbers.
[0095] For example, an approximate curve showing the relationship between the number of SBMs and the maximum score is calculated from the updated data of the maximum scores for other SBM numbers, and the maximum score for the uncalculated SBM number Xm is determined based on the approximate curve.The maximum score for the uncalculated SBM number Xm is then updated to the maximum score determined based on the approximate curve.Similar to the maximum score, the maximum score for the uncalculated SBM number Xm is also updated to the minimum score determined based on the approximate curve showing the relationship between the SBM number and the minimum score.
[0096] <Example of Processing Flow> Next, a description will be given of the processing flow in the above-mentioned information processing device 1. The following describes a registration process for registering information about a registrant, a threshold setting process for setting an SBM threshold, and a score calculation process for selecting a feature quantity to be used for score calculation and calculating a score, all of which are executed in the information processing device 1.
[0097] 10 is a flowchart showing an example of the flow of registration processing of the information processing device 1 according to this embodiment. The flow shown in Fig. 10 is started, for example, when the information processing device 1 receives information indicating a request to register information of a registrant (hereinafter, a registration request) from an external device.
[0098] The communication unit 11 acquires the feature amount of a registrant from an external device (for example, a device that requests the process of registering information about the registrant) (S101).
[0099] The feature conversion unit 121 binarizes the feature of the registrant (S102). By binarizing the feature, a binarized feature (for example, an SB sequence) is generated.
[0100] The encryption processing unit 124 encrypts the feature amount (S103). Note that if the information processing device 1 does not perform encryption, the process of S103 may be omitted.
[0101] The feature conversion unit 121 stores the feature and the binarized feature in the storage unit 13 (S104). Note that when the process of S103 is executed, the feature to be stored may be an encrypted feature. Then, the flow of FIG. 10 ends.
[0102] By executing the flow of FIG. 10 for each registered person, the feature amount of each registered person is stored in association with the binarized feature amount.
[0103] Fig. 11 is a flowchart showing an example of a flow of threshold setting in the information processing device 1 according to this embodiment. The flow shown in Fig. 11 corresponds to a flow based on the setting example 1 described above. The flow shown in Fig. 11 is started, for example, when the information processing device 1 receives an instruction for a score threshold for determining an SBM threshold from an external device (for example, a terminal that performs face authentication). Note that if the information processing device 1 does not determine a threshold, the flow in Fig. 11 does not need to be executed.
[0104] The communication unit 11 acquires information indicating a score threshold from an external device (for example, a device requesting face authentication) (S201).
[0105] The threshold setting unit 123 determines the degree of match (for example, the number of SBMs) for the acquired score threshold from the maximum score information (S202).
[0106] The threshold setting unit 123 sets the determined degree of match as a threshold (for example, an SBM threshold) (S203), and the flow shown in FIG.
[0107] 12 is a flowchart showing an example of the flow of the score calculation process of the information processing device 1 according to the present embodiment. The flow shown in Fig. 12 is started, for example, when the information processing device 1 receives information indicating a request for score calculation related to face authentication (hereinafter, score calculation request) from an external device (for example, a device requesting face authentication).
[0108] The communication unit 11 acquires features of a person to be subjected to face authentication from an external device (for example, a device requesting face authentication) (S301).
[0109] The feature transforming unit 121 binarizes the feature of the subject (S302). By binarizing the feature, a binarized feature (for example, an SB sequence) is generated.
[0110] The calculation unit 122 selects one of the unselected binary feature amounts from among the binary feature amounts of the registered person stored in the storage unit 13 (S303).
[0111] The calculation unit 122 calculates the degree of coincidence (for example, the number of SBMs) between the binarized feature amount of the subject person converted in S302 and the binarized feature amount of the registered person selected in S303 (S304).
[0112] The calculation unit 122 determines whether the degree of match is equal to or greater than a threshold (for example, an SBM threshold) (S305).
[0113] If the degree of match is not equal to or greater than the threshold value (NO in S305), the process proceeds to S308.
[0114] If the degree of match is equal to or greater than the threshold (YES in S305), the encryption processing unit 124 decrypts the encrypted feature corresponding to the binarized feature of the registrant selected in S303 (S306). Note that if the information processing device 1 does not perform encryption, the process of S306 may be omitted.
[0115] The calculation unit 122 calculates a score between the feature of the subject acquired in S302 and the feature corresponding to the binarized feature of the enrolled person selected in S303 (S307). Note that when the process of S306 is executed, the feature corresponding to the binarized feature of the enrolled person selected in S303 may be a decoded feature. Furthermore, the calculated score may be transmitted to an external device via the communication unit 11. Then, the process of S308 is executed.
[0116] The calculation unit 122 determines whether or not there is an unselected binary feature among the binary feature of the registrant stored in the storage unit 13 (S308).
[0117] If there is an unselected binarized feature (YES in S308), the process of S303 is executed again.
[0118] If there are no unselected binary features (NO in S308), for example, if all of the binary features of the registered person stored in the storage unit 13 have been selected, the flow in FIG. 12 ends.
[0119] 12 , when the degree of match of the binarized features is less than a threshold, score calculation can be omitted, thereby reducing the time required for face authentication. Also, when the encryption processing unit 124 performs encryption, when the degree of match of the binarized features is less than a threshold, decryption of the encrypted features can be omitted, thereby reducing the time required for face authentication.
[0120] In the present embodiment described above, the feature conversion unit 121 converts a feature acquired from a facial image and falling within a first numerical range into a converted value (e.g., a binarized feature) within a second numerical range (e.g., binary) narrower than the first numerical range. The calculation unit 122 calculates an evaluation value (e.g., an SBM number) indicating the similarity between each first converted value (e.g., the SB sequence of the registrant) associated with the first feature of each pre-registered registrant and stored, and a second converted value (e.g., the SB sequence of the subject) associated with the second feature of the subject of facial authentication, and selects the first feature associated with the first converted value whose evaluation value is equal to or greater than a threshold (e.g., an SBM threshold). This configuration converts the feature into a different value based on the feature, and uses the converted value to determine which feature of the registrant is expected to have a high score. This allows the score calculation target to be limited to the feature of the registrant expected to have a high score. This speeds up the score calculation process and shortens the time required for facial authentication.
[0121] In the present embodiment, an example of binarization has been described as an example of converting a feature into another value based on the feature, but the present disclosure is not limited to this. For example, the feature may be converted into a value selected from a numerical range narrower than the numerical range that the feature can take. By converting the feature into a value selected from a numerical range narrower than the numerical range that the feature can take, the feature to be used for score calculation can be selected by processing based on the converted value, thereby reducing the time required for face recognition.
[0122] For example, the feature amount may be converted into one of four values. For example, if the feature amount is a positive value and is equal to or greater than a threshold (the threshold is a positive value), the feature amount may be converted into "2," if the feature amount is equal to or greater than 0 and less than the threshold, the feature amount may be converted into "1," if the feature amount is a negative value and the absolute value is equal to or greater than the threshold, the feature amount may be converted into "-2," and if the feature amount is a negative value and the absolute value is less than the threshold, the feature amount may be converted into "-1."
[0123] In this case, the product between the elements of the transformed feature quantities is calculated as one of six values: 4, 2, 1, -1, -2, or -4. When the product between the elements of the transformed feature quantities is calculated for each element and the products of the elements are added, the sum increases according to the score between the feature quantities. Here, the sum corresponds to an example of an evaluation value indicating the similarity between the transformed feature quantities. Here, the sum corresponds to the SBM number (or degree of match) in the binarization example described above. For example, the higher the score between the feature quantities, the higher the sum may be. Therefore, similar to the SBM number in the above-described embodiment, by selecting feature quantities whose sum value is equal to or greater than a threshold, the score calculation targets can be limited to feature quantities of registered users that are expected to have high scores. This can speed up the score calculation process and shorten the time required for face authentication.
[0124] The present disclosure can be realized in software, hardware, or software in conjunction with hardware.
[0125] Each functional block used in the description of the above embodiments may be partially or entirely realized as an LSI, which is an integrated circuit, and each process described in the above embodiments may be partially or entirely controlled by a single LSI or a combination of LSIs. The LSI may be composed of individual chips, or may be composed of a single chip that includes some or all of the functional blocks. The LSI may have data input and output. Depending on the degree of integration, the LSI may also be called an IC, system LSI, super LSI, or ultra LSI.
[0126] The integrated circuit method is not limited to LSI, and may be realized by a dedicated circuit, a general-purpose processor, or a dedicated processor. Also, a field programmable gate array (FPGA) that can be programmed after LSI manufacturing, or a reconfigurable processor that can reconfigure the connections and settings of circuit cells within the LSI, may be used. The present disclosure may be realized as digital processing or analog processing.
[0127] Furthermore, if an integrated circuit technology that can replace LSI emerges due to advances in semiconductor technology or other derivative technologies, it is natural that such technology may be used to integrate functional blocks. The application of biotechnology, etc. is also a possibility.
[0128] The present disclosure may be implemented in any type of apparatus, device, or system (collectively referred to as a communications apparatus) that has a communications function. The communications apparatus may include a radio transceiver and processing / control circuitry. The radio transceiver may include a receiver and a transmitter, or both functions. The radio transceiver (transmitter and receiver) may include a radio frequency (RF) module and one or more antennas. The RF module may include an amplifier, an RF modulator / demodulator, or the like. Non-limiting examples of communication devices include telephones (e.g., cell phones, smartphones), tablets, personal computers (PCs) (e.g., laptops, desktops, notebooks), cameras (e.g., digital still / video cameras), digital players (e.g., digital audio / video players), wearable devices (e.g., wearable cameras, smartwatches, tracking devices), game consoles, digital book readers, telehealth / telemedicine devices, communication-enabled vehicles or mobile transportation (e.g., cars, airplanes, ships), and combinations of the above devices.
[0129] The communication devices are not limited to portable or mobile devices, but also include any kind of non-portable or fixed equipment, devices, and systems, such as smart home devices (such as home appliances, lighting equipment, smart meters or measuring devices, control panels, etc.), vending machines, and any other "things" that may exist on an IoT (Internet of Things) network.
[0130] In recent years, in the field of IoT (Internet of Things) technology, CPS (Cyber Physical Systems) has been attracting attention as a new concept that creates new added value by linking information between physical space and cyberspace. This CPS concept can also be adopted in the above-mentioned embodiment.
[0131] That is, as a basic configuration of a CPS, for example, an edge server located in physical space and a cloud server located in cyberspace can be connected via a network, and processing can be distributed and performed by processors installed on both servers. Here, it is preferable that each piece of processing data generated in the edge server or cloud server is generated on a standardized platform, and the use of such a standardized platform can improve the efficiency of building a system including a variety of sensor groups and IoT application software.
[0132] Communications include data communications via cellular systems, wireless LAN systems, communication satellite systems, and the like, as well as data communications via combinations of these.
[0133] A communications apparatus also includes devices such as controllers and sensors connected or coupled to a communications device that performs the communications functions described in this disclosure, such as controllers and sensors that generate control and data signals used by the communications device to perform the communications functions of the communications apparatus.
[0134] The communication apparatus also includes infrastructure facilities, such as base stations, access points, and any other apparatus, device, or system that communicates with or controls the various apparatuses listed above, but are not limited to these.
[0135] Although various embodiments have been described above with reference to the drawings, it goes without saying that the present disclosure is not limited to such examples. It is clear that a person skilled in the art can conceive of various modifications or alterations within the scope of the claims, and it is understood that these also naturally fall within the technical scope of the present disclosure. Furthermore, the components of the above-described embodiments may be combined in any manner without departing from the spirit of the disclosure.
[0136] Although specific examples of the present disclosure have been described in detail above, these are merely examples and do not limit the scope of the claims. The technology described in the claims includes various modifications and alterations of the specific examples exemplified above.
[0137] An embodiment of the present disclosure is suitable for a face authentication system.
[0138] REFERENCE SIGNS LIST 1 Information processing device 11 Communication unit 12 Processor 13 Storage unit 121 Feature conversion unit 122 Calculation unit 123 Threshold setting unit 124 Encryption processing unit
Claims
1. An information processing device comprising: a feature conversion unit that converts a feature obtained from a facial image and falling within a first numerical range into a conversion value within a second numerical range narrower than the first numerical range; and a calculation unit that calculates an evaluation value indicating the similarity between each first conversion value stored in association with the first feature of each pre-registered person and a second conversion value associated with the second feature of a subject of facial recognition, and selects a first feature associated with a first conversion value for which the evaluation value is equal to or greater than a threshold value.
2. The information processing device of claim 1, further comprising a threshold setting unit that determines the threshold based on a statistical relationship between the evaluation value between the two transformed values obtained by transforming each of the two features and a score indicating the similarity between the two features.
3. The information processing device of claim 2, wherein the statistical relationship indicates a maximum value of the score for the evaluation value, and when a condition that the score is S or greater is specified, the threshold setting unit determines an evaluation value whose maximum value is S in the statistical relationship, and sets the determined evaluation value to the threshold.
4. An information processing device as described in claim 2 or 3, wherein the threshold setting unit updates the statistical relationship based on historical information having a pair of the score calculated by the calculation unit and the evaluation value between the two features that were the subject of the score calculation.
5. The information processing device according to claim 4, wherein the threshold setting unit creates an approximation curve based on the history information, and updates a maximum value of the score included in the statistical relationship based on the approximation curve.
6. The information processing device of claim 2, wherein the statistical relationship indicates the maximum value and minimum value of the score for the evaluation value, and the threshold setting unit, when a condition to select the top T scores is specified, determines a judgment value of the evaluation value that includes at least the T features of the registered person when the T features are selected in order from the largest evaluation value, sets the minimum value of the score for which the evaluation value corresponds to the judgment value in the statistical relationship as a provisional score, determines an evaluation value for which the maximum value of the score corresponds to the provisional score, and sets the determined evaluation value to the threshold.
7. The information processing device according to claim 6, wherein the threshold setting unit updates the statistical relationship based on historical information having a pair of the score calculated by the calculation unit and the evaluation value between the two features that were the subject of the score calculation.
8. The information processing device according to claim 7, wherein the threshold setting unit creates an approximation curve based on the history information, and updates a maximum value and / or a minimum value of the score included in the statistical relationship based on the approximation curve.
9. The information processing device according to claim 1, further comprising an encryption processing unit that encrypts the features and decrypts the encrypted features, wherein the encryption processing unit encrypts the first features obtained from each of the registered individuals and decrypts the first features determined by the calculation unit.
10. An information processing method in which an information processing device converts features obtained from a facial image and falling within a first numerical range into conversion values within a second numerical range narrower than the first numerical range, calculates an evaluation value indicating the similarity between each first conversion value stored in association with the first feature of each pre-registered person and a second conversion value associated with the second feature of the subject of facial recognition, and selects the first feature associated with the first conversion value for which the evaluation value is equal to or greater than a threshold.
11. A program that causes an information processing device to execute the following process: converting features obtained from a facial image and falling within a first numerical range into conversion values within a second numerical range narrower than the first numerical range; calculating, for each first conversion value stored in association with the first feature of each pre-registered person, an evaluation value indicating the similarity between the first conversion value and a second conversion value associated with the second feature of the subject of facial recognition; and selecting a first feature associated with a first conversion value for which the evaluation value is equal to or greater than a threshold value.
Citation Information
Patent Citations
Image processor, image processing method, computer program, and storage medium
JP2009211554A
Image search device and image search method
JP2020173640A
Image retrieval method, image retrieval program, and image registration method
WO2010101186A1
