Palm print identification method and device based on GPGPU, and medium

By adopting GPGPU parallel computing and improved KL transformation algorithm in palm print recognition, combined with distributed storage and nearest neighbor classifier, the problem of insufficient CPU computing power in traditional methods is solved, the recognition speed and accuracy are improved, and the system is enhanced Robustness and recognition rate.

CN119131848APending Publication Date: 2024-12-13SHANDONG INSPUR SCI RES INST CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411324164.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-23
Publication Date
2024-12-13

AI Technical Summary

Technical Problem

When traditional palm print recognition methods process large-scale data and complex algorithms, due to insufficient computing power of the CPU, the recognition speed and accuracy are low, and it is difficult to effectively deal with challenges such as translation, rotation and lighting changes in palm print images.

Method used

Palmprint recognition is adopted based on GPGPU, and features are extracted through data acquisition, geometric preprocessing, and improved KL transformation algorithms. The parallel computing power and distributed storage system of GPGPU are used to optimize data processing and storage processes, combined with nearest neighbor classification The device realizes identification.

Benefits of technology

It significantly improves computing efficiency and recognition accuracy, enhances the robustness and recognition rate of the system, realizes efficient data storage and access performance, and provides new solutions for biometric technology.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119131848A_ABST
    Figure CN119131848A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of image processing, and relates to a palmprint recognition method and device based on a GPGPU, and a medium. The method comprises the following steps: acquiring an original palmprint image through a data acquisition system; preprocessing the original palmprint image to extract an interested palmprint area; the preprocessed palm print image is processed by a feature extraction system, and palm print features are extracted by using an improved KL transformation algorithm; the feature vectors are recorded and classified, palm print features are classified through a nearest neighbor classifier, and palm print recognition is achieved; the collected original palmprint image data, the preprocessed palmprint image data and the palmprint feature data after feature extraction are stored in a distributed storage system of the GPGPU, and the data storage and access process is optimized by using the parallel computing capability of the GPGPU and multi-channel transmission resources. According to the method, the parallel processing advantage of the GPGPU is utilized, and the operation efficiency can be remarkably improved when the palmprint image is processed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of image processing technology, and more particularly to a palmprint recognition method, device and medium based on GPGPU. Background Art

[0002] At present, biometric technology has extremely important application value in the field of identity recognition. Among many biometric recognition technologies, palmprint recognition technology has attracted much attention due to its unique advantages. Palmprint recognition technology not only has the stability, uniqueness and convenience common to biometric recognition technologies, but also has the characteristics of easy acquisition, large amount of information, and obvious main features, making palmprint recognition a very potential identity recognition method.

[0003] Traditional palmprint recognition methods mainly rely on the central processing unit (CPU) for data processing, but the computing power of the CPU often becomes a bottleneck when processing large-scale data and complex algorithms. With the development of technology, general-purpose graphics processing units (GPGPU) are gradually being used in various computing-intensive tasks due to their advantages in large-scale concurrent computing and intensive data processing. GPGPU is designed based on high throughput and is suitable for parallel processing of dense data. It can show higher efficiency than CPU when processing large data stream applications, such as artificial intelligence (machine learning) model training and reasoning, high-performance computing and other tasks.

[0004] In the field of palmprint recognition, in order to improve recognition speed and accuracy and reduce computational complexity, using GPGPU for accelerated computing has become a feasible solution. The palmprint recognition method based on GPGPU can not only make full use of the parallel computing capabilities of GPGPU, but also achieve more efficient data processing and feature extraction by optimizing algorithms and data structures.

[0005] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present application, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0006] In order to provide a basic understanding of some aspects of the disclosed embodiments, a brief summary is given below. The summary is not an extensive review, nor is it intended to identify key / critical components or delineate the scope of protection of these embodiments, but rather serves as a prelude to the detailed description that follows.

[0007] The embodiments of the present disclosure provide a palmprint recognition method, device, and medium based on GPGPU, which can improve recognition speed and accuracy, reduce computational complexity, and provide a more efficient, convenient, and accurate solution for identity recognition.

