Identity recognition method and device and storage medium

By introducing facial feature constraints into human feature density clustering, selecting core points for neighborhood range expansion and multi-level minimum point number processing, the problem of human feature fluctuations is solved, and the accuracy of identity recognition and clustering effect are improved.

CN115497124BActive Publication Date: 2026-04-14BEIJING JINGDONG QIANSHITECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING JINGDONG QIANSHITECHNOLOGY CO LTD
Filing Date
2022-10-26
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

Existing density clustering methods based on human features suffer from poor clustering results due to the influence of human features on posture, occlusion, and other factors, which reduces the accuracy of personnel identification.

Method used

A human feature density clustering method based on facial feature constraints is adopted. By acquiring data records in the dataset, data records with associated facial features are selected as core points. The neighborhood range is expanded based on the similarity of human features, and data records that do not meet the requirements are deleted. Combining multi-level minimum point count and facial similarity threshold, the dataset is divided into various clusters, and the identity of the person in each cluster is labeled.

Benefits of technology

It improves the clustering effect and the accuracy of personnel identification, reduces the impact of fluctuations and interference in human characteristics, and achieves more accurate identity recognition.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115497124B_ABST
    Figure CN115497124B_ABST
Patent Text Reader

Abstract

The present disclosure provides an identity recognition method and device and a storage medium, and relates to the field of computers. The identity recognition method comprises: obtaining a data set, wherein the data set comprises a plurality of data records, each data record comprises a human body feature of a personnel image, and the human body feature of the personnel image is associated or not associated with a face feature of the personnel image; selecting a data record associated with a face feature as a core point, expanding a neighborhood range based on the core point according to the similarity of the human body features between the data records, and deleting a data record from the neighborhood range, wherein the similarity of the face feature of the data record does not meet a requirement, so as to divide the data set into clusters; and marking the personnel identity of each cluster. Thus, a human body feature density clustering method based on face feature constraint is realized, the adverse effects caused by human body feature fluctuation and interference are reduced, and the clustering effect and the accuracy of personnel identity recognition are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computers, particularly to the field of video surveillance, and especially to an identity recognition method, apparatus, and storage medium. Background Technology

[0002] Video surveillance data can be used to identify people in the video surveillance area, and then monitor their spatiotemporal activity trajectories.

[0003] In some related technologies, human features are extracted from various video surveillance images, and density-based clustering algorithms are used to cluster these features, grouping features belonging to the same person into a single cluster. This allows for the identification of different video surveillance images of the same person captured by different cameras at different times, and labeling them as the same person's identity.

[0004] The above method performs density clustering based on human body features. However, human body features can fluctuate due to factors such as posture and occlusion, and similar body shapes and clothing can interfere with human body features. These factors will inevitably affect the clustering results and reduce the accuracy of personnel identification. Summary of the Invention

[0005] This disclosure proposes a human feature density clustering method based on facial feature constraints. Compared with the simple human feature density clustering method, it can reduce the adverse effects of fluctuations and interference in human features, and improve the clustering effect and the accuracy of personnel identification.

[0006] This disclosure provides an identity recognition method in some embodiments, including:

[0007] Obtain a dataset, which includes multiple data records, each of which includes human body features of a person image, wherein the human body features of the person image are associated with or not associated with the facial features of the person image;

[0008] Data records with associated facial features are selected as core points. The neighborhood range is expanded based on the similarity of human features between data records and the core points. Data records whose facial features do not meet the similarity requirements with the core points are deleted from the neighborhood range so as to divide the dataset into clusters.

[0009] Identify the personnel in each cluster.

[0010] In some embodiments, dividing the dataset into clusters includes:

[0011] The first data record in the dataset that is associated with facial features but has not been visited is selected as the first core point. The first data record is marked as visited. The first neighborhood range is expanded based on the first core point according to the similarity of human features between data records. Data records whose similarity with facial features of the first core point does not meet the requirements are deleted from the first neighborhood range to obtain the first set.

[0012] Select the second data record with associated facial features that has not been visited from the first set as the second core point, mark the second data record as visited, expand the second neighborhood range based on the similarity of human features between data records and the second core point, and delete data records from the second neighborhood range whose facial features do not meet the requirements of the second core point to obtain the second set.

[0013] Add the data records from the second set to the first set to obtain a cluster.

[0014] In some embodiments, expanding the neighborhood range based on the core point according to the similarity of human features between data records includes:

[0015] Data records whose similarity to the human features of the core point meets the requirements are added to the neighborhood range of the core point.

[0016] In some embodiments, if the total number of data records in the neighborhood is greater than or equal to the first minimum number of points in the cluster, all data records in the neighborhood are grouped into one cluster.

[0017] In some embodiments, if the number of all data records in the first neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the first neighborhood range are assigned to the first set; if the number of all data records in the second neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the second neighborhood range are assigned to the second set.

[0018] In some embodiments, for a first dataset that is not classified into a cluster, data records in the first dataset are selected as core points. The neighborhood range is expanded based on the similarity of human features between data records in the first dataset and the core points. If the number of all data records in the neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the neighborhood range are classified into one cluster.

[0019] In some embodiments, it also includes:

[0020] For the second dataset in the first dataset that is not classified into a cluster, a second minimum number of points for a cluster is set, which is less than the first minimum number of points for a cluster.

[0021] The data records with associated facial features in the second dataset are selected as core points. The neighborhood range is expanded based on the core points according to the similarity of human features between the data records in the second dataset, and data records whose facial features do not meet the similarity requirements with the core points are deleted from the neighborhood range.

[0022] If the total number of data records in the neighborhood is greater than or equal to the second minimum number of points in the cluster, then all data records in the neighborhood are grouped into one cluster.

[0023] In some embodiments, the method further includes: for a third dataset in the second dataset that is not classified into a cluster, selecting data records in the third dataset as core points, and expanding the neighborhood range based on the core points according to the similarity of human features between data records in the third dataset;

[0024] If the total number of data records in the neighborhood is greater than or equal to the second minimum number of points in the cluster, then all data records in the neighborhood are grouped into one cluster.

[0025] In some embodiments, the method further includes: assigning each data record in the third dataset that is not classified into a cluster to a separate cluster.

[0026] In some embodiments, the dataset is an existing dataset or an incremental dataset; the method further includes:

