Palm vein recognition model construction method, device, electronic device and storage medium
By adjusting the grayscale interval and extracting edge features of the palm vein diagram, combined with the parameter adjustment of the pooling and identification generation model, the problem of high resource consumption in the existing technology is solved, and efficient and accurate palm vein recognition is achieved.
Patent Information
- Application Number
- CN202411202190.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-29
- Publication Date
- 2025-08-05
- Estimated Expiration
- 2044-08-29
AI Technical Summary
The existing palm vein recognition technology requires a lot of software and hardware resources, and miniaturization and miniaturization are difficult. The construction of the identification model requires massive samples and a long training cycle.
By acquiring multiple palm vein diagrams, greyscale interval adjustment and edge feature extraction, edge feature maps are obtained, and then pooling is performed according to the pooling degree parameters, and identification codes are assigned to the pooling data blocks. Finally, sub-data blocks are extracted from the pooling data block and input into the identification generation model, adjusting the model parameters until the deviation is less than the threshold, and a palm vein recognition model is constructed.
Reliance on intelligent algorithms is reduced, the demand for software and hardware platforms is reduced, identification efficiency and accuracy are improved, and it is easy to miniaturize and promote.
Smart Images

Figure CN118968573B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of palm vein data recognition, and in particular to a palm vein recognition model construction method, device, electronic equipment and storage medium. Background Art
[0002] Palm vein recognition technology is a next-generation biometric identification technology that identifies a hidden biometric characteristic within the human body—the vein information. Palm vein recognition utilizes the near-infrared light absorption properties of hemoglobin in human blood to capture palm vein images. Using algorithms such as positioning, enhancement, and feature extraction, it extracts characteristic values to verify personal identity, effectively replacing barcodes, cards, coins, and ID cards.
[0003] Palm vein recognition technology offers many unique advantages. First, the vein pattern, the network of blood vessels beneath the skin, is nearly invisible to the naked eye under natural lighting and can only be detected from within the body using infrared illumination. This makes it extremely difficult to steal or forge finger vein information, significantly enhancing the security of the technology. Second, palm vein recognition technology is an endogenous physiological feature that does not wear out, offering high stability and long-term availability. Furthermore, it features contactless recognition, meaning the palm does not need to come into contact with the device for identification, making it both hygienic and convenient.
[0004] Currently, palm vein recognition technology mostly uses intelligent algorithms (such as artificial neural networks and support vector machines) trained on massive samples to generate recognition models. The disadvantages of this recognition technology are that building the recognition model requires a massive number of samples and a long training and validation cycle, resulting in significant initial investment. The intelligent algorithms underlying the recognition model are also dependent on the operating system, software platform, and hardware, requiring significant investment in both hardware and software. This makes miniaturization and micromanufacturing difficult, hindering future adoption.
[0005] Based on this, it is necessary to develop and design a palm vein recognition model construction method. Summary of the Invention
[0006] The embodiments of the present invention provide a palm vein recognition model construction method, device, electronic device and storage medium, which are used to solve the problem in the prior art that palm vein recognition requires a large amount of software resources or hardware resources.
[0007] In a first aspect, an embodiment of the present invention provides a method for constructing a palm vein recognition model, comprising:
[0008] Acquire multiple palm vein maps;
[0009] performing grayscale interval adjustment and edge feature extraction on the multiple palm vein images to obtain multiple edge feature images, wherein each edge feature image corresponds to a palm vein image;
[0010] Pooling each edge feature map according to the first pooling degree parameter, and assigning an identification code to a pooled data block obtained by pooling according to the palm corresponding to the palm vein map, wherein pooled data blocks corresponding to the same palm correspond to the same identification code;
[0011] Multiple sub-data blocks are extracted from the pooled data block and input into the identification generation model. According to the deviation between the identification generated by the model and the identification of the pooled data block, the parameters of the identification generation model are adjusted until the deviation is less than a threshold, thereby obtaining a palm vein recognition model.
[0012] In one possible implementation, performing grayscale interval adjustment and edge feature extraction on the multiple palm vein images to obtain multiple edge feature images includes:
[0013] For each of the plurality of palm vein maps, the following steps are performed respectively:
[0014] Acquire a reference queue and a plurality of pixel value intervals, wherein each queue element of the reference queue corresponds to a pixel value interval;
[0015] Arrange multiple pixel values in the palm vein image according to the size of the values to obtain a pixel value queue;
[0016] extracting pixel values from the pixel value queue according to the reference queue to construct a plurality of pixel sets, wherein each pixel set corresponds to a queue element of the reference queue;
[0017] According to the plurality of pixel sets and the plurality of pixel value intervals, adjusting the grayscale intervals of the pixels in the palm vein image to obtain a grayscale image;
[0018] The edge of the grayscale image is extracted using a difference method to obtain an edge feature map.
[0019] In one possible implementation, adjusting the grayscale intervals of pixels in the palm vein image according to the multiple pixel sets and the multiple pixel value intervals to obtain a grayscale image includes:
[0020] According to a first formula, the multiple pixel sets, and the multiple pixel value intervals, grayscale interval adjustment is performed on the pixels in the palm vein image to obtain a grayscale image, wherein the first formula is:
[0021]
[0022] Where, is the pixel value after grayscale interval adjustment, is the pixel value before grayscale interval adjustment, is the minimum pixel value in the pixel set, is the maximum pixel value in the pixel set, is the upper limit of the pixel value interval, is the lower limit of the pixel value interval;
[0023] The step of extracting edges from the grayscale image using a differential method to obtain an edge feature map includes:
[0024] For each pixel in the edge feature map, the pixel value is replaced by the minimum pixel value within a radius of 1 pixel to obtain an edge convex map;
[0025] The edge of the grayscale image is extracted according to a second formula, the grayscale image, and the edge convexification image, wherein the second formula is:
[0026]
[0027] Where, is the pixel value of the edge feature map, is the pixel value of the edge convex image, is the pixel value of the grayscale image.
[0028] In one possible implementation, pooling each edge feature map according to the first pooling degree parameter includes:
[0029] For each edge feature map, perform the following steps:
[0030] Obtaining a first pooling degree parameter, wherein the first pooling degree parameter includes: a pooling dimension and an offset;
[0031] Taking out the data block of the pooling dimension from the edge feature map according to the first position as the data block to be processed;
[0032] Taking the maximum value or average value of multiple data in the data block to be processed as pooled data;
[0033] Using the first position as an index, adding the pooled data to a pooled data block;
[0034] If the traversal of the edge feature map is not completed, the first position is offset according to the offset, and the process jumps to the step of taking out the data block of the pooling dimension from the edge feature map according to the first position as the data block to be processed.
[0035] In one possible implementation, the identification generation model is:
[0036]
[0037] Where, To identify the output, is the total number of rows of intermediate nodes, For the The weight coefficients of the output nodes, For the Rank The first column node weight coefficients, For the Rank The output of the middle node of the column, For the input variables, is the total number of columns of intermediate nodes, is a natural constant, is the bias coefficient.
[0038] In one possible implementation, extracting multiple sub-data blocks from the pooled data block and inputting them into the identifier generation model includes:
[0039] For each pooled data block, perform the following steps:
[0040] Get the segmentation dimension and number of sub-blocks;
[0041] Splitting the pooled data block into a plurality of sub-data blocks according to the splitting dimension;
[0042] Randomly selecting the number of sub-data blocks from the multiple sub-data blocks as multiple sub-data blocks to be processed;
[0043] The multiple sub-data blocks to be processed are input into the identification generation model.
[0044] In one possible implementation, adjusting parameters of the identifier generation model according to a deviation between the identifier generated by the model and the identifier of the pooled data block until the deviation is less than a threshold includes:
[0045] Obtaining a plurality of coefficient arrays, wherein each coefficient array includes data corresponding to a plurality of coefficients in the identification generation model;
[0046] Substituting the plurality of coefficient arrays into the identification generation model respectively to obtain a plurality of identification code indications, wherein each identification code indication corresponds to a coefficient array;
[0047] Determining a plurality of identification deviations according to a target identification code and the plurality of identification code indications, wherein each identification deviation corresponds to a coefficient array, and the target identification code is an identification code of the pooled data block from which the plurality of sub-data blocks are derived;
[0048] If there is a coefficient array with an identification deviation greater than the deviation threshold, three optimal coefficient arrays are selected from the multiple coefficient arrays according to the multiple identification deviations, and the coefficient array greater than the deviation threshold is adjusted according to a third formula and the three optimal coefficient arrays, wherein the third formula is:
[0049]
[0050] Where, For the The first adjusted coefficient array data, For the The first adjusted coefficient array data, 、 、 as well as They are the first distance, the second distance, the third distance and the fourth distance respectively. 、 、 as well as are the first coefficient, the second coefficient, the third coefficient and the fourth coefficient respectively, 、 、 as well as are the optimal coefficient arrays. data, the suboptimal coefficient array data, the third best coefficient array data and the optimal coefficient array of all previous iterations of the current coefficient array individual data;
[0051] If the traversal of all pooled data blocks is not completed, multiple sub-data blocks are extracted from the pooled data block and input into the identification generation model, and the process jumps to the step of determining multiple identification deviations according to the target identification code and the multiple identification code indications;
[0052] If all pooled data blocks are traversed and there are coefficient arrays that have not been adjusted during this round of traversal, the identification generation model with the coefficient arrays that have not been adjusted is substituted as the palm vein recognition model;
[0053] Otherwise, a new round of traversal of the pooled data blocks is started, multiple sub-data blocks are extracted from the traversed pooled data blocks and input into the identification generation model, and the process jumps to the step of determining multiple identification deviations according to the target identification code and the multiple identification code indications.
[0054] In a second aspect, an embodiment of the present invention provides a palm vein recognition model construction device for implementing the palm vein recognition model construction method described in the first aspect or any possible implementation of the first aspect, the palm vein recognition model construction device comprising:
[0055] An image acquisition module, used to acquire multiple palm vein images;
[0056] an edge extraction module, configured to perform grayscale interval adjustment and edge feature extraction on the plurality of palm vein images to obtain a plurality of edge feature images, wherein each edge feature image corresponds to a palm vein image;
[0057] a pooling module, configured to pool each edge feature map according to a first pooling degree parameter, and assign an identification code to a pooled data block obtained by pooling according to the palm corresponding to the palm vein map, wherein pooled data blocks corresponding to the same palm have the same identification code;
[0058] as well as,
[0059] The model construction module is used to extract multiple sub-data blocks from the pooled data block and input them into the identification generation model. According to the deviation between the identification generated by the model and the identification of the pooled data block, the parameters of the identification generation model are adjusted until the deviation is less than a threshold, thereby obtaining a palm vein recognition model.
[0060] In a third aspect, an embodiment of the present invention provides an electronic device comprising a memory and a processor, wherein the memory stores a computer program that can be run on the processor, and when the processor executes the computer program, it implements the steps of the method described in the first aspect or any possible implementation of the first aspect.
[0061] In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the steps of the method described in the first aspect or any possible implementation of the first aspect.
[0062] Compared with the prior art, the embodiments of the present invention have the following beneficial effects:
[0063] An embodiment of the present invention discloses a method for constructing a palm vein recognition model, which first obtains multiple palm vein maps; then performs grayscale interval adjustment and edge feature extraction on the multiple palm vein maps to obtain multiple edge feature maps, wherein each edge feature map corresponds to a palm vein map; then, each edge feature map is pooled according to a first pooling degree parameter, and an identification code is assigned to a pooled data block obtained by pooling according to the palm corresponding to the palm vein map, wherein pooled data blocks corresponding to the same palm correspond to the same identification code; finally, multiple sub-data blocks are extracted from the pooled data block and input into an identification generation model, and the parameters of the identification generation model are adjusted according to the deviation between the identification generated by the model and the identification of the pooled data block until the deviation is less than a threshold, thereby obtaining a palm vein recognition model. In an embodiment of the present invention, edge features are extracted after grayscaling the palm vein image. Compared to edge features extracted by binarization, these features contain richer feature content, thereby improving recognition rates. In an embodiment of the present invention, after pooling, a portion of the data in the pooled data block is extracted and fed into the model, where identification codes are fitted to the model. This allows recognition to be completed by acquiring only a small portion of the palm vein image when the model is applied, thereby improving recognition efficiency and accuracy. In an embodiment of the present invention, the palm vein image is used to generate multiple sub-data blocks to determine model parameters, eliminating the need for intelligent algorithms. Compared to traditional intelligent algorithms, this method requires fewer samples, has lower reliance on software and hardware platforms, consumes fewer resources in both early modeling and later use, and is therefore easier to use and promote. BRIEF DESCRIPTION OF THE DRAWINGS
[0064] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments or descriptions of the prior art. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0065] Figure 1 is a flow chart of a palm vein recognition model construction method provided by an embodiment of the present invention;
[0066] Figure 2 This is a schematic diagram of the edge convexification image construction process provided by an embodiment of the present invention;
[0067] Figure 3 It is a schematic diagram of the pooling process provided by an embodiment of the present invention;
[0068] Figure 4 This is a functional block diagram of a palm vein recognition model construction device provided by an embodiment of the present invention;
[0069] Figure 5 This is a functional block diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0070] In the following description, specific details such as particular system structures and techniques are provided for purposes of illustration, not limitation, to facilitate a thorough understanding of the embodiments of the present invention. However, it will be apparent to those skilled in the art that the present invention may be practiced in alternative embodiments without these specific details. In other instances, detailed descriptions of well-known systems, devices, and methods are omitted so as not to obscure the description of the present invention with unnecessary detail.
[0071] In order to make the objectives, technical solutions and advantages of the present invention more clear, the following will be described through specific implementation methods in conjunction with the accompanying drawings.
[0072] The following is a detailed description of an embodiment of the present invention. This example is implemented based on the technical solution of the present invention, and provides a detailed implementation method and specific operation process, but the protection scope of the present invention is not limited to the following embodiment.
[0073] Figure 1 This is a flowchart of a palm vein recognition model construction method provided by an embodiment of the present invention.
[0074] like Figure 1 As shown, it shows a flowchart of the implementation method of the palm vein recognition model construction method provided by the embodiment of the present invention, which is detailed as follows:
[0075] In step 101, a plurality of palm vein maps are acquired.
[0076] In step 102, grayscale interval adjustment and edge feature extraction are performed on the multiple palm vein maps to obtain multiple edge feature maps, wherein each edge feature map corresponds to a palm vein map.
[0077] In some embodiments, step 102 includes:
[0078] For each of the plurality of palm vein maps, the following steps are performed respectively:
[0079] Acquire a reference queue and a plurality of pixel value intervals, wherein each queue element of the reference queue corresponds to a pixel value interval;
[0080] Arrange multiple pixel values in the palm vein image according to the size of the values to obtain a pixel value queue;
[0081] extracting pixel values from the pixel value queue according to the reference queue to construct a plurality of pixel sets, wherein each pixel set corresponds to a queue element of the reference queue;
[0082] According to the plurality of pixel sets and the plurality of pixel value intervals, adjusting the grayscale intervals of the pixels in the palm vein image to obtain a grayscale image;
[0083] The edge of the grayscale image is extracted using a difference method to obtain an edge feature map.
[0084] In some embodiments, adjusting the grayscale intervals of pixels in the palm vein image according to the multiple pixel sets and the multiple pixel value intervals to obtain a grayscale image includes:
[0085] According to a first formula, the multiple pixel sets, and the multiple pixel value intervals, grayscale interval adjustment is performed on the pixels in the palm vein image to obtain a grayscale image, wherein the first formula is:
[0086]
[0087] Where, is the pixel value after grayscale interval adjustment, is the pixel value before grayscale interval adjustment, is the minimum pixel value in the pixel set, is the maximum pixel value in the pixel set, is the upper limit of the pixel value interval, is the lower limit of the pixel value interval;
[0088] The step of extracting edges from the grayscale image using a differential method to obtain an edge feature map includes:
[0089] For each pixel in the edge feature map, the pixel value is replaced by the minimum pixel value within a radius of 1 pixel to obtain an edge convex map;
[0090] The edge of the grayscale image is extracted according to a second formula, the grayscale image, and the edge convexification image, wherein the second formula is:
[0091]
[0092] Where, is the pixel value of the edge feature map, is the pixel value of the edge convex image, is the pixel value of the grayscale image.
[0093] For example, as mentioned above, palm vein recognition currently typically involves performing binary edge processing on palm vein images before feeding them into an artificial neural network model. However, this palm vein recognition model requires a large number of samples, a long training cycle, a powerful computing platform, and, in most scenarios, an operating system capable of running the artificial neural network (e.g., Windows). This results in high hardware and system development costs, hindering widespread adoption.
[0094] This invention proposes a solution. Its basic concept is to pool the grayscale image of the palm vein while retaining the grayscale information, reducing the total data dimension. Then, based on the limited pooled data blocks, partially extract the data and feed it into the identification generation model to establish a relationship mapping between the palm vein image and the palm identification code. In other words, it constructs a model that performs multiple classifications based on the palm vein image and generates classification numbers (identification codes). Because the classification model structure and parameters are clear, it has less dependence on software and hardware platforms. Compared with complex algorithms such as artificial neural networks, the classification model structure is more compact and consumes less resources, making it easier to miniaturize and promote.
[0095] To achieve the above objectives, embodiments of the present invention adjust the grayscale intervals of an acquired palm vein image and extract grayscale-based edge features to form an edge feature map. Palm vein image acquisition can be affected by various factors, resulting in variations in overall or local brightness and darkness. Furthermore, because embodiments of the present invention process grayscale images rather than black and white images, image brightness and darkness can affect subsequent data processing results or increase the difficulty of data processing. Therefore, embodiments of the present invention first adjust the grayscale image so that the pixel value distribution conforms to a predetermined distribution pattern. Specifically, all pixels are counted according to predetermined intervals, and the resulting counts are arranged to form a reference queue. For example, from 0 to 255, a pixel value interval is set every 16 intervals, resulting in 16 intervals. A number of pixel values is then determined for each interval (typically referring to the number of pixel values in each interval in a template). These counts are arranged according to the size of the intervals to form a reference queue. In other words, each element of the reference queue corresponds to an interval.
[0096] Regarding the processing of the palm vein map, the pixel values of the palm vein map are first arranged according to size. Then, pixel values of the reference queue number are sequentially extracted from the arranged pixel value queue, and the pixel values in the palm vein map are adjusted with reference to the interval of the reference queue. In one method, the first formula is applied:
[0097]
[0098] Where, is the pixel value after grayscale interval adjustment, is the pixel value before grayscale interval adjustment, is the minimum pixel value in the pixel set, is the maximum pixel value in the pixel set, is the upper limit of the pixel value interval, is the lower limit of the pixel value range.
[0099] In this way, the distribution interval of the pixel values of the palm vein image is unified with the target interval. On this basis, the embodiment of the present invention further extracts the edge of the palm vein grayscale image through a difference algorithm to obtain an edge feature map.
[0100] One way to extract edge feature maps using the differential method is to search for the minimum value of pixels within the radius of 1 pixel for each pixel in the edge feature map, and replace the current value with the minimum value to obtain an edge convex map. For example, Figure 2 In the figure shown, the pixel 201 at the center has a radius of 1 pixel and a total of 8 adjacent pixels. The pixel above it has the smallest value (132). At this time, the pixel value of this pixel is replaced by the pixel value of the pixel above it. After all pixels are processed as described above, an edge convex image is obtained. This convex image and the palm vein grayscale image are subjected to edge extraction using the second formula to obtain an edge feature map. The second formula is:
[0101]
[0102] Where, is the pixel value of the edge feature map, is the pixel value of the edge convex image, is the pixel value of the grayscale image.
[0103] In step 103, each edge feature map is pooled according to the first pooling degree parameter, and an identification code is assigned to the pooled data block obtained by pooling according to the palm corresponding to the palm vein map, wherein the pooled data blocks corresponding to the same palm correspond to the same identification code.
[0104] In some embodiments, step 103 includes:
[0105] For each edge feature map, perform the following steps:
[0106] Obtaining a first pooling degree parameter, wherein the first pooling degree parameter includes: a pooling dimension and an offset;
[0107] Taking out the data block of the pooling dimension from the edge feature map according to the first position as the data block to be processed;
[0108] Taking the maximum value or average value of multiple data in the data block to be processed as pooled data;
[0109] Using the first position as an index, adding the pooled data to a pooled data block;
[0110] If the traversal of the edge feature map is not completed, the first position is offset according to the offset, and the process jumps to the step of taking out the data block of the pooling dimension from the edge feature map according to the first position as the data block to be processed.
[0111] Exemplarily, in order to refine the key features in the edge feature map, reduce the number of parameters input into the model, and reduce the complexity of the model, an embodiment of the present invention performs pooling on the edge feature map after obtaining the edge feature map.
[0112] like Figure 3 As shown, one pooling method is to extract data blocks 301 (data blocks composed of pixel values) from the edge feature map according to a preset dimension, and then place the maximum value in the extracted data block 301 or the average value of the entire data block 301 into a pooled data block 302 according to its position in the edge feature map. In this way, each edge feature map extracts a pooled data block 302. On this basis, an identification code is assigned to each pooled data block. In practice, because the pooled data blocks are derived from the palm vein map, and a palm usually corresponds to multiple palm vein maps (multiple acquisitions are performed on a palm), there may be a situation where multiple pooled data blocks correspond to one identification code. It should be noted that the correspondence between palms and identification codes is unique, that is, different palms correspond to different identification codes.
[0113] In terms of setting the identification code, there are usually large differences in the identification codes corresponding to different palms; for example, in one application scenario, the identification code is a 9-digit identification code, of which the last three digits are the same, for example, the last three digits are all 0, and different palms are distinguished by the first 6 digits. The advantage of this is that when the identification code generation model is constructed later, it is not necessary to generate a strict identification code, and a certain amount of error tolerance is left. For example, when the model is built, when the user uses the model, the identification code recognized by the model through the palm vein map is xxxxxx200. Since the distinction interval between two adjacent identification codes is 1000, it can be seen that the error is 200, which is within the acceptable range. Then the first 6 digits of the identification code are taken as the identification code indication output by the model for identity confirmation; if it is xxxxxx600, it obviously means that the error is too large, the recognition fails, and the palm vein map needs to be obtained again.
[0114] That is to say, in terms of identification code setting, the embodiment of the present invention sets different identification codes for different palms and reserves an error identification area, so that the identification code indication output by the usage model can be compared with the preset identification code to determine the recognition error.
[0115] In step 104, multiple sub-data blocks are extracted from the pooled data block and input into the identification generation model. According to the deviation between the identification generated by the model and the identification of the pooled data block, the parameters of the identification generation model are adjusted until the deviation is less than a threshold, thereby obtaining a palm vein recognition model.
[0116] In some embodiments, the identification generation model is:
[0117]
[0118] Where, To identify the output, is the total number of rows of intermediate nodes, For the The weight coefficients of the output nodes, For the Rank The first column node weight coefficients, For the Rank The output of the middle node of the column, For the input variables, is the total number of columns of intermediate nodes, is a natural constant, is the bias coefficient.
[0119] In some embodiments, extracting a plurality of sub-data blocks from the pooled data block and inputting them into the identifier generation model includes:
[0120] For each pooled data block, perform the following steps:
[0121] Get the segmentation dimension and number of sub-blocks;
[0122] Splitting the pooled data block into a plurality of sub-data blocks according to the splitting dimension;
[0123] Randomly selecting the number of sub-data blocks from the multiple sub-data blocks as multiple sub-data blocks to be processed;
[0124] The multiple sub-data blocks to be processed are input into the identification generation model.
[0125] In some embodiments, adjusting parameters of the identifier generation model according to a deviation between the identifier generated by the model and the identifier of the pooled data block until the deviation is less than a threshold comprises:
[0126] Obtaining a plurality of coefficient arrays, wherein each coefficient array includes data corresponding to a plurality of coefficients in the identification generation model;
[0127] Substituting the plurality of coefficient arrays into the identification generation model respectively to obtain a plurality of identification code indications, wherein each identification code indication corresponds to a coefficient array;
[0128] Determining a plurality of identification deviations according to a target identification code and the plurality of identification code indications, wherein each identification deviation corresponds to a coefficient array, and the target identification code is an identification code of the pooled data block from which the plurality of sub-data blocks are derived;
[0129] If there is a coefficient array with an identification deviation greater than the deviation threshold, three optimal coefficient arrays are selected from the multiple coefficient arrays according to the multiple identification deviations, and the coefficient array greater than the deviation threshold is adjusted according to a third formula and the three optimal coefficient arrays, wherein the third formula is:
[0130]
[0131] Where, For the The first adjusted coefficient array data, For the The first adjusted coefficient array data, 、 、 as well as They are the first distance, the second distance, the third distance and the fourth distance respectively. 、 、 as well as are the first coefficient, the second coefficient, the third coefficient and the fourth coefficient respectively, 、 、 as well as are the optimal coefficient arrays. data, the suboptimal coefficient array data, the third best coefficient array data and the optimal coefficient array of all previous iterations of the current coefficient array individual data;
[0132] If the traversal of all pooled data blocks is not completed, multiple sub-data blocks are extracted from the pooled data block and input into the identification generation model, and the process jumps to the step of determining multiple identification deviations according to the target identification code and the multiple identification code indications;
[0133] If all pooled data blocks are traversed and there are coefficient arrays that have not been adjusted during this round of traversal, the identification generation model with the coefficient arrays that have not been adjusted is substituted as the palm vein recognition model;
[0134] Otherwise, a new round of traversal of the pooled data blocks is started, multiple sub-data blocks are extracted from the traversed pooled data blocks and input into the identification generation model, and the process jumps to the step of determining multiple identification deviations according to the target identification code and the multiple identification code indications.
[0135] Exemplarily, the embodiment of the present invention is to divide the pooled data block of the palm vein map into multiple sub-blocks, select some sub-blocks from the multiple sub-blocks and input them into the identification generation model, and adjust the parameters of the model according to the deviation of the model output and the identification code corresponding to the pooled data block. In the embodiment of the present invention, the identification generation model is:
[0136]
[0137] Where, To identify the output, is the total number of rows of intermediate nodes, For the The weight coefficients of the output nodes, For the Rank The first column node weight coefficients, For the Rank The output of the middle node of the column, For the input variables, is the total number of columns of intermediate nodes, is a natural constant, is the bias coefficient.
[0138] Based on this model, an embodiment of the present invention randomly selects several of the multiple sub-blocks obtained by segmenting the pooled data block and inputs them into the model. After that, multiple coefficient arrays are respectively substituted into the model. That is, models with different coefficient arrays are obtained, and the identification code indications output by these models are compared with the identification code of the pooled data block to obtain the identification deviation. The three best coefficient arrays are selected, and the other coefficient arrays are adjusted using the third formula. The third formula is:
[0139]
[0140] Where, For the The first adjusted coefficient array data, For the The first adjusted coefficient array data, 、 、 as well as They are the first distance, the second distance, the third distance and the fourth distance respectively. 、 、 as well as are the first coefficient, the second coefficient, the third coefficient and the fourth coefficient respectively, 、 、 as well as are the optimal coefficient arrays. data, the suboptimal coefficient array data, the third best coefficient array data and the optimal coefficient array of all previous iterations of the current coefficient array data.
[0141] After the above adjustment, multiple sub-data blocks are extracted from the next pooled data block and input into the model to perform the above iteration. If, after traversing the pooled data blocks, there is a coefficient array that always makes the deviation less than the deviation threshold, then the iteration is successful. At this time, this array is used as the coefficient of the model and substituted into the model to obtain the palm vein recognition model.
[0142] In some scenarios, after multiple rounds of iterations, satisfactory iterative results may not be obtained. In this case, it is necessary to adjust the number of sub-data blocks input to the model and the structure of the identification generation model. In other scenarios, by reducing the pooling depth, the dimension of the pooled data block is increased, and the number of parameters input to the model is adjusted to realize model construction.
[0143] In the application of the model, when a new palm vein map needs to be entered, the pooled data of the palm vein map is fed into the palm vein recognition model. At this time, the model will give an identification code (in the aforementioned example, the last three digits of the identification code will be set to zero), and the system will register this identification code. After the palm is entered, when identification is required, the pooled data of the obtained palm vein map is fed into the palm vein recognition model, and the model will give an identification code indication. This indication will be matched with the system's identification code (in the aforementioned example, the first 6 digits are matched), and when the match is successful, the accuracy will be verified using the last three digits. When the verification is successful, identity confirmation is performed, otherwise, a request will be made to obtain the palm vein map again. In other words, by obtaining the identification code indication, double confirmation of identity authentication and verification accuracy is completed, and both security and reliability are relatively high.
[0144] The present invention provides a palm vein recognition model construction method embodiment, which first obtains multiple palm vein maps; then adjusts the grayscale intervals and extracts edge features from the multiple palm vein maps to obtain multiple edge feature maps, wherein each edge feature map corresponds to a palm vein map; then, pools each edge feature map according to a first pooling degree parameter, and assigns an identification code to the pooled data block obtained by pooling according to the palm corresponding to the palm vein map, wherein the pooled data blocks corresponding to the same palm correspond to the same identification code; finally, extracts multiple sub-data blocks from the pooled data block and inputs them into an identification generation model; and adjusts the parameters of the identification generation model according to the deviation between the identification generated by the model and the identification of the pooled data block until the deviation is less than a threshold, thereby obtaining a palm vein recognition model. In the embodiment of the present invention, the palm vein map is grayscaled and then edge features are extracted. Compared with the edge features extracted by binary processing, the edge features contain richer feature content, which facilitates improving the recognition rate; in the embodiment of the present invention, after pooling, a portion of the data in the pooled data block is extracted and input into the model, and the model is fitted with the identification code. This allows only a small portion of the palm vein map to be acquired when the model is applied to complete recognition, thereby improving recognition efficiency and accuracy. The implementation method of the present invention does not require an intelligent algorithm. Instead, the model parameters are determined by generating multiple sub-data blocks through a palm vein map. Compared with traditional intelligent algorithms, it requires fewer samples, has low dependence on software and hardware platforms, consumes less resources in both early modeling and later use, and is easy to use and promote.
[0145] It should be understood that the size of the serial numbers of each step in the above embodiment does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiment of the present invention.
[0146] The following is an embodiment of the device of the present invention. For details not described in detail, please refer to the corresponding method embodiment described above.
[0147] Figure 4 This is a functional block diagram of a palm vein recognition model building device provided by an embodiment of the present invention, referring to Figure 4 The palm vein recognition model construction device includes: an image acquisition module 401, an edge extraction module 402, a pooling module 403 and a model construction module 404, wherein:
[0148] Image acquisition module 401, used to acquire multiple palm vein images;
[0149] an edge extraction module 402 for performing grayscale interval adjustment and edge feature extraction on the plurality of palm vein images to obtain a plurality of edge feature images, wherein each edge feature image corresponds to a palm vein image;
[0150] a pooling module 403 configured to pool each edge feature map according to a first pooling degree parameter, and assign an identification code to a pooled data block obtained by pooling according to the palm corresponding to the palm vein map, wherein pooled data blocks corresponding to the same palm have the same identification code;
[0151] as well as,
[0152] The model construction module 404 is used to extract multiple sub-data blocks from the pooled data block and input them into the identification generation model. According to the deviation between the identification generated by the model and the identification of the pooled data block, the parameters of the identification generation model are adjusted until the deviation is less than a threshold, thereby obtaining a palm vein recognition model.
[0153] Figure 5 : is a functional block diagram of an electronic device provided by an embodiment of the present invention. Figure 5 As shown, the electronic device 5 of this embodiment includes: a processor 500 and a memory 501, wherein the memory 501 stores a computer program 502 that can be run on the processor 500. When the processor 500 executes the computer program 502, the steps in the above-mentioned palm vein recognition model construction method and embodiment are implemented, such as Figure 1 Steps 101 to 104 are shown.
[0154] Illustratively, the computer program 502 may be divided into one or more modules / units, and the one or more modules / units are stored in the memory 501 and executed by the processor 500 to implement the present invention.
[0155] The electronic device 5 may be a computing device such as a desktop computer, a notebook, a PDA, or a cloud server. The electronic device 5 may include, but is not limited to, a processor 500 and a memory 501. Those skilled in the art will understand that Figure 5 It is only an example of the electronic device 5 and does not constitute a limitation of the electronic device 5. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the electronic device 5 may also include input and output devices, network access devices, buses, etc.
[0156] The processor 500 may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.
[0157] The memory 501 can be an internal storage unit of the electronic device 5, such as a hard drive or memory of the electronic device 5. The memory 501 can also be an external storage device of the electronic device 5, such as a plug-in hard drive, a Smart Media Card (SMC), a Secure Digital (SD) card, a flash memory card, etc. equipped on the electronic device 5. Furthermore, the memory 501 can include both an internal storage unit of the electronic device 5 and an external storage device. The memory 501 is used to store the computer program 502 and other programs and data required by the electronic device 5. The memory 501 can also be used to temporarily store data that has been output or is about to be output.
[0158] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the implementation method can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method implementation method, and will not be repeated here.
[0159] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0160] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.
[0161] In the embodiments provided by the present invention, it should be understood that the disclosed devices / electronic devices and methods can be implemented in other ways. For example, the device / electronic device embodiments described above are merely illustrative. For example, the division of the modules or units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0162] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of this embodiment.
[0163] In addition, the functional units in various embodiments of the present invention may be integrated into a single processing unit, each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0164] If the integrated module / unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present invention can also implement all or part of the processes in the above-mentioned method embodiments by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When executed by a processor, the computer program can implement the steps of the above-mentioned method and device embodiments. The computer program includes computer program code, which can be in source code form, object code form, executable file, or some intermediate form. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording medium, USB flash drive, mobile hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signal, telecommunication signal, and software distribution medium.
[0165] The above-described embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention, and should all be included in the scope of protection of the present invention.
Claims
1. A palm vein recognition model construction method, characterized in that: include: Acquire multiple palm vein maps; performing grayscale interval adjustment and edge feature extraction on the multiple palm vein images to obtain multiple edge feature images, wherein each edge feature image corresponds to a palm vein image; Pooling each edge feature map according to the first pooling degree parameter, and assigning an identification code to a pooled data block obtained by pooling according to the palm corresponding to the palm vein map, wherein pooled data blocks corresponding to the same palm correspond to the same identification code; Extracting multiple sub-data blocks from the pooled data block and inputting them into an identifier generation model, adjusting the parameters of the identifier generation model according to the deviation between the identifier generated by the model and the identifier of the pooled data block until the deviation is less than a threshold, thereby obtaining a palm vein recognition model; The identification generation model is: Where, To identify the output, is the total number of rows of intermediate nodes, For the The weight coefficients of the output nodes, For the Rank The first column node weight coefficients, For the Rank The output of the middle node of the column, For the input variables, is the total number of columns of intermediate nodes, is a natural constant, is the bias coefficient The step of extracting a plurality of sub-data blocks from the pooled data block and inputting the sub-data blocks into the identifier generation model includes: For each pooled data block, perform the following steps: Get the segmentation dimension and number of sub-blocks; Splitting the pooled data block into a plurality of sub-data blocks according to the splitting dimension; Randomly selecting the number of sub-data blocks from the multiple sub-data blocks as multiple sub-data blocks to be processed; inputting the plurality of sub-data blocks to be processed into the identification generation model; The step of adjusting the parameters of the identifier generation model according to the deviation between the identifier generated by the model and the identifier of the pooled data block until the deviation is less than a threshold comprises: Obtaining a plurality of coefficient arrays, wherein each coefficient array includes data corresponding to a plurality of coefficients in the identification generation model; Substituting the plurality of coefficient arrays into the identification generation model respectively to obtain a plurality of identification code indications, wherein each identification code indication corresponds to a coefficient array; Determining a plurality of identification deviations according to a target identification code and the plurality of identification code indications, wherein each identification deviation corresponds to a coefficient array, and the target identification code is an identification code of the pooled data block from which the plurality of sub-data blocks are derived; If there is a coefficient array with an identification deviation greater than the deviation threshold, three optimal coefficient arrays are selected from the multiple coefficient arrays according to the multiple identification deviations, and the coefficient array greater than the deviation threshold is adjusted according to a third formula and the three optimal coefficient arrays, wherein the third formula is: Where, For the The first adjusted coefficient array data, For the The first adjusted coefficient array data, 、 、 as well as They are the first distance, the second distance, the third distance and the fourth distance respectively. 、 、 as well as are the first coefficient, the second coefficient, the third coefficient and the fourth coefficient respectively, 、 、 as well as are the optimal coefficient arrays. data, the suboptimal coefficient array data, the third best coefficient array data and the optimal coefficient array of all previous iterations of the current coefficient array individual data; If the traversal of all pooled data blocks is not completed, multiple sub-data blocks are extracted from the pooled data block and input into the identification generation model, and the process jumps to the step of determining multiple identification deviations according to the target identification code and the multiple identification code indications; If all pooled data blocks are traversed and there are coefficient arrays that have not been adjusted during this round of traversal, the identification generation model with the coefficient arrays that have not been adjusted is substituted as the palm vein recognition model; Otherwise, a new round of traversal of the pooled data blocks is started, multiple sub-data blocks are extracted from the traversed pooled data blocks and input into the identification generation model, and the process jumps to the step of determining multiple identification deviations according to the target identification code and the multiple identification code indications.
2. The palm vein recognition model construction method according to claim 1, characterized in that: The grayscale interval adjustment and edge feature extraction of the multiple palm vein images to obtain multiple edge feature images include: For each of the plurality of palm vein maps, the following steps are performed respectively: Acquire a reference queue and a plurality of pixel value intervals, wherein each queue element of the reference queue corresponds to a pixel value interval; Arrange multiple pixel values in the palm vein image according to the size of the values to obtain a pixel value queue; extracting pixel values from the pixel value queue according to the reference queue to construct a plurality of pixel sets, wherein each pixel set corresponds to a queue element of the reference queue; According to the plurality of pixel sets and the plurality of pixel value intervals, adjusting the grayscale intervals of the pixels in the palm vein image to obtain a grayscale image; The edge of the grayscale image is extracted using a difference method to obtain an edge feature map.
3. The palm vein recognition model construction method according to claim 2, characterized in that: The step of adjusting the grayscale intervals of pixels in the palm vein image according to the multiple pixel sets and the multiple pixel value intervals to obtain a grayscale image includes: According to a first formula, the multiple pixel sets, and the multiple pixel value intervals, grayscale interval adjustment is performed on the pixels in the palm vein image to obtain a grayscale image, wherein the first formula is: Where, is the pixel value after grayscale interval adjustment, is the pixel value before grayscale interval adjustment, is the minimum pixel value in the pixel set, is the maximum pixel value in the pixel set, is the upper limit of the pixel value interval, is the lower limit of the pixel value interval; The step of extracting edges from the grayscale image using a differential method to obtain an edge feature map includes: For each pixel in the edge feature map, the pixel value is replaced by the minimum pixel value within a radius of 1 pixel to obtain an edge convex map; The edge of the grayscale image is extracted according to a second formula, the grayscale image, and the edge convexification image, wherein the second formula is: Where, is the pixel value of the edge feature map, is the pixel value of the edge convex image, is the pixel value of the grayscale image.
4. The palm vein recognition model construction method according to claim 1, characterized in that: Pooling each edge feature map according to the first pooling degree parameter includes: For each edge feature map, perform the following steps: Obtaining a first pooling degree parameter, wherein the first pooling degree parameter includes: a pooling dimension and an offset; Taking out the data block of the pooling dimension from the edge feature map according to the first position as the data block to be processed; Taking the maximum value or average value of multiple data in the data block to be processed as pooled data; Using the first position as an index, adding the pooled data to a pooled data block; If the traversal of the edge feature map is not completed, the first position is offset according to the offset, and the process jumps to the step of taking out the data block of the pooling dimension from the edge feature map according to the first position as the data block to be processed.
5. A palm vein recognition model construction device, characterized in that: For implementing the palm vein recognition model construction method according to any one of claims 1 to 4, the palm vein recognition model construction device comprises: An image acquisition module, used to acquire multiple palm vein images; an edge extraction module, configured to perform grayscale interval adjustment and edge feature extraction on the plurality of palm vein images to obtain a plurality of edge feature images, wherein each edge feature image corresponds to a palm vein image; a pooling module, configured to pool each edge feature map according to a first pooling degree parameter, and assign an identification code to a pooled data block obtained by pooling according to the palm corresponding to the palm vein map, wherein pooled data blocks corresponding to the same palm have the same identification code; as well as, The model construction module is used to extract multiple sub-data blocks from the pooled data block and input them into the identification generation model. According to the deviation between the identification generated by the model and the identification of the pooled data block, the parameters of the identification generation model are adjusted until the deviation is less than a threshold, thereby obtaining a palm vein recognition model.
6. An electronic device comprising a memory and a processor, wherein the memory stores a computer program that can be run on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 4 are implemented.
7. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 4 are implemented.
Citation Information
Patent Citations
Non-contact biological recognition guiding device and method and biological feature recognition system
CN111881719A
Method and device for identifying palm vein, electronic equipment and storage medium
CN118230368A