Palmprint image generation method, palmprint recognition model training method, device and medium
By randomly generating a fusion method of three-dimensional palm model and the first palm pattern image, the target palm model is generated and the second palm pattern image is extracted, which solves the problem of insufficient training data sets and the simulation data in the prior art that cannot accurately reflect the real scene, and improves the recognition accuracy and robustness of the palm pattern recognition model.
Patent Information
- Application Number
- CN202211089333.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-07
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2042-09-07
AI Technical Summary
The lack of sufficient public training data sets in the prior art leads to limited training effects of palm print recognition models, and the generated simulated palm print data cannot accurately reflect palm print information in real scenes.
By randomly generating a three-dimensional palm model and the first palm pattern image, and fusing it to generate the target palm model, and then extracting the palm pattern area of the target palm model to obtain the second palm pattern image. This method can generate a large number of different target palm models and second palm print images, overcoming the problem of insufficient training data sets.
The palm print recognition accuracy of the palm print recognition model for palm prints in real scenes is improved, the model's robustness and recognition accuracy are enhanced, and the training data set is effectively expanded.
Smart Images

Figure CN116994297B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of image processing, and in particular to a palmprint image generation method, a palmprint recognition model training method, a device and a medium. Background Art
[0002] Palmprint recognition technology is a new generation of biometric recognition technology after fingerprint recognition and face recognition technology. Compared with fingerprint recognition and face recognition technology, palmprint recognition technology is more conducive to protecting user privacy. However, due to the privacy and security of palmprints, there is currently a lack of sufficient public training data sets in the field of palmprint recognition. Therefore, the limited training data sets have affected the development of palmprint recognition technology to a certain extent.
[0003] In order to overcome the problem of insufficient training data sets, the related art proposes a method of using a machine to generate simulated palmprint data. This method can easily generate a large amount of simulated palmprint data, thereby overcoming the problem of lack of training data sets, and further improving the palmprint recognition model's ability to recognize palm prints, and accelerating the development of palmprint recognition technology. However, the simulated palmprint data generated by this method in the related art is only palmprint image data in a planar form, which cannot accurately reflect the palmprint information of the palm in the real scene. Therefore, the simulated palmprint data limits the palmprint recognition model's recognition accuracy of the palmprint to a certain extent, and further restricts the development of palmprint recognition technology to a certain extent. Summary of the invention
[0004] The following is a summary of the subject matter described in detail herein. This summary is not intended to limit the scope of the claims.
[0005] The embodiments of the present invention provide a palmprint image generation method, a palmprint recognition model training method, a device and a medium, which can be beneficial to improving the training effect of the palmprint recognition model.
[0006] On the one hand, an embodiment of the present invention provides a palmprint image generation method, comprising the following steps:
[0007] Randomly generating a first palmprint image, wherein the first palmprint image corresponds to a target identifier;
[0008] Randomly generate 3D palm models in different postures;
[0009] fusing the first palmprint image with the three-dimensional palm model to obtain a target palm model;
[0010] A palmprint region is extracted from the target palm model to obtain a second palmprint image, where the second palmprint image corresponds to the target identifier.
[0011] On the other hand, an embodiment of the present invention further provides a palmprint recognition model training method, comprising the following steps:
[0012] Obtaining a first palmprint image sample and first label information, a second palmprint image sample and second label information, wherein the first palmprint image sample is generated by the palmprint image generation method as described above;
[0013] Using the first palmprint image sample to train an initial palmprint recognition model to obtain a first palmprint recognition model, wherein in the process of using the first palmprint image sample to train the initial palmprint recognition model, the parameters of the initial palmprint recognition model are corrected according to the first label information;
[0014] The first palmprint recognition model is trained using the second palmprint image sample to obtain a target palmprint recognition model, wherein in the process of training the first palmprint recognition model using the second palmprint image sample, the parameters of the first palmprint recognition model are corrected according to the second label information.
[0015] On the other hand, an embodiment of the present invention further provides a palmprint image generating device, comprising:
[0016] An image generating unit, configured to randomly generate a first palm print image, wherein the first palm print image corresponds to a target identifier;
[0017] A model generation unit, used for randomly generating three-dimensional palm models of different postures;
[0018] A model fusion unit, used for fusing the first palmprint image with the three-dimensional palm model to obtain a target palm model;
[0019] The palmprint extraction unit is used to extract the palmprint area of the target palm model to obtain a second palmprint image, wherein the second palmprint image corresponds to the target identifier.
[0020] Optionally, the image generating unit is further used for:
[0021] Randomly generate a third palmprint image;
[0022] The third palmprint image is randomly disturbed to obtain a first palmprint image.
[0023] Optionally, the image generating unit is further used for:
[0024] Randomly generate palm print main lines;
[0025] Randomly generate palm fine lines;
[0026] A third palmprint image is obtained according to the palmprint main lines and the palmprint fine lines.
[0027] Optionally, the image generating unit is further used for:
[0028] Determining the number of palmprint main lines to be generated, and randomly generating a first Bezier curve consistent with the number of the palmprint main lines;
[0029] For each of the first Bezier curves, determining the coordinates of the first curve starting point and the first curve end point, and determining the coordinates of the first curve midpoint according to the coordinates of the first curve starting point and the first curve end point;
[0030] Each of the palmprint main lines is generated according to the first curve starting point coordinates, the first curve midpoint coordinates and the first curve end point coordinates of each of the first Bezier curves.
[0031] Optionally, the image generating unit is further used for:
[0032] Determine a coordinate region of a midpoint of the first curve according to the coordinates of the starting point of the first curve and the coordinates of the end point of the first curve;
[0033] The coordinates of a position are randomly selected in the first curve midpoint coordinate area as the first curve midpoint coordinates.
[0034] Optionally, the image generating unit is further used for:
[0035] Determine the number of palm fine lines to be generated, and randomly generate a second Bezier curve consistent with the number of the palm fine lines;
[0036] For each of the second Bezier curves, determining the coordinates of the second curve start point and the second curve end point, and determining the coordinates of the second curve midpoint according to the coordinates of the second curve start point and the second curve end point;
[0037] Each of the palm fine lines is generated according to the coordinates of the second curve starting point, the coordinates of the second curve midpoint and the coordinates of the second curve end point of each of the second Bezier curves.
[0038] Optionally, the image generating unit is further used for:
[0039] Determine the coordinate area of the midpoint of the second curve according to the coordinates of the starting point of the second curve and the coordinates of the end point of the second curve;
[0040] The coordinates of a position are randomly selected in the second curve midpoint coordinate area as the second curve midpoint coordinates.
[0041] Optionally, the image generating unit is further used for:
[0042] Randomly adjusting at least one of the color of the palmprint main line, the width of the palmprint main line, the color of the palmprint fine lines, or the width of the palmprint fine lines in the third palmprint image to obtain a fourth palmprint image;
[0043] Randomly select a background image;
[0044] The fourth palmprint image and the background image are fused to obtain a first palmprint image.
[0045] Optionally, the model generating unit is further used for:
[0046] Randomly generate shape data and posture data;
[0047] Three-dimensional palm modeling is performed according to the shape data and the posture data to obtain three-dimensional palm models with different postures.
[0048] Optionally, the palmprint extraction unit is further used for:
[0049] Determine a first finger gap position, a second finger gap position, and a third finger gap position in the target palm model, wherein the second finger gap position is located between the first finger gap position and the third finger gap position;
[0050] Determine a first coordinate axis according to the first finger gap position and the third finger gap position;
[0051] Determining a second coordinate axis according to the second finger gap position and the first coordinate axis, wherein the second coordinate axis is perpendicular to the first coordinate axis;
[0052] Determine the center point of the palm print in the second coordinate axis according to the distance between the first finger gap position and the third finger gap position;
[0053] A second palmprint image is determined according to the first finger gap position, the third finger gap position and the palmprint center point.
[0054] On the other hand, an embodiment of the present invention further provides a palmprint recognition model training device, comprising:
[0055] A sample acquisition unit, used for acquiring a first palmprint image sample and first label information, a second palmprint image sample and second label information, wherein the first palmprint image sample is generated by the palmprint image generation device as described above;
[0056] a first training unit, configured to train an initial palmprint recognition model using the first palmprint image sample to obtain a first palmprint recognition model, wherein in the process of training the initial palmprint recognition model using the first palmprint image sample, parameters of the initial palmprint recognition model are corrected according to the first label information;
[0057] The second training unit is used to train the first palmprint recognition model using the second palmprint image samples to obtain a target palmprint recognition model, wherein in the process of training the first palmprint recognition model using the second palmprint image samples, the parameters of the first palmprint recognition model are corrected according to the second label information.
[0058] On the other hand, an embodiment of the present invention further provides an electronic device, including:
[0059] at least one processor;
[0060] at least one memory for storing at least one program;
[0061] When at least one of the programs is executed by at least one of the processors, the palmprint image generation method as described above is implemented, or the palmprint recognition model training method as described above is implemented.
[0062] On the other hand, an embodiment of the present invention further provides a computer-readable storage medium, which stores a computer program executable by a processor. When the computer program executable by the processor is executed by the processor, it is used to implement the palmprint image generation method as described above, or to implement the palmprint recognition model training method as described above.
[0063] On the other hand, an embodiment of the present invention further provides a computer program product, including a computer program or computer instructions, wherein the computer program or the computer instructions are stored in a computer-readable storage medium, and a processor of an electronic device reads the computer program or the computer instructions from the computer-readable storage medium, and the processor executes the computer program or the computer instructions, so that the electronic device executes the palmprint image generation method as described above, or executes the palmprint recognition model training method as described above.
[0064] The embodiment of the present invention includes at least the following beneficial effects: randomly generating a three-dimensional palm model and a first palm print image, wherein the first palm print image corresponds to a target identifier, and then fusing the first palm print image with the three-dimensional palm model to obtain a target palm model. Since the target palm model is obtained by fusing the three-dimensional palm model and the first palm print image, the target palm model is a three-dimensional palm model with palm print information corresponding to the target identifier, and can be closer to a palm in a real scene. Therefore, by extracting a palm print area from the target palm model, a second palm print image that can more accurately reflect the palm print information of a palm in a real scene can be obtained. In this case, after training a palm print recognition model using the second palm print image, the recognition accuracy of the palm print recognition model for the palm prints of a palm in a real scene can be effectively improved. In addition, since the first palmprint image and the three-dimensional palm model are both randomly generated, a large number of random first palmprint images and three-dimensional palm models can be easily generated, and then each first palmprint image and each three-dimensional palm model can be fused to obtain a large number of different target palm models. When the palmprint area is extracted for each target palm model, a large number of different second palmprint images can be obtained, which effectively overcomes the problem of insufficient training data set and is conducive to improving the training effect of the palmprint recognition model, thereby improving the robustness and recognition accuracy of the palmprint recognition model.
[0065] Other features and advantages of the present invention will be described in the following description, and partly become apparent from the description, or understood by practicing the present invention. The purpose and other advantages of the present invention can be realized and obtained by the structures particularly pointed out in the description, claims and drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] The accompanying drawings are used to provide a further understanding of the technical solution of the present invention and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the technical solution of the present invention and do not constitute a limitation on the technical solution of the present invention.
[0067] Figure 1 is a schematic diagram of an implementation environment provided by an embodiment of the present invention;
[0068] Figure 2 is a schematic diagram of another implementation environment provided by an embodiment of the present invention;
[0069] Figure 3 is a flow chart of a palmprint image generating method provided by an embodiment of the present invention;
[0070] Figure 4 is a schematic diagram of a three-dimensional palm model generated using the MANO model in an embodiment of the present invention;
[0071] Figure 5is a schematic diagram of a target palm model obtained by fusing the first palmprint image with the three-dimensional palm model by using UV Map in an embodiment of the present invention;
[0072] Figure 6 is a schematic diagram of extracting a palmprint region from a target palm model provided by an embodiment of the present invention;
[0073] Figure 7 is a schematic diagram of a second palmprint image obtained by performing palmprint region extraction on a target palm model in an embodiment of the present invention;
[0074] Figure 8 is a schematic diagram of a Bezier curve provided by an embodiment of the present invention;
[0075] Fig. 9 is a schematic diagram of a first palmprint image obtained by randomly perturbing a third palmprint image in an embodiment of the present invention;
[0076] Fig.10 is a flow chart of a palmprint recognition model training method provided by an embodiment of the present invention;
[0077] Fig.11 It is an overall flow chart of the palmprint image generation method and the palmprint recognition model training method provided by the embodiment of the present invention;
[0078] Fig.12 is a flow chart of a method for implementing palmprint recognition using a target palmprint recognition model provided by an embodiment of the present invention;
[0079] Fig.13 is a schematic diagram of a palmprint image generating device provided by an embodiment of the present invention;
[0080] Fig.14 is a schematic diagram of a palmprint recognition model training device provided by an embodiment of the present invention;
[0081] Fig.15 It is a schematic diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0082] The present invention is further described below in conjunction with the accompanying drawings and specific embodiments. The described embodiments should not be regarded as limiting the present invention, and all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0083] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.
[0084] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which the present invention belongs. The terms used herein are only for the purpose of describing the embodiments of the present invention and are not intended to limit the present invention.
[0085] Before further describing the embodiments of the present invention in detail, the nouns and terms involved in the embodiments of the present invention are described. The nouns and terms involved in the embodiments of the present invention are subject to the following interpretations.
[0086] 1) Artificial Intelligence (AI) is the theory, method, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can respond in a similar way to human intelligence. Artificial intelligence is to study the design principles and implementation methods of various intelligent machines so that machines have the functions of perception, reasoning and decision-making. Artificial intelligence technology is a comprehensive discipline that covers a wide range of fields, including both hardware-level technology and software-level technology. Basic artificial intelligence technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation / interaction systems, and mechatronics. Artificial intelligence software technology mainly includes computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning.
[0087] With the research and advancement of artificial intelligence technology, artificial intelligence technology has been studied and applied in many fields, such as common smart homes, smart wearable devices, virtual assistants, smart speakers, smart marketing, unmanned driving, automatic driving, drones, robots, smart medical care, smart customer service, etc. I believe that with the development of technology, artificial intelligence technology will be applied in more fields and play an increasingly important role.
[0088] 2) Computer Vision Technology (CV) Computer vision is a science that studies how to make machines "see". To put it more specifically, it refers to machine vision such as using cameras and computers to replace human eyes to identify and measure targets, and further perform graphic processing so that computer processing becomes an image that is more suitable for human eye observation or transmission to instrument detection. As a scientific discipline, computer vision studies related theories and technologies, and attempts to establish an artificial intelligence system that can obtain information from images or multi-dimensional data. Computer vision technology usually includes image processing, image recognition, image semantic understanding, image retrieval, OCR, video processing, video semantic understanding, video content / behavior recognition, three-dimensional object reconstruction, 3D technology, virtual reality, augmented reality, simultaneous positioning and map construction, and other technologies, as well as common biometric recognition technologies such as face recognition and fingerprint recognition.
[0089] 3) Machine Learning (ML) is a multi-disciplinary subject involving probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory and other disciplines. It specializes in studying how computers simulate or implement human learning behavior to acquire new knowledge or skills and reorganize existing knowledge structures to continuously improve their performance. Machine learning is the core of artificial intelligence and the fundamental way to make computers intelligent. Its applications are spread across all areas of artificial intelligence. Machine learning and deep learning usually include artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and self-learning.
[0090] 4) Blockchain is a new application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanism, encryption algorithm, etc. Blockchain is essentially a decentralized database, a string of data blocks generated by cryptographic methods. Each data block contains a batch of network transaction information, which is used to verify the validity of its information (anti-counterfeiting) and generate the next block. Blockchain can include the underlying blockchain platform, platform product service layer, and application service layer.
[0091] 5) Intelligent Traffic System (ITS), also known as Intelligent Transportation System, is the effective and integrated application of advanced science and technology (information technology, computer technology, data communication technology, sensor technology, electronic control technology, automatic control theory, operations research, artificial intelligence, etc.) to transportation, service control and vehicle manufacturing, strengthening the connection between vehicles, roads and users, thus forming a comprehensive transportation system that ensures safety, improves efficiency, improves the environment and saves energy.
[0092] In the related art, the palmprint recognition method based on deep learning is a relatively common technical solution. This method mainly trains the palmprint recognition model by designing an effective loss function, so that the palmprint recognition model can learn discriminative palmprint features from large-scale training data, and then calculates the similarity between the palmprint features output by the palmprint recognition model and the image features pre-stored in the database to obtain a similarity result, and then performs identity recognition and matching based on the calculated similarity result. This method in the related art needs to rely on large-scale and diverse training data, but due to the privacy and security of palmprints, compared with fingerprint recognition technology and face recognition technology, there is currently a lack of sufficient public training data sets in the field of palmprint recognition. Therefore, the limited training data sets have affected the development of palmprint recognition technology to a certain extent.
[0093] In order to overcome the problem of insufficient training data sets, the related art proposes a method of using a machine to generate simulated palmprint data, for example, using a deep neural network model to generate simulated palmprint data. This method can easily generate a large amount of simulated palmprint data, thereby overcoming the problem of lack of training data sets, and further improving the palmprint recognition model's ability to recognize palm prints. However, the simulated palmprint data generated by this method is only palmprint image data in a two-dimensional plane form, while the palm in a real scene is three-dimensional, and when the palmprint image of the palm is photographed in a real scene, due to the influence of a series of environmental factors such as light, shooting angle, and shooting terminal, the same palm will be photographed to obtain a variety of different palmprint images. Therefore, the simulated palmprint data in a two-dimensional plane form generated by this method cannot accurately reflect the palmprint information of the palm in the real scene. Therefore, the simulated palmprint data limits the palmprint recognition model's recognition accuracy of the palmprint to a certain extent.
[0094] In order to generate a large number of palm print images that more accurately reflect the palm print information in real scenes, thereby being conducive to improving the training effect of palm print recognition models, embodiments of the present invention provide a palm print image generation method, a palm print recognition model training method, a palm print image generation device, a palm print recognition model training device, a computer-readable storage medium and a computer program product, by first randomly generating a three-dimensional palm model and a first palm print image, wherein the first palm print image corresponds to a target identifier, and then fusing the first palm print image with the three-dimensional palm model to obtain a target palm model. Since the target palm model is obtained by fusing the three-dimensional palm model and the first palm print image, the target palm model is a three-dimensional palm model with palm print information corresponding to the target identifier, which can be closer to the palm in the real scene. Therefore, when the palm print area is extracted from the target palm model, a second palm print image that can more accurately reflect the palm print information of the palm in the real scene can be obtained. In this case, after the palm print recognition model is trained using the second palm print image, the recognition accuracy of the palm print recognition model for the palm prints in the real scene can be effectively improved. In addition, since the first palmprint image and the three-dimensional palm model are both randomly generated, a large number of random first palmprint images and three-dimensional palm models can be easily generated, and then each first palmprint image and each three-dimensional palm model can be fused to obtain a large number of different target palm models. When the palmprint area is extracted for each target palm model, a large number of different second palmprint images can be obtained, which effectively overcomes the problem of insufficient training data set and is conducive to improving the training effect of the palmprint recognition model, thereby improving the robustness and recognition accuracy of the palmprint recognition model.
[0095] The solutions provided in the embodiments of the present invention involve technologies such as computer vision and machine learning of artificial intelligence, which are specifically described through the following embodiments.
[0096] Figure 1 Schematic diagram of an implementation environment provided by an embodiment of the present invention. Figure 1 , the implementation environment includes a terminal 101 and a server 102. The terminal 101 and the server 102 are directly or indirectly connected through wired or wireless communication, wherein the terminal 101 and the server 102 can be nodes in the blockchain, which is not specifically limited in this embodiment.
[0097] The terminal 101 may include, but is not limited to, smart devices with image acquisition functions, such as smart phones, computers, smart voice interaction devices, smart home appliances, vehicle-mounted terminals, and aircraft. Optionally, the terminal 101 may be provided with an image acquisition module for acquiring images, such as a camera, an image sensor, etc. Through the image acquisition module, the user's palm image may be captured, and then recognition processing may be performed based on the user's palm image.
[0098] In one embodiment, the terminal 101 has at least the functions of initiating a request and obtaining a recognition result. For example, after capturing a palm image of a user, the terminal 101 can send the palm image and a recognition request for the palm image to the server 102, and after receiving the recognition result fed back by the server 102 based on the palm image and the recognition request, the terminal 101 can display the recognition result or control the terminal 101 according to the recognition result. In addition, the terminal 101 can also download a trained target palm print recognition model from the server 102. In this case, after capturing a palm image of a user, the terminal 101 can input the palm image into the target palm print recognition model for palm print recognition, obtain a recognition result, and then display the recognition result or control the terminal 101 according to the recognition result.
[0099] Server 102 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network) and big data and artificial intelligence platforms.
[0100] In one embodiment, the server 102 has at least the functions of generating training samples, training the model using the training samples, and performing palm print recognition on the palm image using the trained model. For example, the server 102 can randomly generate a first palm print image and a three-dimensional palm model, wherein the first palm print image corresponds to the target identifier, and then fuse the first palm print image with the three-dimensional palm model to obtain the target palm model, and then extract the palm print area of the target palm model to obtain a second palm print image corresponding to the target identifier, and the second palm print image is the training sample used for training the model later. After obtaining the training sample, the server 102 can use the training sample to train the initial palm print recognition model to obtain the target palm print recognition model. In addition, after the target palm print recognition model is obtained through training, when a palm image and a recognition request for the palm image are received from the terminal 101, the server 102 can perform palm print recognition on the palm image using the target palm print recognition model according to the recognition request to obtain a recognition result, and then send the recognition result to the terminal 101, so that the terminal 101 displays the recognition result or controls the terminal 101 according to the recognition result. In addition, the server 102 can also respond to the download request for the target palmprint recognition model sent by the terminal 101 and send the target palmprint recognition model to the terminal 101, so that the terminal 101 can directly perform palmprint recognition on the user's palm image using the target palmprint recognition model locally.
[0101] Reference Figure 1 As shown, in an application scenario, it is assumed that the terminal 101 is a payment terminal, and the terminal 101 is provided with an image acquisition module (such as a camera or an image sensor, etc.) for acquiring images. When the user uses the terminal 101 to scan the palm to make a payment, in response to capturing the palm image of the user, the terminal 101 sends the palm image and a recognition request for the palm image to the server 102; in response to receiving the palm image and the recognition request, the server 102 inputs the palm image into the trained target palmprint recognition model for palmprint recognition, obtains the recognition result, and then sends the recognition result to the terminal 101; in response to receiving the recognition result, the terminal 101 performs a payment operation according to the recognition result. In the process of model training to obtain the target palmprint recognition model, the server 102 first randomly generates a large number of first palmprint image samples, and then uses these first palmprint image samples to train the initial palmprint recognition model to obtain the first palmprint recognition model, and then uses the palmprint image obtained by capturing the palm in the real scene as the second palmprint image sample to train the first palmprint recognition model to obtain the target palmprint recognition model. In the process of the server 102 randomly generating the first palmprint image sample, the server 102 first randomly generates a first palmprint image and a three-dimensional palm model, wherein the first palmprint image corresponds to the target identifier, and then fuses the first palmprint image with the three-dimensional palm model to obtain the target palm model, and then extracts the palmprint area of the target palm model to obtain a second palmprint image corresponding to the target identifier. At this time, the server 102 uses the second palmprint image as the first palmprint image sample.
[0102] Reference Figure 2As shown, in an application scenario, it is assumed that the terminal 101 is a vehicle-mounted terminal, and the terminal 101 is provided with an image acquisition module (such as a camera or an image sensor, etc.) for acquiring images. In addition, the terminal 101 also pre-downloads a trained target palmprint recognition model from the server 102. When the user uses the terminal 101 to scan the palm to start the vehicle, in response to capturing the user's palm image, the terminal 101 inputs the palm image into the trained target palmprint recognition model for palmprint recognition, obtains a recognition result, and then performs a vehicle start operation according to the recognition result. In the process of performing model training to obtain the target palmprint recognition model, the server 102 first randomly generates a large number of first palmprint image samples, and then uses these first palmprint image samples to train the initial palmprint recognition model to obtain the first palmprint recognition model, and then uses the palmprint image obtained by capturing the palm in the real scene as the second palmprint image sample to train the first palmprint recognition model to obtain the target palmprint recognition model. In the process of the server 102 randomly generating the first palmprint image sample, the server 102 first randomly generates a first palmprint image and a three-dimensional palm model, wherein the first palmprint image corresponds to the target identifier, and then fuses the first palmprint image with the three-dimensional palm model to obtain the target palm model, and then extracts the palmprint area of the target palm model to obtain a second palmprint image corresponding to the target identifier. At this time, the server 102 uses the second palmprint image as the first palmprint image sample.
[0103] It should be noted that in various specific embodiments of the present invention, when it comes to the need to perform relevant processing based on the attribute information or attribute information set of an object (such as a user, etc.) and other data related to the characteristics of the object, the permission or consent of the corresponding object will be obtained first, and the collection, use and processing of these data will comply with the relevant laws, regulations and standards of the relevant countries and regions. In addition, when the embodiment of the present invention needs to obtain the attribute information of an object, it will obtain the separate permission or separate consent of the corresponding object through a pop-up window or jump to a confirmation page, and after clearly obtaining the separate permission or separate consent of the corresponding object, it will obtain the relevant data of the object necessary for the normal operation of the embodiment of the present invention.
[0104] The embodiments of the present invention can be applied to various scenarios where palmprint images need to be recognized, including but not limited to palmprint recognition scenarios in the fields of payment, access control, vehicle control, etc.
[0105] Figure 3 1 is a flowchart of a palmprint image generation method provided by an embodiment of the present invention. The palmprint image generation method can be executed by a terminal or a server, or by both a terminal and a server. In the embodiment of the present invention, the method is described by taking the method executed by a server as an example. Figure 3The palmprint image generation method includes but is not limited to steps 110 to 140.
[0106] Step 110: randomly generate a first palmprint image, the first palmprint image corresponding to the target identifier.
[0107] In this step, in order to overcome the problem of insufficient training data set, a first palmprint image corresponding to the target identifier can be randomly generated, so that in the subsequent steps, a second palmprint image used as training data can be obtained based on the randomly generated first palmprint image and the randomly generated three-dimensional palm model.
[0108] In a possible implementation, before randomly generating the first palm print image, the corresponding target identifier can be determined first, and after the target identifier is determined, the first palm print image corresponding to the target identifier is randomly generated, wherein for each target identifier, multiple first palm print images can be randomly generated, and therefore, the target identifier can be used to classify the first palm print image, and can be used as the corresponding label information, thereby facilitating the subsequent training process of the palm print recognition model. Moreover, since the target identifier can be used to classify the first palm print image, the target identifier can be used to classify the second palm print image used as training data obtained according to the first palm print image, thereby facilitating the convenient expansion of the training data set and overcoming the problem of insufficient training data set. In some embodiments, the target identifier can be set manually or randomly generated by a machine, and the target identifier can be composed of at least one of numbers, letters or other symbols, wherein other symbols can be other language symbols or other identification symbols, etc., which are not specifically limited here. It should be noted that the process of using the target identifier as label information to train the palm print recognition model will be given in subsequent embodiments, and will not be repeated here.
[0109] In a possible implementation, when randomly generating the first palm print image, the third palm print image may be randomly generated first, and then the third palm print image may be randomly disturbed to obtain the first palm print image. It should be noted that the palm print generally includes a palm print main line and a palm print fine line, wherein each palm generally has 3 to 5 palm print main lines, and for the left hand, the palm print main line generally starts from the upper left corner of the palm and ends at the lower right corner of the palm, while for the right hand, the palm print main line generally starts from the upper right corner of the palm and ends at the lower left corner of the palm. In addition, each palm has a large number of palm print fine lines, and the palm print fine lines are shallower and shorter than the palm print main line. Therefore, based on the above-mentioned palm print characteristics, when generating the third palm print image, the palm print main line and the palm print fine lines may be randomly generated first, and then the third palm print image may be obtained according to the palm print main line and the palm print fine lines. For example, the randomly generated palm print main line and the palm print fine lines may be combined to obtain the third palm print image. After obtaining the third palm print image, the third palm print image can be randomly disturbed by performing different processing such as random adjustment of the color or random adjustment of the size of the palm print main line or the palm print fine line, so as to generate different first palm print images, thereby effectively expanding the training data set and providing a data basis for the subsequent training of the palm print recognition model. It should be noted that the process of randomly generating the palm print main line and the palm print fine line will be given in the subsequent embodiments and will not be described in detail here.
[0110] Step 120: Randomly generate three-dimensional palm models in different postures.
[0111] In this step, since the first palm print image corresponding to the target identifier is generated in step 110, a three-dimensional palm model with different postures can be randomly generated, so that in the subsequent steps, the randomly generated three-dimensional palm model and the first palm print image randomly generated in the previous step can be combined to obtain a second palm print image used as training data.
[0112] In a possible implementation, when randomly generating a three-dimensional palm model of different postures, a MANO (Hand Model with Articulated and Non-rigid deformations) model can be used to perform three-dimensional modeling on the palm, and three-dimensional palm models of different postures can be randomly generated. Among them, the MANO model is a parameterized hand model that can be used to estimate a reasonable and accurate hand gesture, and then can be used to generate a three-dimensional palm model of various hand gestures. The input parameters of the MANO model include shape data (i.e., shape parameters) and posture data (i.e., pose parameters). The MANO model can output various parameters for determining the hand gesture according to the input shape data and posture data. For example, the parameters output by the MANO model may include 778 vertices, 1538 faces, and 21 joints, and these parameters can constitute a complete hand chain. Therefore, when randomly generating a three-dimensional palm model, the shape data and posture data can be randomly generated first, and then the shape data and posture data are input into the MANO model for three-dimensional palm modeling to obtain a three-dimensional palm model. The MANO model can be represented by the function M(β, θ), where β is shape data (i.e., shape parameter) used to control the shape of the hand; θ is posture data (i.e., pose parameter) used to control the posture of the hand. Therefore, the output of the MANO model can be represented by the following formula (1):
[0113] M(β,θ)=W(T(β,θ),J(β),θ),ω) (1)
[0114] In formula (1), W(*) is Linear Blending Skinning (LBS), T(*) is the hand mesh, J(*) is the joint point regression function, and ω is the blend weights. The linear blending skin W(*) can affect the hand mesh T(*) according to the positions of the 16 joint points, and the joint point regression function J(*) can regress the three-dimensional joint points from the hand mesh. After the MANO model reads the input shape data and posture data, it will output 778 vertices, 1538 facets, and 21 joint points. At this time, the corresponding three-dimensional palm model can be generated according to these parameters, as shown in Figure 4 As shown, Figure 4 is a schematic diagram of a 3D palm model generated using the MANO model. Figure 4It can be seen that the three-dimensional palm model generated by the MANO model can simulate the palm in the real scene. Therefore, when the three-dimensional palm model is used to fuse with the first palm print image in the subsequent step, a target palm model that is closer to the palm in the real scene can be obtained. In addition, in a possible implementation, when randomly generating three-dimensional palm models of different postures, three-dimensional palm models of different sizes can also be randomly generated. Three-dimensional palm models of different sizes can be used to simulate real palms of different physiques or different ages. When these three-dimensional palm models are used to fuse with the first palm print image in the subsequent step, a richer target palm model that is closer to the palm in the real scene can be obtained. When the second palm print image is obtained based on these target palm models, more abundant training data can be obtained, which is conducive to improving the training effect of the palm print recognition model.
[0115] Step 130: Fusing the first palm print image with the three-dimensional palm model to obtain a target palm model.
[0116] In this step, since the first palm print image corresponding to the target identifier is generated in step 110, and the three-dimensional palm model is generated in step 120, in order to overcome the problem that the simulated palm print data in the related art cannot accurately reflect the palm print information of the palm in the real scene, the first palm print image can be fused with the three-dimensional palm model to obtain the target palm model, so that the target palm model can be closer to the palm in the real scene, so that the subsequent steps can obtain a second palm print image that more accurately reflects the palm print information of the palm in the real scene according to the target palm model. It should be noted that the three-dimensional palm model generated in step 120 does not have palm print information, so the three-dimensional palm model can be fused with the first palm print image to obtain a three-dimensional palm model corresponding to the target identifier and with palm print information, so that the subsequent steps can use the three-dimensional palm model to obtain a second palm print image used as training data.
[0117] In a possible implementation, when the first palm print image is fused with the three-dimensional palm model to obtain the target palm model, the two-dimensional first palm print image can be mapped to the three-dimensional palm model using UV Map to achieve the fusion process between the first palm print image and the three-dimensional palm model. Wherein, "UV" refers to the texture coordinates (i.e., u coordinates and v coordinates) in the texture map. The u coordinates and v coordinates in the texture coordinates are similar to the x coordinates and y coordinates in the two-dimensional plane coordinates. UVMap can accurately correspond each point in the two-dimensional image to the surface of the three-dimensional model object. Compared with plane projection, the method of using UV Map for mapping can better handle the situation where the model surface is uneven or the model edge is curved. Figure 5 As shown, Figure 5is a schematic diagram of a target palm model obtained by fusing the first palm print image with the three-dimensional palm model using UV Map. Figure 5 In FIG. 4 , four target palm models are given as examples, and different target palm models are fused with different two-dimensional images by means of UVMap.
[0118] Step 140: extracting the palm print area of the target palm model to obtain a second palm print image, which corresponds to the target identifier.
[0119] In this step, since the target palm model is obtained in step 130, the palm print area of the target palm model can be extracted to obtain a second palm print image corresponding to the target identifier, so that the second palm print image can be used as training data for training the palm print recognition model, which can not only effectively overcome the problem of insufficient training data set, but also effectively improve the training effect of the palm print recognition model, thereby improving the robustness and recognition accuracy of the palm print recognition model. When the second palm print image is used to train the palm print recognition model, since the second palm print image corresponds to the target identifier, the target identifier can be used as label information to train the palm print recognition model during the training of the palm print recognition model. For example, after the second palmprint image is input into the palmprint recognition model, the palmprint recognition model will perform palmprint feature extraction and palmprint feature recognition on the second palmprint image, and output a predicted identifier corresponding to the second palmprint image. Then, a predicted loss value is obtained based on the predicted identifier output by the palmprint recognition model and the target identifier corresponding to the second palmprint image. For example, the predicted loss value is calculated based on the palmprint features corresponding to the predicted identifier (i.e., the palmprint features obtained by the palmprint recognition model performing palmprint feature extraction on the second palmprint image) and the palmprint features corresponding to the target identifier (i.e., the palmprint features of the second palmprint image obtained in advance). Then, the parameters of the palmprint recognition model are corrected according to the predicted loss value until the predicted identifier output by the palmprint recognition model is consistent with the target identifier.
[0120] In a possible implementation, when extracting the palm print area of the target palm model to obtain the second palm print image, the target palm model can be extracted based on a neural network model, or a non-neural network model can be used to extract the palm print area of the target palm model, which is not specifically limited here. Wherein, when extracting the palm print area of the target palm model based on a neural network model, the palm area image of the target palm model can be first intercepted, and then the palm area image is input into the trained palm print area extraction model for palm print area extraction to obtain a second palm print image including only the palm print area (i.e., the second palm print image does not include the finger part content). Wherein, when training the palm print area extraction model, the palm print area extraction model can be trained using training samples obtained by different methods, for example, palm images publicly available on the Internet can be used as training samples, or different palms can be photographed using different shooting terminals, and the palm images obtained by shooting are used as training samples. For the method of obtaining the training samples, appropriate selection can be made according to the actual application situation, which is not specifically limited here. In addition, when a palm print region is extracted from a target palm model by using a non-neural network model, the first finger gap position, the second finger gap position and the third finger gap position in the target palm model can be determined first, wherein the second finger gap position is located between the first finger gap position and the third finger gap position, and then a first coordinate axis is determined according to the first finger gap position and the third finger gap position, and then a second coordinate axis is determined according to the second finger gap position and the first coordinate axis, wherein the second coordinate axis is perpendicular to the first coordinate axis, and after determining the second coordinate axis, a palm print center point is determined in the second coordinate axis according to the distance between the first finger gap position and the third finger gap position, and then a second palm print image is determined according to the first finger gap position, the third finger gap position and the palm print center point.
[0121] In a possible implementation, Figure 6 As shown, the first finger gap position may be the finger gap position between the index finger and the middle finger, the second finger gap position may be the finger gap position between the middle finger and the ring finger, and the third finger gap position may be the finger gap position between the ring finger and the little finger. That is, the first finger gap position may be Figure 6 The position of point A in the middle, the position of the second finger gap can be Figure 6 The position of point B in the middle, the position of the third finger gap can be Figure 6 After determining the first finger gap position, the second finger gap position, and the third finger gap position in the target palm model, the straight line where the first finger gap position and the third finger gap position are located can be used as the first coordinate axis, for example Figure 6 In the example, the straight line between point A and point C is used as the first coordinate axis, and the straight line perpendicular to the first coordinate axis and the position of the second finger gap is used as the second coordinate axis. Figure 6In the example, the straight line perpendicular to the first coordinate axis and the point B is used as the second coordinate axis. At this time, the intersection of the first coordinate axis and the second coordinate axis is the origin of the coordinate. For example, Figure 6 Then, the center point of the palm print is determined in the second coordinate axis along the direction from the second finger gap position to the coordinate origin, for example Figure 6 Point D in the coordinate system makes the distance between the center point of the palm print and the coordinate origin equal to or approximately equal to the distance between the first finger gap position and the third finger gap position, wherein the distance between the center point of the palm print and the coordinate origin is approximately equal to the distance between the first finger gap position and the third finger gap position, which means that the absolute value of the difference between the distance between the center point of the palm print and the coordinate origin and the distance between the first finger gap position and the third finger gap position is less than a preset threshold value, and the preset threshold value can be appropriately selected according to the actual application situation and is not specifically limited here. After the center point of the palm print is determined in the second coordinate axis, the center point of the palm print can be used as the midpoint, and the product of the distance between the first finger gap position and the third finger gap position and the preset coefficient can be used as the side length of the palm area to determine the range of the palm area, for example Figure 6 The range of the rectangular frame in the middle is determined, and then the image corresponding to the palm area range is determined as the second palm print image. The preset coefficient may be a value greater than 1, for example, the preset coefficient may be 1.5, and the preset coefficient may be appropriately selected according to the actual application situation, and is not specifically limited here. Figure 7 As shown, Figure 7 is a schematic diagram of a second palmprint image obtained by extracting the palmprint region of the target palm model. Figure 7 In the example, four second palm print images are given, Figure 7 It can be seen that different second palm print images correspond to different target palm models, and different target palm models are obtained by fusing different first palm print images and different three-dimensional palm models.
[0122] In this embodiment, by using the palm print image generation method including the above steps 110 to 140, after randomly generating a three-dimensional palm model and a first palm print image corresponding to a target identifier, the first palm print image is fused with the three-dimensional palm model to obtain a target palm model. Since the target palm model is obtained by fusion of the three-dimensional palm model and the first palm print image, the target palm model is a three-dimensional palm model with palm print information corresponding to the target identifier, which can be closer to a palm in a real scene. Therefore, by extracting the palm print area of the target palm model, a second palm print image that can more accurately reflect the palm print information of a palm in a real scene can be obtained. In this case, after the palm print recognition model is trained using the second palm print image, the recognition accuracy of the palm print recognition model for the palm prints of the palms in the real scene can be effectively improved. In addition, since the first palmprint image and the three-dimensional palm model are both randomly generated, a large number of random first palmprint images and three-dimensional palm models can be easily generated, and then each first palmprint image and each three-dimensional palm model can be fused to obtain a large number of different target palm models. When the palmprint area is extracted for each target palm model, a large number of different second palmprint images can be obtained, which can effectively overcome the problem of insufficient training data set, is conducive to improving the training effect of the palmprint recognition model, and further improves the robustness and recognition accuracy of the palmprint recognition model.
[0123] In a possible implementation, in the process of randomly generating the first palm print image, when executing the step of randomly generating the palm print main line, the number of palm print main lines to be generated can be determined first, and the first Bezier curves consistent with the number of palm print main lines can be randomly generated. Then, for each first Bezier curve, the coordinates of the first curve starting point and the coordinates of the first curve end point are determined, and the coordinates of the first curve midpoint are determined according to the coordinates of the first curve starting point and the coordinates of the first curve end point. Then, each palm print main line is generated according to the coordinates of the first curve starting point, the coordinates of the first curve midpoint and the coordinates of the first curve end point of each first Bezier curve. Wherein, each palm has 3 to 5 palm print main lines in general, so the palm print main lines of each first palm print image are not all the same. Therefore, when randomly generating the palm print main lines in the first palm print image, it is necessary to first determine the number of palm print main lines to be generated, and then randomly generate the palm print main lines according to the number. Since the palm print main lines are generally curves, after determining the number of palm print main lines to be generated, the first Bezier curve consistent with the number of palm print main lines can be randomly generated, and the first Bezier curve is used to simulate the real palm print main lines. It should be noted that Bezier curve is a basic tool for computer graphics and image modeling, and is one of the most commonly used basic lines in graphics modeling. Figure 8As shown, the Bezier curve mainly includes three key parameter points, namely, a starting point 801, an intermediate point 802 and an end point 803. The Bezier curve edits the graph by controlling the starting point 801, the intermediate point 802 and the end point 803 on the curve. When the two end points of the Bezier curve (i.e., the starting point 801 or the end point 803) are moved, the curvature of the Bezier curve can be changed, that is, the curvature of the Bezier curve can be changed; when the intermediate point 802 of the Bezier curve is moved, the Bezier curve will move evenly when both the starting point 801 and the end point 803 are locked. In one embodiment, the first Bezier curve can be a second-order Bezier curve or a multi-order Bezier curve, which can be appropriately selected according to the actual application situation, and is not specifically limited here. Among them, the second-order Bezier curve refers to a Bezier curve including a starting point, an intermediate point and an end point, and the multi-order Bezier curve refers to a Bezier curve including a starting point, multiple intermediate points and an end point.
[0124] In a possible implementation, after randomly generating a first Bezier curve that is consistent with the number of palm print main lines, since the first Bezier curve is randomly generated, the first Bezier curve may not necessarily conform to the palm print main lines in the real scene. In this case, the first curve starting point coordinates and the first curve end point coordinates of the first Bezier curve may be determined first, and then the first curve midpoint coordinates of the first Bezier curve may be determined according to the first curve starting point coordinates and the first curve end point coordinates, and then the first Bezier curve may be adjusted according to the first curve midpoint coordinates, and a more accurate palm print main line that conforms to the real scene may be generated according to the first curve starting point coordinates, the first curve midpoint coordinates, and the first curve end point coordinates. When determining the first curve midpoint coordinates according to the first curve starting point coordinates and the first curve end point coordinates, the first curve midpoint coordinate area may be determined according to the first curve starting point coordinates and the first curve end point coordinates, and then the coordinates of a position in the first curve midpoint coordinate area may be randomly selected as the first curve midpoint coordinates. Among them, when determining the coordinate area of the midpoint of the first curve according to the coordinates of the first curve starting point and the first curve end point, the first curve starting point and the first curve end point can be connected by a line segment, and then the midpoint of the first line segment between the first curve starting point and the first curve end point is determined in the line segment, and the coordinates of the midpoint of the first line segment are determined according to the coordinates of the first curve starting point and the first curve end point, and then the coordinate range of the first target area with the midpoint of the first line segment as the center is determined according to the coordinates of the midpoint of the first line segment. At this time, the coordinate range of the first target area is the coordinate area of the midpoint of the first curve. It should be noted that the first target area with the midpoint of the first line segment as the center can be a rectangular area, a circular area, an elliptical area, and other areas of different shapes, which are not specifically limited here. For example, assuming that the first target area with the midpoint of the first line segment as the center is a rectangular area, then the side length of the rectangular area can be a preset length value, and two of the sides of the rectangular area are parallel to the line segment connecting the starting point of the first curve and the end point of the first curve, wherein the preset length value is smaller than the side length of the palm area; for another example, assuming that the first target area with the midpoint of the first line segment as the center is a circular area, then the radius of the circular area can be a preset length value, and the preset length value is smaller than the side length of the palm area.
[0125] The following is a specific example to illustrate the process of randomly generating the main line of the palm print.
[0126] Assuming that the number of palm print main lines to be generated is m, and the side length of the palm area used to carry the palm print main lines is 1 (i.e., unit length), then the number of first Bezier curves used to generate the palm print main lines is m, and the coordinate values of the three key parameter points of the first Bezier curve are all in the range of [0, 1]. In this case, the coordinates of the first curve starting point of the first Bezier curve can be determined according to the following formula (2), and the coordinates of the first curve end point of the first Bezier curve can be determined according to the following formula (3):
[0127]
[0128]
[0129] Assume that the coordinates of the starting point of the first curve are randomly determined as (x a ,y a ), the coordinates of the end point of the first curve are (x b ,y b ), then the first curve starting point and the first curve end point can be connected by a line segment, and then the first line segment midpoint between the first curve starting point and the first curve end point can be determined in the line segment, and the coordinates of the first line segment midpoint can be determined according to the coordinates of the first curve starting point and the first curve end point. Assuming that the coordinates of the first line segment midpoint are determined to be (x c ,y c ), then the coordinates of the midpoint of the first Bezier curve can be controlled to be (x c ,y c ) is the center and the side length is , where two sides of the rectangular area are parallel to the line segment connecting the starting point of the first curve and the end point of the first curve. Assume that the line segment connecting the starting point of the first curve and the end point of the first curve belongs to straight line A, and straight line A satisfies y=k1x+b1, and straight line B passing through the midpoint of the line segment and perpendicular to straight line A satisfies y=k2x+b2, and is parallel to straight line A and has a vertical distance from straight line A of The straight lines are y=k1x+b3 and y=k1x+b4, which are parallel to the straight line B and the vertical distance from the straight line B is The straight lines are y=k2x+b5 and y=k2x+b6, where y is the dependent variable of the straight line, x is the independent variable of the straight line, k1 and k2 are the slopes of the straight line, b1, b2, b3, b4, b5 and b6 are the intercepts of the straight line. Then, based on these straight lines, it can be determined that the value range of the coordinates of the midpoint of the first curve satisfies the following formula (4):
[0130]
[0131] After the coordinates of the first curve starting point, the first curve end point and the first curve midpoint are randomly determined according to the above formulas (2) to (4), a more accurate palmprint main line that is consistent with the real scene can be generated according to the coordinates of the first curve starting point, the first curve end point and the first curve midpoint. It should be noted that each time the above operation is performed, a palmprint main line can be randomly generated. Therefore, when the above operation is performed m times, all the required palmprint main lines can be obtained.
[0132] In a possible implementation, in the process of randomly generating the first palm print image, when executing the step of randomly generating the palm print fine lines, the number of palm print fine lines to be generated can be determined first, and the second Bezier curve consistent with the number of palm print fine lines can be randomly generated, and then, for each second Bezier curve, the coordinates of the second curve starting point and the coordinates of the second curve end point are determined, and the coordinates of the second curve midpoint are determined according to the coordinates of the second curve starting point and the coordinates of the second curve end point, and then, according to the coordinates of the second curve starting point, the coordinates of the second curve midpoint and the coordinates of the second curve end point of each second Bezier curve, each palm print fine line is generated. Wherein, the number of palm print fine lines of each palm is generally between 5 and 15, so the palm print fine lines of each first palm print image are not all the same, so when randomly generating the palm print fine lines in the first palm print image, it is necessary to first determine the number of palm print fine lines to be generated, and then randomly generate the palm print fine lines according to the number. Since the palm print fine lines are generally curves, after determining the number of palm print fine lines to be generated, a second Bezier curve consistent with the number of palm print fine lines can be randomly generated, and the second Bezier curve is used to simulate the real palm print fine lines. In one embodiment, the second Bezier curve may be a second-order Bezier curve or a multi-order Bezier curve, which may be appropriately selected according to actual application conditions and is not specifically limited herein.
[0133] In a possible implementation, after randomly generating a second Bezier curve that is consistent with the number of palm fine lines, since the second Bezier curve is randomly generated, the second Bezier curve may not necessarily conform to the palm fine lines in the real scene. In this case, the second curve starting point coordinates and the second curve end point coordinates of the second Bezier curve may be determined first, and then the second curve midpoint coordinates of the second Bezier curve may be determined according to the second curve starting point coordinates and the second curve end point coordinates, and then the second Bezier curve may be adjusted according to the second curve midpoint coordinates, and more accurate palm fine lines that conform to the real scene may be generated according to the second curve starting point coordinates, the second curve midpoint coordinates, and the second curve end point coordinates. When determining the second curve midpoint coordinates according to the second curve starting point coordinates and the second curve end point coordinates, the second curve midpoint coordinate area may be determined according to the second curve starting point coordinates and the second curve end point coordinates, and then the coordinates of a position in the second curve midpoint coordinate area may be randomly selected as the second curve midpoint coordinates. Among them, when determining the coordinate area of the second curve midpoint according to the coordinates of the second curve starting point and the second curve end point, the second curve starting point and the second curve end point can be first connected by a line segment, and then the second line segment midpoint between the second curve starting point and the second curve end point is determined in the line segment, and the coordinates of the second line segment midpoint are determined according to the coordinates of the second curve starting point and the second curve end point, and then the coordinate range of the second target area with the second line segment midpoint as the center is determined according to the coordinates of the second line segment midpoint. At this time, the coordinate range of the second target area is the second curve midpoint coordinate area. It should be noted that the second target area with the second line segment midpoint as the center can be a rectangular area, a circular area, an elliptical area, and other areas of different shapes, which are not specifically limited here. For example, assuming that the second target area with the midpoint of the second line segment as the center is a rectangular area, then the side length of the rectangular area can be a preset length value, and two of the sides of the rectangular area are parallel to the line segment connecting the starting point of the second curve and the end point of the second curve, wherein the preset length value is smaller than the side length of the palm area; for another example, assuming that the second target area with the midpoint of the second line segment as the center is a circular area, then the radius of the circular area can be a preset length value, and the preset length value is smaller than the side length of the palm area.
[0134] In a possible implementation, in real scenes, due to various reasons such as ambient light, shooting angle, hand posture, etc., the palm print textures in different palm images taken of the same palm will be slightly different. In order to accurately simulate the palm prints in real scenes, after randomly generating the third palm print image, slight disturbance noise can be added to the third palm print image. Moreover, after adding different disturbance noises to the third palm print image, multiple first palm print images that are different from each other can be obtained. Therefore, the purpose of expanding the training data set can be achieved, thereby providing a rich data basis for the subsequent training of the palm print recognition model and improving the robustness of the trained palm print recognition model. Wherein, when the third palmprint image is randomly perturbed to obtain the first palmprint image, in order to prevent the problem of overfitting, at least one of the color of the palmprint main line, the width of the palmprint main line, the color of the palmprint fine line or the width of the palmprint fine line in the third palmprint image can be randomly adjusted to obtain the fourth palmprint image, and when the third palmprint image is randomly adjusted, a background image can be randomly selected. After the fourth palmprint image is obtained and the background image is randomly selected, the fourth palmprint image and the background image can be image fused to obtain the first palmprint image. Wherein, the first palmprint image obtained by randomly perturbing the third palmprint image can be expressed by the following formula (5):
[0135]
[0136] In formula (5), c represents the color of the curve (such as the color of the main line of the palm print or the color of the fine lines of the palm print), w represents the width of the curve (such as the width of the main line of the palm print or the width of the fine lines of the palm print), I represents the background image, represents the main line of the palmprint belonging to the i-th target identifier and corresponding to the j-th background image, represents the palm fine lines belonging to the i-th target mark and corresponding to the j-th background image, synthesize(*) represents the image synthesis process, represents the first palm print image belonging to the i-th target identifier and corresponding to the j-th background image. Fig. 9 As shown, Fig. 9 is a schematic diagram of the first palmprint image obtained by randomly perturbing the third palmprint image. Fig. 9In the embodiment, four first palmprint images are given as examples. In different first palmprint images, at least one of the color of the main line of the palmprint, the width of the main line of the palmprint, the color of the fine lines of the palmprint or the width of the fine lines of the palmprint is different, and different first palmprint images have different background images. Therefore, by randomly perturbing the third palmprint image to obtain the first palmprint image, not only can the purpose of making the first palmprint image accurately simulate the palm print in the real scene be achieved, but also the purpose of expanding the training data set can be achieved, thereby providing a rich data basis for the subsequent training of the palmprint recognition model and improving the robustness of the trained palmprint recognition model.
[0137] Reference Fig.10 As shown, Fig.10 1 is a flowchart of a palmprint recognition model training method provided by an embodiment of the present invention. The palmprint recognition model training method can be executed by a terminal or a server, or by both a terminal and a server. In the embodiment of the present invention, the method is executed by a server as an example for explanation. Fig.10 The palmprint recognition model training method includes but is not limited to steps 1010 to 1030.
[0138] Step 1010: Obtain a first palmprint image sample and first label information, a second palmprint image sample and second label information, wherein the first palmprint image sample is generated by a palmprint image generation method.
[0139] In this step, the first palmprint image sample is generated by the palmprint image generation method, that is, the first palmprint image sample is the second palmprint image obtained by extracting the palmprint area of the target palm model as described above. The second palmprint image sample is a palmprint image of a palm in a real scene, which can be obtained by collecting public images on the Internet, or by photographing different palms using different shooting terminals, which is not specifically limited here. The first label information is identification information corresponding to the first palmprint image sample. Since the first palmprint image sample is generated by the palmprint image generation method, the first label information is the target identification as described above. The second label information is identification information corresponding to the second palmprint image sample. Since the second palmprint image sample is a palmprint image of a palm in a real scene, the second label information can be identification information used to characterize the identity of the object corresponding to the palm in the real scene. In some embodiments, the second label information can be a corresponding object identity identifier, or it can be identification information that has a mapping relationship with the corresponding object identity identifier, which is not specifically limited here. The second tag information may be composed of at least one of numbers, letters or other symbols, wherein the other symbols may be other language symbols or other identification symbols, etc., which are not specifically limited here.
[0140] Step 1020: train the initial palmprint recognition model using the first palmprint image sample to obtain the first palmprint recognition model, wherein in the process of training the initial palmprint recognition model using the first palmprint image sample, correct the parameters of the initial palmprint recognition model according to the first label information.
[0141] It should be noted that, compared with the two-dimensional palm print image obtained by conventional methods (such as shooting, etc.), the first palm print image sample obtained according to the three-dimensional target palm model can more accurately reflect the palm print information of the palm in the real scene. Therefore, in this step, after the first palm print image sample and the first label information are obtained in step 1010, the first palm print image sample can be used to train the initial palm print recognition model to obtain a first palm print recognition model with better robustness, wherein, in the process of training the initial palm print recognition model using the first palm print image sample, the parameters of the initial palm print recognition model are corrected according to the first label information. In this step, when the first palm print image sample is used to train the initial palm print recognition model to obtain the first palm print recognition model, the first palm print image sample can assist the first palm print recognition model to pay attention to the subtle changes between different palm print textures and the changes of the same palm print under different postures of the palm, thereby prompting the first palm print recognition model to learn more distinguishing palm print features, making the first palm print recognition model more robust and improving the ability of the first palm print recognition model to recognize palm prints in real scenes. It should be noted that the initial palmprint recognition model in this step can be a deep neural network model, a deep convolutional neural network model, or other types of neural network models. It can be appropriately selected according to the actual application situation and is not specifically limited here.
[0142] In this step, when the initial palmprint recognition model is trained using the first palmprint image sample, the first palmprint image sample can be input into the initial palmprint recognition model. At this time, the initial palmprint recognition model will perform palmprint feature extraction and palmprint feature recognition on the first palmprint image sample, and output a prediction result corresponding to the first palmprint image sample. Then, a prediction loss value is obtained according to the prediction result output by the initial palmprint recognition model and the first label information. For example, the prediction loss value is calculated according to the palmprint feature corresponding to the prediction result (i.e., the palmprint feature obtained by the initial palmprint recognition model performing palmprint feature extraction on the first palmprint image sample) and the palmprint feature corresponding to the first label information (i.e., the palmprint feature of the first palmprint image sample obtained in advance). Then, the parameters of the initial palmprint recognition model are corrected according to the prediction loss value until the prediction result output by the initial palmprint recognition model is consistent with the first label information. At this time, a trained first palmprint recognition model can be obtained.
[0143] Step 1030: train the first palmprint recognition model using the second palmprint image sample to obtain a target palmprint recognition model, wherein in the process of training the first palmprint recognition model using the second palmprint image sample, correct the parameters of the first palmprint recognition model according to the second label information.
[0144] It should be noted that, although the first palmprint image sample obtained according to the three-dimensional target palm model can more accurately reflect the palmprint information of the palm in the real scene, the first palmprint image sample is not essentially the palmprint image of the palm in the real scene, and there are still certain differences between the first palmprint image sample and the palmprint image of the palm in the real scene. Therefore, in order to improve the palmprint recognition ability of the first palmprint recognition model for the real palm in the real scene, the second palmprint image sample can be further used to train the first palmprint recognition model, wherein, in the process of training the first palmprint recognition model using the second palmprint image sample, the parameters of the first palmprint recognition model are corrected according to the second label information. Since the second palmprint image sample is the palmprint image of the palm in the real scene, when the second palmprint image sample is used to train the first palmprint recognition model, the effect of fine-tuning the first palmprint recognition model can be achieved, so that the target palmprint recognition model obtained after training with the second palmprint image sample can have a better recognition ability for the palmprint in the real scene.
[0145] In this step, when the second palmprint image sample is used to train the first palmprint recognition model, the second palmprint image sample can be input into the first palmprint recognition model. At this time, the first palmprint recognition model will perform palmprint feature extraction and palmprint feature recognition on the second palmprint image sample, and output a prediction result corresponding to the second palmprint image sample. Then, a prediction loss value is obtained according to the prediction result output by the first palmprint recognition model and the second label information. For example, the prediction loss value is calculated according to the palmprint feature corresponding to the prediction result (i.e., the palmprint feature obtained by extracting the palmprint feature of the second palmprint image sample by the first palmprint recognition model) and the palmprint feature corresponding to the second label information (i.e., the palmprint feature of the second palmprint image sample obtained in advance). Then, the parameters of the first palmprint recognition model are corrected according to the prediction loss value until the prediction result output by the first palmprint recognition model is consistent with the second label information. At this time, a trained target palmprint recognition model can be obtained.
[0146] As shown in the following Table 1, Table 1 shows the comparison of recognition effects between the target palmprint recognition model trained by the palmprint recognition model training method provided by the embodiment of the present invention and the traditional palmprint recognition model trained by the traditional training method.
[0147] Table 1
[0148]
[0149] In Table 1, the public data set refers to the palm image data set publicly available on the Internet, and the business data set refers to the palm image data set obtained when performing business operations such as payment services or login services. In Table 1, the True Positive Rate (TPR) is used as the evaluation indicator, where TPR refers to the situation where the classifier correctly classifies and is itself a positive example. According to the data in Table 1, whether on a public data set or a business data set, the target palmprint recognition model trained by the palmprint recognition model training method provided in the embodiment of the present invention has better performance. Among them, ArcFace (Additive Angular Margin Loss) is a face recognition training framework that can be used for palmprint recognition.
[0150] The following is a complete description of the principles of the palmprint image generation method and the palmprint recognition model training method provided by the embodiments of the present invention with some specific examples.
[0151] Reference Fig.11 As shown, Fig.11 It is an overall flow chart of the palmprint image generation method and the palmprint recognition model training method provided by an embodiment of the present invention. The overall flow chart specifically includes but is not limited to the following steps 1110 to 1170.
[0152] Step 1110: Randomly generate different first palmprint images.
[0153] In this step, when randomly generating the first palmprint image, the third palmprint image may be randomly generated first, and then the third palmprint image may be randomly disturbed to obtain the first palmprint image. Wherein, when generating the third palmprint image, the palmprint main line and the palmprint fine lines may be randomly generated first, and then the third palmprint image may be obtained according to the palmprint main line and the palmprint fine lines. For example, the randomly generated palmprint main line and the palmprint fine lines may be combined to obtain the third palmprint image. After obtaining the third palmprint image, the third palmprint image may be randomly disturbed by performing different processing such as random adjustment of the color or random adjustment of the size of the palmprint main line or the palmprint fine lines, so as to generate different first palmprint images, thereby effectively expanding the training data set and providing a data basis for subsequent model training.
[0154] When randomly generating the palm print main lines, the number of the palm print main lines to be generated can be determined first, and the first Bezier curves consistent with the number of the palm print main lines can be randomly generated. Then, for each first Bezier curve, the first curve starting point coordinates and the first curve end point coordinates are determined. Then, the first curve midpoint coordinate area is determined according to the first curve starting point coordinates and the first curve end point coordinates, and the coordinates of a position are randomly selected in the first curve midpoint coordinate area as the first curve midpoint coordinates. After the first curve starting point coordinates, the first curve end point coordinates and the first curve midpoint coordinates are determined, each palm print main line is generated according to the first curve starting point coordinates, the first curve midpoint coordinates and the first curve end point coordinates of each first Bezier curve.
[0155] When randomly generating palm fine lines, the number of palm fine lines to be generated can be determined first, and a second Bezier curve consistent with the number of palm fine lines can be randomly generated. Then, for each second Bezier curve, the second curve starting point coordinates and the second curve end point coordinates are determined. Then, the second curve midpoint coordinate area is determined according to the second curve starting point coordinates and the second curve end point coordinates, and the coordinates of a position are randomly selected in the second curve midpoint coordinate area as the second curve midpoint coordinates. After the second curve starting point coordinates, the second curve end point coordinates and the second curve midpoint coordinates are determined, each palm fine line is generated according to the second curve starting point coordinates, the second curve midpoint coordinates and the second curve end point coordinates of each second Bezier curve.
[0156] Among them, when the third palmprint image is randomly perturbed to generate the first palmprint image, at least one of the color of the palmprint main line, the width of the palmprint main line, the color of the palmprint fine lines or the width of the palmprint fine lines in the third palmprint image can be randomly adjusted to obtain the fourth palmprint image, and then a background image is randomly selected, and then the fourth palmprint image and the background image are fused to obtain the first palmprint image.
[0157] Step 1120: Randomly generate different three-dimensional palm models.
[0158] In this step, when randomly generating a three-dimensional palm model, the MANO model can be used to perform three-dimensional palm modeling to generate three-dimensional palm models of different postures. When randomly generating a three-dimensional palm model, shape data and posture data can be randomly generated first, and then the shape data and posture data are input into the MANO model to perform three-dimensional palm modeling to obtain a three-dimensional palm model. Since the three-dimensional palm model generated by the MANO model can simulate a palm in a real scene, when the three-dimensional palm model is used to fuse with the first palm print image in the subsequent step, a synthetic palm print data set that is closer to the palm in the real scene can be obtained, thereby achieving the purpose of effectively expanding the training data set.
[0159] Step 1130: Fuse the first palmprint image and the three-dimensional palm model to obtain a large number of synthetic palmprint data sets.
[0160] In this step, since different first palmprint images are generated in step 1110 and different three-dimensional palm models are generated in step 1120, in order to overcome the problem in the related art that simulated palmprint data cannot accurately reflect the palmprint information of the palm in the real scene, each first palmprint image can be fused with each three-dimensional palm model to obtain multiple target palm models, so that each target palm model can be closer to the palm in the real scene. Then, palmprint area extraction is performed on each target palm model to obtain multiple second palmprint images that can more accurately reflect the palmprint information of the palm in the real scene. At this time, a synthetic palmprint data set can be generated according to these second palmprint images.
[0161] When extracting the palm print area of the target palm model to obtain the second palm print image, the first finger gap position, the second finger gap position and the third finger gap position in the target palm model can be determined first, wherein the second finger gap position is located between the first finger gap position and the third finger gap position, and then the first coordinate axis is determined according to the first finger gap position and the third finger gap position, and the second coordinate axis is determined according to the second finger gap position and the first coordinate axis, wherein the second coordinate axis is perpendicular to the first coordinate axis, and then the palm print center point is determined in the second coordinate axis according to the distance between the first finger gap position and the third finger gap position, and then the second palm print image is determined according to the first finger gap position, the third finger gap position and the palm print center point.
[0162] Through step 1110 to step 1130, a large number of synthetic palmprint data sets can be obtained, which can not only effectively overcome the problem of insufficient training data sets, but also effectively improve the training effect of the palmprint recognition model when these synthetic palmprint data sets are used to train the palmprint recognition model, thereby improving the robustness and recognition accuracy of the palmprint recognition model.
[0163] Step 1140: Generate an initial palmprint recognition model.
[0164] The initial palmprint recognition model generated in this step can be a deep neural network model, a deep convolutional neural network model, or other types of neural network models. It can be appropriately selected according to the actual application situation and is not specifically limited here.
[0165] Step 1150: Use the synthetic palmprint data set to train the initial palmprint recognition model to obtain a first palmprint recognition model.
[0166] It should be noted that, compared with the two-dimensional palm print image obtained by conventional methods (such as shooting, etc.), the second palm print image (i.e., the synthetic palm print data set) obtained according to the three-dimensional target palm model can more accurately reflect the palm print information of the palm in the real scene. Therefore, in this step, the synthetic palm print data set can be used to train the initial palm print recognition model to obtain a first palm print recognition model with better robustness. When the synthetic palm print data set is used to train the initial palm print recognition model to obtain the first palm print recognition model, the synthetic palm print data set can assist the first palm print recognition model to pay attention to the subtle changes between different palm print textures and the changes of the same palm print under different palm postures, thereby prompting the first palm print recognition model to learn more discriminative palm print features, making the first palm print recognition model more robust and improving the ability of the first palm print recognition model to recognize palm prints in real scenes.
[0167] It should be noted that the synthetic palmprint data set also includes the first label information corresponding to the second palmprint image. When the synthetic palmprint data set is used to train the initial palmprint recognition model, the second palmprint image in the synthetic palmprint data set can be input into the initial palmprint recognition model. At this time, the initial palmprint recognition model will perform palmprint feature extraction and palmprint feature recognition on the second palmprint image, and output a prediction result corresponding to the second palmprint image. Then, the prediction loss value is obtained according to the prediction result output by the initial palmprint recognition model and the first label information. For example, the prediction loss value is calculated according to the palmprint feature corresponding to the prediction result (i.e., the palmprint feature obtained by the initial palmprint recognition model performing palmprint feature extraction on the second palmprint image) and the palmprint feature corresponding to the first label information (i.e., the palmprint feature of the second palmprint image obtained in advance). Then, the parameters of the initial palmprint recognition model are corrected according to the prediction loss value until the prediction result output by the initial palmprint recognition model is consistent with the first label information. At this time, the trained first palmprint recognition model can be obtained.
[0168] Step 1160: Obtain a real palmprint dataset.
[0169] It should be noted that, although the synthetic palmprint dataset obtained based on the three-dimensional target palm model can more accurately reflect the palmprint information of the palm in the real scene, the synthetic palmprint dataset is not essentially the palmprint image of the palm in the real scene, and there are still certain differences between the synthetic palmprint dataset and the palmprint image of the palm in the real scene. Therefore, in order to improve the palmprint recognition ability of the first palmprint recognition model for the real palm in the real scene, the real palmprint dataset can be obtained, so that the real palmprint dataset can be used to adjust the first palmprint recognition model in the subsequent steps, so that the target palmprint recognition model obtained by training with the real palmprint dataset can have better recognition ability for the palmprints in the real scene.
[0170] The real palm print data set may be obtained by collecting public images on the Internet, or by photographing different palms using different photographing terminals, which is not specifically limited here.
[0171] Step 1170: Use the real palmprint data set to train the first palmprint recognition model to obtain a target palmprint recognition model.
[0172] In this step, since the real palmprint data set is obtained in step 1160, the first palmprint recognition model can be trained using the real palmprint data set to obtain a target palmprint recognition model, so that the target palmprint recognition model trained with the real palmprint data set can have better recognition capabilities for palmprints in real scenes.
[0173] It should be noted that the real palmprint data set includes real palmprint data and second label information corresponding to the real palmprint data. When the real palmprint data set is used to train the first palmprint recognition model, the real palmprint data in the real palmprint data set can be input into the first palmprint recognition model. At this time, the first palmprint recognition model will perform palmprint feature extraction and palmprint feature recognition on the real palmprint data, and output a prediction result corresponding to the real palmprint data. Then, the prediction loss value is obtained according to the prediction result output by the first palmprint recognition model and the second label information. For example, the prediction loss value is calculated according to the palmprint feature corresponding to the prediction result (i.e., the palmprint feature obtained by extracting the palmprint feature of the real palmprint data by the first palmprint recognition model) and the palmprint feature corresponding to the second label information (i.e., the palmprint feature of the real palmprint data obtained in advance). Then, the parameters of the first palmprint recognition model are corrected according to the prediction loss value until the prediction result output by the first palmprint recognition model is consistent with the second label information. At this time, the trained target palmprint recognition model can be obtained.
[0174] Reference Fig.12 As shown, Fig.12 This is a flow chart of a method for implementing palmprint recognition using a target palmprint recognition model provided by an embodiment of the present invention. The method flow specifically includes but is not limited to the following steps 1210 to 1270.
[0175] Step 1210: The user initiates a payment request through a payment terminal.
[0176] It should be noted that the payment terminal can be provided with an image acquisition module (such as a camera or an image sensor, etc.) for capturing images. When a user initiates a payment request through the payment terminal, the user can place his or her palm in front of the image acquisition module so that the image acquisition module can obtain the user's hand image, so as to perform subsequent identity recognition operations and payment operations.
[0177] Step 1220: The payment terminal obtains the user's hand image and sends the hand image to the server.
[0178] In this step, after the user places his palm in front of the image acquisition module, the payment terminal can obtain the user's hand image through the image acquisition module and send the user's hand image to the server, so that the server performs identity recognition based on the user's hand image.
[0179] Step 1230: The server extracts a palm print image based on the hand image.
[0180] In this step, after the server receives the hand image sent by the payment terminal, the server can extract the palm print image based on the hand image, so that the subsequent steps can perform identity recognition based on the palm print image.
[0181] In this step, when the server extracts the palm print image according to the hand image, it can first determine the first finger gap position, the second finger gap position and the third finger gap position in the hand image, wherein the second finger gap position is located between the first finger gap position and the third finger gap position, and then determine the first coordinate axis according to the first finger gap position and the third finger gap position, and then determine the second coordinate axis according to the second finger gap position and the first coordinate axis, wherein the second coordinate axis is perpendicular to the first coordinate axis, and after determining the second coordinate axis, determine the center point of the palm print in the second coordinate axis according to the distance between the first finger gap position and the third finger gap position, and then determine the palm print image according to the first finger gap position, the third finger gap position and the center point of the palm print.
[0182] Step 1240: The server inputs the palmprint image into the trained target palmprint recognition model to perform palmprint recognition prediction and obtain a prediction result.
[0183] In this step, since the server has extracted the palmprint image based on the hand image in step 1230, the palmprint image can be input into the trained target palmprint recognition model for palmprint recognition prediction to obtain a prediction result.
[0184] Step 1250: The server obtains the registration image information pre-stored in the database.
[0185] In this step, since the server obtains the prediction result in step 1240, the pre-stored registration image information can be obtained from the database, so that the user can be identified according to the registration image information and the prediction result in the subsequent steps. It should be noted that the registration image information is the image information uploaded by the user when registering the identity. When the server receives the current image information and the identity identification request uploaded by the terminal, the server will compare the current image information with the registration image information according to the identity identification request to realize the identity identification of the user. For example, if the current image information is consistent with the registration image information, it means that the identity identification of the user is successful. If the current image information is inconsistent with the registration image information, it means that the identity identification of the user is unsuccessful.
[0186] Step 1260: The server calculates the similarity between the prediction result and the registered image information.
[0187] In this step, since the server obtains the prediction result in step 1240 and obtains the registered image information in step 1250, the similarity between the prediction result and the registered image information can be calculated, so that the subsequent steps can determine the recognition result according to the similarity between the prediction result and the registered image information. Among them, the similarity between the prediction result and the registered image information can be Euclidean distance, Pearson correlation coefficient or cosine similarity, etc., which is not specifically limited here. Among them, cosine similarity uses the cosine value of the angle between two vectors in the vector space as a measure of the difference between the two vectors. The closer the cosine similarity is to 1, the closer the angle between the two vectors is to 0 degrees, that is, the more similar the two vectors are. Euclidean distance refers to the natural length of a vector in a vector space, such as the distance from the push information feature vector to the object feature vector in the vector space. The Pearson correlation coefficient is obtained by dividing the covariance of two vectors by the standard deviation of the two vectors. When the Pearson correlation coefficient is 1, the two vectors are completely positively correlated; when the Pearson correlation coefficient is -1, the two vectors are completely negatively correlated; the larger the absolute value of the Pearson correlation coefficient, the stronger the correlation between the two vectors; the closer the Pearson correlation coefficient is to 0, the weaker the correlation between the two vectors.
[0188] Step 1270: The server determines a recognition result based on the similarity and returns the recognition result to the payment terminal.
[0189] In this step, since the server calculates the similarity between the prediction result and the registered image information in step 1260, the recognition result can be determined according to the similarity, and the recognition result can be returned to the payment terminal. For example, assuming that the similarity between the prediction result and the registered image information is cosine similarity, then when the similarity between the prediction result and the registered image information is greater than the preset similarity threshold, the recognition result can be determined to be a successful recognition; when the similarity between the prediction result and the registered image information is less than or equal to the preset similarity threshold, the recognition result can be determined to be an unsuccessful recognition. When the recognition result is a successful recognition, the server can return the successful recognition result to the payment terminal, so that the payment terminal can perform subsequent payment operations; when the recognition result is an unsuccessful recognition, the server can return the unsuccessful recognition result to the payment terminal, so that the payment terminal can display the unsuccessful recognition result to the user, reminding the user to change the payment method. It should be noted that the value of the preset similarity threshold can be appropriately selected according to the actual application situation. For example, the preset similarity threshold can be 0.5 or 0.8, which is not specifically limited here.
[0190] The following are some practical examples to illustrate the application scenarios of the embodiments of the present invention.
[0191] It should be noted that the palmprint image generation method provided in the embodiment of the present invention can be applied to different application scenarios such as transaction payment scenarios, access control scenarios or vehicle-mounted scenarios. The following description will be given using transaction payment scenarios, access control scenarios and vehicle-mounted scenarios as examples.
[0192] Scene 1
[0193] The palm print image generation method provided by the embodiment of the present invention can be applied to transaction payment scenarios. For example, before a consumer initiates a transaction payment behavior, the server can first randomly generate a palm print main line and a palm print fine line, and then generate a third palm print image based on the palm print main line and the palm print fine line, and then randomly adjust at least one of the color of the palm print main line, the width of the palm print main line, the color of the palm print fine line or the width of the palm print fine line in the third palm print image to obtain a fourth palm print image. At this time, the server randomly selects a background image, and then fuses the fourth palm print image with the background image to obtain a first palm print image. Then, the server randomly generates shape data and posture data, and performs three-dimensional palm modeling based on the shape data and the posture data to obtain a three-dimensional palm model. After the server randomly generates the first palm print image and the three-dimensional palm model, the server fuses the first palm print image with the three-dimensional palm model to obtain a target palm model, and then performs palm print area extraction on the target palm model to obtain a second palm print image. After the server obtains the second palmprint image, the server uses the second palmprint image as training data to train the initial palmprint recognition model to obtain the first palmprint recognition model, and then uses the real palmprint image as training data to further train the first palmprint recognition model to obtain the target palmprint recognition model. After the server obtains the target palmprint recognition model, when the consumer performs palmprint scanning payment through a terminal such as a smart phone or a cash register, in response to scanning the consumer's hand image, the smart phone or the cash register sends the consumer's hand image to the server. In response to receiving the consumer's hand image, the server inputs the hand image into the trained target palmprint recognition model for palmprint recognition. When the recognition is successful, the server sends the recognition result to the smart phone or the cash register. At this time, the smart phone or the cash register completes the payment operation according to the recognition result.
[0194] Scene 2
[0195] The palm print image generation method provided by the embodiment of the present invention can also be applied to access control scenarios. For example, before a resident requests to open a door through an access control terminal, the server can first randomly generate a palm print main line and a palm print fine line, and then generate a third palm print image based on the palm print main line and the palm print fine line, and then randomly adjust at least one of the color of the palm print main line, the width of the palm print main line, the color of the palm print fine line or the width of the palm print fine line in the third palm print image to obtain a fourth palm print image. At this time, the server randomly selects a background image, and then fuses the fourth palm print image with the background image to obtain a first palm print image. Then, the server randomly generates shape data and posture data, and performs three-dimensional palm modeling based on the shape data and posture data to obtain a three-dimensional palm model. After the server randomly generates the first palm print image and the three-dimensional palm model, the server fuses the first palm print image with the three-dimensional palm model to obtain a target palm model, and then performs palm print area extraction on the target palm model to obtain a second palm print image. After the server obtains the second palmprint image, the server uses the second palmprint image as training data to train the initial palmprint recognition model to obtain the first palmprint recognition model, and then uses the real palmprint image as training data to further train the first palmprint recognition model to obtain the target palmprint recognition model. After the server obtains the target palmprint recognition model, when the resident requests to open the door through the access control terminal, in response to scanning the resident's hand image, the access control terminal sends the resident's hand image to the server. In response to receiving the resident's hand image, the server inputs the hand image into the trained target palmprint recognition model for palmprint recognition. When the recognition is passed, the server sends the recognition result to the access control terminal. At this time, the access control terminal opens the door according to the recognition result.
[0196] Scene 3
[0197] The palm print image generation method provided by the embodiment of the present invention can also be applied to vehicle-mounted scenarios. For example, before the driver requests to start the vehicle through the vehicle-mounted terminal, the server can first randomly generate the palm print main line and the palm print fine lines, and then generate a third palm print image based on the palm print main line and the palm print fine lines, and then randomly adjust at least one of the color of the palm print main line, the width of the palm print main line, the color of the palm print fine lines or the width of the palm print fine lines in the third palm print image to obtain a fourth palm print image. At this time, the server randomly selects a background image, and then fuses the fourth palm print image with the background image to obtain a first palm print image. Then, the server randomly generates shape data and posture data, and performs three-dimensional palm modeling based on the shape data and posture data to obtain a three-dimensional palm model. After the server randomly generates the first palm print image and the three-dimensional palm model, the server fuses the first palm print image with the three-dimensional palm model to obtain a target palm model, and then performs palm print area extraction on the target palm model to obtain a second palm print image. After the server obtains the second palmprint image, the server uses the second palmprint image as training data to train the initial palmprint recognition model to obtain the first palmprint recognition model, and then uses the real palmprint image as training data to further train the first palmprint recognition model to obtain the target palmprint recognition model. After the server obtains the target palmprint recognition model, when the driver requests to start the vehicle through the vehicle-mounted terminal, in response to scanning the driver's hand image, the vehicle-mounted terminal sends the driver's hand image to the server. In response to receiving the driver's hand image, the server inputs the hand image into the trained target palmprint recognition model for palmprint recognition. When the recognition is passed, the server sends the recognition result to the vehicle-mounted terminal. At this time, the vehicle-mounted terminal starts the vehicle according to the recognition result.
[0198] It is to be understood that, although the steps in the above-mentioned various flow charts are shown in sequence according to the indication of the arrows, these steps are not necessarily performed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in the present embodiment, the execution of these steps does not have a strict order restriction, and these steps can be performed in other orders. Moreover, at least a portion of the steps in the above-mentioned flow charts can include a plurality of steps or a plurality of stages, and these steps or stages are not necessarily performed at the same time, but can be performed at different times, and the execution order of these steps or stages is not necessarily performed in sequence, but can be performed in turn or alternately with at least a portion of the steps or stages in other steps or other steps.
[0199] Reference Fig.13 The embodiment of the present invention further discloses a palmprint image generating device. The palmprint image generating device 1300 can implement the palmprint image generating method in the previous embodiment. The palmprint image generating device 1300 includes:
[0200] An image generating unit 1310 is used to randomly generate a first palm print image, where the first palm print image corresponds to a target identifier;
[0201] A model generation unit 1320, used to randomly generate three-dimensional palm models in different postures;
[0202] A model fusion unit 1330 is used to fuse the first palm print image with the three-dimensional palm model to obtain a target palm model;
[0203] The palmprint extraction unit 1340 is used to extract the palmprint area of the target palm model to obtain a second palmprint image, and the second palmprint image corresponds to the target identifier.
[0204] In one embodiment, the image generation unit 1310 is further configured to:
[0205] Randomly generate a third palmprint image;
[0206] The third palmprint image is randomly perturbed to obtain the first palmprint image.
[0207] In one embodiment, the image generation unit 1310 is further configured to:
[0208] Randomly generate palm print main lines;
[0209] Randomly generate palm fine lines;
[0210] The third palmprint image is obtained according to the palmprint main lines and the palmprint fine lines.
[0211] In one embodiment, the image generation unit 1310 is further configured to:
[0212] Determine the number of palmprint main lines to be generated, and randomly generate a first Bezier curve consistent with the number of palmprint main lines;
[0213] For each first Bezier curve, determine the coordinates of the first curve starting point and the first curve end point, and determine the coordinates of the first curve midpoint according to the coordinates of the first curve starting point and the first curve end point;
[0214] Each palmprint main line is generated according to the first curve starting point coordinates, the first curve midpoint coordinates and the first curve end point coordinates of each first Bezier curve.
[0215] In one embodiment, the image generation unit 1310 is further configured to:
[0216] Determine the coordinate area of the midpoint of the first curve according to the coordinates of the starting point of the first curve and the coordinates of the end point of the first curve;
[0217] The coordinates of a position are randomly selected in the first curve midpoint coordinate area as the first curve midpoint coordinates.
[0218] In one embodiment, the image generation unit 1310 is further configured to:
[0219] Determine the number of palm fine lines to be generated, and randomly generate a second Bezier curve consistent with the number of palm fine lines;
[0220] For each second Bezier curve, determine the coordinates of the second curve starting point and the second curve end point, and determine the coordinates of the second curve midpoint according to the coordinates of the second curve starting point and the second curve end point;
[0221] Each palm fine line is generated according to the second curve starting point coordinates, the second curve midpoint coordinates and the second curve end point coordinates of each second Bezier curve.
[0222] In one embodiment, the image generation unit 1310 is further configured to:
[0223] Determine the coordinate area of the midpoint of the second curve according to the coordinates of the starting point of the second curve and the coordinates of the end point of the second curve;
[0224] The coordinates of a position are randomly selected in the second curve midpoint coordinate area as the second curve midpoint coordinates.
[0225] In one embodiment, the image generation unit 1310 is further configured to:
[0226] Randomly adjusting at least one of the color of the main line of the palm print, the width of the main line of the palm print, the color of the fine lines of the palm print, or the width of the fine lines of the palm print in the third palm print image to obtain a fourth palm print image;
[0227] Randomly select a background image;
[0228] The fourth palmprint image and the background image are fused to obtain the first palmprint image.
[0229] In one embodiment, the model generation unit 1320 is further configured to:
[0230] Randomly generate shape data and posture data;
[0231] Three-dimensional palm modeling is performed according to the shape data and posture data to obtain three-dimensional palm models with different postures.
[0232] In one embodiment, the palmprint extraction unit 1340 is further used for:
[0233] Determine a first finger gap position, a second finger gap position, and a third finger gap position in the target palm model, wherein the second finger gap position is located between the first finger gap position and the third finger gap position;
[0234] Determine a first coordinate axis according to the first finger gap position and the third finger gap position;
[0235] Determine a second coordinate axis according to the second finger gap position and the first coordinate axis, wherein the second coordinate axis is perpendicular to the first coordinate axis;
[0236] Determine the center point of the palm print in the second coordinate axis according to the distance between the first finger gap position and the third finger gap position;
[0237] The second palm print image is determined according to the first finger gap position, the third finger gap position and the palm print center point.
[0238] It should be noted that, since the palmprint image generating device 1300 of this embodiment can implement the palmprint image generating method in the previous embodiment, the palmprint image generating device 1300 of this embodiment and the palmprint image generating method in the previous embodiment have the same technical principles and the same beneficial effects, and will not be described again here to avoid duplication of content.
[0239] Reference Fig.14 The embodiment of the present invention further discloses a palmprint recognition model training device. The palmprint recognition model training device 1400 can implement the palmprint recognition model training method in the previous embodiment. The palmprint recognition model training device 1400 includes:
[0240] The sample acquisition unit 1410 is used to acquire a first palmprint image sample and first label information, a second palmprint image sample and second label information, wherein the first palmprint image sample is generated by the palmprint image generating device described above;
[0241] A first training unit 1420 is used to train the initial palmprint recognition model using the first palmprint image sample to obtain the first palmprint recognition model, wherein in the process of training the initial palmprint recognition model using the first palmprint image sample, the parameters of the initial palmprint recognition model are corrected according to the first label information;
[0242] The second training unit 1430 is used to train the first palmprint recognition model using the second palmprint image samples to obtain a target palmprint recognition model, wherein in the process of training the first palmprint recognition model using the second palmprint image samples, the parameters of the first palmprint recognition model are corrected according to the second label information.
[0243] It should be noted that, since the palmprint recognition model training device 1400 of this embodiment can implement the palmprint recognition model training method in the previous embodiment, the palmprint recognition model training device 1400 of this embodiment and the palmprint recognition model training method in the previous embodiment have the same technical principles and the same beneficial effects, and in order to avoid repetition of content, they will not be repeated here.
[0244] Reference Fig.15 The embodiment of the present invention further discloses an electronic device, the electronic device 1500 comprising:
[0245] at least one processor 1501;
[0246] At least one memory 1502, used to store at least one program;
[0247] When at least one program is executed by at least one processor 1501, the palmprint image generation method in the previous embodiment is implemented, or the palmprint recognition model training method in the previous embodiment is implemented.
[0248] An embodiment of the present invention further discloses a computer-readable storage medium, which stores a computer program executable by a processor. When the computer program executable by the processor is executed by the processor, it is used to implement the palmprint image generation method as in the previous embodiment, or to implement the palmprint recognition model training method as in the previous embodiment.
[0249] An embodiment of the present invention further discloses a computer program product, including a computer program or computer instructions, wherein the computer program or computer instructions are stored in a computer-readable storage medium, and a processor of an electronic device reads the computer program or computer instructions from the computer-readable storage medium, and the processor executes the computer program or computer instructions, so that the electronic device executes the palmprint image generation method as in the previous embodiment, or executes the palmprint recognition model training method as in the previous embodiment.
[0250] The terms "first", "second", "third", "fourth", etc. (if any) in the description of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can, for example, be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0251] It should be understood that in the present invention, "at least one (item)" refers to one or more, and "plurality" refers to two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can represent: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.
[0252] In the several embodiments provided by the present invention, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, 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 an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0253] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0254] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0255] If the integrated unit is implemented in the form of 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 technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, referred to as ROM), random access memory (Random Access Memory, referred to as RAM), disk or optical disk and other media that can store program codes.
[0256] The step numbers in the above method embodiment are only provided for the convenience of explanation and description, and no limitation is imposed on the order of the steps. The execution order of each step in the embodiment can be adaptively adjusted according to the understanding of those skilled in the art.
Claims
1. A palmprint image generation method, characterized in that: The following steps are involved: Determining the number of palmprint main lines to be generated, and randomly generating a first Bezier curve consistent with the number of the palmprint main lines; For each of the first Bezier curves, determining the coordinates of the first curve starting point and the first curve end point, and determining the coordinates of the first curve midpoint according to the coordinates of the first curve starting point and the first curve end point; generating each of the palmprint main lines according to the coordinates of the first curve starting point, the coordinates of the first curve midpoint and the coordinates of the first curve end point of each of the first Bezier curves; Determine the number of palm fine lines to be generated, and randomly generate a second Bezier curve consistent with the number of the palm fine lines; For each of the second Bezier curves, determining the coordinates of the second curve start point and the second curve end point, and determining the coordinates of the second curve midpoint according to the coordinates of the second curve start point and the second curve end point; generating each of the palm fine lines according to the coordinates of the second curve starting point, the coordinates of the second curve midpoint and the coordinates of the second curve end point of each of the second Bezier curves; Obtaining a third palmprint image according to the palmprint main line and the palmprint fine lines; Randomly perturbing the third palmprint image to obtain a first palmprint image, wherein the first palmprint image corresponds to the target identifier; Randomly generate 3D palm models in different postures; The first palm print image is merged with the three-dimensional palm model through UV Map to obtain a target palm model; A palmprint region is extracted from the target palm model to obtain a second palmprint image, where the second palmprint image corresponds to the target identifier.
2. The palmprint image generation method according to claim 1, characterized in that: The determining the coordinates of the midpoint of the first curve according to the coordinates of the starting point of the first curve and the coordinates of the end point of the first curve comprises: Determine a coordinate region of a midpoint of the first curve according to the coordinates of the starting point of the first curve and the coordinates of the end point of the first curve; The coordinates of a position are randomly selected in the first curve midpoint coordinate area as the first curve midpoint coordinates.
3. The palmprint image generation method according to claim 1, characterized in that: The step of determining the coordinates of the midpoint of the second curve according to the coordinates of the starting point of the second curve and the coordinates of the end point of the second curve comprises: Determine the coordinate area of the midpoint of the second curve according to the coordinates of the starting point of the second curve and the coordinates of the end point of the second curve; The coordinates of a position are randomly selected in the second curve midpoint coordinate area as the second curve midpoint coordinates.
4. The palmprint image generation method according to claim 1, characterized in that: The randomly perturbing the third palmprint image to obtain the first palmprint image comprises: Randomly adjusting at least one of the color of the palmprint main line, the width of the palmprint main line, the color of the palmprint fine lines, or the width of the palmprint fine lines in the third palmprint image to obtain a fourth palmprint image; Randomly select a background image; The fourth palmprint image and the background image are fused to obtain a first palmprint image.
5. The palmprint image generation method according to claim 1, characterized in that: The randomly generated three-dimensional palm models in different postures include: Randomly generate shape data and posture data; Three-dimensional palm modeling is performed according to the shape data and the posture data to obtain three-dimensional palm models with different postures.
6. The palmprint image generation method according to claim 1, characterized in that: The step of extracting a palmprint region from the target palm model to obtain a second palmprint image includes: Determine a first finger gap position, a second finger gap position, and a third finger gap position in the target palm model, wherein the second finger gap position is located between the first finger gap position and the third finger gap position; Determine a first coordinate axis according to the first finger gap position and the third finger gap position; Determine a second coordinate axis according to the second finger gap position and the first coordinate axis, wherein the second coordinate axis is perpendicular to the first coordinate axis; Determine the center point of the palm print in the second coordinate axis according to the distance between the first finger gap position and the third finger gap position; A second palmprint image is determined according to the first finger gap position, the third finger gap position and the palmprint center point.
7. A palmprint recognition model training method, characterized in that: The following steps are involved: Acquire a first palmprint image sample and first label information, a second palmprint image sample and second label information, wherein the first palmprint image sample is the second palmprint image generated by the palmprint image generation method according to any one of claims 1 to 6, and the second palmprint image sample is a palmprint image of a palm in a real scene; Using the first palmprint image sample to train an initial palmprint recognition model to obtain a first palmprint recognition model, wherein in the process of using the first palmprint image sample to train the initial palmprint recognition model, the parameters of the initial palmprint recognition model are corrected according to the first label information; The first palmprint recognition model is trained using the second palmprint image sample to obtain a target palmprint recognition model, wherein in the process of training the first palmprint recognition model using the second palmprint image sample, the parameters of the first palmprint recognition model are corrected according to the second label information.
8. A palmprint image generating device, characterized in that: include: An image generating unit, used for determining the number of palmprint main lines to be generated, and randomly generating a first Bezier curve consistent with the number of the palmprint main lines; For each of the first Bezier curves, determine the coordinates of the first curve starting point and the first curve end point, and determine the coordinates of the first curve midpoint according to the coordinates of the first curve starting point and the first curve end point; generate each of the palmprint main lines according to the coordinates of the first curve starting point, the coordinates of the first curve midpoint and the first curve end point of each of the first Bezier curves; Determine the number of palm fine lines to be generated, randomly generate a second Bezier curve consistent with the number of the palm fine lines; for each of the second Bezier curves, determine the coordinates of the second curve starting point and the second curve end point, and determine the coordinates of the second curve midpoint according to the coordinates of the second curve starting point and the second curve end point; generate each of the palm fine lines according to the coordinates of the second curve starting point, the coordinates of the second curve midpoint and the coordinates of the second curve end point of each of the second Bezier curves; obtain a third palm print image according to the palm print main line and the palm fine lines; perform random perturbations on the third palm print image to obtain a first palm print image, wherein the first palm print image corresponds to a target identifier; A model generation unit, used for randomly generating three-dimensional palm models of different postures; A model fusion unit, used for fusing the first palmprint image with the three-dimensional palm model through UV Map to obtain a target palm model; The palmprint extraction unit is used to extract the palmprint area of the target palm model to obtain a second palmprint image, wherein the second palmprint image corresponds to the target identifier.
9. A palmprint recognition model training device, characterized in that: include: a sample acquisition unit, configured to acquire a first palmprint image sample and first label information, a second palmprint image sample and second label information, wherein the first palmprint image sample is the second palmprint image generated by the palmprint image generating device according to claim 8, and the second palmprint image sample is a palmprint image of a palm in a real scene; a first training unit, configured to train an initial palmprint recognition model using the first palmprint image sample to obtain a first palmprint recognition model, wherein in the process of training the initial palmprint recognition model using the first palmprint image sample, parameters of the initial palmprint recognition model are corrected according to the first label information; The second training unit is used to train the first palmprint recognition model using the second palmprint image samples to obtain a target palmprint recognition model, wherein in the process of training the first palmprint recognition model using the second palmprint image samples, the parameters of the first palmprint recognition model are corrected according to the second label information.
10. An electronic device, characterized in that: include: at least one processor; at least one memory for storing at least one program; When at least one of the programs is executed by at least one of the processors, the palmprint image generation method according to any one of claims 1 to 6 is implemented, or the palmprint recognition model training method according to claim 7 is implemented.
11. A computer-readable storage medium, characterized in that: A computer program executable by a processor is stored therein, and when the computer program executable by the processor is executed by the processor, it is used to implement the palmprint image generation method as described in any one of claims 1 to 6, or to implement the palmprint recognition model training method as described in claim 7.
12. A computer program product, comprising a computer program or computer instructions, characterized in that The computer program or the computer instructions are stored in a computer-readable storage medium, and the processor of the electronic device reads the computer program or the computer instructions from the computer-readable storage medium, and the processor executes the computer program or the computer instructions, so that the electronic device executes the palmprint image generation method as described in any one of claims 1 to 6, or executes the palmprint recognition model training method as described in claim 7.
Citation Information
Patent Citations
Feature extraction method and matching method of three-dimensional digital vein
CN109543535A
Palm print recognition method, feature extraction model training method, equipment and medium
CN113515988A