[0027] Calculate the distance between each cluster in the incremental dataset and each cluster in the existing dataset;

[0028] Calculate the average face similarity between each cluster in the incremental dataset and each cluster in the existing dataset;

[0029] Based on the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset, and constrained by the average face similarity between the first and second clusters, the identities of the people in the first cluster in the incremental dataset are labeled.

[0030] In some embodiments, labeling the identity of the first cluster in the incremental dataset includes:

[0031] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is greater than the similarity threshold, the person identity corresponding to the first cluster in the incremental dataset will be marked as the person identity of the second cluster in the existing dataset.

[0032] In some embodiments, labeling the identity of the first cluster in the incremental dataset includes:

[0033] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is not greater than the similarity threshold, the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is updated to a preset sufficiently large distance value to represent the different identities of the first and second clusters, and the first cluster in the incremental dataset is marked as the new identity of the person.

[0034] This disclosure provides an identity recognition method in some embodiments, including:

[0035] The existing dataset is divided into clusters, and the incremental dataset is divided into clusters. Each data record includes the features of the person's image.

[0036] Calculate the distance between each cluster in the incremental dataset and each cluster in the existing dataset;

[0037] Calculate the average face similarity between each cluster in the incremental dataset and each cluster in the existing dataset;

[0038] Based on the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset, and constrained by the average face similarity between the first and second clusters, the identities of the people in the first cluster in the incremental dataset are labeled.

[0039] In some embodiments, labeling the identity of the first cluster in the incremental dataset includes:

[0040] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is greater than the similarity threshold, the person identity corresponding to the first cluster in the incremental dataset will be marked as the person identity of the second cluster in the existing dataset.

[0041] In some embodiments, labeling the identity of the first cluster in the incremental dataset includes:

[0042] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is not greater than the similarity threshold, the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is updated to a preset sufficiently large distance value to represent the different identities of the first and second clusters, and the first cluster in the incremental dataset is marked as the new identity of the person.

[0043] In some embodiments, labeling the identity of the first cluster in the incremental dataset includes:

[0044] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is not less than the distance threshold, the first cluster in the incremental dataset will be marked as the new person identity.

[0045] In some embodiments, the personnel images in the incremental dataset are obtained from video image frames within a certain time window extracted from the time-series video stream data of each camera.

[0046] Some embodiments of this disclosure provide an identity recognition device, including: a memory; and a processor coupled to the memory, the processor being configured to execute an identity recognition method based on instructions stored in the memory.

[0047] This disclosure provides an identity recognition device in some embodiments, including:

[0048] The data acquisition unit is configured to acquire a dataset, which includes multiple data records, each data record including human body features of a person image, wherein the human body features of the person image are associated with or not associated with the facial features of the person image;

[0049] The data clustering unit is configured to select data records with associated facial features as core points, expand the neighborhood range based on the core points according to the similarity of human features between data records, and delete data records whose facial features do not meet the similarity requirements with the core points from the neighborhood range, so as to divide the dataset into clusters.

[0050] The identity tagging unit is configured to tag the identity of personnel in each cluster.

[0051] This disclosure provides an identity recognition device in some embodiments, including:

[0052] The data clustering unit is configured to divide multiple data records in the existing dataset into clusters and to divide multiple data records in the incremental dataset into clusters, with each data record including features of a person's image;

[0053] The distance calculation unit is configured to calculate the distance between each cluster in the incremental dataset and each cluster in the stock dataset;

[0054] The face similarity calculation unit is configured to calculate the average face similarity between each cluster in the incremental dataset and each cluster in the stock dataset;

[0055] The identity labeling unit is configured to label the identity of the person in the first cluster of the incremental dataset based on the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset, and based on the constraint of the average face similarity between the first cluster and the second cluster.

[0056] In some embodiments, the identity marking unit is configured as follows:

[0057] If the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset is less than the distance threshold and the average face similarity is greater than the similarity threshold, the person identity corresponding to the first cluster in the incremental dataset will be marked as the person identity of the second cluster in the stock dataset.

[0058] or,

[0059] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is not greater than the similarity threshold, the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is updated to a preset sufficiently large distance value to represent the different identities of the first and second clusters, and the first cluster in the incremental dataset is marked as the new identity of the person.

[0060] or,

[0061] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is not less than the distance threshold, the first cluster in the incremental dataset will be marked as the new person identity.

[0062] Some embodiments of this disclosure propose a non-transitory computer-readable storage medium having a computer program stored thereon that, when executed by a processor, implements the steps of an identity recognition method. Attached Figure Description

[0063] The accompanying drawings used in the description of the embodiments or related technologies will be briefly introduced below. This disclosure can be more clearly understood from the following detailed description with reference to the accompanying drawings.

[0064] Obviously, the accompanying drawings described below are merely some embodiments of this disclosure. Those skilled in the art can obtain other drawings based on these drawings without any creative effort.

[0065] Figure 1 A flowchart illustrating an identity recognition method according to some embodiments of this disclosure is shown.

[0066] Figure 2 The diagram illustrates a process for dividing a dataset into clusters according to some embodiments of this disclosure.

[0067] Figure 3 A flowchart illustrating an identity recognition method according to some embodiments of this disclosure is shown.

[0068] Figure 4 A schematic diagram of the structure of an identity recognition device according to some embodiments of the present disclosure is shown.

[0069] Figure 5 A schematic diagram of the structure of an identity recognition device according to some embodiments of the present disclosure is shown.

[0070] Figure 6 A schematic diagram of the structure of an identity recognition device according to some embodiments of the present disclosure is shown. Detailed Implementation

[0071] The technical solutions in the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings.

[0072] Unless otherwise stated, the terms "first," "second," etc., used in this disclosure are used to distinguish different objects and are not used to indicate size or sequence.

[0073] Figure 1 A flowchart illustrating an identity recognition method according to some embodiments of this disclosure is shown.

[0074] like Figure 1 As shown, the identity recognition method in this embodiment includes the following steps.

[0075] In step 110, a dataset is obtained, which includes multiple data records. Each data record includes human body features of a person image, and the human body features of the person image may or may not be associated with the facial features of the person image. Each data record can be considered as a data point.