[0008] In some embodiments, the method comprises:

[0009] Collect the original palmprint image through the data acquisition system, and output the collected image in the form of matrix or vector;

[0010] Preprocessing the original palmprint image to extract the palmprint area of ​​interest, the preprocessing includes geometric preprocessing and grayscale preprocessing;

[0011] The preprocessed palmprint image is subjected to feature extraction system, and the palmprint features are extracted using improved KL transform algorithm to generate feature vectors;

[0012] The feature vectors are recorded and classified, and the palmprint features are classified using the nearest neighbor classifier. The matching result is determined by calculating the distance between the feature vectors of the test sample and the training sample to achieve palmprint recognition.

[0013] The collected original palmprint image data, preprocessed palmprint image data and feature-extracted palmprint feature data are stored in the distributed storage system of GPGPU, and the parallel computing capability and multi-channel transmission resources of GPGPU are used to optimize the data storage and access process.

[0014] Preferably, the geometric preprocessing includes palmprint image preprocessing based on a straight line fitting method and image sharpening preprocessing.

[0015] Preferably, the palmprint image preprocessing based on the straight line fitting method comprises the following steps:

[0016] Use Butterworth low-pass filter to smooth the original palmprint image, separate the palmprint from the background and the original grayscale, and convert the grayscale image into a binary image;

[0017] The contour tracking algorithm is used to extract the boundary of the palm print image and obtain the edge of the gap between two fingers;

[0018] Calculate the tangent of the gap between two fingers in the palm print image and determine the tangent of the gap between the two fingers;

[0019] Establish a palm line coordinate system by connecting the two tangent points to the y-axis, taking the midpoint of the line segment connecting the two points as the origin of the coordinate system, and taking the straight line passing through the point perpendicular to the y-axis as the x-axis;

[0020] In the palm line coordinate system, the central area of ​​the palm print image is intercepted as the palm print area of ​​interest;

[0021] Preferably, the image sharpening preprocessing method is a Gaussian high-pass filtering method.

[0022] Preferably, the feature extraction system adopts an improved KL transformation algorithm to extract the most representative features by performing a projection transformation on the palmprint image, and the improved KL transformation algorithm uses the original inter-class scatter matrix to calculate the projection feature axis.

[0023] Preferably, the original inter-class scatter matrix M b The formula is as follows:

[0024]

[0025] in, is the mean image of all training samples, represents the average image of the i-th type of training samples, P i represents the prior probability of the i-th category, and T represents the matrix transpose.

[0026] Preferably, the nearest neighbor classifier used in the classification decision system realizes the classification and recognition of palmprint features by calculating the distance between the feature vectors of the test sample and each training sample.

[0027] In some embodiments, the system comprises:

[0028] Data acquisition module: configured to acquire original palmprint images and transmit the original palmprint images to the image preprocessing module;

[0029] Image preprocessing module: configured to perform geometric preprocessing and grayscale preprocessing on the original palmprint image to extract the palmprint area of ​​interest;

[0030] Feature extraction module: configured to extract palmprint features from the preprocessed palmprint image data using an improved KL transformation algorithm to generate palmprint feature data;

[0031] Classification decision module: configured to record the extracted palmprint feature data as a feature vector, and classify the palmprint features using a nearest neighbor classifier, and statistically classify palmprints with the same structure or the same features into the same category in the feature space;

[0032] Data storage module: It is configured to store the collected original palmprint image data, the pre-processed palmprint image data, and the palmprint feature data after feature extraction into the distributed storage system of GPGPU, and optimize the storage and access process of large-scale data by using the parallel computing power and multi-channel transmission resources of GPGPU.

[0033] In some embodiments, the device includes: a processor and a memory storing program instructions, and the processor is configured to execute the GPGPU-based palmprint recognition method when running the program instructions.

[0034] The palmprint recognition method, device, and medium based on GPGPU provided in the embodiments of the present disclosure can achieve the following technical effects:

