Palm Swiping Recognition Method, Device, Equipment and Storage Medium
By collecting static and dynamic palm images and acquiring palm features and motion characteristics, the problems of low security and high equipment cost in the prior art are solved, and higher security and lower cost palm brush recognition are achieved.
Patent Information
- Application Number
- CN202311524925.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-15
- Publication Date
- 2025-07-29
- Estimated Expiration
- 2043-11-15
AI Technical Summary
In the existing palm brush recognition technology, identity recognition based on static palm images is difficult to confirm the user's willingness to brush the palm, which is low in security, has high requirements for cameras, and has high equipment costs.
Collect static and dynamic palm images, capture local areas to obtain palm features and motion characteristics, combine the two to determine the recognition results, reduce camera requirements and confirm the user's willingness to brush palms.
It improves the security of the palm brush recognition system, reduces equipment costs, reduces the requirements for the camera through local area shooting, and confirms the user's willingness to brush the palm.
Smart Images

Figure CN117593629B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of artificial intelligence technology, and particularly to a palm-sweeping recognition method, device, equipment and storage medium. Background Art
[0002] Palm-sweeping recognition devices are mostly placed at the cashiers of offline stores. When a user sweeps their palm above the palm-sweeping device, the device will perform identity recognition based on the collected palm image.
[0003] In related palm-sweeping recognition technologies, a static palm vein recognition scheme is adopted. After using devices such as cameras to photograph and collect the user's palm, the collected palm image is preprocessed, and features are extracted from the preprocessed palmprint and palm vein images. The extracted palm features are matched with the registered features in the database, and the palm-sweeping recognition result is output according to the matching degree to confirm whether the identity recognition is successful or failed.
[0004] However, since the static palm image is recognized in the above method, it is difficult to confirm the user's palm-sweeping intention, and the security is relatively low. Summary of the Invention
[0005] Embodiments of this application provide a palm-sweeping recognition method, device, equipment and storage medium. The technical solution is as follows:
[0006] According to one aspect of the embodiments of this application, a palm-sweeping recognition method is provided, and the method includes:
[0007] Obtain a set of palm images of the palm to be recognized; wherein, the set of palm images includes at least one static palm image collected when the palm to be recognized is statically recognized, and at least two dynamic palm images collected when the palm to be recognized is slidingly recognized, and the static palm image and the dynamic palm image are partial palm images obtained by photographing a partial area of the complete palm;
[0008] Perform region recognition on the static palm image to obtain a first partition, and the first partition is used to indicate the position of the partial area corresponding to the static palm image in the complete palm;
[0009] Obtain the palm features of the first partition according to the static palm image;
[0010] Obtain the motion features of the palm to be recognized according to the at least two dynamic palm images, and the motion features are used to characterize the sliding trajectory and sliding speed of the palm to be recognized;
[0011] Determine the recognition result of the palm to be recognized according to the palm features and the motion features.
[0012] According to one aspect of the embodiments of the present application, a palm recognition device is provided, and the device includes:
[0013] An image acquisition module, configured to acquire a set of palm images of a palm to be recognized; wherein, the set of palm images includes at least one static palm image collected when the palm to be recognized is statically recognized, and at least two dynamic palm images collected when the palm to be recognized is slidingly recognized, and the static palm image and the dynamic palm image are partial palm images obtained by photographing a partial area of the complete palm;
[0014] A region recognition module, configured to perform region recognition on the static palm image to obtain a first partition, and the first partition is used to indicate the position of the partial area corresponding to the static palm image in the complete palm;
[0015] A palm feature acquisition module, configured to obtain the palm features of the first partition according to the static palm image;
[0016] A motion feature acquisition module, configured to obtain the motion features of the palm to be recognized according to the at least two dynamic palm images, and the motion features are used to characterize the sliding trajectory and sliding speed of the palm to be recognized;
[0017] A result determination module, configured to determine the recognition result of the palm to be recognized according to the palm features and the motion features.
[0018] In some embodiments, the motion feature acquisition module includes: a position acquisition unit, configured to acquire the positions of at least one feature point in each of the dynamic palm images. A vector acquisition unit, configured to obtain the motion vector of each feature point in each pair of dynamic palm images according to the positions of the at least one feature point in each pair of dynamic palm images; wherein, each pair of dynamic palm images includes two adjacent dynamic palm images. A motion feature acquisition unit, configured to obtain the motion features of the palm to be recognized according to the motion vectors of each feature point in each pair of dynamic palm images.
[0019] In some embodiments, the motion feature acquisition unit is configured to, for each pair of dynamic palm images, calculate the average value of the motion vectors of at least one feature point in each pair of dynamic palm images to obtain the average motion vector of each pair of dynamic palm images; the modulus of the average motion vector is used to represent the sliding speed of the palm to be recognized in the pair of dynamic palm images, and the direction of the average motion vector is used to represent the sliding direction of the palm to be recognized in the pair of dynamic palm images; and obtain the motion features of the palm to be recognized according to the average motion vectors of each pair of dynamic palm images.
[0020] In some embodiments, the position acquisition unit is configured to perform grayscale processing on the at least two dynamic palm images to obtain grayscale palm images corresponding to the at least two dynamic palm images respectively; determine at least one feature point in the grayscale palm image corresponding to the first dynamic palm image among the at least two dynamic palm images, where the first dynamic palm image is the first dynamic palm image among the at least two dynamic palm images; and use the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images according to the positions of the at least one feature point in the grayscale palm image corresponding to the first dynamic palm image.
[0021] In some embodiments, the device further includes a filtering module configured to perform smoothing processing on the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images by using a Kalman filter to obtain optimized positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images. The vector acquisition unit is configured to obtain an optimized motion vector of each feature point in each pair of the dynamic palm images according to the optimized positions of the at least one feature point in each pair of the dynamic palm images. Wherein, the time points of the smoothing processing include at least one of the following: after using the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images, perform smoothing processing on the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images, and use the optical flow method to determine the positions of the at least one feature point in the grayscale palm image corresponding to the next dynamic palm image according to the positions of the at least one feature point in the grayscale palm image corresponding to the previous dynamic palm image; or, after using the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images respectively, perform smoothing processing on the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images respectively.
[0022] In some embodiments, the filtering module is configured to obtain the predicted position of the first feature point at the k-th moment based on the optimized position of the first feature point at the (k - 1)-th moment, where k is an integer greater than 1; wherein, the optimized position at the first moment is the position of the first feature point in the grayscale palm image corresponding to the first dynamic palm image; there is a one-moment interval between two adjacent dynamic palm images in each pair of dynamic palm images; based on the predicted position of the first feature point at the k-th moment, the measured position of the first feature point at the k-th moment, and the Kalman gain corresponding to the Kalman filter, obtain the optimized position of the first feature point at the k-th moment; wherein, the measured position of the first feature point at the k-th moment is the position obtained by using the optical flow method; the Kalman gain is calculated based on the covariance corresponding to the predicted position of the first feature point at the k-th moment, and the covariance corresponding to the predicted position of the first feature point at the k-th moment is calculated based on the covariance corresponding to the optimized position of the first feature point at the (k - 1)-th moment, and the covariance is used to represent the error between the predicted position and the measured position.
[0023] In some embodiments, the static palm image includes an infrared static image collected by an infrared camera and a color static image collected by a color camera. The infrared static image is used to obtain the palm vein feature of the palm to be recognized, and the color static image is used to obtain the palm print feature of the palm to be recognized; the apparatus further includes a preprocessing module, which is configured to preprocess the at least one static palm image to obtain at least one processed static palm image; the preprocessing includes at least one of image alignment processing, image filtering processing, and image grayscale processing; based on the at least one processed static palm image, determine a first static palm image, where the first static palm image is the processed static palm image with the highest quality score among the at least one processed static palm images. The palm feature acquisition module is configured to obtain the palm vein feature of the first partition based on the infrared static image in the first static palm image, and obtain the palm print feature of the first partition based on the color static image in the first static palm image; based on the palm vein feature of the first partition and the palm print feature of the first partition, obtain the palm feature of the first partition.
[0024] In some embodiments, the region recognition module is configured to perform region recognition on the first static palm image by using a trained local recognition model to obtain the first partition; wherein, the training process of the local recognition model is as follows: Obtain the training data set of the local recognition model, the training data set includes at least one training sample pair, and each training sample pair includes a local sample image and a sample label corresponding to the local sample image; wherein, the local sample image is a local palm image obtained by photographing a local area of a complete palm, and the local sample image includes any one of an infrared local image collected by an infrared camera and a color local image collected by a color camera, and the sample label is used to indicate the partition of the local area corresponding to the local sample image in the complete palm; perform normalization processing on each local sample image in the training data set to obtain a processed local sample image, and the normalization processing is used to process each local sample image into an image with the same size; use the local recognition model to obtain the predicted partition corresponding to the local sample image according to the processed local sample image; train the local recognition model according to the difference between the predicted partition and the sample label to obtain a trained local recognition model.
[0025] In some embodiments, the result determination module is configured to obtain the motion pose feature of the palm to be recognized according to the palm feature and the motion feature, and the motion pose feature is a feature obtained by splicing the palm feature and the motion feature; calculate the matching degree between the motion pose feature and the motion pose features of at least one pre-stored palm in the pre-stored database respectively; if the first matching degree corresponding to the first pre-stored palm is the maximum matching degree and the maximum matching degree is greater than the first threshold, determine that the recognition result of the palm to be recognized is that the palm to be recognized matches the first pre-stored palm.
[0026] In some embodiments, the result determination module is configured to calculate the second matching degree between the palm feature and the palm features of at least one pre-stored palm in the pre-stored database respectively, and calculate the third matching degree between the motion feature and the motion features of at least one pre-stored palm in the pre-stored database respectively; perform weighted summation on the second matching degree and the third matching degree corresponding to the at least one pre-stored palm to obtain the comprehensive matching degree corresponding to the at least one pre-stored palm; if the comprehensive matching degree corresponding to the second pre-stored palm is the maximum matching degree and the maximum matching degree is greater than the second threshold, determine that the recognition result of the palm to be recognized is that the palm to be recognized matches the second pre-stored palm.
[0027] In some embodiments, the result determination module is configured to use a fusion model to obtain an identification result of the palm to be identified according to the palm feature and the motion feature; wherein, the fusion model is used to perform feature learning on the palm feature and the motion feature to obtain the learned features; calculate the matching degrees between the learned features and the learned features of at least one pre-stored palm in the pre-stored database respectively; and output the identification result of the palm to be identified according to at least one matching degree, where the fourth matching degree corresponding to the third pre-stored palm indicated by the identification result is the maximum matching degree, and the maximum matching degree is greater than a third threshold.
[0028] In some embodiments, the pre-stored database is generated in one of the following manners: successively collect local palm images corresponding to each partition of a first palm to obtain palm features of each partition; record motion according to a preset first sliding trajectory to obtain the motion feature of the first palm; and determine the palm features of each partition of the first palm and the motion feature of the first palm as the feature data of the first palm in the pre-stored database. Alternatively, collect a local palm image corresponding to a second partition of a second palm to obtain the palm feature of the second partition; record motion according to a preset second sliding trajectory to obtain the motion feature of the second palm; and determine the palm feature of the second partition and the motion feature of the second palm as the feature data of the second palm in the pre-stored database.
[0029] In some embodiments, the palm feature acquisition module is configured to obtain a response function corresponding to the first filter bank according to the parameters of the first filter bank, where the first filter bank includes at least one first filter, and different parameters of the first filter are used to extract features of the static palm image at different frequencies and different directions; perform convolution processing on the response function corresponding to each of the at least one first filter and the static palm image respectively to obtain a convolution result corresponding to each of the at least one first filter; and determine the convolution results corresponding to each of the at least one first filter as the palm features of the first partition.
[0030] In some embodiments, the palm feature acquisition module is configured to obtain pixel values of each pixel point in the static palm image; obtain the pixel feature of the i-th pixel point according to the pixel value of the i-th pixel point and the pixel values of each pixel point within the first neighborhood range of the i-th pixel point, where i is a positive integer; and determine the pixel features of each pixel point as the palm features of the first partition.
[0031] In some embodiments, the palm feature acquisition module is configured to, if the pixel value of a first pixel point within the first neighborhood range is greater than the pixel value of the i-th pixel point, mark the position of the first pixel point as a first value; if the pixel value of a second pixel point within the first neighborhood range is less than the pixel value of the i-th pixel point, mark the position of the second pixel point as a second value; and obtain the pixel feature of the i-th pixel point according to the values marked for the positions of the respective pixel points within the first neighborhood range.
[0032] According to one aspect of the embodiments of the present application, a computer device is provided. The computer device includes a processor and a memory. A computer program is stored in the memory, and the computer program is loaded and executed by the processor to implement the above-mentioned palm brushing recognition method.
[0033] According to one aspect of the embodiments of the present application, a computer-readable storage medium is provided. A computer program is stored in the computer-readable storage medium, and the computer program is loaded and executed by a processor to implement the above-mentioned palm brushing recognition method.
[0034] According to one aspect of the embodiments of the present application, a computer program product is provided. The computer program product includes a computer program, and the computer program is loaded and executed by a processor to implement the above-mentioned palm brushing recognition method.
[0035] The technical solutions provided by the embodiments of the present application can bring the following beneficial effects:
[0036] On the one hand, by photographing a local area of a complete palm, at least one static palm image and at least two dynamic palm images are obtained, and the palm features of the local area of the complete palm are acquired. When the acquisition accuracy of the local palm image is higher, compared with the image acquisition process in the related art, it is not necessary to acquire a complete palm image at one time, reducing the equipment requirements for the camera of the image acquisition device, thereby reducing the equipment cost. On the other hand, by acquiring the palm features of the first partition of the palm to be recognized and the motion features during the sliding recognition of the palm to be recognized, and combining the features of the two aspects to determine the recognition result of the palm to be recognized. Compared with the related art where a static palm image can directly deceive the palm brushing recognition system, the technical solution provided by the present application requires the user to brush the palm for recognition according to a preset sliding trajectory, further confirming the user's intention to brush the palm and improving the security of the palm brushing recognition system. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] Figure 1 is a schematic diagram of a palm brushing recognition method in the related art;
[0038] Figure 2 is a schematic diagram of the implementation environment of the solution provided by an embodiment of the present application;
[0039] Figure 3 It is a flowchart of a palm-sweeping recognition method provided by an embodiment of the present application;
[0040] Figure 4 It is a schematic diagram of the acquisition process of a static palm image provided by an embodiment of the present application;
[0041] Figure 5 It is a schematic diagram of the partition of a complete palm provided by an embodiment of the present application;
[0042] Figure 6 It is a schematic diagram of a color vein image and an infrared vein image provided by an embodiment of the present application;
[0043] Figure 7 It is a schematic diagram of corner point selection provided by an embodiment of the present application;
[0044] Figure 8 It is a schematic diagram of the filtering performance of a first filter bank provided by an embodiment of the present application;
[0045] Figure 9 It is a schematic diagram of the extraction of pixel features provided by an embodiment of the present application;
[0046] Figure 10 It is a schematic diagram of the fusion of palm features and motion features provided by an embodiment of the present application;
[0047] Figure 11 It is a schematic diagram of the specific implementation of palm-sweeping recognition provided by an embodiment of the present application;
[0048] Figure 12 It is a block diagram of a palm-sweeping recognition device provided by an embodiment of the present application;
[0049] Figure 13 It is a block diagram of the structure of a computer device provided by an embodiment of the present application. Detailed implementation manners
[0050] To make the objectives, technical solutions, and advantages of the present application clearer, the following will further describe the embodiments of the present application in detail with reference to the accompanying drawings.
[0051] 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 react in a way similar to human intelligence. Artificial intelligence also studies the design principles and implementation methods of various intelligent machines to enable machines to have the functions of perception, reasoning, and decision-making.
[0052] Artificial intelligence technology is an interdisciplinary subject with a wide range of fields, including both hardware-level and software-level technologies. The basic technologies of artificial intelligence generally include sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, pre-trained model technology, operation / interaction systems, mechatronics, etc. Among them, the pre-trained model, also known as the large model or the foundation model, can be widely applied to downstream tasks in various directions of artificial intelligence after fine-tuning. Artificial intelligence software technology mainly includes several major directions such as computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning.
[0053] Computer Vision (CV) is a science that studies how to make machines "see". More specifically, it refers to using cameras and computers to replace human eyes for object recognition, measurement, and other machine vision, and further performing graphic processing to make the computer process images that are more suitable for human eyes to observe or be transmitted to instruments for detection. As a scientific discipline, computer vision studies related theories and technologies and attempts to build artificial intelligence systems that can obtain information from images or multi-dimensional data. The large model technology has brought important changes to the development of computer vision technology. Pre-trained models in the visual field such as swin-transformer, ViT (Vision Transformers), V-MOE (Vision Mixture of Expert), and MAE (Masked AutoEncoder) can be quickly and widely applied to downstream specific tasks after fine-tuning. Computer vision technology usually includes technologies such as image processing, image recognition, image semantic understanding, image retrieval, OCR (Optical Character Recognition), video processing, video semantic understanding, video content / behavior recognition, three-dimensional object reconstruction, 3D (three Dimensions) technology, virtual reality, augmented reality, simultaneous localization and mapping, etc., and also includes common biometric recognition technologies such as face recognition and fingerprint recognition.
[0054] With the research and progress of artificial intelligence technology, artificial intelligence technology has been studied and applied in multiple fields, such as common smart homes, smart wearable devices, virtual assistants, smart speakers, smart marketing, driverless, autonomous driving, drones, digital twins, virtual humans, robots, artificial intelligence generated content (AIGC), conversational interaction, intelligent healthcare, intelligent customer service, game AI, virtual reality (VR), augmented reality (AR), etc. It is believed that with the development of technology, artificial intelligence technology will be applied in more fields and play an increasingly important role.
[0055] The technical solution of this application mainly relates to computer vision technology in artificial intelligence technology, and mainly relates to palm brushing recognition technology.
[0056] In the related technology, a palm brushing recognition method is provided, as Figure 1 shown. The palm brushing recognition technical solution mainly includes the following steps:
[0057] 1. Collect the color image and infrared image of the palm: The user places the palm in the image acquisition area of the palm brushing recognition device, and uses a camera or other imaging device to photograph and collect the user's palm to obtain palm information. The camera of the imaging device includes an infrared camera for collecting infrared images and a color camera for collecting color images ( Figure 1 not shown in the figure). An input guiding light is equipped beside the camera, which is used to guide the user to place the palm in the light area and provide fill light for image acquisition.
[0058] 2. Preprocess the palm image: Preprocess the collected palm images (including infrared images and color images), including operations such as image denoising, image cropping, and image enhancement, to improve the quality of the palm images.
[0059] 3. Feature extraction: Extract palm features from the preprocessed palm images. Mainly extract palmprint features from the color image and palm vein features from the infrared image. For palmprint recognition, it includes extracting palmprint features such as ridge lines, bifurcation points, and endpoints; for palm vein recognition, it includes extracting vein features such as vein branches and intersection points. In addition, deep learning methods can also be used to automatically extract effective feature representations.
[0060] 4. Matching and recognition: Match the extracted palm features with the palm features stored in the pre-stored database, including calculating the matching degree between the features, and then judging whether the matching result is successful according to the threshold. In addition, machine learning algorithms can be used to classify the features to improve the accuracy of matching.
[0061] 5. Decision Output: Output the palm brushing recognition result according to the matching degree and the threshold, and confirm whether the identity recognition is successful or failed.
[0062] However, since the static palm image is recognized in the above method, it is difficult to confirm the user's willingness to brush the palm, resulting in low security of the palm brushing recognition device; and the above method requires collecting a complete palm image, which has high requirements for the camera, requires the camera to have a high resolution and a large FOV (Field of View), and the device cost is high; and after the palmprint and palm vein information are leaked, an improved hand mold can be made, and there is a risk that the recognition system of the palm brushing recognition device will be breached.
[0063] Please refer to Figure 2 , which shows a schematic diagram of the solution implementation environment provided by an embodiment of the present application. This solution implementation environment can be implemented as a palm brushing recognition system. This solution implementation environment may include: an image acquisition device 10 and a computer device 20.
[0064] The image acquisition device 10 has an image capture function and is used to collect multiple palm images of the user during palm brushing recognition. The image acquisition device 10 can be an electronic device with an image capture function such as a camera or a VR glasses.
[0065] In the embodiment of the present application, the user first places the palm statically under the camera of the image acquisition device 10, and the image acquisition device 10 collects at least one static palm image. Then the user slides the palm according to a preset palm sliding trajectory, and the image acquisition device 10 collects at least two dynamic palm images during the palm sliding process. In order to reduce the requirements for the camera of the image acquisition device 10, the static palm images and dynamic palm images collected in the present application are both partial palm images obtained by photographing a partial area of the complete palm. The image acquisition device 10 sends the at least one static palm image and at least two dynamic palm images collected to the computer device 20 for processing. The computer device 20 selects the static palm image with the highest quality from the at least one static palm image, obtains the palm features of the palm partition corresponding to the static palm image, and calculates the motion features of the user's palm according to the position changes of at least one feature point in the continuous dynamic palm images. The computer device 20 calculates the matching degrees between the user's palm features and motion features and at least one feature data in the pre-stored database respectively, and then determines whether the user's palm matches the pre-stored palm according to the threshold condition. If it matches, it means that the palm brushing recognition is successful; if it does not match, it means that the palm brushing recognition is failed.
[0066] The number of image acquisition devices 10 can be one or more. The computer device 20 can respectively match and identify the palm features and motion features of different users collected by multiple image acquisition devices 10 with at least one feature data in the pre-stored database to determine the results of palm-sweeping recognition of multiple users.
[0067] In the embodiments of the present application, the execution subject of each step can be the computer device 20, which refers to an electronic device with data calculation, processing, and storage functions. The computer device 20 can be a terminal device such as a mobile phone, a tablet computer, a laptop computer, a desktop computer, a smart TV, a multimedia playback device, a vehicle-mounted terminal, a smart robot, etc., or a server. Among them, the server can be an independent physical server, a server cluster or a distributed system composed of multiple physical servers, or a cloud server providing cloud computing services.
[0068] The image acquisition device 10 can communicate with the computer device 20. The computer device 20 is used to provide palm-sweeping recognition services for the palm images collected by the image acquisition device 10, and has the ability to run an optimal algorithm, graphics rendering ability, database storage ability, and performance to meet the operation of the recognition logic. For example, the computer device 20 can be the background server of the palm-sweeping recognition program.
[0069] The image acquisition device 10 and the computer device 20 can be the same device or different devices. The computer device 20 can be integrated on the image acquisition device 10. Exemplarily, when the palm-sweeping recognition device is an access control recognition device, the access control recognition device can have both the image capture function of the image acquisition device and the data calculation, processing, and storage functions of the computer device. After the access control recognition device collects the static palm image and dynamic palm image of the user, the access control recognition device can directly perform palm-sweeping recognition according to the palm features and motion features in the palm image, without sending the collected palm image to another device for the other device to implement the palm-sweeping recognition function.
[0070] Such as Figure 2As shown, the camera group of the image acquisition device 10 in the embodiment of the present application includes a color camera and an infrared camera. A guiding light is configured beside the color camera, which is used to guide the acquisition area of the user's current palm, and to supplement the light source input of the color camera to enhance the image acquisition ability of the color camera. An infrared light is configured beside the infrared camera, which is used to supplement infrared light to enhance the image acquisition ability of the infrared camera. When the user's palm approaches or moves away from the camera acquisition area, the guiding light will prompt the user of the input area through light changes and notify the user of the palm input progress. Exemplarily, when the user's palm approaches the acquisition area, the guiding light turns red and flashes; when the user's palm moves away from the acquisition area, the guiding light turns yellow and flashes; when the user's palm is within the appropriate range of the acquisition area, the guiding light is constantly on with white light.
[0071] Under normal circumstances, the camera will first verify whether the local area within the acquisition area is a partial area of a complete palm. After determining it is a partial palm area, at least one static palm image is acquired. As Figure 2 shown, the image acquisition device 10 can prompt the input partial palm area, for example, marking the partial palm area as light gray. Then, the user can be prompted to slide the palm along a preset sliding trajectory within a certain speed range, and the camera acquires at least two dynamic palm images during the sliding process. When the computer device 20 confirms that both the static palm image and the dynamic palm image are acquired effectively, user palm identification is performed based on the acquired static palm image and dynamic palm image.
[0072] Please refer to Figure 3 , which shows a flowchart of a palm brushing recognition method provided by an embodiment of the present application. The execution subject of each step of this method can be a computer device. This method may include at least one of the following steps 310-350:
[0073] Step 310, obtaining a set of palm images of the palm to be recognized; wherein, the set of palm images includes at least one static palm image acquired when the palm to be recognized is stationary for recognition, and at least two dynamic palm images acquired when the palm to be recognized is sliding for recognition. The static palm image and the dynamic palm image are partial palm images obtained by photographing a partial area of a complete palm.
[0074] The static palm image refers to at least one palm image acquired when the palm to be recognized is stationary under the camera of the image acquisition device, and the static palm image is a partial palm image obtained by photographing a partial area of a complete palm. As Figure 4 shown, the static palm image is a partial palm image obtained by photographing the gray area of a complete palm.
[0075] A dynamic palm image refers to at least two palm images collected when the palm to be recognized slides for recognition under the camera of an image acquisition device according to a preset sliding trajectory, and the dynamic palm image is a partial palm image obtained by photographing a partial area of the complete palm. The sliding trajectory includes various sliding methods such as drawing a circle, sliding from top to bottom, and sliding from left to right, which are not limited in this application.
[0076] It should be noted that the partial area corresponding to the static palm image and the partial area corresponding to the dynamic palm are not necessarily the same partial area in the complete palm. For example, the static palm image can be a partial palm area obtained by photographing the upper left corner area of the complete palm, and the dynamic palm area can be the lower left corner area of the complete palm, or it can be a partial palm image obtained by photographing other areas of the complete palm. Moreover, the palm to be recognized refers to any one of the user's palms, which can be the user's left palm or the user's right palm, and this application does not make any limitations in this regard.
[0077] Optionally, at least two dynamic palm images can be consecutive palm images obtained by the image acquisition device photographing the sliding recognition process of the palm to be recognized at consecutive moments, with a time unit interval. That is to say, at least two dynamic palm images are at least two consecutive dynamic palm images in the time domain. The acquisition time points of two adjacent dynamic palm images differ by one time unit. Exemplarily, the time unit here can be any one of 0.1s, 0.5s, 1s, etc.
[0078] Optionally, at least two dynamic palm images can also be consecutive multiple image frames in a video obtained by the image acquisition device recording the sliding recognition process of the palm to be recognized within a period of time. At least two dynamic palm images are consecutive image frames extracted from the acquired video at an interval of one time unit. The acquisition time points of two adjacent consecutive image frames differ by one time unit. Exemplarily, if a 1s video contains 60 image frames, then the time unit can be the time difference between each image frame in the 1s video, that is, the time unit is 1 / 60s, or it can be the time difference corresponding to multiple image frames in the 1s video, such as 1 / 30s, 1 / 20s, etc., any one of which can be used as the time unit.
[0079] In some embodiments, after obtaining the palm image set of the palm to be recognized, at least one static palm image is preprocessed to obtain at least one processed static palm image; the preprocessing includes at least one of image alignment processing, image filtering processing, and image grayscale processing; according to at least one processed static palm image, a first static palm image is determined, and the first static palm image is the processed static palm image with the highest quality score among at least one processed static palm images.
[0080] Image alignment processing is used to align the image content in at least one static palm image, so that the local regions corresponding to at least one static palm image can overlap, and after the image content is aligned, at least one static palm image is processed into palm images of the same size. Image filtering processing is used to suppress the noise in at least one static palm image and enhance the contrast of the pixels in the image to improve the image clarity. Image grayscale processing is used to perform grayscale transformation operations on the pixels of each pixel point in at least one static palm image to obtain the grayscale value corresponding to each pixel point, so as to process each pixel point in at least one static palm image into a grayscale image with different grayscale values.
[0081] Perform quality assessment on at least one processed static palm image. According to image evaluation dimensions such as the resolution of at least one processed static palm image, the pixel contrast of each pixel point, the texture clarity contained in the image, and the feature richness in the image, score the quality of at least one processed static palm image to obtain the quality score corresponding to each of at least one processed static palm image. The quality score is obtained by performing weighted summation on the evaluation scores of multiple image evaluation dimensions.
[0082] Determine the processed static palm image with the highest quality score as the first static palm image. The first static palm image is the static palm image selected from at least one processed static palm image for extracting palm features.
[0083] By preprocessing at least one static palm image in the palm image set, the image quality of at least one static palm image is improved, and the processed static palm image with the highest quality score is determined as the static palm image for feature recognition, further ensuring the image quality of the first static palm image and facilitating subsequent region recognition and feature extraction.
[0084] Step 320: Perform region recognition on the static palm image to obtain a first partition, where the first partition is used to indicate the position of the local region corresponding to the static palm image in the complete palm.
[0085] Performing region recognition on the static palm image means performing region recognition on the first static palm image. In some embodiments, a trained local recognition model is used to perform region recognition on the first static palm image to obtain a first partition.
[0086] The local recognition model is used to recognize the local region of the static palm image in the complete palm to determine the position of the local region corresponding to the static palm image in the complete palm.
[0087] Divide the complete palm into several local regions, and the first partition can be any one of the several local regions. For example Figure 5 As shown, divide the complete palm into 9 partitions, then the first partition can be any one of the 9 partitions. Use the local recognition model to perform regional recognition on the static palm image, and determine the partition corresponding to the static palm image in the complete palm, which is called the first partition.
[0088] Step 330, obtain the palm features of the first partition according to the static palm image.
[0089] Extract the features in the static palm image, that is, extract the features of the first static palm image, obtain the palm features of the static palm image, that is, obtain the palm features of the first partition.
[0090] In some embodiments, the static palm image includes an infrared static image collected by an infrared camera and a color static image collected by a color camera. The infrared static image is used to obtain the palm vein features of the palm to be recognized, and the color static image is used to obtain the palmprint features of the palm to be recognized.
[0091] The palm vein features include vein-related features such as vein branch features, vein intersection features, and vein trend features. The palmprint features include palm texture-related features such as ridge line features, fold line features, bifurcation point features, and endpoint features in the palm.
[0092] The color vein image and the infrared vein image can be referred to Figure 6 As shown, it can be seen that the color vein image is for the palmprint features of the palm, and the infrared vein image is for the palm vein features under the palm. In the embodiments of the present application, the palmprint features included in the color static image and the palm vein features included in the infrared static image are called the palm features of the corresponding local region of the static palm image.
[0093] In some embodiments, obtain the palm vein features of the first partition according to the infrared static image in the first static palm image, and obtain the palmprint features of the first partition according to the color static image in the first static palm image; obtain the palm features of the first partition according to the palm vein features of the first partition and the palmprint features of the first partition.
[0094] The palm features include palm vein features and palmprint features. It is necessary to extract the features of the infrared static image and the color vein image in the first static palm image respectively. The specific feature extraction process can refer to the following embodiments.
[0095] By collecting the palm print features and palm vein features in the palm image, the comprehensive features of the first partition of the palm to be recognized are obtained, the accuracy and success rate of palm brushing recognition are improved, and the failure of palm brushing recognition caused by incomplete feature acquisition is avoided.
[0096] Step 340, obtain the motion features of the palm to be recognized according to at least two dynamic palm images, where the motion features are used to characterize the sliding trajectory and sliding speed of the palm to be recognized.
[0097] The user's palm slides for recognition along a preset sliding trajectory within a certain speed range, and at least two dynamic palm images during the sliding recognition process are collected. According to at least two dynamic palm images, the motion vectors between two adjacent dynamic palm images are obtained, and the motion vectors are used to represent the sliding direction and sliding speed of the palm to be recognized within the time interval between two adjacent dynamic palm images.
[0098] Therefore, according to the motion vectors between each two adjacent dynamic palm images, the motion features of the palm to be recognized are obtained, and the motion features of the palm to be recognized can be used to characterize the sliding trajectory and sliding speed of the palm to be recognized during the sliding recognition process, and the sliding trajectory is used to indicate the sliding direction of the palm to be recognized.
[0099] Step 350, determine the recognition result of the palm to be recognized according to the palm features and the motion features.
[0100] There is a pre-stored database pre-stored in the computer device, and the feature data of at least one pre-stored palm is stored in the pre-stored database. The pre-stored palm is used to perform matching verification with the palm to be recognized. The feature data of the pre-stored palm includes the palm features of a partition of the pre-stored palm and the motion features when the pre-stored palm slides along a preset sliding trajectory. Therefore, one pre-stored palm can correspond to multiple feature data, that is, the palm features of different partitions of the pre-stored palm and the motion features of the pre-stored palm are combined respectively to obtain multiple feature data.
[0101] Match the motion features and the palm features of the first partition of the palm to be recognized with the feature data of at least one pre-stored palm in the pre-stored data, and determine the recognition result of the palm to be recognized according to the matching result. The recognition result of the palm to be recognized is that the palm to be recognized matches the pre-stored palm with the highest matching degree.
[0102] The technical solution provided by the embodiments of the present application, on the one hand, captures at least one static palm image and at least two dynamic palm images by photographing a local area of a complete palm, and obtains the palm features of the local area of the complete palm, so that when the acquisition accuracy of the local palm image is higher, compared with the image acquisition process of the related art, it is not necessary to acquire a complete palm image at one time, reducing the equipment requirements for the camera of the image acquisition device, thereby reducing the equipment cost. On the other hand, by obtaining the palm features of the first partition of the palm to be recognized and the motion features when the palm to be recognized slides for recognition, and combining the features of the two aspects to determine the recognition result of the palm to be recognized, compared with the related art where a static palm image can be directly used to deceive the palm-sweeping recognition system, the technical solution provided by the present application requires the user to sweep the palm for recognition according to a preset sliding trajectory, further confirming the user's willingness to sweep the palm and improving the security of the palm-sweeping recognition system.
[0103] Next, the process of obtaining the motion features of the palm to be recognized will be specifically introduced. Step 340 includes at least one sub-step among steps 341 to 343 (not shown in the figure).
[0104] Step 341, obtain the positions of at least one feature point in each dynamic palm image.
[0105] Step 341 includes at least one sub-step among steps 3411 to 3413 (not shown in the figure).
[0106] Step 3411, perform grayscale processing on at least two dynamic palm images to obtain grayscale palm images corresponding to the at least two dynamic palm images respectively.
[0107] Perform grayscale transformation operations on the pixels of each pixel point in at least two dynamic palm images to determine the grayscale values of each pixel point in the at least two dynamic palm images, thereby obtaining grayscale palm images corresponding to the at least two dynamic palm images respectively. The grayscale palm images are composed of the grayscale values corresponding to each pixel point.
[0108] Step 3412, determine at least one feature point in the grayscale palm image corresponding to the first dynamic palm image according to the grayscale palm image corresponding to the first dynamic palm image in the at least two dynamic palm images; wherein, the first dynamic palm image is the first dynamic palm image among the at least two dynamic palm images.
[0109] A feature point is a key point used to represent the feature description and feature structure in an image. Feature points can include corner points, edge points, etc. A corner point refers to a point at the corner or turning position in an image, usually a point generated by the intersection of two edges, such as Figure 7 the several cases of edge intersections shown, where the black dots are the corner points in the image.
[0110] The grayscale values of the pixel points around the corner points are different in multiple different directions; the grayscale values of the pixel points around the edge points are the same in the edge direction and different in other directions; the grayscale values of the pixel points that are neither edge points nor corner points are the same in all directions.
[0111] Exemplarily, feature extraction algorithms such as Harris corner detector, SIFT (Scale-Invariant Feature Transform), and SURF (Speeded-Up Robust Features) can be used to determine at least one feature point in the grayscale palm image corresponding to the first dynamic palm image.
[0112] Step 3413: Using the optical flow method, determine the positions of at least one feature point in the grayscale palm images corresponding to each dynamic palm image according to the positions of at least one feature point in the grayscale palm image corresponding to the first dynamic palm image.
[0113] Using the optical flow method, determine the positions of at least one feature point in the grayscale palm image corresponding to the second dynamic palm image according to the positions of at least one feature point in the grayscale palm image corresponding to the first dynamic palm image, and then successively determine the positions of the feature points in the grayscale palm images corresponding to the subsequent dynamic palm images according to the positions of the feature points in the grayscale palm image corresponding to the previous dynamic palm image.
[0114] The optical flow method is a method for estimating the movement of feature points by comparing the differences between two consecutive dynamic palm images. Optical flow refers to the movement of feature points in the image due to the movement of objects in the image between two consecutive dynamic palm images. For the optical flow method, a point P (i.e., a feature point in the previous dynamic palm image) can be selected first. After a time interval of Δt, the point P will move to the point P' (i.e., a feature point in the subsequent dynamic palm image), and the point P' and its surroundings have brightness values similar to those of the point P. Then for the point P, assuming the coordinates of the point P are (x, y), then I(x, y, t) = I(x + Δx, y + Δy, z + Δz), where I(x, y, t) represents the brightness value (or grayscale value) of the point P in the previous dynamic palm image. Performing a Taylor expansion on the above formula, we get I x u + I y v + I t = 0, where u and v represent the movement speeds in two directions (the x direction and the y direction), and I x 、I y 、I t represent the partial derivatives of the brightness (or grayscale value) with respect to three axes (the x dimension, the y dimension, and the time dimension), that is, the gradients. Here, Ix and I y can both be calculated from the previous dynamic palm image. I t can be calculated through the difference between two dynamic palm images. Then, when u and v are calculated, the position of point P' can be obtained.
[0115] Exemplarily, optical flow methods such as the Lucas-Kanade method and the Farneback method can be used to calculate the position of at least one feature point in the subsequent dynamic palm image.
[0116] It can be assumed that the moving direction of each point within a window of m×m (n = m 2 ) is the same, and then a system of equations containing n equations can be obtained, which can be expressed as:
[0117] I x1 u + I y1 v = -I t1
[0118] I x2 u + I y2 v = -I t2
[0119] …
[0120] I xn u + I yn v = -I tn
[0121] Written in matrix form as:
[0122]
[0123] So that there exists a set of u and v that can minimize the difference of n equations, which can be expressed as:
[0124] where
[0125] Thus, based on the obtained the position of at least one feature point in the subsequent dynamic palm image can be calculated.
[0126] By adopting the optical flow method, according to the position of at least one feature point in the grayscale palm image corresponding to the first dynamic palm image, the position of at least one feature point in the grayscale palm images corresponding to each subsequent dynamic palm image can be determined. Thus, based on the position of at least one feature point in each dynamic palm image, the motion characteristics of the palm to be recognized can be determined.
[0127] In some embodiments, a Kalman filter is used to smooth the positions of at least one feature point in the grayscale palm images corresponding to each dynamic palm image, so as to obtain the optimized positions of the at least one feature point in the grayscale palm images corresponding to each dynamic palm image.
[0128] Since there may be noise in the palm detection and trajectory recording processes, resulting in noise in the captured dynamic palm images, the positions of at least one feature point in each dynamic palm image can be smoothed to eliminate the influence of noise on the determination of the feature point positions. Common trajectory smoothing algorithms include Kalman Filter and Moving Average.
[0129] The filtering process of the Kalman filter is as follows: Based on the optimized position of the first feature point at the (k - 1)th moment, the predicted position of the first feature point at the kth moment is obtained, where k is an integer greater than 1; among them, the optimized position at the 1st moment is the position of the first feature point in the grayscale palm image corresponding to the first dynamic palm image; the adjacent two dynamic palm images in each pair of dynamic palm images are separated by one moment; Based on the predicted position of the first feature point at the kth moment, the measured position of the first feature point at the kth moment, and the Kalman gain corresponding to the Kalman filter, the optimized position of the first feature point at the kth moment is obtained; among them, the measured position of the first feature point at the kth moment is the position obtained by using the optical flow method; the Kalman gain is calculated based on the covariance corresponding to the predicted position of the first feature point at the kth moment, and the covariance corresponding to the predicted position of the first feature point at the kth moment is calculated based on the covariance corresponding to the optimized position of the first feature point at the (k - 1)th moment, and the covariance is used to represent the error between the predicted position and the measured position.
[0130] The first feature point is any one of the at least one feature point, the optimized position refers to the position obtained after removing the influence of noise by the Kalman filter, the predicted position refers to the position predicted for the next moment based on the optimized position of the previous moment, and the measured position refers to the position calculated by using the optical flow method. In addition, the optimized position of the first feature point at the (k - 1)th moment mentioned here refers to the optimized position of the first feature point in the grayscale palm image corresponding to the previous dynamic palm image, and the predicted position of the first feature point at the kth moment refers to the predicted position of the first feature point in the grayscale palm image corresponding to the next dynamic palm image. The Kalman filter will obtain the optimized position of the first feature point in the grayscale palm image corresponding to the next dynamic palm image based on the optimized position of the first feature point in the grayscale palm image corresponding to the previous dynamic palm image and the measured position of the first feature point in the grayscale palm image corresponding to the next dynamic palm image.
[0131] First, based on the optimized position of the first feature point at the (k - 1)-th moment, the predicted position of the first feature point at the k-th moment can be obtained, which can be expressed as:
[0132]
[0133] Where, represents the predicted position of the first feature point at the k-th moment, represents the optimized position of the first feature point at the (k - 1)-th moment, F represents the state transition matrix, B represents the control matrix, and u k represents the control input.
[0134] For the covariance at the k-th moment, the covariance corresponding to the predicted position of the first feature point at the k-th moment is calculated based on the covariance corresponding to the optimized position of the first feature point at the (k - 1)-th moment, and can be expressed as:
[0135] P k|k-1 = F P k-1|k-1 F T + Q
[0136] Where, P k|k-1 represents corresponding covariance, P k-1|k-1 represents corresponding covariance, F represents the state transition matrix, F T represents the transpose matrix of F, and Q represents the covariance of the filtering process noise.
[0137] For the Kalman gain, the Kalman gain is calculated based on the covariance corresponding to the predicted position of the first feature point at the k-th moment, and can be expressed as:
[0138] K k = P k|k-1 H T (H P k|k-1 H T + R) -1
[0139] Where, K k represents the Kalman gain, H represents the observation matrix, H T represents the transpose matrix of H, and R represents the covariance of the observation noise.
[0140] Based on the predicted position of the first feature point at the k-th moment, the measured position of the first feature point at the k-th moment, and the Kalman gain corresponding to the Kalman filter, the optimized position of the first feature point at the k-th moment can be obtained, which can be expressed as:
[0141]
[0142] Where, represents the optimized position of the first feature point at the k-th moment, z k represents the measured position of the first feature point at the k-th moment.
[0143] In order to keep the Kalman filter running continuously until the filtering process ends, it is also necessary to update the corresponding covariance so as to filter the feature points in the next dynamic palm image, which can be expressed as:
[0144] P k|k =(I - K k H)P k|k-1
[0145] where I represents the identity matrix.
[0146] Through the above smoothing process, the influence of noise on the determination of the feature point position can be eliminated, thereby improving the accuracy of the feature point position and further improving the accuracy of palm brushing recognition.
[0147] In some embodiments, the time point of the smoothing process is: after using the optical flow method to determine the positions of at least one feature point in the grayscale palm image corresponding to each dynamic palm image, smoothing the positions of at least one feature point in the grayscale palm image corresponding to each dynamic palm image, and using the optical flow method to determine the positions of at least one feature point in the grayscale palm image corresponding to the next dynamic palm image according to the positions of at least one feature point in the grayscale palm image corresponding to the previous dynamic palm image;
[0148] The time point of the above smoothing process is that after each time using the optical flow method to determine the positions of at least one feature point in the grayscale palm image corresponding to the current dynamic palm image, the Kalman filter is immediately used to smooth the positions of at least one feature point in the grayscale palm image corresponding to the current dynamic palm image, and then based on the optimized positions of at least one feature point in the grayscale palm image corresponding to the current dynamic palm image, the optical flow method is used to determine the positions of at least one feature point in the grayscale palm image corresponding to the next dynamic palm image, and so on in a loop to obtain the optimized positions of at least one feature point in the grayscale palm images corresponding to each dynamic palm image.
[0149] In some embodiments, the time point of the smoothing process is: after using the optical flow method to determine the positions of at least one feature point in the grayscale palm images corresponding to each dynamic palm image respectively, smoothing the positions of at least one feature point in the grayscale palm images corresponding to each dynamic palm image respectively.
[0150] The time for the above-mentioned smoothing process is after determining the positions of each feature point in the grayscale palm images corresponding to each dynamic palm image by using the optical flow method, and then using a Kalman filter to smooth the positions of each feature point in the grayscale palm images corresponding to each dynamic palm image, so as to obtain the optimized positions of at least one feature point in the grayscale palm images corresponding to each dynamic palm image.
[0151] In some embodiments, the time point of the smoothing process is: after determining the positions of at least one feature point in the grayscale palm image corresponding to each dynamic palm image by using the optical flow method, smoothing the positions of at least one feature point in the grayscale palm image corresponding to each dynamic palm image, and using the optical flow method to determine the positions of at least one feature point in the grayscale palm image corresponding to the next dynamic palm image according to the positions of at least one feature point in the grayscale palm image corresponding to the previous dynamic palm image. After obtaining the optimized positions of each feature point in the grayscale palm images corresponding to each dynamic palm image, use the Kalman filter again to smooth the optimized positions of each feature point in the grayscale palm images corresponding to each dynamic palm image, so as to obtain the further optimized positions of each feature point in the grayscale palm images corresponding to each dynamic palm image.
[0152] By smoothing the positions of the feature points using a Kalman filter at different time points, the accuracy of the feature point positions can be further improved, thereby improving the accuracy of palm brushing recognition.
[0153] Step 342, obtain the motion vector of each feature point in each pair of dynamic palm images according to the positions of at least one feature point in each pair of dynamic palm images; wherein, each pair of dynamic palm images includes two adjacent dynamic palm images.
[0154] A pair of dynamic palm images refers to an image pair containing two adjacent dynamic palm images, and the motion vector of a feature point in a pair of dynamic palm images is used to indicate the motion direction and motion speed of the feature point between two adjacent dynamic palm images.
[0155] According to the positions of the feature point in two adjacent dynamic palm images, obtain the motion vector of the feature point between two adjacent dynamic palm images. Thus, according to the positions of at least one feature point in each pair of dynamic palm images, the motion vector of each feature point in each pair of dynamic palm images can be obtained.
[0156] In some embodiments, according to the optimized positions of at least one feature point in each pair of dynamic palm images, obtain the optimized motion vector of each feature point in each pair of dynamic palm images.
[0157] Step 343: Obtain the motion features of the palm to be recognized based on the motion vectors of each feature point in each pair of dynamic palm images.
[0158] In some embodiments, for each pair of dynamic palm images, calculate the average value of the motion vectors of at least one feature point in each pair of dynamic palm images to obtain the average motion vector of each pair of dynamic palm images; the magnitude of the average motion vector is used to represent the sliding speed of the palm to be recognized in the pair of dynamic palm images, and the direction of the average motion vector is used to represent the sliding direction of the palm to be recognized in the pair of dynamic palm images; obtain the motion features of the palm to be recognized based on the average motion vector of each pair of dynamic palm images.
[0159] For a pair of dynamic palm images, obtain the motion vectors of at least one feature point in this pair of dynamic palm images, and calculate the average value of the motion vectors of at least one feature point in this pair of dynamic palm images to obtain the average motion vector of this pair of dynamic palm images. Concatenate the average motion vectors of each pair of dynamic palm images, and use the concatenated motion vectors as the motion features of the palm to be recognized.
[0160] Among them, the magnitude of each average motion vector is used to represent the sliding speed of the palm to be recognized in the corresponding pair of dynamic palm images, and the direction of the average motion vector is used to represent the sliding direction of the palm to be recognized in the corresponding pair of dynamic palm images.
[0161] By calculating the average motion vector of the motion vectors of at least one feature point in each pair of dynamic palm images, the obtained average motion vector can more accurately represent the sliding trajectory and sliding speed of the palm to be recognized in the pair of dynamic palm images. Therefore, determining the recognition result based on the motion features of the palm to be recognized can improve the accuracy of the recognition result and the success rate of palm-sweeping recognition.
[0162] Next, a specific introduction to the process of obtaining the palm features of the palm to be recognized will be given.
[0163] In some embodiments, use a trained local recognition model to perform region recognition on the first static palm image to obtain the first partition. Among them, the training process of the local recognition model is as follows:
[0164] 1. Obtain the training data set of the local recognition model. The training data set contains at least one training sample pair. Each training sample pair contains a local sample image and a sample label corresponding to the local sample image; among them, the local sample image is a local palm image obtained by photographing a local area of a complete palm. The local sample image includes any one of an infrared local image collected by an infrared camera and a color local image collected by a color camera. The sample label is used to indicate the partition of the local area corresponding to the local sample image in the complete palm.
[0165] The training sample pairs can be those containing an infrared local image and the sample label corresponding to the infrared local image, or those containing a color local image and the sample label corresponding to the color local image.
[0166] 2. Normalize each local sample image in the training dataset to obtain the processed local sample image. The normalization process is used to process each local sample image into an image with the same size.
[0167] Scale each local sample image to the same size to obtain the processed local sample image.
[0168] Optionally, data augmentation can also be performed on each local sample image in the training dataset, such as image rotation, image flipping, image translation, etc.
[0169] Optionally, preprocessing can also be performed on each local sample image in the training dataset, such as image alignment processing, image filtering processing, image grayscale processing, etc.
[0170] 3. Use the local recognition model to obtain the predicted partition corresponding to the local sample image based on the processed local sample image.
[0171] The local recognition model is a network structure of a CNN (Convolutional Neural Network), such as VGG-16, ResNet (Residual Network), etc. The input layer of the local recognition model receives the processed local sample image, and the number of nodes in the output layer is the number of partitions of the complete palm. For example Figure 5 As shown in the schematic diagram of the local palm partition, if the complete palm is divided into 9 partitions, then the number of nodes in the output layer corresponding to the local recognition model is 9. After the output layer, a normalization layer can be used to convert the output into a probability distribution. For example, the softmax activation function can be used to convert the output into a probability distribution, so as to obtain the probability of the local sample image corresponding to each palm partition.
[0172] 4. Train the local recognition model according to the difference between the predicted partition and the sample label to obtain the trained local recognition model.
[0173] Calculate the loss function value according to the difference between the predicted partition and the sample label. Optionally, the loss function can choose the cross-entropy loss function (Cross Entropy Loss), and the optimizer can choose Stochastic Gradient Descent (SGD) or Adam (Adaptive Moment Estimation), etc.
[0174] The cross - entropy loss function can be expressed as:
[0175]
[0176] where p(x i ) represents the probability distribution corresponding to the sample label, and q(x i ) represents the probability distribution corresponding to the predicted partition.
[0177] Adjust the parameters of the local recognition model according to the loss function value to minimize the loss function, and obtain the trained local recognition model.
[0178] Optionally, the model performance can also be evaluated through metrics such as accuracy, recall rate, F1 - score, etc., and further adjust the parameters of the local recognition model to obtain the trained local recognition model.
[0179] Through the trained local recognition model, the region of the static palm image can be recognized, and the position of the corresponding local region of the static palm image in the complete palm can be determined, so that the palm partition to be matched with the pre - stored database can be determined, improving the efficiency of feature matching.
[0180] In some embodiments, the method for determining the palm features of the palm to be recognized includes one of the following:
[0181] First, according to the parameters of the first filter bank, obtain the response function corresponding to the first filter bank. The first filter bank includes at least one first filter, and different parameters of the first filter are used to extract features of the static palm image at different frequencies and different directions; perform convolution processing on the response function corresponding to each of the at least one first filter and the static palm image respectively to obtain the convolution result corresponding to each of the at least one first filter; determine the convolution results corresponding to each of the at least one first filter as the palm features of the first partition.
[0182] The first filter bank includes first filters with different parameters, and the first filters with different parameters are used to extract features of the static palm image at different frequencies and different directions.
[0183] The response function of the first filter can be expressed as:
[0184]
[0185] where λ represents the wavelength of the sine factor, θ represents the direction from the normal of the response function to the parallel stripes, ψ represents the phase shift, σ represents the sigma standard deviation of the Gaussian function, γ represents the aspect ratio, and (x, y) represents the pixel position in the image.
[0186] The convolution result corresponding to the first filter can be expressed as:
[0187] R(x,y,λ,θ,ψ,σ,γ) = G(x,y,λ,θ,ψ,σ,γ) * I(x,y)
[0188] Wherein, R(x,y,λ,θ,ψ,σ,γ) represents the convolution result of the first filter, and I(x,y) represents the static palm image.
[0189] Exemplarily, Figure 8 Figure (a) in Figure 8 shows the first filters with different parameters, Figure 8 and figure (b) in shows the convolution results corresponding to each of the first filters. In figure (a) of Figure 8 from row 1 to row 5, λ takes 3, 6, 9, 12, 15 in sequence, and from column 1 to column 8, θ takes 0, Figure 8 and the other parameter values are ψ = 0, σ = 2π, γ = 0.5. Since the display effect of the palm image is not good, the first filter bank shown in figure (a) of
[0190] is used to perform convolution processing on the face image respectively, and the convolution results corresponding to each of the first filters shown in figure (b) of
[0191] are obtained. The convolution result is used to represent the features of the static palm image at different frequencies and different directions, so that the convolution results corresponding to at least one of the first filters can be determined as the palm features of the first partition.
[0192] Exemplarily, the first filter can be a Gabor filter. Second, obtain the pixel values of each pixel point in the static palm image; according to the pixel value of the i-th pixel point and the pixel values of each pixel point within the first neighborhood range of the i-th pixel point, obtain the pixel feature of the i-th pixel point, where i is a positive integer; determine the pixel features of each pixel point as the palm features of the first partition.
[0193] The first neighborhood range refers to a regional range around the pixel point. Exemplarily, it can be a 3×3 neighborhood range around the pixel point, or a 4×4 neighborhood range. This application does not make a limitation on this.
[0194] In some embodiments, if the pixel value of the first pixel point within the first neighborhood range is greater than the pixel value of the i-th pixel point, then mark the position of the first pixel point as the first value; if the pixel value of the second pixel point within the first neighborhood range is less than the pixel value of the i-th pixel point, then mark the position of the second pixel point as the second value; according to the values marked for the positions of each pixel point within the first neighborhood range, obtain the pixel feature of the i-th pixel point.
[0195] Both the first pixel point and the second pixel point are any pixel points within the first neighborhood range. For determining the pixel feature of the i-th pixel point, if the pixel value of a certain pixel point within the first neighborhood range is greater than the pixel value of the i-th pixel point, then mark the position of this pixel point as the first value; if the pixel value of a certain pixel point within the first neighborhood range is less than the pixel value of the i-th pixel point, then mark the position of this pixel point as the second value. For the case where the pixel value of a certain pixel point within the first neighborhood range is equal to the pixel value of the i-th pixel point, the position of this pixel point can be marked as the first value or the second value, which can be determined according to the actual feature extraction requirements and is not specifically limited in this application.
[0196] Exemplarily, reference can be made to Figure 9 the pixel feature extraction process shown. The first neighborhood range is a 3×3 neighborhood range around the pixel point, the first value is 1, and the second value is 0. Then for the pixel value 5 of the central pixel point, if the pixel value of the pixel point within the neighborhood range is greater than or equal to 5, then mark the position of this pixel point as 1; if the pixel value of the pixel point within the neighborhood range is less than 5, then mark the position of this pixel point as 0, obtaining the pixel feature of the central pixel point as {00010011}.
[0197] The pixel feature of the pixel point is used to represent the texture information of the first neighborhood range, and the pixel features of each pixel point are determined as the palm features of the first partition.
[0198] Through the two feature extraction methods provided above, the palm features of the static palm image can be obtained. The first method obtains the features of the static palm image at different frequencies and different directions, and the second method obtains the texture features around each pixel point. The corresponding feature extraction method can be determined according to the actual feature extraction requirements, so as to meet the palm recognition requirements of different palm-sweeping recognition devices and improve the accuracy of palm-sweeping recognition.
[0199] Optionally, after obtaining the palm features of the first partition, the palm features of the first partition can also be passed through a CNN network structure to further extract the palm features, and the recognition result of the palm to be recognized can be determined according to the further extracted palm features.
[0200] Next, a specific introduction to the method for confirming the recognition result of the palm to be recognized will be given.
[0201] In some embodiments, according to the palm features and motion features, the motion posture features of the palm to be recognized are obtained, and the motion posture features are the features obtained by splicing the palm features and the motion features; the matching degrees between the motion posture features and the motion posture features of at least one pre-stored palm in the pre-stored database are calculated respectively; if the first matching degree corresponding to the first pre-stored palm is the maximum matching degree and the maximum matching degree is greater than the first threshold, it is determined that the recognition result of the palm to be recognized is that the palm to be recognized matches the first pre-stored palm.
[0202] The above feature fusion method can also be called Feature-level Fusion. Suppose the palm feature is F p , and the motion feature is F m . By splicing the palm feature and the motion feature, the obtained motion posture feature can be expressed as:
[0203] F fusion = [F p , F m
[0204] In a computer device, feature data is usually stored as encoded data. For example, the feature data can be encoded as binary data or the encoding form of other characters.
[0205] According to the encoded feature data, the matching degrees between the motion posture features and the motion posture features of at least one pre-stored palm in the pre-stored database are calculated respectively, that is, the matching degrees between the encoded motion posture features and the encoded motion posture features of at least one pre-stored palm in the pre-stored database are calculated. Optionally, the calculation of the matching degree can adopt iris matching algorithms such as Euclidean distance, cosine similarity, Mahalanobis distance, Hamming distance, etc. The specific matching algorithm can be independently selected according to the actual matching requirements, and this application does not limit this.
[0206] Exemplarily, taking the Euclidean distance as an example, suppose the motion posture feature of the palm to be recognized is s, and the motion posture feature of the pre-stored palm in the pre-stored database is t. Then the Euclidean distance between the motion posture feature of the palm to be recognized and the motion posture feature of the pre-stored palm can be expressed as d(s, t). Then, the motion posture feature of the palm to be recognized matches the motion posture feature of the first pre-stored palm corresponding to the maximum matching degree, which can be expressed as:
[0207]
[0208] Among them, represents the first pre-stored palm. When in the pre-stored database (database), d(s, t) is the smallest, that is, when, the matching degree between the motion posture feature of the palm to be recognized and the motion posture feature of the pre-stored palm is the largest.
[0209] If the maximum matching degree is greater than the first threshold, it is determined that the recognition result of the palm to be recognized is that the palm to be recognized matches the first pre-stored palm, that is, it means that the recognition of the palm to be recognized is successful. If the maximum matching degree is less than the first threshold, it is determined that the recognition result of the palm to be recognized is that the palm to be recognized does not match the first pre-stored palm, that is, it means that the recognition of the palm to be recognized fails. Optionally, if the maximum matching degree is equal to the first threshold, it can be determined whether the palm to be recognized matches the first pre-stored palm according to the actual matching requirements.
[0210] In some embodiments, the first threshold is 100%, that is, if the matching degree between the motion gesture features of the palm to be recognized and the motion gesture features of the first pre-stored palm reaches 100%, it means that the recognition of the palm to be recognized is successful.
[0211] Optionally, if the recognition result of the palm to be recognized is directly determined by using the Euclidean distance, then, for example, if the Euclidean distance is less than a certain threshold, it is determined that the recognition result of the palm to be recognized is that the palm to be recognized matches the first pre-stored palm. If the Euclidean distance is greater than a certain threshold, it is determined that the recognition result of the palm to be recognized is that the palm to be recognized does not match the first pre-stored palm. In some embodiments, the threshold of the Euclidean distance is 0, that is, if the Euclidean distance between the motion gesture features of the palm to be recognized and the motion gesture features of the first pre-stored palm is 0, it means that the matching degree between the two reaches 100%, and the recognition of the palm to be recognized is successful.
[0212] In some embodiments, in order to improve the security of palm brushing recognition, the feature data of the pre-stored palm needs to be encrypted when stored to prevent the features from being illegally obtained and used. Common encryption methods include encryption methods such as hash functions, symmetric encryption, and asymmetric encryption.
[0213] The above matching method splices the palm features and motion features, and calculates the matching degree of the spliced motion features. The scheme is simple and direct, which helps to improve the efficiency of palm brushing matching.
[0214] In some embodiments, the second matching degree between the palm features and the palm features of at least one pre-stored palm in the pre-stored database is calculated respectively, and the third matching degree between the motion features and the motion features of at least one pre-stored palm in the pre-stored database is calculated respectively; the weighted sum of the second matching degree and the third matching degree corresponding to at least one pre-stored palm is obtained to obtain the comprehensive matching degree corresponding to at least one pre-stored palm; if the comprehensive matching degree corresponding to the second pre-stored palm is the maximum matching degree and the maximum matching degree is greater than the second threshold, it is determined that the recognition result of the palm to be recognized is that the palm to be recognized matches the second pre-stored palm.
[0215] The above feature fusion method can also be called decision-level fusion. First, use palm features and motion features for prediction respectively to obtain the matching results of palm features (the second matching degree) and the matching results of motion features (the third matching degree), and then fuse the matching results of palm features and the matching results of motion features to obtain the comprehensive matching result (the comprehensive matching degree).
[0216] Assume that the second matching degree of palm features is P p , and the third matching degree of motion features is P m . By weighting the second matching degree and the third matching degree, the obtained comprehensive matching degree can be expressed as:
[0217] P fusion = αP p +(1 - α)P m
[0218] where α is the weight coefficient, and the value range of α is any value between 0 and 1.
[0219] The specific method for calculating the matching degree can refer to the above feature-level fusion method and will not be elaborated here.
[0220] If the comprehensive matching degree corresponding to the second pre-stored palm is the maximum matching degree and the maximum matching degree is greater than the second threshold, it is determined that the recognition result of the palm to be recognized is that the palm to be recognized matches the second pre-stored palm, that is, it means that the recognition of the palm to be recognized is successful. If the maximum matching degree is less than the second threshold, it is determined that the recognition result of the palm to be recognized is that the palm to be recognized does not match the second pre-stored palm, that is, it means that the recognition of the palm to be recognized fails. Optionally, if the maximum matching degree is equal to the second threshold, it can be determined whether the palm to be recognized matches the second pre-stored palm according to the actual matching requirements.
[0221] The above matching method can construct a comprehensive matching degree for different features, and determine the weighted parameters of different features according to the actual matching requirements, so as to determine the proportion of the matching degrees of different features in the comprehensive matching degree, ensuring the diversity of the applicability of the solution.
[0222] In some embodiments, a fusion model is used to obtain the recognition result of the palm to be recognized according to the palm features and the motion features; wherein, the fusion model is used to perform feature learning on the palm features and the motion features to obtain the learned features; calculate the matching degrees between the learned features and the learned features of at least one pre-stored palm in the pre-stored database respectively; according to at least one matching degree, output the recognition result of the palm to be recognized, and the fourth matching degree corresponding to the third pre-stored palm indicated by the recognition result is the maximum matching degree, and the maximum matching degree is greater than the third threshold.
[0223] The above-mentioned feature fusion method can also be called Model-level Fusion. By constructing a fusion model, which can be a Multimodal Network, it enables the simultaneous processing of palm features and motion features.
[0224] For example, a neural network with dual inputs can be constructed, such as a dual-input CNN or a dual-input LSTM (Long Short-Term Memory). Feature learning is performed on the palm features and motion features respectively, and feature fusion is carried out in the intermediate layer of the fusion model to obtain the learned features, as shown in Figure 10 Then, classification or regression is performed through the fully connected layer. The matching degrees between the learned features and the learned features of at least one pre-stored palm in the pre-stored database are calculated respectively, and based on the at least one matching degree, the recognition result of the palm to be recognized is output.
[0225] If the fourth matching degree corresponding to the third pre-stored palm is the maximum matching degree and the maximum matching degree is greater than the third threshold, the recognition result of the palm to be recognized output is that the palm to be recognized matches the third pre-stored palm, and it is prompted that the recognition of the palm to be recognized is successful. If the maximum matching degree is less than the third threshold, the recognition result of the palm to be recognized output is that the palm to be recognized does not match the third pre-stored palm, and it is prompted that the recognition of the palm to be recognized fails. If the maximum matching degree is equal to the third threshold, it can be determined whether the palm to be recognized matches the third pre-stored palm according to the actual matching requirements.
[0226] By constructing a fusion model to obtain the recognition result of the palm to be recognized, the relationship between different features can be learned. And the above-mentioned palm matching process allows online matching and also supports local matching calculation, which improves security while ensuring the diversity of the applicable solutions.
[0227] In some embodiments, the generation method of the pre-stored database includes one of the following:
[0228] First, local palm images corresponding to each partition of the first palm are collected in sequence to obtain the palm features of each partition; the motion of the first palm is recorded according to a preset first sliding trajectory to obtain the motion features of the first palm; the palm features of each partition of the first palm and the motion features of the first palm are determined as the feature data of the first palm in the pre-stored database.
[0229] Such as Figure 11Schematic diagram of the specific implementation of palm brushing recognition, referring to scenario A. First, according to the prompts of the guiding lights, local palm images corresponding to each partition of the user's palm are collected, including color images and infrared images. Then, based on the optimized algorithm, it is determined whether the collected images are local palm images, and the input range of the palm area is calculated. There is a screen / light effect to remind the user of the collection progress, tell the user the local palm area that has been input, and the user's palm continues to slide until the palm area of the entire palm is collected. Based on the palm edge judgment algorithm, it can be judged whether the user's palm has slid out of the collection range of the camera, and corresponding reminders (such as flashing lights) are made to remind the user to continue inputting. The collected local palm images are preprocessed and the image quality is detected, including at least one of image alignment processing, image filtering processing, and image grayscale processing, to improve the image quality, and high-quality images (clear, rich in features) are selected to enter the next step. Then, according to each collected local palm image, palm features in each local palm image are extracted, including palm print features and palm vein features. The complete palm is partitioned, and local feature indexes are established for each partition to obtain the palm features corresponding to each partition. Finally, according to the preset first sliding trajectory, the palm is slid within a certain speed range, the device records the movement trajectory of the palm, and the movement features corresponding to the movement trajectory are extracted. According to the palm features of each partition and the movement features corresponding to the first sliding trajectory, the feature data of the user's palm is obtained.
[0230] The feature data of the first palm obtained in scenario A includes the feature data after combining the palm features of each partition of the first palm and the movement features of the first palm. Specifically, it means that one piece of feature data of the first palm includes the palm features of one partition of the first palm and the movement features of the first palm. If the first palm is divided into 9 partitions, the feature data of the first palm contains 9 pieces of feature data, that is, the feature data after combining the palm features of 9 feature partitions with the movement features of the first palm respectively.
[0231] By the above method of collecting and pre-storing data, the time for inputting the sliding trajectory can be reduced, and the movement features of one sliding trajectory are combined with the palm features of each partition of the complete palm, so that the feature data of the user's palm can be obtained quickly, and the efficiency of generating the pre-stored database is improved.
[0232] Second, collect the local palm image corresponding to the second partition of the second palm to obtain the palm features of the second partition; record the movement according to the preset second sliding trajectory to obtain the movement features of the second palm; determine the palm features of the second partition and the movement features of the second palm as the feature data of the second palm in the pre-stored database.
[0233] Such as Figure 11Schematic diagram of the specific implementation of palm brushing recognition, referring to Scenario B. First, according to the prompts of the guiding lights, local palm images corresponding to each partition of the user's palm are collected, including color images and infrared images. Then, based on an optimized algorithm, it is determined whether the collected images are local palm images, and the collected local palm images are preprocessed and image quality detected, including at least one processing step of image alignment processing, image filtering processing, and image grayscale processing, to improve the image quality, and high-quality images (clear and rich in features) are selected to enter the next step. It is possible to judge whether the user's palm has slid out of the acquisition range of the camera based on the palm edge judgment algorithm and give corresponding reminders (such as by flashing lights) to remind the user to continue inputting. Then, regional detection is performed on the collected local palm images to judge the partition of the local area corresponding to the local palm image in the complete palm, and the palm features of the local palm image are extracted, including palm print features and palm vein features. Finally, according to the preset second sliding trajectory, the palm is slid within a certain speed range, and the device records the movement trajectory of the palm and extracts the movement features corresponding to the movement trajectory. According to the palm features of the second partition corresponding to the local palm image and the movement features corresponding to the second sliding trajectory, the feature data of the user's palm is obtained.
[0234] The feature data of the second palm obtained in Scenario B includes the palm features of the second partition corresponding to each collected local palm image and the movement features of the second palm. Different from the above Scenario A, in Scenario B, after collecting the palm features of one partition, it is necessary to slide according to a custom trajectory within a certain speed range to obtain the movement features corresponding to the sliding trajectory.
[0235] Therefore, through the above method of collecting and pre-storing data, different sliding trajectory verifications can be set for different partitions. For example, the combination of the palm features of the first partition and the movement features of the first sliding trajectory obtains one piece of feature data, and the combination of the palm features of the second partition and the movement features of the second sliding trajectory obtains one piece of feature data. This enables flexible setting of sliding trajectories for different palm brushing intentions and improves the diversity of the applicable solutions.
[0236] Exemplarily, if the first sliding trajectory is to slide from left to right, then the first sliding trajectory can represent consent. When performing palm brushing recognition verification, a specific partition or any partition can be selected for palm brushing recognition. When the user verifies by brushing the palm according to the first sliding trajectory, if the user's palm is recognized successfully, it means that the palm to be recognized matches the identity of the pre-stored palm and also means that the user's palm brushing intention is consent.
[0237] Exemplarily, multiple sliding trajectories can also be set for the user's palm for matching verification. For example, when the user uses their left hand to perform palm brushing verification according to the first sliding trajectory, if the user's palm recognition is prompted to pass, then the user needs to use their right hand to perform palm brushing verification according to the second sliding trajectory. If the user's palm recognition is prompted to pass again here, it can indicate that the user's palm recognition is successful this time.
[0238] The following is an embodiment of the apparatus of the present application, which can be used to execute the method embodiment of the present application. For details not disclosed in the apparatus embodiment of the present application, please refer to the method embodiment of the present application.
[0239] Please refer to Figure 12 , which shows a block diagram of a palm brushing recognition apparatus provided by an embodiment of the present application. The apparatus has the function of implementing the above-mentioned palm brushing recognition method, and the function can be implemented by hardware or by hardware executing corresponding software. The apparatus can be the computer device introduced above, or can be set in the computer device. As Figure 12 shown, the apparatus 1200 can include: an image acquisition module 1210, a region recognition module 1220, a palm feature acquisition module 1230, a motion feature acquisition module 1240, and a result determination module 1250.
[0240] The image acquisition module 1210 is configured to acquire a set of palm images of the palm to be recognized; wherein, the set of palm images includes at least one static palm image collected when the palm to be recognized is statically recognized, and at least two dynamic palm images collected when the palm to be recognized is slidingly recognized, and the static palm image and the dynamic palm image are partial palm images obtained by photographing a partial area of the complete palm.
[0241] The region recognition module 1220 is configured to perform region recognition on the static palm image to obtain a first partition, and the first partition is used to indicate the position of the partial area corresponding to the static palm image in the complete palm;
[0242] The palm feature acquisition module 1230 is configured to obtain the palm features of the first partition according to the static palm image.
[0243] The motion feature acquisition module 1240 is configured to obtain the motion features of the palm to be recognized according to the at least two dynamic palm images, and the motion features are used to characterize the sliding trajectory and sliding speed of the palm to be recognized.
[0244] The result determination module 1250 is configured to determine the recognition result of the palm to be recognized according to the palm features and the motion features.
[0245] In some embodiments, the motion feature acquisition module 1240 includes:
[0246] A position acquisition unit for acquiring the positions of at least one feature point in each of the dynamic palm images.
[0247] A vector acquisition unit for obtaining a motion vector of each feature point in each pair of dynamic palm images according to the positions of the at least one feature point in each pair of dynamic palm images; wherein, each pair of dynamic palm images includes two adjacent dynamic palm images.
[0248] A motion feature acquisition unit for obtaining the motion feature of the palm to be recognized according to the motion vectors of each feature point in each pair of dynamic palm images.
[0249] In some embodiments, the motion feature acquisition unit is configured to:
[0250] For each pair of dynamic palm images, calculate the average value of the motion vectors of at least one feature point in each pair of dynamic palm images to obtain the average motion vector of each pair of dynamic palm images; the magnitude of the average motion vector is used to represent the sliding speed of the palm to be recognized in the pair of dynamic palm images, and the direction of the average motion vector is used to represent the sliding direction of the palm to be recognized in the pair of dynamic palm images;
[0251] Obtain the motion feature of the palm to be recognized according to the average motion vectors of each pair of dynamic palm images.
[0252] In some embodiments, the position acquisition unit is configured to:
[0253] Perform grayscale processing on the at least two dynamic palm images to obtain the grayscale palm images corresponding to the at least two dynamic palm images respectively;
[0254] Determine at least one feature point in the grayscale palm image corresponding to the first dynamic palm image among the at least two dynamic palm images; wherein, the first dynamic palm image is the first dynamic palm image among the at least two dynamic palm images;
[0255] Use the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images according to the position of the at least one feature point in the grayscale palm image corresponding to the first dynamic palm image.
[0256] In some embodiments, the device further includes a filtering module, and the filtering module is configured to:
[0257] The Kalman filter is used to smooth the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images, so as to obtain the optimized positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images.
[0258] The vector acquisition unit is configured to obtain the optimized motion vectors of each feature point in each of the dynamic palm image pairs according to the optimized positions of the at least one feature point in each of the dynamic palm image pairs.
[0259] Wherein, the time points of the smoothing process include at least one of the following:
[0260] After using the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images, smooth the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images, and use the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to the next dynamic palm image according to the positions of the at least one feature point in the grayscale palm images corresponding to the previous dynamic palm image;
[0261] Or,
[0262] After using the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images respectively, smooth the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images respectively.
[0263] In some embodiments, the filtering module is configured to:
[0264] According to the optimized position of the first feature point at the (k - 1)th moment, obtain the predicted position of the first feature point at the kth moment, where k is an integer greater than 1; wherein, the optimized position at the 1st moment is the position of the first feature point in the grayscale palm image corresponding to the first dynamic palm image; the adjacent two dynamic palm images in each of the dynamic palm image pairs are separated by one moment;
[0265] According to the predicted position of the first feature point at the kth moment, the measured position of the first feature point at the kth moment, and the Kalman gain corresponding to the Kalman filter, obtain the optimized position of the first feature point at the kth moment;
[0266] Among them, the measured position of the first feature point at the k-th moment is the position obtained by using the optical flow method; the Kalman gain is calculated based on the covariance corresponding to the predicted position of the first feature point at the k-th moment, and the covariance corresponding to the predicted position of the first feature point at the k-th moment is calculated based on the covariance corresponding to the optimized position of the first feature point at the (k - 1)-th moment. The covariance is used to represent the error between the predicted position and the measured position.
[0267] In some embodiments, the static palm image includes an infrared static image collected by an infrared camera and a color static image collected by a color camera. The infrared static image is used to obtain the palm vein features of the palm to be recognized, and the color static image is used to obtain the palmprint features of the palm to be recognized.
[0268] The device further includes a preprocessing module, and the preprocessing module is used for:
[0269] Preprocess the at least one static palm image to obtain at least one processed static palm image; the preprocessing includes at least one of image alignment processing, image filtering processing, and image grayscale processing.
[0270] Determine a first static palm image according to the at least one processed static palm image. The first static palm image is the processed static palm image with the highest quality score among the at least one processed static palm images.
[0271] The palm feature acquisition module 1230 is used for:
[0272] Obtain the palm vein features of the first partition according to the infrared static image in the first static palm image, and obtain the palmprint features of the first partition according to the color static image in the first static palm image.
[0273] Obtain the palm features of the first partition according to the palm vein features of the first partition and the palmprint features of the first partition.
[0274] In some embodiments, the region recognition module 1220 is used for:
[0275] Perform region recognition on the first static palm image by using a trained local recognition model to obtain the first partition.
[0276] Among them, the training process of the local recognition model is as follows:
[0277] Obtain the training data set for the local recognition model, where the training data set includes at least one training sample pair, and each training sample pair contains a local sample image and a sample label corresponding to the local sample image; wherein, the local sample image is a local palm image obtained by photographing a local area of a complete palm, and the local sample image includes any one of an infrared local image collected by an infrared camera and a color local image collected by a color camera, and the sample label is used to indicate the partition of the local area corresponding to the local sample image in the complete palm;
[0278] Perform normalization processing on each local sample image in the training data set to obtain the processed local sample image, and the normalization processing is used to process each local sample image into an image with the same size;
[0279] Use the local recognition model to obtain the predicted partition corresponding to the local sample image according to the processed local sample image;
[0280] Train the local recognition model according to the difference between the predicted partition and the sample label to obtain the trained local recognition model.
[0281] In some embodiments, the result determination module 1250 is configured to:
[0282] Obtain the motion pose feature of the palm to be recognized according to the palm feature and the motion feature, and the motion pose feature is a feature obtained by splicing the palm feature and the motion feature;
[0283] Calculate the matching degrees between the motion pose feature and the motion pose features of at least one pre-stored palm in the pre-stored database respectively;
[0284] If the first matching degree corresponding to the first pre-stored palm is the maximum matching degree and the maximum matching degree is greater than the first threshold, determine that the recognition result of the palm to be recognized is that the palm to be recognized matches the first pre-stored palm.
[0285] In some embodiments, the result determination module 1250 is configured to:
[0286] Calculate the second matching degrees between the palm feature and the palm features of at least one pre-stored palm in the pre-stored database respectively, and calculate the third matching degrees between the motion feature and the motion features of at least one pre-stored palm in the pre-stored database respectively;
[0287] Perform weighted summation on the second matching degrees and the third matching degrees corresponding to the at least one pre-stored palm to obtain the comprehensive matching degree corresponding to the at least one pre-stored palm;
[0288] If the comprehensive matching degree corresponding to the second pre-stored palm is the maximum matching degree, and the maximum matching degree is greater than the second threshold, it is determined that the recognition result of the palm to be recognized is that the palm to be recognized matches the second pre-stored palm.
[0289] In some embodiments, the result determination module 1250 is configured to:
[0290] Use a fusion model to obtain the recognition result of the palm to be recognized based on the palm feature and the motion feature;
[0291] Wherein, the fusion model is used to perform feature learning on the palm feature and the motion feature to obtain the learned features; calculate the matching degrees between the learned features and the learned features of at least one pre-stored palm in the pre-stored database respectively; according to at least one matching degree, output the recognition result of the palm to be recognized, the fourth matching degree corresponding to the third pre-stored palm indicated by the recognition result is the maximum matching degree, and the maximum matching degree is greater than the third threshold.
[0292] In some embodiments, the generation method of the pre-stored database includes one of the following:
[0293] Sequentially collect the local palm images corresponding to each partition of the first palm to obtain the palm features of each partition; record the motion according to a preset first sliding trajectory to obtain the motion feature of the first palm; determine the palm features of each partition of the first palm and the motion feature of the first palm as the feature data of the first palm in the pre-stored database;
[0294] Or,
[0295] Collect the local palm image corresponding to the second partition of the second palm to obtain the palm feature of the second partition; record the motion according to a preset second sliding trajectory to obtain the motion feature of the second palm; determine the palm feature of the second partition and the motion feature of the second palm as the feature data of the second palm in the pre-stored database.
[0296] In some embodiments, the palm feature acquisition module 1230 is configured to:
[0297] According to the parameters of the first filter bank, obtain the response function corresponding to the first filter bank, where the first filter bank includes at least one first filter, and different parameters of the first filter are used to extract the features of the static palm image at different frequencies and different directions;
[0298] Perform convolution processing on the response function corresponding to each of the at least one first filter and the static palm image respectively to obtain the convolution result corresponding to each of the at least one first filter;
[0299] Determine the convolution result corresponding to each of the at least one first filter as the palm feature of the first partition.
[0300] In some embodiments, the palm feature acquisition module 1230 is configured to:
[0301] Obtain the pixel values of each pixel point in the static palm image;
[0302] According to the pixel value of the i-th pixel point and the pixel values of each pixel point within the first neighborhood range of the i-th pixel point, obtain the pixel feature of the i-th pixel point, where i is a positive integer;
[0303] Determine the pixel features of each of the pixel points as the palm feature of the first partition.
[0304] In some embodiments, the palm feature acquisition module 1230 is configured to:
[0305] If the pixel value of the first pixel point within the first neighborhood range is greater than the pixel value of the i-th pixel point, mark the position of the first pixel point as a first numerical value;
[0306] If the pixel value of the second pixel point within the first neighborhood range is less than the pixel value of the i-th pixel point, mark the position of the second pixel point as a second numerical value;
[0307] Obtain the pixel feature of the i-th pixel point according to the numerical values marked for the positions of each pixel point within the first neighborhood range.
[0308] The technical solution provided by the embodiments of the present application, on the one hand, by photographing a local area of the complete palm to obtain at least one static palm image and at least two dynamic palm images, and acquiring the palm features of the local area of the complete palm, makes the acquisition accuracy of the local palm image higher. Compared with the image acquisition process of the related art, it is not necessary to acquire a complete palm image at one time, reducing the equipment requirements for the camera of the image acquisition device, thereby reducing the equipment cost. On the other hand, by acquiring the palm features of the first partition of the palm to be recognized and the motion features during the sliding recognition of the palm to be recognized, and combining the features of both aspects to determine the recognition result of the palm to be recognized. Compared with the related art where a static palm image can be directly used to deceive the palm brushing recognition system, the technical solution provided by the present application requires the user to brush the palm for recognition according to a preset sliding trajectory, further confirming the user's willingness to brush the palm and improving the security of the palm brushing recognition system.
[0309] It should be noted that, when the device provided in the above embodiments realizes its functions, only the division of the above functional modules is used for illustration. In actual applications, the above functions can be assigned to different functional modules according to needs, that is, the content structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the device provided in the above embodiments and the method embodiments belong to the same concept. For the specific implementation process, please refer to the method embodiments and will not be elaborated here.
[0310] Please refer to Figure 13 , which shows a structural block diagram of a computer device 1300 provided in an embodiment of the present application. The computer device 1300 can be any electronic device with data calculation, processing, and storage functions. The computer device 1300 can be used to implement the palm brushing recognition method provided in the above embodiments.
[0311] Generally, the computer device 1300 includes a processor 1301 and a memory 1302.
[0312] The processor 1301 may include one or more processing cores, such as a 4-core processor or an 8-core processor. The processor 1301 can be implemented in at least one of the following hardware forms: DSP (Digital Signal Processing), FPGA (Field Programmable Gate Array), and PLA (Programmable Logic Array). The processor 1301 may also include a main processor and a co-processor. The main processor is a processor for processing data in the wake state, also known as the CPU (Central Processing Unit); the co-processor is a low-power processor for processing data in the standby state. In some embodiments, the processor 1301 may be integrated with a GPU (Graphics Processing Unit), and the GPU is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 1301 may also include an AI processor, which is used to process computing operations related to machine learning.
[0313] The memory 1302 may include one or more computer-readable storage media, which may be non-transitory. The memory 1302 may also include high-speed random access memory, as well as non-volatile memory, such as one or more disk storage devices and flash storage devices. In some embodiments, the non-transitory computer-readable storage media in the memory 1302 is used to store a computer program, which is configured to be executed by one or more processors to implement the above-mentioned palm-sweeping recognition method.
[0314] Those skilled in the art can understand that Figure 13 the structure shown in does not constitute a limitation on the computer device 1300, and may include more or fewer components than shown, or combine certain components, or adopt a different component arrangement.
[0315] In a schematic embodiment, a computer-readable storage medium is further provided. A computer program is stored in the storage medium, and when the computer program is executed by a processor of a computer device, the above-mentioned palm-sweeping recognition method is implemented. Optionally, the above-mentioned computer-readable storage medium may be a ROM (Read-Only Memory), a RAM (Random Access Memory), a CD-ROM (Compact Disc Read-Only Memory), a magnetic tape, a floppy disk, an optical data storage device, etc.
[0316] In an exemplary embodiment, a computer program product is further provided. The computer program product includes a computer program, and the computer program is stored in a computer-readable storage medium. The processor of the computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program, so that the computer device executes the above-mentioned palm-sweeping recognition method.
[0317] It should be noted that before and during the process of collecting relevant data of the user, this application can display a prompt interface, a pop-up window or output a voice prompt message. The prompt interface, pop-up window or voice prompt message is used to prompt the user that their relevant data is being collected currently, so that this application only starts to execute the relevant steps of obtaining the user's relevant data after obtaining the confirmation operation issued by the user for the prompt interface or the pop-up window. Otherwise (that is, when the confirmation operation issued by the user for the prompt interface or the pop-up window is not obtained), the relevant steps of obtaining the user's relevant data are ended, that is, the relevant data of the user is not obtained. In other words, all user data collected by this application (including the user's palm image) is processed strictly in accordance with the requirements of relevant national laws and regulations. Obtaining the informed consent or separate consent of the personal information subject is carried out under the condition that the user agrees and authorizes, and subsequent data use and processing behaviors are carried out within the scope of laws, regulations and the authorization of the personal information subject. The collection, use and processing of relevant user data need to comply with relevant laws, regulations and standards of relevant countries and regions.
[0318] It should be understood that "a plurality of" mentioned herein refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally represents an "or" relationship between the front and back associated objects. In addition, the step numbers described in this article only exemplarily show a possible execution sequence between steps. In some other embodiments, the above steps may not be executed in the order of the numbers. For example, two steps with different numbers are executed simultaneously, or two steps with different numbers are executed in the reverse order of the illustration. The embodiments of this application do not make any limitations in this regard.
[0319] The above are only exemplary embodiments of this application and are not intended to limit this application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of this application shall be included in the protection scope of this application.
Claims
1. A palm-sweeping recognition method, characterized in that, The method includes: Obtaining a set of palm images of the palm to be recognized; wherein, the set of palm images includes at least one static palm image collected when the palm to be recognized is statically recognized, and at least two dynamic palm images collected when the palm to be recognized is slidingly recognized. The static palm image and the dynamic palm images are partial palm images obtained by photographing a partial area of the complete palm, and the complete palm is divided into multiple partitions; Performing region recognition on the static palm image, and determining a first partition from the multiple partitions corresponding to the complete palm, where the first partition is used to indicate the position of the partial area corresponding to the static palm image in the complete palm; Obtaining the palm features of the first partition according to the static palm image; Obtaining the motion features of the palm to be recognized according to the at least two dynamic palm images, where the motion features are used to characterize the sliding trajectory and sliding speed of the palm to be recognized; Determining the recognition result of the palm to be recognized according to the palm features and the motion features.
2. The method according to claim 1, wherein The obtaining the motion features of the palm to be recognized according to the at least two dynamic palm images includes: Obtaining the positions of at least one feature point in each of the dynamic palm images; Obtaining the motion vectors of each feature point in each pair of dynamic palm images according to the positions of the at least one feature point in each pair of dynamic palm images; wherein, each pair of dynamic palm images includes two adjacent dynamic palm images; Obtaining the motion features of the palm to be recognized according to the motion vectors of each feature point in each pair of dynamic palm images.
3. The method according to claim 2, wherein The obtaining the motion features of the palm to be recognized according to the motion vectors of each feature point in each pair of dynamic palm images includes: For each pair of dynamic palm images, calculating the average value of the motion vectors of at least one feature point in each pair of dynamic palm images to obtain the average motion vector of each pair of dynamic palm images; the magnitude of the average motion vector is used to represent the sliding speed of the palm to be recognized in the pair of dynamic palm images, and the direction of the average motion vector is used to represent the sliding direction of the palm to be recognized in the pair of dynamic palm images; Obtaining the motion features of the palm to be recognized according to the average motion vectors of each pair of dynamic palm images.
4. The method according to claim 2, wherein The obtaining the positions of at least one feature point in each of the dynamic palm images includes: Performing gray processing on the at least two dynamic palm images to obtain the gray palm images corresponding to the at least two dynamic palm images respectively; Determining at least one feature point in the gray palm image corresponding to the first dynamic palm image according to the gray palm image corresponding to the first dynamic palm image among the at least two dynamic palm images; wherein, the first dynamic palm image is the first dynamic palm image among the at least two dynamic palm images; Using the optical flow method, determine the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images according to the positions of the at least one feature point in the grayscale palm image corresponding to the first dynamic palm image.
5. The method according to claim 4, wherein The method further includes: Using a Kalman filter to smooth the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images, to obtain the optimized positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images; The obtaining the motion vectors of each feature point in each of the dynamic palm image pairs according to the positions of the at least one feature point in each of the dynamic palm image pairs includes: Obtaining the optimized motion vectors of each feature point in each of the dynamic palm image pairs according to the optimized positions of the at least one feature point in each of the dynamic palm image pairs; Wherein, the time points of the smoothing process include at least one of the following: After using the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images, smooth the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images, and use the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to the next dynamic palm image according to the positions of the at least one feature point in the grayscale palm image corresponding to the previous dynamic palm image; Or, After using the optical flow method to determine the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images, smooth the positions of the at least one feature point in the grayscale palm images corresponding to each of the dynamic palm images.
6. The method according to claim 5, characterized in that, The using a Kalman filter to smooth the positions of the at least one feature point in the dynamic palm images to obtain the optimized positions of the at least one feature point in the dynamic palm images includes: According to the optimized position of the first feature point at the (k - 1)th moment, obtain the predicted position of the first feature point at the kth moment, where k is an integer greater than 1; wherein, the optimized position at the first moment is the position of the first feature point in the grayscale palm image corresponding to the first dynamic palm image; the adjacent two dynamic palm images in each of the dynamic palm image pairs are separated by one moment; According to the predicted position of the first feature point at the kth moment, the measured position of the first feature point at the kth moment, and the Kalman gain corresponding to the Kalman filter, obtain the optimized position of the first feature point at the kth moment; Among them, the measured position of the first feature point at the k-th moment is the position obtained by using the optical flow method; the Kalman gain is calculated based on the covariance corresponding to the predicted position of the first feature point at the k-th moment, and the covariance corresponding to the predicted position of the first feature point at the k-th moment is calculated based on the covariance corresponding to the optimized position of the first feature point at the k-1-th moment. The covariance is used to represent the error between the predicted position and the measured position.
7. The method according to claim 1, characterized in that The static palm image includes an infrared static image collected by an infrared camera and a color static image collected by a color camera. The infrared static image is used to obtain the palm vein feature of the palm to be recognized, and the color static image is used to obtain the palmprint feature of the palm to be recognized. After obtaining the set of palm images of the palm to be recognized, it includes: Preprocessing the at least one static palm image to obtain at least one processed static palm image; the preprocessing includes at least one of image alignment processing, image filtering processing, and image grayscale processing. Determine a first static palm image according to the at least one processed static palm image. The first static palm image is the processed static palm image with the highest quality score among the at least one processed static palm images. The obtaining the palm feature of the first partition according to the static palm image includes: Obtain the palm vein feature of the first partition according to the infrared static image in the first static palm image, and obtain the palmprint feature of the first partition according to the color static image in the first static palm image. Obtain the palm feature of the first partition according to the palm vein feature of the first partition and the palmprint feature of the first partition.
8. The method according to claim 7, wherein The performing region recognition on the static palm image and determining a first partition from multiple partitions corresponding to the complete palm includes: Performing region recognition on the first static palm image by using a trained local recognition model to obtain the first partition. Among them, the training process of the local recognition model is as follows: Obtain the training data set of the local recognition model. The training data set contains at least one training sample pair, and each training sample pair contains a local sample image and a sample label corresponding to the local sample image. Among them, the local sample image is a local palm image obtained by photographing a local area of a complete palm. The local sample image includes any one of an infrared local image collected by an infrared camera and a color local image collected by a color camera. The sample label is used to indicate the partition of the local area corresponding to the local sample image in the complete palm. Perform normalization processing on each local sample image in the training data set to obtain a processed local sample image. The normalization processing is used to process each local sample image into an image with the same size. Use the local recognition model to obtain the predicted partition corresponding to the local sample image according to the processed local sample image. Train the local recognition model based on the difference between the predicted partition and the sample label to obtain a trained local recognition model.
9. The method according to claim 1, characterized in that The determining the recognition result of the palm to be recognized according to the palm feature and the motion feature includes: Obtain the motion posture feature of the palm to be recognized according to the palm feature and the motion feature, where the motion posture feature is a feature obtained by splicing the palm feature and the motion feature; Calculate the matching degree between the motion posture feature and the motion posture features of at least one pre-stored palm in the pre-stored database respectively; If the first matching degree corresponding to the first pre-stored palm is the maximum matching degree and the maximum matching degree is greater than the first threshold, determine that the recognition result of the palm to be recognized is that the palm to be recognized matches the first pre-stored palm.
10. The method according to claim 1, characterized in that, The determining the recognition result of the palm to be recognized according to the palm feature and the motion feature includes: Calculate the second matching degree between the palm feature and the palm features of at least one pre-stored palm in the pre-stored database respectively, and calculate the third matching degree between the motion feature and the motion features of at least one pre-stored palm in the pre-stored database respectively; Perform weighted summation on the second matching degree and the third matching degree corresponding to the at least one pre-stored palm to obtain the comprehensive matching degree corresponding to the at least one pre-stored palm; If the comprehensive matching degree corresponding to the second pre-stored palm is the maximum matching degree and the maximum matching degree is greater than the second threshold, determine that the recognition result of the palm to be recognized is that the palm to be recognized matches the second pre-stored palm.
11. The method according to claim 1, characterized in that, The determining the recognition result of the palm to be recognized according to the palm feature and the motion feature includes: Use a fusion model to obtain the recognition result of the palm to be recognized according to the palm feature and the motion feature; Wherein, the fusion model is used to perform feature learning on the palm feature and the motion feature to obtain the learned features; calculate the matching degree between the learned features and the learned features of at least one pre-stored palm in the pre-stored database respectively; according to at least one matching degree, output the recognition result of the palm to be recognized, and the fourth matching degree corresponding to the third pre-stored palm indicated by the recognition result is the maximum matching degree and the maximum matching degree is greater than the third threshold.
12. The method according to any one of claims 9 to 11, characterized in that, The generation method of the pre-stored database includes one of the following: Successively collect the local palm images corresponding to each partition of the first palm to obtain the palm features of each partition; record the motion according to a preset first sliding trajectory to obtain the motion feature of the first palm; determine the palm features of each partition of the first palm and the motion feature of the first palm as the feature data of the first palm in the pre-stored database; Or, Collect the local palm image corresponding to the second partition of the second palm to obtain the palm feature of the second partition; Record the motion according to a preset second sliding trajectory to obtain the motion feature of the second palm; determine the palm feature of the second partition and the motion feature of the second palm as the feature data of the second palm in the pre-stored database.
13. The method according to claim 1, characterized in that, Obtaining the palm features of the first partition according to the static palm image includes: Obtaining the response function corresponding to the first filter bank according to the parameters of the first filter bank, where the first filter bank includes at least one first filter, and different parameters of the first filter are used to extract features of the static palm image at different frequencies and in different directions; Performing convolution processing on the response functions corresponding to the at least one first filter and the static palm image respectively to obtain the convolution results corresponding to the at least one first filter respectively; Determining the convolution results corresponding to the at least one first filter respectively as the palm features of the first partition.
14. The method according to claim 1, characterized in that, Obtaining the palm features of the first partition according to the static palm image includes: Obtaining the pixel values of each pixel point in the static palm image; Obtaining the pixel feature of the i-th pixel point according to the pixel value of the i-th pixel point and the pixel values of each pixel point within the first neighborhood range of the i-th pixel point, where i is a positive integer; Determining the pixel features of each pixel point as the palm features of the first partition.
15. The method according to claim 14, wherein Obtaining the pixel feature of the i-th pixel point according to the pixel value of the i-th pixel point and the pixel values of each pixel point within the first neighborhood range of the i-th pixel point includes: If the pixel value of the first pixel point within the first neighborhood range is greater than the pixel value of the i-th pixel point, then marking the position of the first pixel point as a first value; If the pixel value of the second pixel point within the first neighborhood range is less than the pixel value of the i-th pixel point, then marking the position of the second pixel point as a second value; Obtaining the pixel feature of the i-th pixel point according to the values marked at the positions of each pixel point within the first neighborhood range.
16. A palm-sweeping recognition device, characterized in that, The device includes: An image acquisition module, configured to acquire a set of palm images of the palm to be recognized; wherein, the set of palm images includes at least one static palm image acquired when the palm to be recognized is statically recognized, and at least two dynamic palm images acquired when the palm to be recognized is slidingly recognized, the static palm image and the dynamic palm images are partial palm images obtained by photographing a partial area of the complete palm, and the complete palm is divided into multiple partitions; A region recognition module, configured to perform region recognition on the static palm image, and determine a first partition from the multiple partitions corresponding to the complete palm, where the first partition is used to indicate the position of the partial area corresponding to the static palm image in the complete palm; A palm feature acquisition module, configured to obtain the palm features of the first partition according to the static palm image; A motion feature acquisition module, configured to obtain the motion features of the palm to be recognized according to the at least two dynamic palm images, where the motion features are used to characterize the sliding trajectory and sliding speed of the palm to be recognized; A result determination module, configured to determine the recognition result of the palm to be recognized according to the palm features and the motion features.
17. A computer device, characterized in that, The computer device includes a processor and a memory, and a computer program is stored in the memory, and the computer program is loaded and executed by the processor to implement the palm brushing recognition method according to any one of claims 1 to 15.
18. A computer-readable storage medium, characterized in that, A computer program is stored in the computer-readable storage medium, and the computer program is loaded and executed by a processor to implement the palm brushing recognition method according to any one of claims 1 to 15.
19. A computer program product, characterized in that, The computer program product includes a computer program, and the computer program is loaded and executed by a processor to implement the palm brushing recognition method according to any one of claims 1 to 15.
Citation Information
Patent Citations
Personal identification method based on tongue characteristic
CN101350065A
Palm print collecting and positioning method in long distance on-line authentication research
CN102982308A