[0076] In some embodiments, the method for obtaining a dataset includes: extracting image frames from a video captured by a camera; using a human detection algorithm to detect and obtain human body regions from the image frames, including the head, neck, torso, and limbs; using a face detection algorithm to detect and obtain face regions from the image frames; vectorizing the human body region images to obtain human body features (or human body feature vectors); and vectorizing the face region images to obtain face features (or face feature vectors), wherein the human body features and face features obtained from the same human body region are associated.

[0077] The face detection algorithm is described below.

[0078] (1) Template matching-based face detection method: The template is divided into two-dimensional template and three-dimensional template. It mainly uses the facial feature rules of a person to establish a three-dimensional adjustable model framework. After locating the position of a person's face, the model framework is used to locate and adjust the facial feature parts of the person, so as to solve the influence of factors such as observation angle, occlusion and expression changes in the face recognition process.

[0079] (2) Face detection method based on singular value features: The singular value features of the face image matrix reflect the essential attributes of the image and can be used for classification and recognition.

[0080] (3) Face detection method using subspace analysis: Subspace analysis has the characteristics of strong descriptiveness, low computational cost, easy implementation and good separability. It has been widely used in face feature extraction and has become one of the mainstream methods of face recognition.

[0081] (4) Locality Preserving Projections (LPP) face detection method: LPP is a new subspace analysis method. It is a linear approximation of the nonlinear method Laplacian Eigenmap. It solves the shortcomings of traditional linear methods such as principal component analysis in preserving the nonlinear manifold of the original data, and also solves the shortcomings of nonlinear methods in obtaining low-dimensional projections of new sample points.

[0082] (5) Face detection method based on principal component analysis (PCA).

[0083] (6) Other face detection methods include, but are not limited to: elastic matching method, artificial neural network method, support vector machine method, integral image feature-based method, and probability model-based method.

[0084] The human detection algorithm is described below.

[0085] The first type of human detection algorithm: For all possible subwindows in the image, classifiers are used sequentially, such as Haar wavelet support vector machine (SVM), and Adboost is used to select the most discriminative features. Multiple classifiers are cascaded, and if any one of them does not meet the requirements, it can be judged as a negative sample.

[0086] Adaboost is an iterative algorithm that trains different classifiers (weak classifiers) on the same training set, and then combines these weak classifiers to form a stronger final classifier (strong classifier).

[0087] The second type of human detection algorithm detects various parts of the human body and, based on the geometric constraints of each part, assembles them into a human body model.

[0088] It should be noted that, depending on the camera's shooting angle, some human features are associated with facial features, while others are not. For example, by capturing an image frame of a person's front, one can obtain human features and their associated facial features; by capturing an image frame of a person's back or side, or an image frame taken from a distance, one can obtain human features, but because the person's face is not captured or is not clearly captured, facial features cannot be obtained.

[0089] Different cameras can capture multiple video surveillance images of the same person at different times. These multiple images can yield multiple data records for the same person. Each data record includes the person's human body features, which may or may not be associated with facial features. Typically, the features (human body features / facial features) of the same person have a high degree of similarity. Similarity can be measured, for example, by cosine similarity.

[0090] Multiple data records in a dataset may involve one or more people. Typically, this is especially true for datasets obtained through cameras in public areas, where multiple data records in a dataset often involve multiple people.

[0091] In step 120, data records associated with facial features are selected as core points. The neighborhood range is expanded based on the core points according to the similarity of human features between data records. Data records whose facial features do not meet the similarity requirements with the core points are deleted from the neighborhood range so as to divide the dataset into clusters.

[0092] In some embodiments, data records associated with facial features are selected as core points. Data records whose similarity to the human features of the core points meets the requirements are added to the neighborhood range of the core points. Data records whose similarity to the facial features of the core points does not meet the requirements are deleted from the neighborhood range. If the total number of data records in the neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the neighborhood range are grouped into one cluster. Thus, the human feature density clustering method based on facial feature constraints divides the dataset into various clusters.

[0093] In some embodiments, such as Figure 2 As shown, dividing the dataset into clusters includes steps 120-1 to 120-3, and may also include one or more steps 120-4 to 120-7 as needed.

[0094] In step 120-1, the first data record in the dataset that is associated with facial features but has not been visited is selected as the first core point. The first data record is marked as visited. The first neighborhood range is expanded based on the similarity of human features between data records and the first core point. Data records whose similarity to facial features of the first core point does not meet the requirements are deleted from the first neighborhood range to obtain the first set.

[0095] The first neighborhood range expansion includes adding data records whose similarity to the human features of the first core point meets the requirements to the neighborhood range of the first core point.

[0096] If the total number of data records in the first neighborhood is greater than or equal to the first minimum number of points in the cluster, then all data records in the first neighborhood are assigned to the first set.

[0097] In step 120-2, a second data record with associated facial features that has not been visited is selected from the first set as the second core point. The second data record is marked as visited. The second neighborhood range is expanded based on the similarity of human features between data records and the second core point. Data records whose facial features do not meet the similarity requirements with the second core point are deleted from the second neighborhood range to obtain the second set.

[0098] The second neighborhood range expansion includes adding data records whose similarity to the human features of the second core point meets the requirements to the neighborhood range of the second core point.

[0099] If the total number of data records in the second neighborhood is greater than or equal to the first minimum number of points in the cluster, then all data records in the second neighborhood are assigned to the second set.

[0100] In step 120-3, the data records of the second set are added to the first set to obtain a cluster.

[0101] Thus, a cluster is obtained based on each first core point, and multiple clusters can be obtained based on multiple first core points.

[0102] In step 120-4, for the first dataset that is not classified into a cluster, the data records in the first dataset are selected as core points. The neighborhood range is expanded based on the core points according to the similarity of human features between the data records in the first dataset. If the number of all data records in the neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the neighborhood range are classified into one cluster.

[0103] Therefore, for the unclassified data points, clustering continues based on the human feature density clustering method. If all data points have been classified through steps 120-1 to 120-3, then step 120-4 and subsequent steps do not need to be executed.