[0035] The present invention utilizes the parallel processing advantage of GPGPU, and the method can significantly improve the computing efficiency when processing palmprint images. GPGPU is designed based on high throughput and is good at large-scale concurrent computing. When processing dense data such as palmprint images, it is more efficient than CPU.

[0036] By adopting the improved KL transform algorithm, this method can effectively extract key features from palmprint images, which can accurately reflect the uniqueness and stability of palmprints. KL transform is a feature extraction method widely used in pattern recognition and image processing. Its application in this design significantly improves the accuracy of palmprint recognition.

[0037] In the process of feature extraction and classification decision, the diversity and complexity of palmprint images are fully considered. Through geometric preprocessing and grayscale preprocessing in the preprocessing step, as well as the feature extraction method based on KL transformation, the system can effectively cope with challenges such as translation, rotation and illumination changes in palmprint images, thereby improving the robustness of the recognition system.

[0038] The use of GPGPU distributed storage architecture not only optimizes the storage and access process of large-scale data, but also improves the performance and scalability of the storage system. This distributed storage method combined with GPU parallel computing can significantly accelerate data transmission and processing, providing strong support for the efficient operation of the palmprint recognition system.

[0039] In summary, the palmprint recognition method based on GPGPU proposed in the present invention shows significant beneficial effects in terms of parallel computing capability, feature extraction accuracy, system robustness, data storage and access performance, and recognition rate, and provides new ideas and methods for the development of biometric technology.

[0040] The above general description and the following description are exemplary and explanatory only and are not intended to limit the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] One or more embodiments are exemplarily described by corresponding drawings, which do not limit the embodiments. Elements with the same reference numerals in the drawings are shown as similar elements, and the drawings do not constitute a scale limitation, and wherein:

[0042] Figure 1 It is a schematic flow chart of the method of the present invention;

[0043] Figure 2 is a schematic diagram of the original palm print image of the present invention,

[0044] Figure 3 is a schematic diagram of a palmprint image after smoothing processing according to the present invention;

[0045] Figure 4 is a schematic diagram of a binary palmprint image of the present invention;

[0046] Figure 5 It is a schematic diagram of the palm line coordinate system of the present invention;

[0047] Figure 6 It is a schematic diagram of palmprint feature extraction of the present invention;

[0048] Figure 7 Schematic diagram of a palmprint recognition device based on GPGPU provided in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0049] In order to be able to understand the features and technical contents of the embodiments of the present disclosure in more detail, the implementation of the embodiments of the present disclosure is described in detail below in conjunction with the accompanying drawings. The attached drawings are for reference only and are not used to limit the embodiments of the present disclosure. In the following technical description, for the convenience of explanation, a full understanding of the disclosed embodiments is provided through multiple details. However, one or more embodiments can still be implemented without these details. In other cases, to simplify the drawings, well-known structures and devices can be simplified for display.

[0050] The terms "first", "second", etc. in the specification and claims of the embodiments of the present disclosure 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 terms used in this way can be interchanged where appropriate, so as to describe the embodiments of the embodiments of the present disclosure described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions.

[0051] Unless otherwise stated, the term "plurality" means two or more.

[0052] In the embodiment of the present disclosure, the character " / " indicates that the preceding and following objects are in an "or" relationship. For example, A / B indicates: A or B.

[0053] The term "and / or" is a description of the association relationship between objects, indicating that three relationships can exist. For example, A and / or B means: A or B, or, A and B.

[0054] The term "correspondence" may refer to an association relationship or a binding relationship. The correspondence between A and B means that there is an association relationship or a binding relationship between A and B.

[0055] A palmprint recognition method based on GPGPU, comprising:

[0056] S1: Collect the original palmprint image through the data acquisition system, and output the collected image in the form of matrix or vector.

[0057] S2: Preprocess the original palmprint image to extract the palmprint area of ​​interest. The preprocessing includes geometric preprocessing and grayscale preprocessing.

[0058] S3: The preprocessed palmprint image is subjected to a feature extraction system, and the palmprint features are extracted using an improved KL transform algorithm to generate a feature vector.

