Finger vein recognition method based on compact binary coding learning
Through compact binary encoding learning methods, texture local difference vectors are generated and compact binary encoding learning models are constructed, which solves the problem of low recognition accuracy in the case of few samples in the existing technology, and achieves high accuracy and adaptability of finger veins. Identify.
Patent Information
- Application Number
- CN202411439665.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-15
- Publication Date
- 2025-02-11
- Estimated Expiration
- 2044-10-15
AI Technical Summary
Existing finger vein recognition algorithms have low recognition accuracy in small samples and rely on a large amount of prior knowledge and manual design processes, making it difficult to effectively utilize the potential of deep learning.
A compact binary encoding learning method is proposed, which generates texture local difference vectors through convolution operations and local binary mode templates, and builds a compact binary encoding learning model. The model is optimized by the alternating direction multiplier method, and adaptively converts the feature Encoded for binary.
High accuracy finger vein recognition in the case of few samples is achieved, reducing the dependence on prior knowledge, and improving the adaptability and generalization ability of recognition.
Smart Images

Figure CN119418376A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the fields of biometrics and image processing, and in particular to a finger vein recognition technology for a small number of samples. The present invention proposes a compact binary coding learning method, focusing on automatically extracting and encoding binary features from finger vein images to achieve accurate finger vein recognition. Background Art
[0002] As the digitalization process accelerates, the demand for accuracy and security of identity authentication is becoming increasingly urgent. Although traditional biometric identification methods such as face and fingerprint have been widely used, problems such as privacy security and physical limitations have become increasingly prominent. Against this background, finger vein recognition technology has gradually emerged with its unique advantages. This technology is based on the unique absorption characteristics of infrared light by the veins inside the finger. It has the following significant highlights: (1) Enhanced security. Subcutaneous vein features are difficult to forge and require live verification. The non-contact collection method also improves the hygiene level. (2) Improved recognition accuracy. The vein features are stable and not easily affected by the external environment. At the same time, the individual differences are large, which ensures a high recognition rate. The continuous advancement of technology has promoted the improvement of accuracy. (3) Enhanced stability. The technology is adaptable to a variety of environments. The equipment is rugged and durable, ensuring long-term reliability. This technology has not only been applied in traditional access control, financial services and other scenarios, but has also gradually expanded to rapid identity authentication under epidemic prevention and control, strict security inspections of customs and border management, security guarantees of electronic payments, seamless connection of smart offices, and accurate identification in the field of intelligent transportation, fully demonstrating its broad value and application prospects as a future identity authentication technology.
[0003] So far, the existing finger vein recognition algorithms can be roughly divided into four categories:
[0004] Global feature methods such as principal component analysis (PCA) and linear discriminant analysis (LDA) deeply analyze image data from statistical and mathematical dimensions, extracting key global features to assist in identification. Local feature methods, including Local Binary Pattern, LBP), maximum curvature, Gabor wavelet, etc., delicately capture the diversity of vein features. At the same time, lightweight learning models such as binary feature learning, sparse coding and multi-view technology demonstrate powerful adaptive learning capabilities and accurately refine discriminative features. In addition, deep learning, relying on advanced networks such as convolutional neural networks (CNN) or generative adversarial networks (GAN), automatically extracts and constructs efficient finger vein recognition templates, further broadening the boundaries of technology application.
[0005] Traditional finger vein recognition strategies mainly revolve around global and local features, relying on researchers' in-depth understanding of the characteristics of vein images and manually extracting key features such as texture and details. Although such methods are based on rich experience and design knowledge, they are more suitable for category distinction in closed environments. On the other hand, lightweight learning methods attempt to transform image data into feature space through relatively simple mapping rules or adaptive learning algorithms to enhance recognition performance, but they are often limited by the manual design process of pre-extracting features. As for deep learning technology, although it has broad prospects, it is limited by the scarcity of samples in the existing finger vein database and it is difficult to fully realize its potential. Therefore, developing a lightweight finger vein recognition method that combines high precision, small sample requirements and low reliance on prior knowledge has become a core challenge that needs to be solved in this field. Summary of the invention
[0006] The present invention provides a finger vein recognition method based on compact binary coding learning, which automatically learns vein features from finger vein images and further realizes high-accuracy finger vein recognition.
[0007] To implement the above method, the specific steps are as follows:
[0008] Step 100. First, the input data set is randomly and evenly divided into a training set and a test set to ensure the independence and effectiveness of model training and evaluation. In the training stage, an optimized feature extraction process is adopted. Specifically, the finger vein image in the training set is convolved with a predefined local binary pattern (Local Binary Pattern, LBP) template to obtain rich texture response results. Subsequently, a unique texture local difference vector (Texture Local Difference Vector, TLDV) is generated for each finger vein image by carefully calculating the difference between each central pixel and its surrounding neighborhood pixels in the LBP template response result. This process not only retains the key texture information of the image, but also enhances the feature discrimination ability through differential operations, laying a solid foundation for subsequent feature learning and recognition;
[0009] Step 200: Use the TLDVs of these training sets and the corresponding sample labels to build a compact binary codes learning model (CBCL). The core of this model is to introduce an objective function, which aims to adaptively learn a mapping matrix and an error matrix to convert the TLDVs of the training set into binary codes. The objective function considers both regularization constraints and sparsity constraints, and transforms the feature learning problem in the subspace into an optimization problem for solving the CBCL model.
[0010] Step 300: To optimize the CBCL model, the present technology uses an efficient alternating direction method of multipliers (ADMM), which decomposes the optimization problem into multiple variable optimization problems that are easy to solve, and introduces an augmented Lagrangian function to make the updated variables satisfy the above constraints, thereby achieving the optimal solution of the overall model, and finally outputting the optimal mapping matrix and error matrix.
[0011] Step 400: During the test, the optimal mapping matrix and error matrix obtained above are used to perform a projection operation on the data of the training set and the test set, so as to extract binary features from the two sets of data for subsequent processing and recognition.
[0012] Step 500: first convert the binary features mapped by the training data into real-valued features, then divide the real-valued features into blocks and calculate local block histograms, and then splice them into a global histogram as the final feature representation;
[0013] Step 600, by calculating the Euclidean distance between the final feature representations of the training set and the test set, the finger vein image is classified using a nearest neighbor classifier (1-NN) to further perform finger vein recognition;
[0014] Step 700: Repeat the operations from step 100 to step 600 ten times, obtain the recognition accuracy rates for ten times, and calculate the average recognition accuracy rate.
[0015] The input data set is randomly divided into a training set and a test set; in the training stage, the finger vein image of the training set is convolved with a local binary pattern (LBP) template to obtain a response result, and then the texture difference vector (TLDV) of each finger vein image is generated by calculating the difference between the response results of the central pixel and the neighboring pixels. Step 100 includes:
[0016] First, the input data set is randomly divided into a training set and a test set. There are two specific operations: the first is to randomly select two finger vein images from each category as the training set, and the remaining finger vein images of the category are used as the test set; the second is to randomly select three finger vein images from each category as the training set, and the remaining finger vein images of the category are used as the test set;
[0017] Secondly, in the training stage, for the finger vein images of the training set, adjacent pixels in a certain area are selected as a finger vein patch, and the patch is convolved with the local binary pattern (LBP) template in "Finger vein recognition with gabor wavelets and local binary patterns" to obtain the response result. Finally, by calculating the difference between the response results of the central pixel and the neighboring pixel, the texture local difference vector (TLDV) of the finger vein image on each local block is generated, and the vector dimension is 24 dimensions;
[0018] Among them, the TLDVs of these training sets and the corresponding sample labels are used to construct a compact binary coding learning model (CBCL). The core of this model is to introduce a new objective function, which aims to adaptively learn a mapping matrix and an error matrix, convert the TLDVs of the training set into binary codes, and convert the feature learning problem in the subspace into the optimization problem of solving the CBCL model. Step 200 includes:
[0019] A unified feature learning model (CBCL) is constructed using the TLDVs of the training set and their corresponding labels. The objective function is introduced to adaptively learn a mapping matrix and an error matrix. These two matrices can adaptively convert the above training data into the binary code corresponding to each data. Then, regularization constraints and sparse constraints are considered at the same time, and a new objective function is proposed to transform the feature learning problem in the subspace into the optimization problem of solving the CBCL model.
[0020] The alternating direction multiplier method (ADMM) is used to solve the optimization problem of the CBCL model. All variables in the model are updated iteratively to gradually approach the global optimal solution. Finally, the step 300 of outputting the optimized mapping matrix and error matrix includes:
[0021] The ADMM framework is used to introduce Lagrangian multipliers, and the objective function optimization problem of the CBCL model is transformed into a multivariable optimization problem for solving the Lagrangian function, thereby reducing the difficulty of dealing with complex optimization problems. Then, an iterative method is used to minimize the Lagrangian function for only one variable each time while fixing other variables, simplifying the multivariable optimization problem into a series of single variable optimization problems. This strategy significantly improves computational efficiency and simplifies the solution process. Iterations continue until the convergence condition is met, that is, the objective function no longer changes significantly in consecutive iterations, or the preset maximum number of iterations is reached. At this point, the model is considered to have converged to a stable state, and the current mapping matrix and error matrix are output. These matrices can effectively convert TLDV into binary encoding to provide support for subsequent recognition tasks.
[0022] In the test phase, the training set data and the test set data are projected respectively using the learned mapping matrix to obtain binary features on the training set data and the test set data in step 400, which includes:
[0023] Using the mapping matrix and error matrix learned above, the training set data and the test set data are projected according to the initial objective function to obtain the binary features of the training set data and the test set data.
[0024] Among them, the step 500 of first converting the binary features mapped by the above training data into real-valued features, then dividing the real-valued features into blocks and calculating local block histograms, and then splicing them into a global histogram as the final feature representation includes:
[0025] Firstly, based on the mapping matrix, the image TLDV is converted into a binary feature vector. Each bit code in the vector has its corresponding weight. Each bit code value is multiplied by the weight and finally summed up to realize the conversion of binary features into real-valued features.
[0026] Then, the real-valued feature is converted into the same size as the original finger vein image and divided into multiple non-overlapping small blocks of size . For each block, its local histogram is extracted and these histograms are combined into a feature vector of dimension as the final feature representation.
[0027] The step 600 of further performing finger vein recognition by calculating the Euclidean distance between the final feature representations of the training set and the test set and classifying the categories of the finger vein images using a nearest neighbor classifier (1-NN) includes:
[0028] First, the Euclidean distance between the final feature representation of each image in the training set and the final feature representation of a single image in the test set is calculated.
[0029] Secondly, the nearest neighbor classifier (1-NN) is used to classify the finger vein images in the test set based on these distances to obtain the predicted label for each test image.
[0030] Finally, by comparing the predicted labels with the actual labels of the test data, the recognition accuracy of the CBCL method can be calculated, which serves as the basis for evaluating the performance of the model.
[0031] The operations from step 100 to step 600 are repeated ten times to obtain the recognition accuracy rates for ten times. Step 700 of calculating the average recognition accuracy rate includes:
[0032] Repeat the operations from step 100 to step 600 ten times to obtain the recognition accuracy of the ten tests, and calculate the average recognition accuracy as an indicator for evaluating the recognition performance of the method of the present invention.
[0033] The present invention has the following advantages:
[0034] (1) It has strong adaptability. The method proposed in this invention is a data-driven adaptive feature learning algorithm that relies little on prior knowledge.
[0035] (2) Improve the average recognition accuracy;
[0036] (3) The present invention does not have high requirements on the size of the database and can be applied to few-sample learning.
[0037] (4) It exhibits excellent generalization potential. Only by adjusting the parameter settings in the objective function, the method can be flexibly transferred to other similar biometric recognition fields, covering multiple application scenarios such as knuckle prints, palm prints and even palm vein recognition, achieving wide applicability and high flexibility. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 Flowchart of a finger vein recognition method based on compact binary coding learning
[0039] Figure 2 A schematic diagram of obtaining a finger vein image TLDV.
[0040] Figure 3 Schematic diagram of finger vein ROI images on two different databases
[0041] Figure 4 Schematic diagram of sensitivity analysis of parameters λ1 and λ2 on two different databases
[0042] Figure 5 The relationship curve between the objective function value and the number of iterations on two different databases DETAILED DESCRIPTION
[0043] The method will be described in detail below with reference to the accompanying drawings. It should be noted that, in general, the method can be applied to finger vein recognition with different image qualities and different application scenarios.
[0044] The present application provides a finger vein recognition method based on compact binary coding learning, which realizes adaptive learning of compact binary coded vein features in the case of small samples to improve the accuracy of finger vein recognition.
[0045] Figure 1 A flowchart of a finger vein recognition method based on compact binary coding learning of the present application is shown.
[0046] This application proposes a finger vein recognition method based on compact binary coding learning. The specific steps are as follows:
[0047] Step 100, randomly divide the input data set into a training set and a test set; in the training stage, convolve the finger vein image of the training set with a local binary pattern (LBP) template to obtain a response result, and then generate a texture local difference vector (TLDV) of each finger vein image by calculating the difference between the response results of the central pixel and the neighboring pixels;
[0048] Step 200: Use the TLDVs of these training sets and the corresponding sample labels to build a compact binary codes learning model (CBCL). The core of this model is to introduce an objective function, which aims to adaptively learn a mapping matrix and an error matrix to convert the TLDVs of the training set into binary codes. At the same time, regularization constraints and sparse constraints are considered, and the feature learning problem in the subspace is transformed into an optimization problem for solving the CBCL model.
[0049] Step 300, using the Alternating Direction Method of Multipliers (ADMM) to solve the optimization problem of the CBCL model, updating all variables through iterations until the model converges or reaches a preset maximum number of iterations, and outputting the optimal mapping matrix and error matrix;
[0050] Step 400: In the testing phase, the training set data and the test set data are projected respectively using the mapping matrix learned above to obtain binary features on the training set data and the test set data;
[0051] Step 500: first convert the binary features mapped by the training data into real-valued features, then divide the real-valued features into blocks and calculate local block histograms, and then splice them into a global histogram as the final feature representation;
[0052] Step 600, by calculating the Euclidean distance between the final feature representations of the training set and the test set, the finger vein image is classified using a nearest neighbor classifier (1-NN) to further perform finger vein recognition;
[0053] Step 700: Repeat the operations from step 100 to step 600 ten times, obtain the recognition accuracy rates for ten times, and calculate the average recognition accuracy rate.
[0054] The step 100 includes the following sub-steps:
[0055] Sub-step 110, randomly divide the input data set into a training set and a test set. There are two specific operation schemes: the first is to randomly select two finger vein images from each category as the training set, and the remaining finger vein images of the category are used as the test set; the second is to randomly select three finger vein images from each category as the training set, and the remaining finger vein images of the category are used as the test set. Figure 3 Schematic diagram of finger vein ROI images on two different databases.
[0056] Sub-step 120: In the training phase, for the finger vein image of the training set, 5×5 adjacent pixels are selected as a finger vein plaque, which is convolved with the local binary pattern (LBP) template to obtain the response result. Finally, the difference between the response results of the central pixel and the neighboring pixels is calculated to generate a 24-dimensional texture difference vector (TLDV) for each finger vein plaque. Figure 2 A schematic diagram of obtaining a finger vein image TLDV.
[0057] The step 200 includes the following sub-steps:
[0058] Sub-step 210: construct a unified feature learning model (CBCL) using the TLDVs of the training set and their corresponding labels, and introduce the objective function:
[0059]
[0060] where x n ∈R d×p is the TLDV extracted from the nth finger vein sample, R represents x n The values are all real numbers, d represents the dimension of TLDV, and p represents the size of the image (rows × columns). n,k ∈{0,1} k is the kth learned binary code, q n is the projection regularization of the nth sample; let X = [x1, x2, ..., x n ]∈R d×m (m=np) represents the set of n finger vein samples, Q=[q1,q2,...,q n ] represents the projection error, Y=[y1,y2,...,y n ] represents binary coding, and the objective function in formula (1) can be rewritten in matrix form:
[0061] Y=sgn(P T X+Q) (2)
[0062] It aims to adaptively learn a mapping matrix P and an error matrix Q to convert the training data X into binary code Y.
[0063] Sub-step 220, by introducing constraints in the early stage, the objectives of the CBCL model are: (1) the Euclidean distance of the intra-class sample projection is minimized, while the Euclidean distance of the inter-class sample projection is maximized. (2) The sparse feature selection matrix helps to select more important and compact features, and through l 2,1 The constraint of the norm can improve the separability of the data. In this case, the overall objective function can be expressed as:
[0064]
[0065] Among them, Intra-class represents samples of the same category, and Inter-class represents samples of different categories. R(Y,Q) is a regularization term to avoid overfitting, where λ1 and λ2 are two positive weighted parameters used to balance the contribution of relative constraints. Parameter λ1 can take any value from {1e-4, 1e-3, 1e-2, 1e-1, 1e0, 1e1, 1e2, 1e3, 1e4}. Similarly, parameter λ2 can take any value from {1e-4, 1e-3, 1e-2, 1e-1, 1e0, 1e1, 1e2, 1e3, 1e4}. Indicates l 2,1 norm,||·|| 2 Indicates l F Norm.
[0066] Assume that C is a binary matrix that represents the relationship between intra-class and inter-class images. If two images belong to the same category (Intra-class), then C = 1, otherwise, C = -1. Let Y = [y1, y2, ..., y n ] is the binary matrix of the projection, then formula (3) can be rewritten in matrix form:
[0067]
[0068] in ||·|| 2,1 Represents l F Norm, l 2,1 norm, in formula (4), the proposed CBCL aims to learn the projection matrix P and the projection error Q. By minimizing the target overall function, two core goals are achieved: one is to minimize the error in the projection process, and the other is to minimize the distance between data of the same category and maximize the distance between data of different categories. Therefore, the feature learning problem in the subspace is transformed into an optimization problem for solving the CBCL model;
[0069] Furthermore, step 300 includes the following sub-steps:
[0070] Sub-step 310, introducing the Lagrangian multiplier M, can transform formula (4) into the following augmented Lagrangian function:
[0071]
[0072] where M∈R n×d is a real matrix with n rows and d columns; δ = 0.1 is the penalty parameter. Formula (5) is a multivariable optimization problem of the Lagrangian function. Through the Lagrangian function, one of the variables is iteratively updated to find the optimal solution of the variables P, Y, Q, M and δ when the Lagrangian function takes the minimum value;
[0073] Sub-step 320: Before iterative updating, the variables need to be initialized. max =e 5 ,ρ=1.01,δ=0.1, use the randn() function in Matlab to initialize variables P, Y, Q, and use the rand() function to initialize variable M, thereby generating matrix random numbers, where each element in M is between 0 and 1; calculate the initial value of the overall objective function of subformula (5) under the current variables;
[0074] Sub-step 330: using the alternating direction multiplier method (ADMM) to solve the optimization problem of the CBCL model, presetting the maximum number of iterations t=50, and repeating the following iteration steps:
[0075] Step 1) Fix P, Y, M, according to Update variable Q;
[0076] Step 2) Fix Q, Y, M, and then calculate P = (λ1D + 2XX T ) -1 X·U T Update the variable P, where definition P k is the k-th row vector of P;
[0077] Step 3) Fix P, Q, and M according to Update variable Y;
[0078] Step 4) Fix P, Q, and Y, and then calculate the value of M=M+δ(YP T XQ),δ=min(ρ,δ,δ max ) Update variables M and δ, where δ max =e 5 , ρ = 1.01, δ = 0.1;
[0079] Step 5) Based on the updated variables, calculate the difference between the current value of the overall objective function (5) and the overall objective function value of the previous iteration;
[0080] Sub-step 340, repeat the above process until the preset maximum number of iterations t=50 is reached or the difference between the current value of the overall objective function (5) and the value of the overall objective function in the previous iteration is less than 10 -4 , then output variables P and Q.
[0081] Further, step 400 includes:
[0082] Sub-step 410: Using the mapping matrix P and error matrix Q learned above, according to Y=sgn(P T X+Q) projects the training set data X to obtain the binary feature matrix Y=[y1,y2,...,y n ]∈R d×m ,y i ∈R m×1 is the feature vector after mapping of the i-th image.
[0083] Sub-step 420: Process the test set data in the same way to obtain a binary feature matrix Z = [z1, z2, ..., z q ]∈R d×s(s = qp), where d represents the dimension of TLDV, p represents the size of the image (rows × columns), and z i ∈R s×1 is the feature vector after mapping of the i-th image.
[0084] Furthermore, step 500 includes:
[0085] Sub-step 510: Based on the mapping matrix, convert the image TLDV into an m-bit binary feature vector y i ∈R m×1 , the weight of each code is 2 m-1 , each code value is multiplied by the weight and finally summed to convert the binary features into real-valued features.
[0086] Sub-step 520, convert the real-valued feature into the same size as the original finger vein image, and divide it into multiple non-overlapping small blocks of size 16×16, extract the local histogram of each block, and combine these histograms into a feature vector of dimension 256×p as the final feature representation, where p represents the total number of blocks.
[0087] The step 600 includes:
[0088] Sub-step 610, calculating the Euclidean distance between the final feature representation of each image in the training set and the final feature representation after mapping of an image in the test set, and then using the nearest neighbor classifier to classify the finger vein images in the test set, and outputting the labels of the finger vein images in the test set;
[0089] Sub-step 620: Calculate the recognition accuracy by matching the labels of the test set images with the real labels of the data.
[0090] The step 700 includes:
[0091] Repeat the operations from step 100 to step 620 ten times, obtain the recognition accuracy rates for ten times, and calculate the average recognition accuracy rate.
[0092] The original finger vein images in the present invention come from two public finger vein databases SDUMLA-fv and CAUC-fv respectively. The SDUMLA-fv finger vein database is a public finger vein dataset created by Shandong University, which is divided into 636 categories. This dataset comes from the left and right hands of 106 volunteers, and 3 fingers on each hand are divided into one category, that is, 106×2×3=636. The size of the ROI image in this dataset has been cropped to 120×233 pixels. The CAUC-fv finger vein database was established by the Civil Aviation University of China and contains 5850 images of 585 fingers of 195 people. Each person collects the index finger, middle finger and ring finger of one hand. 10 finger vein images are obtained for each finger. The size of the ROI image in this database has been cropped to 91×200 pixels. Figure 3 Schematic diagram of finger vein ROI images on these two different databases.
[0093] The experimental environment is PC and completed in MatlabR2016a environment.
[0094] First, in the present invention, the settings of the two parameters λ1 and λ2 in the objective function affect the recognition performance of finger vein recognition. Therefore, a hierarchical grid search strategy is used to select appropriate parameter values for each database. By selecting the two parameters from {1e -4 , 1e -3 , 1e -2 , 1e -1 , 1e 0 , 1e 1 , 1e 2 , 1e 3 , 1e 4}, that is, λ1 or λ2 takes any one of these nine data each time, so there are a total of 9×9=81 combinations, and parameter sensitivity analysis is then performed. Figure 4 Schematic diagram of sensitivity analysis of parameters λ1 and λ2 on two different databases.
[0095] from Figure 4 It can be found that when λ1∈[1e -4 , 1e 4 ], λ2∈[1e 1 , 1e 2 ], the system performance is stable and good. However, 3 , 1e 4 ], the average accuracy drops rapidly. Under other parameter combinations, the system performance is average, but not stable enough. Therefore, for the SDUMLA-fv dataset, the best combination of recommended parameters is λ1=1e 3 and λ2=1e -3Similarly, the experimental results show that when λ1∈[1e -4 , 1e 4 ], λ2∈[1e -4 , 1e 3 ], the system can show stable and good recognition performance on the CAUC-fv dataset. However, when λ2∈[1e 3 , 1e 4 ], the average precision dropped significantly. For the CAUC-fv dataset, the optimal parameter combination was determined to be λ1 = 1e 4 ,λ2=1e -2 .
[0096] Second, the convergence speed of the objective function of the method of the present invention (Compact Binary Coding Learning Model CBCL) was explored. Figure 5 is the relationship curve between the objective function value and the number of iterations on two different databases. Figure 5 In the experiment, t = 50 iterations were performed, and it can be seen that the value of the objective function decreases rapidly at the beginning and then tends to be stable. In particular, the proposed CBCL objective function converges very quickly on the two finger vein datasets, usually within 10 iterations.
[0097] Third, the average recognition accuracy of the proposed method (compact binary coding learning model CBCL) and ten common finger vein recognition methods (global local binary pattern GLBP, local binary pattern LLBP, competitive coding Competitive, local linear discriminant projection LLDP, weighted local graph structure WLGS, VGG network VGG-F, convolutional neural network CNN-based, joint multi-view feature learning JMvFL, deep structural feature discrimination DSFD, coupled multimodal feature representation CMrFD) are compared. All the compared methods use the same matching protocol and run 10 times to calculate the average recognition accuracy. Table 1 shows the average recognition accuracy of each method on two finger vein databases SDUMLA-fv and CAUC-fv. Experimental results The proposed method is still always better than other methods under two training set test set allocation methods (Tr=2, Tr=3). The acc of the proposed method on SDUMFL-fv can reach 99.2745% (Tr=3), and the acc on CAUCC-fv can reach 100% (Tr=3).
[0098] Table 1 Average recognition accuracy of different recognition methods on two databases (%)
[0099]
[0100]
[0101] Fourth, further, in order to verify the effectiveness of different constraints in the CBCL objective function, the method of the present invention was subjected to an ablation experiment. Table 2 lists the average recognition accuracy after removing different constraints.
[0102] Table 2 Average recognition accuracy after removing different constraints (%)
[0103]
[0104] It can be clearly seen from the data in Table 2 that, no matter the two finger vein databases (SDUMLA-fv and CAUC-fv) are used, when the method of the present invention does not impose sparsity constraints (λ1=0) or regularization constraints (λ2=0), the performance of CBCL will also be affected, and the recognition accuracy will decrease. The results show that regularization constraints and sparsity constraints are the key to improving the recognition performance of CBCL. It is worth noting that on these two data sets, the recognition accuracy decreases more significantly after removing the regularization constraint term, that is, the regularization constraint is better than the sparsity constraint.
[0105] The finger vein recognition method based on compact binary coding learning in the present invention has the following advantages:
[0106] (1) It has strong adaptability. The method proposed in this invention is a data-driven adaptive feature learning algorithm that relies little on prior knowledge.
[0107] (2) Improve the average recognition accuracy;
[0108] (3) The present invention does not have high requirements on the size of the database and can be applied to few-sample learning.
[0109] (4) It has strong generalization ability. By simply adjusting the hyperparameters in the objective function, the extraction method of the present invention can be applied to other similar biometric recognitions, such as finger print recognition, palm print recognition, and palm vein recognition.
Claims
1. A finger vein recognition method based on compact binary coding learning, characterized in that: The following steps are involved: Step 100: randomly divide the input data set into a training set and a test set; In the training stage, the finger vein image of the training set is convolved with the local binary pattern (LBP) template to obtain the response result, and then the texture difference vector (TLDV) of each finger vein image is generated by calculating the difference between the response results of the central pixel and the neighboring pixels; Step 200: Use the TLDVs of these training sets and the corresponding sample labels to build a learning model based on compact binary coding (CBCL). The core of this model is to introduce an objective function, which aims to adaptively learn a mapping matrix and an error matrix to convert the TLDVs of the training set into binary codes. At the same time, regularization constraints and sparsity constraints are considered, and the feature learning problem in the subspace is transformed into an optimization problem for solving the CBCL model. Step 300, using the alternating direction multiplier method (ADMM) to solve the optimization problem of the CBCL model, updating all variables through iteration until the model converges or reaches a preset maximum number of iterations, and outputting the optimal mapping matrix and error matrix; Step 400: In the testing phase, the training set data and the test set data are projected respectively using the mapping matrix learned above to obtain binary features on the training set data and the test set data; Step 500: first convert the binary features mapped by the training data into real-valued features, then divide the real-valued features into blocks and calculate local block histograms, and then splice them into a global histogram as the final feature representation; Step 600, by calculating the Euclidean distance between the final feature representations of the training set and the test set, the finger vein image is classified using a nearest neighbor classifier to further perform finger vein recognition; Step 700: Repeat the operations from step 100 to step 600 ten times, obtain the recognition accuracy rates for ten times, and calculate the average recognition accuracy rate.
2. The method according to claim 1, characterized in that: Step 100 includes: First, the input data set is randomly divided into a training set and a test set. There are two specific operations: the first is to randomly select two finger vein images from each category as the training set, and the remaining finger vein images of the category are used as the test set; the second is to randomly select three finger vein images from each category as the training set, and the remaining finger vein images of the category are used as the test set; secondly, in the training stage, for the finger vein images of the training set, 5×5 adjacent pixels are selected as a finger vein plaque, and the response result is obtained by convolving it with the local binary pattern (LBP) template. Finally, the 24-dimensional texture difference vector of each finger vein plaque is generated by calculating the difference between the response results of the central pixel and the neighboring pixels.
3. The method according to claim 1, characterized in that: Step 200 includes: A unified feature learning model (CBCL) is constructed using the TLDVs of the training set and their corresponding labels, and the objective function is introduced: where x n ∈R d×p is the TLDV extracted from the nth finger vein sample, R represents x n The values are all real numbers, d represents the dimension of TLDV, and p represents the size of the image (rows × columns). n,k ∈{0,1} k is the kth learned binary code, q n is the projection regularization of the nth sample; let X = [x1, x2, ..., x n ]∈R d×m (m=np) represents the set of n finger vein samples, Q=[q1,q2,...,q n ] represents the projection error, Y=[y1,y2,...,y n ] represents binary coding, and the objective function in formula (1) is rewritten into matrix form: Y=sgn(P T X+Q) (2) Aims to adaptively learn a mapping matrix P and an error matrix Q to convert the training data X into binary code Y; The overall objective function is expressed as: Where, Intra-class represents samples of the same category, and Inter-class represents samples of different categories; R(Y,Q) is a regularization term to avoid overfitting, where λ1 and λ2 are two positive weighted parameters used to balance the contribution of relative constraints, parameter λ1 can take any value in {1e-4, 1e-3, 1e-2, 1e-1, 1e0, 1e1, 1e2, 1e3, 1e4}, and parameter λ2 can take any value in {1e-4, 1e-3, 1e-2, 1e-1, 1e0, 1e1, 1e2, 1e3, 1e4}; Indicates l 2,1 norm,||·|| 2 Indicates l F norm; Let C be a binary matrix, which represents the relationship between intra-class and inter-class images. If two images belong to the same category (Intra-class), then C = 1, otherwise, C = -1. Let Y = [y1, y2, ..., y n ] is the binary matrix of the projection, then formula (3) can be rewritten in matrix form: in ||·|| 2,1 Represents l F Norm, l 2,1 norm, in formula (4), the proposed CBCL aims to learn the projection matrix P and the projection error Q; by minimizing the target overall function, we achieve two core goals: one is to minimize the error in the projection process, and the other is to minimize the distance between data of the same category and maximize the distance between data of different categories.
4. The method according to claim 1, characterized in that: Step 300 includes: Introducing the Lagrangian multiplier M, formula (4) is transformed into the following augmented Lagrangian function: where M∈R n×d is a real matrix with n rows and d columns; δ = 0.1 is the penalty parameter; Formula (5) is a multivariable optimization problem of the Lagrangian function. Through the Lagrangian function, one of the variables is iteratively updated respectively to find the optimal solution of the variables P, Y, Q, M and δ when the Lagrangian function takes the minimum value; then, before iterative updating, the variables need to be initialized first, let δ max =e 5 ,ρ=1.01,δ=0.1, use the randn() function in Matlab to initialize variables P, Y, Q, and use the rand() function to initialize variable M, thereby generating matrix random numbers, where each element in M is between 0 and 1; calculate the initial value of the overall objective function of subformula (5) under the current variables; The optimization problem of the above CBCL model is solved by using the alternating direction multiplier method (ADMM). The maximum number of iterations t=50 is pre-set, and the following iteration steps are repeated: Step 1) Fix P, Y, M, according to Update variable Q; Step 2) Fix Q, Y, M, and then calculate P = (λ1D + 2XX T ) -1 X·U T Update the variable P, where definition P k is the k-th row vector of P; Step 3) Fix P, Q, and M, according to Update variable Y; Step 4) Fix P, Q, and Y, and then calculate the value of M=M+δ(YP T XQ),δ=min(ρ,δ,δ max ) Update variables M and δ, where δ max =e 5 , ρ = 1.01, δ = 0.1; Step 5) Calculate the value of the overall objective function of formula (5) according to the updated variables, and calculate the difference between the current value of the overall objective function (5) and the value of the overall objective function of the previous iteration; Repeat the above process until the preset maximum number of iterations t=50 is reached or the difference between the current value of the overall objective function (5) and the value of the overall objective function in the previous iteration is less than 10 -4 , then output variables P and Q.
5. The method according to claim 1, characterized in that: Step 400 includes: Using the mapping matrix P and error matrix Q learned above, according to Y = sgn (P T X+Q) projects the training set data X to obtain the binary feature matrix Y=[y1,y2,...,y n ]∈R d×m ,y i ∈R m×1 is the feature vector after the i-th image is mapped; the test set data is processed in the same way to obtain the binary feature matrix Z = [z1, z2, ..., z q ]∈R d×s (s = qp), where d represents the dimension of TLDV, p represents the size of the image (rows × columns), and z i ∈R s×1 is the feature vector after mapping of the i-th image.
6. The method according to claim 1, characterized in that: Step 500 includes: Based on the mapping matrix, the image TLDV is converted into an m-bit binary feature vector y i ∈R m×1 , each code has a weight of 2 m-1 , each code value is multiplied by the weight and finally summed to convert the binary feature into a real-valued feature, and the real-valued feature is converted into the same size as the original finger vein image, and divided into multiple non-overlapping small blocks of size 16×16. For each block, its local histogram is extracted, and these histograms are combined into a feature vector with a dimension of 256×p as the final feature representation, where p represents the total number of blocks.
7. The method according to claim 1, characterized in that: Step 600 includes: First, the Euclidean distance between the final feature representation of each image in the training set and the final feature representation of an image in the test set after mapping is calculated, and then the finger vein images in the test set are classified using the nearest neighbor classifier, and the labels of the finger vein images in the test set are output; Then, the recognition accuracy is calculated by matching the labels of the above test set images with the true labels of the data.
Citation Information
Patent Citations
Finger vein authentication method based on long-term recursion convolutional neural network
CN110135253A
Finger vein recognition method based on binary image
CN110348289A
Improved ADMM algorithm combined with DMPC (distributed model predictive control)
CN110515301A
Binary image feature coding method based on low-rank embedded representation
CN110727818A
Cross-modal hash retrieval method based on class semantic guidance
CN111460077A