[0104] In step 120-5, for the second dataset in the first dataset that is not classified into a cluster, a second minimum number of points for a cluster is set, which is less than the first minimum number of points for a cluster; data records with associated facial features in the second dataset are selected as core points; the neighborhood range is expanded based on the similarity of human features between data records in the second dataset and the similarity of facial features with the core points is deleted from the neighborhood range; if the number of all data records in the neighborhood range is greater than or equal to the second minimum number of points for a cluster, all data records in the neighborhood range are classified into one cluster.

[0105] Therefore, if there are still unclassified data points, the minimum number of clusters is reduced, and the human feature density clustering method based on facial feature constraints continues clustering. If all data points have been classified through steps 120-1 to 120-4, then step 120-5 and subsequent steps do not need to be executed.

[0106] In steps 120-6, for the third dataset in the second dataset that is not classified into a cluster, the data records in the third dataset are selected as core points, and the neighborhood range is expanded based on the similarity of human features between the data records in the third dataset and the core points; if the number of all data records in the neighborhood range is greater than or equal to the second minimum number of points of the cluster, all data records in the neighborhood range are classified into one cluster.

[0107] Therefore, if there are still unclassified data points, the minimum number of clusters is reduced, and clustering continues based on the human feature density clustering method. If all data points have been classified through steps 120-1 to 120-5, then steps 120-6 and subsequent steps do not need to be executed.

[0108] In steps 120-7, each data record in the third dataset that is not classified into a cluster is classified into a cluster.

[0109] Therefore, for the last remaining scattered data points, each data point is assigned to a separate cluster, so that all data points in the dataset are divided into various clusters.

[0110] The following describes the algorithm implementation process of the human feature density clustering method based on facial feature constraints in step 120.

[0111] The following section introduces some definitions related to this algorithm.

[0112] Definition 1 - Eps Neighborhood: Given a data point p, the range of its radius Eps is called the Eps neighborhood of point p. For any point q within the Eps neighborhood of point p, dist(p,q)≤Eps, indicating that the distance between points p and q is less than or equal to the radius Eps.

[0113] Definition 2 - Core Point: Given a data point p, if the number of data points in its Eps neighborhood exceeds the preset minimum number of points in the cluster MinPts, then point p is a core point.

[0114] Define a 3-cluster minimum number of points, MinPts: The number of data points in the neighborhood of a core point must be no less than MinPts. MinPts can be preset. Multiple levels of MinPts can be set as needed. For example, a first minimum number of points for a cluster, MinPts1, and a second minimum number of points for a cluster, MinPts2, can be set, where MinPts2 is less than MinPts1.

[0115] Definition 4 - Boundary point: A data point that is not a core point, but is within the neighborhood of a core point.

[0116] Definition 5 - Noise Point: A point that is neither a core point nor a boundary point.

[0117] Definition 6 - Direct density reachability: If a data point q is within the Eps neighborhood of a data point p, and data point p is a core point, then p is said to be directly density reachable from q.

[0118] Definition 7 - Density Reachability: Given a series of data points p1, p2, ..., pn, p = p1, q = pn, if pi is density reachable directly from pi-1, i = 2, 3, ..., n, then q is density reachable from p.

[0119] Definition 8 - Density Connectivity: For a data point z, if z is density reachable from data points p and q, then p and q are said to be density connected.

[0120] Any two data points that are density-connected belong to the same cluster.

[0121] Definition 9 - Constraint: If the facial similarity between two data points is less than the similarity threshold, the constraint is considered satisfied; otherwise, the constraint is considered not satisfied.

[0122] Based on the above definition, the following describes the algorithm implementation process of the human feature density clustering method based on facial feature constraints in step 120.

[0123] Input algorithm: dataset; where each data record in the dataset is considered a data point.

[0124] Algorithm output: The clusters into which the dataset is divided.

[0125] The algorithm execution process is as follows:

[0126] (1) Initialize all data points as unaccessed data points;

[0127] (2) Repeat (3)-(14):

[0128] (3) Randomly select a data point p from the data points that are associated with facial features but have not been visited;

[0129] (4) Mark p as a visited data point;

[0130] (5) Calculate the set of data points NEps0(p) in the Eps neighborhood of p based on the similarity of human features between data points;

[0131] (6) Delete data points that do not satisfy the constraints of p from NEps0(p), that is, delete data points with low face similarity, and obtain the data point set NEps(p), NEps(p)∈NEps0(p), NEps(p) is the first set;

[0132] (7) If |NEps(p)|≥MinPts1, where |NEps(p)| represents the number of data points in the set NEps(p), execute (8);

[0133] (8) Define a new cluster C and classify p as cluster C;

[0134] (9) Then, repeat (10)-(14):

[0135] (10) Extract the data points q in NEps(p) that are associated with face features but have not been visited;

[0136] (11) Mark q as a visited data point;

[0137] (12) Calculate NEps(q) according to the methods in (5)-(6);

[0138] That is, based on the similarity of human features between data points, calculate the set of data points NEps0(q) in the Eps neighborhood of q; delete data points that do not satisfy the constraints of q from NEps0(q), that is, delete data points with low face similarity, and obtain the set of data points NEps(q), NEps(q)∈NEps0(q), NEps(q) is the second set.

[0139] (13) If |NEps(q)|≥MinPts1, where |NEps(q)| represents the number of data points in the set NEps(q), execute (14);

[0140] (14) Add the data points in NEps(q) to NEps(p) to obtain a cluster;

[0141] The loop (10)-(14) continues until the condition is no longer met. For example, if there is no data point q that meets the condition, then (15) is executed.

[0142] (15) Delete all classified data points. If there are unclassified data points, continue to cluster the unclassified data points based on the human feature density clustering method.

[0143] That is, the following processing is performed on the unclassified data points: select an unclassified data point as the core point, expand the neighborhood range based on the similarity of human features between the unclassified data points and the core point, and if the number of all data points in the neighborhood range is greater than or equal to MinPts1, classify all data points in the neighborhood range into a cluster.

[0144] (16) Delete all classified data points. If there are still unclassified data points, consider multi-order density, reduce the minimum number of points in the cluster, and repeat (2)-(15) using MinPts2 to continue clustering. <MinPts1;

[0145] (17) Delete all classified data points. If there are still unclassified data points, these unclassified data points are noise points. Mark each unclassified data point as a cluster.

[0146] Using the above algorithm, the dataset is input into the algorithm, the algorithm divides the dataset into clusters, and outputs each cluster.