[0059] S4: Record and classify the feature vectors, use the nearest neighbor classifier to classify the palmprint features, and determine the matching result by calculating the distance between the feature vectors of the test sample and the training sample to achieve palmprint recognition.

[0060] S5: storing the collected original palmprint image data, the preprocessed palmprint image data, and the palmprint feature data after feature extraction in the distributed storage system of GPGPU, and optimizing the data storage and access process by using the parallel computing capability and multi-channel transmission resources of GPGPU.

[0061] As a refinement of the above embodiment, the geometric preprocessing includes palm print image preprocessing based on the straight line fitting method and image sharpening preprocessing. The purpose of geometric preprocessing is to partially capture the region of interest (ROI, region of interest), because the image in the palm print library, in addition to the inner surface of the palm, also includes the outer contour of the root fingers and the palm, which are not within the scope of palm print information. First, the image and the cropped area need to best reflect the characteristic image of the palm print. The purpose of grayscale preprocessing is to improve image quality and prepare for feature extraction.

[0062] Optionally, since the palms of each person are of different sizes, the original palm print image also includes fingers and background, so in order to obtain the ROI image, the image needs to be positioned first. Therefore, palm print preprocessing based on the straight line fitting method is required.

[0063] The palmprint image preprocessing based on the straight line fitting method comprises the following steps:

[0064] S201: Use Butterworth low-pass filter to filter the original palmprint image ( Figure 2 ) to smooth the image, eliminate the interference of small noise, separate the palm print from the background and the original grayscale, and convert the image into a binary image ( Figure 3 ).

[0065] S202: extracting the border of the palm print image using a contour tracking algorithm to obtain the edge of the gaps between two fingers.

[0066] S203: Calculate the tangent of the gaps between the two fingers in the palm print image, and determine the tangent of the gaps between the two fingers ( Figure 4 ).

[0067] S204: Establish a palm line coordinate system by connecting the two tangent points to the y-axis, taking the midpoint of the line segment connecting the two points as the origin of the coordinate system, and taking the straight line passing through the point perpendicular to the y-axis as the x-axis. Figure 5 ).

[0068] S205: In the palm line coordinate system, the central area of ​​the palm print image is intercepted as the palm print area of ​​interest ( Figure 6 ).

[0069] According to the established coordinate system, four points are determined in the central area of ​​the palmprint image, and a fixed-size rectangular area (128×128) is intercepted to represent the palmprint image and extract the palmprint features. After preprocessing, the palmprint region of interest, namely the palmprint ROI, is extracted. The ROI obtained by positioning basically eliminates the influence of palmprint translation and rotation, and the ROI contains rich palmprint features, which can reduce the process. The difficulty of feature matching increases the robustness of the system.

[0070] The ROI segmentation method proposed in this embodiment is based on the small column of the acquisition platform to reduce the offset and rotation of the palm print, combined with the positioning of the baffle, and finally determine the segmentation area. This method better combines the image features of the palm print library and avoids the inconvenience that may be caused by using the main line positioning. The algorithm reduces the image rotation process, is simpler and easier to implement than other methods, and the cropped palm print image meets the ROI requirements, which is convenient for the extraction of palm print features.

[0071] As a refinement of the above embodiment, the image sharpening preprocessing method is a Gaussian high-pass filter method. In order to improve the image quality and make it more suitable for palmprint recognition, the cut image needs to be processed in the preprocessing stage. The main function of the Gaussian high-pass filter is to retain information with large changes and sharpen the image.

[0072] As a refinement of the above embodiment, the feature extraction system adopts an improved KL transformation algorithm to extract the most representative features by performing a projection transformation on the palmprint image. The improved KL transformation algorithm uses the original inter-class scatter matrix to calculate the projection feature axis.