[0147] In step 130, the person's identity (id) is marked for each cluster.

[0148] Each cluster corresponds to one person, and each person is identified by their identity. Different clusters correspond to different people, and each person is identified by their identity.

[0149] As needed, personnel profiles can be created in clusters. Each personnel profile records all the information captured on camera, such as images of the person taken at different times by different cameras, the time of the capture, camera identification (which indicates the person's geographical location at the time), personnel characteristics, and personnel identity.

[0150] This disclosure proposes a human feature density clustering method based on facial feature constraints. Compared with the simple human feature density clustering method, it can reduce the adverse effects of fluctuations and interference in human features, and improve the clustering effect and the accuracy of personnel identification.

[0151] Figure 3 A flowchart illustrating an identity recognition method according to some embodiments of this disclosure is shown.

[0152] like Figure 3 As shown, the identity recognition method in this embodiment includes the following steps.

[0153] In step 310, the time-series video stream data generated by each camera is stored in the database to form a dataset containing multiple data records. The method for forming the dataset can be referred to in step 110. The offline dataset that has been generated is called the existing dataset, and the newly generated online dataset is called the incremental dataset.

[0154] In some embodiments, an incremental dataset can be generated using a sliding window approach. For example, based on the temporal sequence of the videos, the dataset generated from the videos within the current time range of the sliding window can be used as the incremental dataset. As the window slides, new incremental datasets are continuously generated.

[0155] Each data record includes features of a person image, which include human body features, and the human body features of the person image may or may not be associated with the facial features of the person image.

[0156] In step 320a, multiple data records in the existing dataset are divided into clusters.

[0157] The human feature density clustering method based on facial feature constraints in step 120 can be used, or other clustering methods, such as k-means, Mean-shift, human feature density clustering, etc., can be used to divide multiple data records in the existing dataset into various clusters.

[0158] In step 320b, the multiple data records in the incremental dataset are divided into clusters.

[0159] The human feature density clustering method based on facial feature constraints in step 120 can be used, or other clustering methods, such as k-means, Mean-shift, human feature density clustering, etc., can be used to divide multiple data records in the incremental dataset into various clusters.

[0160] In step 330, the distance between each cluster in the incremental dataset and each cluster in the stock dataset is calculated.

[0161] In some embodiments, the distance between each cluster in the incremental dataset and each cluster in the stock dataset is calculated by calculating the distance between the centroids of the two clusters.

[0162] In step 340, the average face similarity between each cluster in the incremental dataset and each cluster in the stock dataset is calculated.

[0163] In some embodiments, the similarity between the facial features of each data record in the cluster of the incremental dataset and the facial features of each data record in the cluster of the stock dataset is calculated, and the average of the individual similarities is taken as the average facial similarity between the two clusters.

[0164] In step 350, based on the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset, and constrained by the average face similarity between the first and second clusters, the identity of the person in the first cluster in the incremental dataset is labeled.

[0165] 350a, if the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than a distance threshold, and the average face similarity is greater than a similarity threshold, then the person identity corresponding to the first cluster in the incremental dataset is labeled as the person identity of the second cluster in the existing dataset. Thus, based on the constraint of average face similarity, cluster association and identity labeling are performed more accurately.

[0166] 350b: If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than a distance threshold, and the average face similarity is not greater than a similarity threshold, the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is updated to a preset, sufficiently large distance value to represent the different identities of the individuals corresponding to the first and second clusters. The first cluster in the incremental dataset is then labeled as the new individual identity. Thus, based on the constraint of average face similarity, different clusters can be distinguished and identities can be labeled more accurately.

[0167] 350c, if the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset is not less than the distance threshold, mark the first cluster in the incremental dataset as the new person identity.

[0168] The following describes the algorithmic implementation process of the hierarchical agglomerative clustering search association method in steps 330-350.

[0169] Input algorithm: each cluster of the existing dataset and the identity of the person, each cluster of the incremental dataset, distance threshold, similarity threshold;

[0170] Algorithm output: Person identities in the incremental dataset.

[0171] The algorithm execution process is as follows:

[0172] (1) Calculate the distance between each cluster in the incremental dataset and each cluster in the existing dataset to form a distance matrix;

[0173] (2) Repeat (3)-(12):

[0174] (3) Find the two clusters with the smallest distance between the incremental dataset and the existing dataset from the distance matrix, obtain their distance d, and calculate the average face similarity f between the two clusters. Assume that the two clusters found are the first cluster in the incremental dataset and the second cluster in the existing dataset.

[0175] (4) If d is satisfied <d minContinue executing (5);

[0176] (5) If f>f min This indicates that the two clusters correspond to the same person, so continue executing (6)-(9);

[0177] (6) Mark the personnel identities of the first cluster in the incremental dataset as the personnel identities of the second cluster in the stock dataset;

[0178] (7) Delete the distance data corresponding to the first and second clusters in the distance matrix;

[0179] (8) Update the distance data corresponding to the first and second clusters;

[0180] (9) If f>f min This indicates that the two clusters correspond to different personnel, so continue executing (10);

[0181] (10) Set the distance d between the first cluster and the second cluster to infinity;

[0182] (11) If d is not satisfied <d min Continue execution (12);

[0183] (12) Exit the current loop and start the next loop, that is, execute (2) again until the data in the distance matrix has been traversed, and then execute (13);

[0184] (13) Label the unlabeled clusters in the incremental dataset with the new identities;

[0185] (14) Output the identities of people in the incremental dataset labeled with tags.

[0186] Using the above algorithm, the clusters of the existing dataset, the identities of the individuals, the clusters of the incremental dataset, the distance threshold, and the similarity threshold are input into the algorithm, and the algorithm outputs the identities of the individuals in the incremental dataset.

[0187] This disclosure proposes a hierarchical agglomerative clustering search association method. Based on the distance between two clusters in the existing / incremental dataset, it adds the constraint of average face similarity to perform cluster association and identity labeling, thereby improving the accuracy of cluster association and identity labeling. Furthermore, it only needs to process incremental data each time, thus improving real-time performance.

[0188] Figure 4 A schematic diagram of the structure of an identity recognition device according to some embodiments of the present disclosure is shown.

[0189] like Figure 4 As shown, the identity recognition device 400 in this embodiment includes:

[0190] The data acquisition unit 410 is configured to acquire a dataset, which includes multiple data records, each data record including human body features of a person image, wherein the human body features of the person image are associated with or not associated with the facial features of the person image.

[0191] Data clustering unit 420 is configured to select data records associated with facial features as core points, and expand the neighborhood range based on the similarity of human features between data records using the core points. Specifically, it adds data records whose human features similarity to the core points meet the requirements to the neighborhood range of the core points, and deletes data records whose facial features similarity to the core points do not meet the requirements from the neighborhood range, thereby dividing the dataset into clusters. If the total number of data records in the neighborhood range is greater than or equal to the first minimum number of points in a cluster, all data records in the neighborhood range are grouped into one cluster.

[0192] The identity tagging unit 430 is configured to tag the identity of personnel in each cluster.

[0193] In some embodiments, the data clustering unit 420 is configured as follows:

[0194] The first data record in the dataset that is associated with facial features but has not been visited is selected as the first core point. The first data record is marked as visited. The first neighborhood range is expanded based on the similarity of human features between data records according to the first core point. Data records whose similarity to facial features of the first core point does not meet the requirements are deleted from the first neighborhood range to obtain the first set. If the number of all data records in the first neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the first neighborhood range are classified into the first set.

[0195] Select a second data record with associated facial features that has not been visited from the first set as the second core point. Mark the second data record as visited. Expand the second neighborhood range based on the similarity of human features between data records according to the second core point. Delete data records from the second neighborhood range whose facial features do not meet the similarity requirement with the second core point to obtain the second set. If the number of all data records in the second neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the second neighborhood range are assigned to the second set.

[0196] Add the data records from the second set to the first set to obtain a cluster.

[0197] In some embodiments, the data clustering unit 420 is further configured to: select data records in the first dataset that are not classified into clusters as core points for the first dataset, expand the neighborhood range based on the similarity of human features between data records in the first dataset according to the core points, and if the number of all data records in the neighborhood range is greater than or equal to the first minimum number of points of the cluster, classify all data records in the neighborhood range into one cluster.

[0198] In some embodiments, the data clustering unit 420 is further configured to:

[0199] For the second dataset in the first dataset that is not classified into a cluster, a second minimum number of points for a cluster is set, which is less than the first minimum number of points for a cluster.

[0200] The data records with associated facial features in the second dataset are selected as core points. The neighborhood range is expanded based on the core points according to the similarity of human features between the data records in the second dataset, and data records whose facial features do not meet the similarity requirements with the core points are deleted from the neighborhood range.

[0201] If the total number of data records in the neighborhood is greater than or equal to the second minimum number of points in the cluster, then all data records in the neighborhood are grouped into one cluster.

[0202] In some embodiments, the data clustering unit 420 is further configured to:

[0203] For the third dataset in the second dataset that is not classified into a cluster, the data records in the third dataset are selected as core points, and the neighborhood range is expanded based on the similarity of human features between the data records in the third dataset and the core points.

[0204] If the total number of data records in the neighborhood is greater than or equal to the second minimum number of points in the cluster, then all data records in the neighborhood are grouped into one cluster.

[0205] In some embodiments, the data clustering unit 420 is further configured to: group each data record in the third dataset that is not classified into a cluster into a separate cluster.

[0206] In some embodiments, the dataset is an existing dataset or an incremental dataset; the data clustering unit 420 is further configured to:

[0207] Calculate the distance between each cluster in the incremental dataset and each cluster in the existing dataset;

[0208] Calculate the average face similarity between each cluster in the incremental dataset and each cluster in the existing dataset;

[0209] Based on the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset, and constrained by the average face similarity between the first and second clusters, the identities of the people in the first cluster in the incremental dataset are labeled.

[0210] The identification of individuals in the first cluster of the incremental dataset includes:

[0211] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than a distance threshold, and the average face similarity is greater than a similarity threshold, then the person identity corresponding to the first cluster in the incremental dataset is labeled as the person identity of the second cluster in the existing dataset; or,

[0212] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is not greater than the similarity threshold, the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is updated to a preset sufficiently large distance value to represent the different identities of the first and second clusters, and the first cluster in the incremental dataset is marked as the new identity of the person.

[0213] Figure 5 A schematic diagram of the structure of an identity recognition device according to some embodiments of the present disclosure is shown.

[0214] like Figure 5 As shown, the identity recognition device 500 in this embodiment includes:

[0215] Data clustering unit 510 is configured to divide multiple data records in the existing dataset into clusters and to divide multiple data records in the incremental dataset into clusters, each data record including features of a person's image;

[0216] Distance calculation unit 520 is configured to calculate the distance between each cluster in the incremental dataset and each cluster in the stock dataset;

[0217] The face similarity calculation unit 530 is configured to calculate the average face similarity between each cluster in the incremental dataset and each cluster in the stock dataset;

[0218] The identity labeling unit 540 is configured to label the identity of the person in the first cluster of the incremental dataset based on the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset, and based on the constraint of the average face similarity between the first cluster and the second cluster.

[0219] In some embodiments, the identity tagging unit 540 is configured to:

[0220] If the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset is less than the distance threshold and the average face similarity is greater than the similarity threshold, the person identity corresponding to the first cluster in the incremental dataset will be marked as the person identity of the second cluster in the stock dataset.

[0221] or,

[0222] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is not greater than the similarity threshold, the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is updated to a preset sufficiently large distance value to represent the different identities of the first and second clusters, and the first cluster in the incremental dataset is marked as the new identity of the person.

[0223] or,

[0224] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is not less than the distance threshold, the first cluster in the incremental dataset will be marked as the new person identity.

[0225] Figure 6 A schematic diagram of the structure of an identity recognition device according to some embodiments of the present disclosure is shown.

[0226] like Figure 6 As shown, the identity recognition device 600 of this embodiment includes: a memory 610 and a processor 620 coupled to the memory 610. The processor 620 is configured to execute the identity recognition method of any of the foregoing embodiments based on instructions stored in the memory 610.

[0227] (1) An identity recognition method, comprising:

[0228] Obtain a dataset, which includes multiple data records, each of which includes human body features of a person image, wherein the human body features of the person image are associated with or not associated with the facial features of the person image;

[0229] Data records with associated facial features are selected as core points. The neighborhood range is expanded based on the similarity of human features between data records and the core points. Data records whose facial features do not meet the similarity requirements with the core points are deleted from the neighborhood range so as to divide the dataset into clusters.

[0230] Identify the personnel in each cluster.

[0231] (2) As described in (1), dividing the dataset into clusters includes:

[0232] The first data record in the dataset that is associated with facial features but has not been visited is selected as the first core point. The first data record is marked as visited. The first neighborhood range is expanded based on the first core point according to the similarity of human features between data records. Data records whose similarity with facial features of the first core point does not meet the requirements are deleted from the first neighborhood range to obtain the first set.

[0233] Select the second data record with associated facial features that has not been visited from the first set as the second core point, mark the second data record as visited, expand the second neighborhood range based on the similarity of human features between data records and the second core point, and delete data records from the second neighborhood range whose facial features do not meet the requirements of the second core point to obtain the second set.

[0234] Add the data records from the second set to the first set to obtain a cluster.

[0235] (3) As described in (1), expanding the neighborhood range based on the core point according to the similarity of human features between data records includes:

[0236] Data records whose similarity to the human features of the core point meets the requirements are added to the neighborhood range of the core point.

[0237] (4) As described in (1), if the number of all data records in the neighborhood range is greater than or equal to the first minimum number of points of the cluster, all data records in the neighborhood range are grouped into one cluster.

[0238] (5) As described in (2), if the number of all data records in the first neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the first neighborhood range are assigned to the first set; if the number of all data records in the second neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the second neighborhood range are assigned to the second set.

[0239] (6) The method described in (4) further includes: for the first dataset that is not classified into a cluster in the dataset, selecting the data records in the first dataset as core points, expanding the neighborhood range based on the similarity of human features between the data records in the first dataset according to the core points, and if the number of all data records in the neighborhood range is greater than or equal to the first minimum number of points of the cluster, classifying all data records in the neighborhood range into a cluster.

[0240] (7) The method described in (6) further includes:

[0241] For the second dataset in the first dataset that is not classified into a cluster, a second minimum number of points for a cluster is set, which is less than the first minimum number of points for a cluster.

[0242] The data records with associated facial features in the second dataset are selected as core points. The neighborhood range is expanded based on the core points according to the similarity of human features between the data records in the second dataset, and data records whose facial features do not meet the similarity requirements with the core points are deleted from the neighborhood range.

[0243] If the total number of data records in the neighborhood is greater than or equal to the second minimum number of points in the cluster, then all data records in the neighborhood are grouped into one cluster.

[0244] (8) The method described in (7) further includes:

[0245] For the third dataset in the second dataset that is not classified into a cluster, the data records in the third dataset are selected as core points, and the neighborhood range is expanded based on the similarity of human features between the data records in the third dataset and the core points.

[0246] If the total number of data records in the neighborhood is greater than or equal to the second minimum number of points in the cluster, then all data records in the neighborhood are grouped into one cluster.

[0247] (9) The method described in (8) further includes: classifying each data record in the third dataset that is not classified into a cluster into a cluster.

[0248] (10) The method as described in (1), wherein the dataset is an existing dataset or an incremental dataset; the method further includes:

[0249] Calculate the distance between each cluster in the incremental dataset and each cluster in the existing dataset;

[0250] Calculate the average face similarity between each cluster in the incremental dataset and each cluster in the existing dataset;

[0251] Based on the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset, and constrained by the average face similarity between the first and second clusters, the identities of the people in the first cluster in the incremental dataset are labeled.

[0252] (11) As described in (10), the identification of personnel in the first cluster of the incremental dataset includes:

[0253] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is greater than the similarity threshold, the person identity corresponding to the first cluster in the incremental dataset will be marked as the person identity of the second cluster in the existing dataset.

[0254] (12) As described in (10), the identification of personnel in the first cluster of the incremental dataset includes:

[0255] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is not greater than the similarity threshold, the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is updated to a preset sufficiently large distance value to represent the different identities of the first and second clusters, and the first cluster in the incremental dataset is marked as the new identity of the person.

[0256] (13) An identity recognition method, comprising:

[0257] The existing dataset is divided into clusters, and the incremental dataset is divided into clusters. Each data record includes the features of the person's image.

[0258] Calculate the distance between each cluster in the incremental dataset and each cluster in the existing dataset;

[0259] Calculate the average face similarity between each cluster in the incremental dataset and each cluster in the existing dataset;

[0260] Based on the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset, and constrained by the average face similarity between the first and second clusters, the identities of the people in the first cluster in the incremental dataset are labeled.

[0261] (14) As described in (13), the method of labeling the identity of the first cluster in the incremental dataset includes: if the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset is less than the distance threshold and the average face similarity is greater than the similarity threshold, the identity of the first cluster in the incremental dataset is labeled as the identity of the second cluster in the stock dataset.

[0262] (15) As described in (13), the identification of personnel in the first cluster of the incremental dataset includes:

[0263] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is not greater than the similarity threshold, the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is updated to a preset sufficiently large distance value to represent the different identities of the first and second clusters, and the first cluster in the incremental dataset is marked as the new identity of the person.

[0264] (16) As described in (13), the identification of personnel in the first cluster of the incremental dataset includes:

[0265] If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is not less than the distance threshold, the first cluster in the incremental dataset will be marked as the new person identity.

[0266] (17) As described in (10-16), the personnel images in the incremental dataset are obtained from video image frames within a certain time window extracted from the time-series video stream data of each camera.

[0267] The memory 610 may include, for example, system memory, fixed non-volatile storage media, etc. The system memory may store, for example, the operating system, application programs, boot loader, and other programs.

[0268] The processor 620 can be implemented using a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gates, or transistors, or other discrete hardware components.

[0269] The identification device 600 may also include an input / output interface 630, a network interface 640, and a storage interface 650. These interfaces 630, 640, and 650, as well as the memory 610 and processor 620, can be connected, for example, via a bus 660. The input / output interface 630 provides a connection interface for input / output devices such as a monitor, mouse, keyboard, and touchscreen. The network interface 640 provides a connection interface for various networked devices. The storage interface 650 provides a connection interface for external storage devices such as SD cards and USB flash drives. The bus 660 can use any bus architecture from various bus structures. For example, bus architectures include, but are not limited to, Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, and Peripheral Component Interconnect (PCI) bus.

[0270] Some embodiments of this disclosure propose a non-transitory computer-readable storage medium having a computer program stored thereon that, when executed by a processor, implements the steps of the identity recognition method of each embodiment.

[0271] It should be noted that the acquisition, storage, and application of user personal information involved in the technical solution disclosed herein comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0272] Those skilled in the art will understand that embodiments of this disclosure can be provided as methods, systems, or computer program products. Therefore, this disclosure can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this disclosure can take the form of a computer program product embodied on one or more non-transitory computer-readable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer program code.

[0273] This disclosure is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create a machine for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0274] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0275] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0276] The above description is only a preferred embodiment of this disclosure and is not intended to limit this disclosure. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this disclosure should be included within the protection scope of this disclosure.

Claims

1. An identity recognition method, comprising: Obtain a dataset, which includes multiple data records, each of which includes human body features of a person image, wherein the human body features of the person image are associated with or not associated with the facial features of the person image; Data records associated with facial features are selected as core points. Based on the similarity of human features between data records, the neighborhood range is expanded according to the core points. Data records whose human features are similar to the core points are added to the neighborhood range of the core points, and data records whose facial features are not similar to the core points are deleted from the neighborhood range. If the total number of data records in the neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the neighborhood range are grouped into one cluster, so that the dataset can be divided into various clusters. Identify the personnel in each cluster.

2. The method according to claim 1, wherein dividing the dataset into clusters comprises: The first data record in the dataset that is associated with facial features but has not been visited is selected as the first core point. The first data record is marked as visited. The first neighborhood range is expanded based on the first core point according to the similarity of human features between data records. Data records whose similarity with facial features of the first core point does not meet the requirements are deleted from the first neighborhood range to obtain the first set. Select the second data record with associated facial features that has not been visited from the first set as the second core point, mark the second data record as visited, expand the second neighborhood range based on the similarity of human features between data records and the second core point, and delete data records from the second neighborhood range whose facial features do not meet the requirements of the second core point to obtain the second set. Add the data records from the second set to the first set to obtain a cluster.