[0073] In view of the shortcomings of the traditional KL transformation method in the use of inter-class information, the present invention introduces a method for solving the optimal projection axis directly based on inter-class information. This method abandons the traditional method of inversely transforming the inter-class scatter matrix through the intra-class scatter matrix, and directly uses the original inter-class scatter matrix to solve the optimal projection axis. This method effectively avoids the inter-class information loss or distortion problem that may be caused by the normalization of the intra-class scatter matrix, making the feature extraction process more direct and efficient, significantly improving the separability of the feature vector, thereby enhancing the robustness and accuracy of the recognition system in different palmprint databases and complex environments.

[0074] As a refinement of the above embodiment, the original inter-class scatter matrix M b The formula is as follows:

[0075]

[0076] in, is the mean image of all training samples, represents the average image of the i-th type of training samples, P i represents the prior probability of the i-th category, and T represents the matrix transpose.

[0077] As a refinement of the above embodiment, the nearest neighbor classifier adopted by the classification decision system realizes the classification and recognition of palmprint features by calculating the distance between the feature vectors of the test sample and each training sample.

[0078] The classification decision is to statistically classify palmprints with the same structure or the same features into the same category in the feature space. The basic approach is to determine certain decision criteria based on the sample training set, and classify the identified palmprint features according to the judgment criteria to minimize the error rate and the loss caused. The classification decision system includes two parts: training and matching. First, the average image within the class and the average image of all images of each palmprint training sample are calculated. The nearest neighbor classifier is used to achieve classification; for the test sample, the distance between the feature vector and the feature vector of each palm is calculated. If the distance between the test sample and the palm itself is the smallest, a correct match is obtained, otherwise, the match is incorrect.

[0079] A palmprint recognition system based on GPGPU includes:

[0080] Data acquisition module: It is configured to acquire original palmprint images and transmit the original palmprint images to the image preprocessing module. The palmprint acquisition module completes the palmprint image acquisition function through some devices and displays the palmprint image in the form of matrix or vector to facilitate computer calculation.

[0081] Image preprocessing module: It is configured to perform geometric preprocessing and grayscale preprocessing on the original palmprint image to extract the palmprint area of ​​interest. The purpose of geometric preprocessing is to extract the palmprint area that is conducive to classification and recognition from the acquired original palmprint image. This design proposes a simple and easy method. This method can accurately segment the palmprint area, which is of great significance for palmprint recognition; the purpose of grayscale preprocessing is to transform the grayscale value of the image to obtain an image that is more conducive to feature extraction. This design chooses Gaussian high-pass filtering to perform grayscale preprocessing on the palmprint image.

[0082] Feature extraction module: configured to extract palmprint features from the preprocessed palmprint image data using an improved KL transformation algorithm to generate palmprint feature data. Karhunen-Loeve (KL) transformation is a very popular and effective feature in the field of pattern recognition and image processing. The feature extraction method of the original space discriminant information KL transformation used in this embodiment is based on the KL transformation theory.

[0083] Classification decision module: It is configured to record the extracted palm print feature data as feature vectors, and use the nearest neighbor classifier to classify the palm print features, and statistically classify palm prints with the same structure or the same features into the same category in the feature space. The recognition rate can be as high as 99% when the nearest neighbor classifier is used to classify palm print features.

[0084] Data storage module: It is configured to store the collected original palmprint image data, the pre-processed palmprint image data, and the palmprint feature data after feature extraction into the distributed storage system of GPGPU, and optimize the storage and access process of large-scale data by using the parallel computing power and multi-channel transmission resources of GPGPU.

[0085] It should be noted that by optimizing algorithms, data structures and resource scheduling strategies, the system can handle multi-threaded data transmission tasks simultaneously, thereby improving overall performance. Experiments have shown that this method can achieve a recognition rate of up to 99% while achieving efficient computing, providing a reliable technical guarantee for identity recognition.

[0086] Combination Figure 7 As shown, the embodiment of the present disclosure provides a GPGPU-based palmprint recognition device 300, including a processor (processor) 304 and a memory (memory) 301. Optionally, the device may also include a communication interface (CommunicationInterface) 302 and a bus 303. Among them, the processor 304, the communication interface 302, and the memory 301 can communicate with each other through the bus 303. The communication interface 302 can be used for information transmission. The processor 304 can call the logic instructions in the memory 301 to execute the GPGPU-based palmprint recognition method of the above embodiment.

[0087] In addition, the logic instructions in the memory 301 described above can be implemented in the form of software functional units and can be stored in a computer-readable storage medium when sold or used as an independent product.

[0088] The memory 301 is a computer-readable storage medium that can be used to store software programs and computer executable programs, such as program instructions / modules corresponding to the method in the embodiment of the present disclosure. The processor 304 executes the function application and data processing by running the program instructions / modules stored in the memory 301, that is, the palmprint recognition method based on GPGPU in the above embodiment is implemented.

[0089] The memory 301 may include a program storage area and a data storage area, wherein the program storage area may store an operating system and an application required for at least one function; the data storage area may store data created according to the use of the terminal device, etc. In addition, the memory 301 may include a high-speed random access memory and may also include a non-volatile memory.

[0090] An embodiment of the present disclosure provides a computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions are configured to execute the above-mentioned palmprint recognition method based on GPGPU.

[0091] The computer-readable storage medium mentioned above may be a transient computer-readable storage medium or a non-transitory computer-readable storage medium.

[0092] The technical solution of the embodiment of the present disclosure can be embodied in the form of a software product, which is stored in a storage medium and includes one or more instructions for enabling a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in the embodiment of the present disclosure. The aforementioned storage medium may be a non-transient storage medium, including: a USB flash drive, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a disk or an optical disk, and other media that can store program codes, or a transient storage medium.

[0093] The above description and the accompanying drawings fully illustrate the embodiments of the present disclosure so that those skilled in the art can practice them. Other embodiments may include structural, logical, electrical, process and other changes. The embodiments represent only possible changes. Unless explicitly required, separate components and functions are optional, and the order of operation may vary. The parts and features of some embodiments may be included in or replace the parts and features of other embodiments. Moreover, the words used in this application are only used to describe the embodiments and are not used to limit the claims. As used in the description of the embodiments and the claims, unless the context clearly indicates, the singular forms of "a", "an" and "the" are intended to include plural forms as well. Similarly, the term "and / or" as used in this application refers to any and all possible combinations of listings containing one or more associated ones. In addition, when used in the present application, the term "comprise" and its variants "comprises" and / or comprising refer to the presence of stated features, wholes, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or groups thereof. In the absence of further restrictions, the elements defined by the sentence "comprising a ..." do not exclude the presence of other identical elements in the process, method or device comprising the elements. In this article, each embodiment may focus on the differences from other embodiments, and the same and similar parts between the embodiments may refer to each other. For the methods, products, etc. disclosed in the embodiments, if they correspond to the method part disclosed in the embodiments, then the relevant parts can refer to the description of the method part.

[0094] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software may depend on the specific application and design constraints of the technical solution. The technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the embodiments of the present disclosure. The technicians may clearly understand that for the convenience and simplicity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here.

[0095] In the embodiments disclosed herein, the disclosed methods and products (including but not limited to devices, equipment, etc.) can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units can be 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. In addition, the coupling or direct coupling or communication connection between each other shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms. The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to implement this embodiment. In addition, each functional unit in the embodiment of the present disclosure may be integrated in a processing unit, or each unit may exist physically alone, or two or more units may be integrated in one unit.

[0096] The flowchart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to the embodiment of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of the code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. In some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, which can depend on the functions involved. In the description corresponding to the flowchart and the block diagram in the accompanying drawings, the operations or steps corresponding to different boxes can also occur in a different order from the order disclosed in the description, and sometimes there is no specific order between different operations or steps. For example, two consecutive operations or steps can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, which can depend on the functions involved. Each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented by a dedicated hardware-based system that performs the specified functions or actions, or may be implemented by a combination of dedicated hardware and computer instructions.

Claims