3. The method according to claim 2, wherein: If the total number of data records in the first neighborhood is greater than or equal to the first minimum number of points in the cluster, then all data records in the first neighborhood are assigned to the first set. If the total number of data records in the second neighborhood is greater than or equal to the first minimum number of points in the cluster, then all data records in the second neighborhood are assigned to the second set.

4. The method according to claim 1, further comprising: For the first dataset that is not classified into a cluster, the data records in the first dataset are selected as core points. The neighborhood range is expanded based on the similarity of human features between the data records in the first dataset and the core points. If the number of all data records in the neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the neighborhood range are classified into one cluster.

5. The method according to claim 4, further comprising: For the second dataset in the first dataset that is not classified into a cluster, a second minimum number of points for a cluster is set, which is less than the first minimum number of points for a cluster. The data records with associated facial features in the second dataset are selected as core points. The neighborhood range is expanded based on the core points according to the similarity of human features between the data records in the second dataset, and data records whose facial features do not meet the similarity requirements with the core points are deleted from the neighborhood range. If the total number of data records in the neighborhood is greater than or equal to the second minimum number of points in the cluster, then all data records in the neighborhood are grouped into one cluster.

6. The method according to claim 5, further comprising: For the third dataset in the second dataset that is not classified into a cluster, the data records in the third dataset are selected as core points, and the neighborhood range is expanded based on the similarity of human features between the data records in the third dataset and the core points. If the total number of data records in the neighborhood is greater than or equal to the second minimum number of points in the cluster, then all data records in the neighborhood are grouped into one cluster.