1. A palmprint recognition method based on GPGPU, characterized in that: The following steps are involved: Collect the original palmprint image through the data acquisition system, and output the collected image in the form of matrix or vector; Preprocessing the original palmprint image to extract the palmprint area of ​​interest, the preprocessing includes geometric preprocessing and grayscale preprocessing; The preprocessed palmprint image is subjected to feature extraction system, and the palmprint features are extracted using improved KL transform algorithm to generate feature vectors; The feature vectors are recorded and classified, and the palmprint features are classified using the nearest neighbor classifier. The matching result is determined by calculating the distance between the feature vectors of the test sample and the training sample to achieve palmprint recognition. The collected original palmprint image data, preprocessed palmprint image data and feature-extracted palmprint feature data are stored in the distributed storage system of GPGPU, and the parallel computing capability and multi-channel transmission resources of GPGPU are used to optimize the data storage and access process.

2. The palmprint recognition method based on GPGPU according to claim 1, characterized in that: The geometric preprocessing includes palmprint image preprocessing based on a straight line fitting method and image sharpening preprocessing.

3. The palmprint recognition method based on GPGPU according to claim 2 is characterized in that: The palmprint image preprocessing based on the straight line fitting method comprises the following steps: Use Butterworth low-pass filter to smooth the original palmprint image, separate the palmprint from the background and the original grayscale, and convert the grayscale image into a binary image; The contour tracking algorithm is used to extract the boundary of the palm print image and obtain the edge of the gap between two fingers; Calculate the tangent of the gap between two fingers in the palm print image and determine the tangent of the gap between the two fingers; Establish a palm line coordinate system by connecting the two tangent points to the y-axis, taking the midpoint of the line segment connecting the two points as the origin of the coordinate system, and taking the straight line passing through the point perpendicular to the y-axis as the x-axis; In the palm line coordinate system, the central area of ​​the palm print image is intercepted as the palm print area of ​​interest.

4. The palmprint recognition method based on GPGPU according to claim 2, characterized in that: The image sharpening preprocessing method is a Gaussian high-pass filtering method.

5. The palmprint recognition method based on GPGPU according to claim 1, characterized in that: The feature extraction system adopts an improved KL transformation algorithm to extract the most representative features by performing projection transformation on the palmprint image. The improved KL transformation algorithm uses the original inter-class scatter matrix to calculate the projection feature axis.

6. The palmprint recognition method based on GPGPU according to claim 5, characterized in that: The original inter-class scatter matrix M b The formula is as follows: in, is the mean image of all training samples, represents the average image of the i-th type of training samples, P i represents the prior probability of the i-th category, and T represents the matrix transpose.

7. The palmprint recognition method based on GPGPU according to claim 1, characterized in that: The nearest neighbor classifier adopted by the classification decision system realizes the classification and recognition of palmprint features by calculating the distance between the feature vectors of the test sample and each training sample.

8. A palmprint recognition system based on GPGPU for executing any of the methods described in claims 1-7, characterized in that: include: Data acquisition module: configured to acquire original palmprint images and transmit the original palmprint images to the image preprocessing module; Image preprocessing module: configured to perform geometric preprocessing and grayscale preprocessing on the original palmprint image to extract the palmprint area of ​​interest; Feature extraction module: configured to extract palmprint features from the preprocessed palmprint image data using an improved KL transformation algorithm to generate palmprint feature data; Classification decision module: configured to record the extracted palmprint feature data as a feature vector, and classify the palmprint features using a nearest neighbor classifier, and statistically classify palmprints with the same structure or features into the same category in the feature space; Data storage module: It is configured to store the collected original palmprint image data, the pre-processed palmprint image data, and the palmprint feature data after feature extraction into the distributed storage system of GPGPU, and optimize the storage and access process of large-scale data by using the parallel computing power and multi-channel transmission resources of GPGPU.

9. A palmprint recognition device based on GPGPU, comprising a processor and a memory storing program instructions, characterized in that: The processor is configured to execute the palmprint recognition method based on GPGPU according to any one of claims 1 to 7 when running the program instructions.

10. A storage medium storing program instructions, characterized in that: When the program instructions are executed, the palmprint recognition method based on GPGPU is executed.