7. The method according to claim 6, further comprising: Each data record in the third dataset that is not classified into a cluster is assigned to a separate cluster.

8. The method of claim 1, wherein, The dataset can be an existing dataset or an incremental dataset; The method further includes: Calculate the distance between each cluster in the incremental dataset and each cluster in the existing dataset; Calculate the average face similarity between each cluster in the incremental dataset and each cluster in the existing dataset; Based on the distance between the first cluster in the incremental dataset and the second cluster in the stock dataset, and constrained by the average face similarity between the first and second clusters, the identities of the people in the first cluster in the incremental dataset are labeled.

9. The method according to claim 8, wherein labeling the identity of the first cluster in the incremental dataset comprises: If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is greater than the similarity threshold, the person identity corresponding to the first cluster in the incremental dataset will be marked as the person identity of the second cluster in the existing dataset.

10. The method of claim 8, wherein labeling the identity of the first cluster in the incremental dataset comprises: If the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is less than the distance threshold and the average face similarity is not greater than the similarity threshold, the distance between the first cluster in the incremental dataset and the second cluster in the existing dataset is updated to a preset sufficiently large distance value to represent the different identities of the first and second clusters, and the first cluster in the incremental dataset is marked as the new identity of the person.

11. The method according to any one of claims 8-10, wherein, The personnel images in the incremental dataset are obtained from video image frames within a certain time window extracted from the time-series video stream data of each camera.

12. An identity recognition device, comprising: Memory; as well as A processor coupled to the memory, the processor being configured to execute the identity recognition method according to any one of claims 1-11 based on instructions stored in the memory.

13. An identity recognition device, comprising: The data acquisition unit is configured to acquire a dataset, which includes multiple data records, each data record including human body features of a person image, wherein the human body features of the person image are associated with or not associated with the facial features of the person image; The data clustering unit is configured to select data records associated with facial features as core points, expand the neighborhood range based on the similarity of human features between data records according to the core points, add data records whose human features similarity with the core points meet the requirements to the neighborhood range of the core points, and delete data records whose facial features similarity with the core points do not meet the requirements from the neighborhood range. If the total number of data records in the neighborhood range is greater than or equal to the first minimum number of points in the cluster, all data records in the neighborhood range are grouped into one cluster, so as to divide the dataset into various clusters. The identity tagging unit is configured to tag the identity of personnel in each cluster.

14. A non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the identification method according to any one of claims 1-11.

Citation Information

Patent Citations

  • Image clustering method and device

    CN111783743A

  • Human body data archiving method and device, equipment and storage medium

    CN114519879A