Portrait clustering method and apparatus, electronic device, and storage medium

By dividing the spatiotemporal domain according to the geographical location of checkpoints and loops in human image clustering, and combining it with personnel activity information, the problem of traditional methods being difficult to recognize low-quality images and having poor clustering effects on large samples is solved, and more accurate and efficient human image clustering is achieved.

CN114037852BActive Publication Date: 2026-03-03ZHEJIANG DAHUA TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-10-15
Publication Date
2026-03-03

AI Technical Summary

Technical Problem

Traditional human image clustering techniques struggle to identify low-quality images, and in large samples, there are many unrelated and similar images, resulting in poor clustering performance.

Method used

By determining the standard search radius based on the geographical location of the checkpoint and the ring road it belongs to, the spatiotemporal domain is divided, and cluster analysis is performed within the spatiotemporal domain to integrate the activity information of personnel in the spatial and temporal dimensions.

Benefits of technology

It improves the accuracy and efficiency of human image clustering, reduces the waste of computing resources, and enhances the ability to recognize low-quality images.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114037852B_ABST
    Figure CN114037852B_ABST
Patent Text Reader

Abstract

This application discloses a method, apparatus, electronic device, and storage medium for human face clustering, improving the accuracy of human face clustering. In this embodiment, the standard search radius of a checkpoint is first determined based on its geographical location and / or the ring road it belongs to. Then, a first spatiotemporal domain is divided based on the standard search radius, and clustering analysis is performed based on this first spatiotemporal domain to obtain the clustering results. In this embodiment, the division based on the geographical location of the checkpoint and the spatiotemporal domain of its ring road fully considers information about human activity and clusters human faces over a period of time, integrating the time span of human activity within a certain spatial range, thus improving the effectiveness of human face clustering.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of image clustering technology, and in particular to a method, apparatus, electronic device and storage medium for human portrait clustering. Background Technology

[0002] Driven by image recognition and clustering technologies, real-time computing technologies, and hardware storage media, large-scale facial image clustering is gradually becoming possible. Simultaneously, with the widespread adoption of intelligent monitoring terminals such as surveillance cameras in people's lives and the rapid development of monitoring technology, the amount of image data generated by these devices is experiencing explosive growth. For the security field, how to effectively perform facial image clustering using massive amounts of image data is a crucial and challenging issue.

[0003] Traditional portrait clustering techniques focus on comparing image feature values ​​to achieve portrait clustering. However, these static methods require high image quality and struggle to effectively identify portraits in low-quality, blurry, or partially occluded images. Furthermore, the high probability of unrelated but similar images in a large sample size can lead to poor clustering results. Summary of the Invention

[0004] The purpose of this application is to provide a method, apparatus, electronic device, and storage medium for human image clustering to improve the effect of human image clustering.

[0005] In a first aspect, embodiments of this application provide a method for human image clustering, including:

[0006] Cluster analysis is performed on facial image information collected by checkpoints within a first specified time period in the first spatiotemporal domain to obtain the first clustering result; wherein, the first spatiotemporal domain is determined according to the following method:

[0007] Obtain the geographical location of any checkpoint in the checkpoint set of the target area;

[0008] The standard search radius of any checkpoint is determined based on preset parameters corresponding to the geographical location; wherein the preset parameters include: the name of the geographical location and / or the ring road to which it belongs, and the ring road to which it belongs represents the smallest ring road around the target area;

[0009] The checkpoint set is divided into a first spatiotemporal domain corresponding to any one of the checkpoints within the standard search radius of the checkpoint set.

[0010] In this application embodiment, the current city is divided into spatiotemporal domains based on the geographical location of the checkpoint and the ring road to which it belongs, fully considering the information of people's activities in both spatial and temporal dimensions, and clustering human images within a certain period of time, integrating the time span of people's activities within a certain spatial range; in this application, checkpoints are clustered within a certain time and spatial range, so that the clustering results integrate the information of people's activities in both space and time, thereby improving the effect of human image clustering.

[0011] In some possible embodiments, the preset parameters include the name of the geographic location;

[0012] Determining the standard search radius of any checkpoint based on preset parameters corresponding to the geographical location includes:

[0013] Determine the key fields corresponding to any checkpoint based on the name of the geographical location;

[0014] The standard search radius of any checkpoint is determined according to the first search radius calculation formula corresponding to the key field.

[0015] In this embodiment, the density of checkpoints at a given location is determined based on the name of the geographical location corresponding to the checkpoint, and then the search radius is determined based on the density of the checkpoints, thereby improving the rationality of dividing the spatiotemporal domain.

[0016] In some possible embodiments, determining the standard search radius of any checkpoint according to the first search radius calculation formula corresponding to the key field includes:

[0017] If the key field is in the first key field set, then the formula for calculating the first search radius corresponding to any checkpoint is: r1 = r_base – delta_r1, where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the first key field set contains key fields indicating checkpoint density;

[0018] If the key field is in the second key field set, then the formula for calculating the first search radius corresponding to any checkpoint is: r1 = r_base + delta_r2, where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the second key field set contains key fields representing checkpoint sparsity;

[0019] If the key field is in both the first key field set and the second key field set, then the formula for determining the first search radius corresponding to any checkpoint is: r1 = r_base, where r1 is the standard search radius and r_base is an empirical value determined based on the sparsity of checkpoints in the target area.

[0020] In this embodiment of the application, the density of checkpoints in the current geographical location is determined based on key fields, and then the first search radius is determined, which can accurately and reasonably determine the first search radius of the checkpoint.

[0021] In some possible embodiments, the preset parameters include the region location;

[0022] Determining the standard search radius of any checkpoint based on preset parameters corresponding to the geographical location includes:

[0023] The formula for calculating the second search radius corresponding to any checkpoint is determined based on the loop to which any checkpoint belongs;

[0024] The standard search radius of any checkpoint is determined based on the standard search radius calculation formula.

[0025] In this embodiment, since the density of checkpoints in different loops varies, the second search radius of the checkpoint is determined according to the loop to which the checkpoint belongs, thereby improving the rationality and accuracy of the spatiotemporal domain division.

[0026] In some possible embodiments, the loop to which any checkpoint belongs is any one of the first loop, the second loop, the third loop, and the fourth loop, and the first loop is smaller than the second loop, the second loop is smaller than the third loop, and the third loop is smaller than the fourth loop.

[0027] The formula for calculating the second search radius corresponding to any checkpoint based on the regional location corresponding to the geographical location includes:

[0028] If the loop to which any checkpoint belongs is the first loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2, where: r_loop1 is the standard search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0029] If the loop to which any checkpoint belongs is the second loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2+Δr1, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0030] If any checkpoint belongs to the third loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2+Δr2, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr2 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0031] If any checkpoint belongs to the fourth loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2+Δr3, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr3 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0032] In this embodiment, the loop is divided into four cases according to its different characteristics, and the second search radius is determined according to the different loops to which the checkpoint belongs, thereby improving the rationality and accuracy of the spatiotemporal domain division.

[0033] In some possible embodiments, the preset parameters include the name of the geographic location and the regional location;

[0034] The step of determining the standard search radius of any checkpoint based on the geographical location and the preset parameters corresponding to the geographical location includes:

[0035] The third search radius of any checkpoint is determined according to the third search radius calculation formula corresponding to the key field; and

[0036] The fourth search radius calculation formula corresponding to any checkpoint is determined based on the loop to which any checkpoint belongs, and the fourth search radius of any checkpoint is determined based on the fourth search radius calculation formula.

[0037] The standard search radius of any checkpoint is determined based on the weights corresponding to the third and fourth search radii of any checkpoint, as well as the third and fourth search radii.

[0038] In this embodiment, reasonable weights are set, and the standard search radius of the checkpoint is determined by combining the loop to which the checkpoint belongs and its geographical location, which improves the rationality and accuracy of the spatiotemporal domain division.

[0039] In some possible embodiments, determining the third search radius of any checkpoint according to the third search radius calculation formula corresponding to the key field includes:

[0040] If the key field is in the first key field set, then the formula for calculating the third search radius corresponding to any checkpoint is: r2 = r_base – delta_r1, where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the first key field set contains key fields indicating checkpoint density;

[0041] If the key field is in the second key field set, then the formula for calculating the third search radius corresponding to any checkpoint is: r2 = r_base + delta_r2, where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the second key field set contains key fields representing checkpoint sparsity;

[0042] If the key field is in both the first key field set and the second key field set, then the formula for determining the third search radius corresponding to any checkpoint is: r2 = r_base, where r2 is the third search radius and r_base is an empirical value determined based on the sparsity of checkpoints in the target area.

[0043] In this embodiment of the application, the density of checkpoints in the current geographical location is determined based on key fields, and then the third search radius is determined, which can accurately and reasonably determine the third search radius of the checkpoint.

[0044] In some possible embodiments, the loop to which any checkpoint belongs is any one of the first loop, the second loop, the third loop, and the fourth loop, and the first loop is smaller than the second loop, the second loop is smaller than the third loop, and the third loop is smaller than the fourth loop.

[0045] The formula for calculating the fourth search radius corresponding to any checkpoint based on the loop to which any checkpoint belongs includes:

[0046] If any checkpoint belongs to the first loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop2=r_base2, where: r_loop2 is the fourth search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0047] If any checkpoint belongs to the second loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop 2=r_base2+Δr1, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0048] If any checkpoint belongs to the third loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop2=r_base2+Δr2, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr2 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0049] If any checkpoint belongs to the fourth loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop 2=r_base2+Δr3, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr3 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0050] In this embodiment, the loop is divided into four cases according to its different characteristics, and the fourth search radius is determined according to the different loops to which the checkpoint belongs, thereby improving the rationality and accuracy of the spatiotemporal domain division.

[0051] In some possible embodiments, the method further includes:

[0052] In the process of determining each first spatiotemporal domain, once a first spatiotemporal domain is determined, the checkpoint located in the first spatiotemporal domain is deleted from the checkpoint set.

[0053] In this embodiment of the application, in order to avoid inaccurate clustering results caused by dividing the same checkpoint into multiple spatiotemporal domains, after determining a first spatiotemporal domain, the checkpoints in that spatiotemporal domain are deleted from the checkpoint set before determining subsequent spatiotemporal domains.

[0054] In some possible embodiments, after dividing the checkpoint set within the standard search radius of any checkpoint into a first spatiotemporal domain corresponding to any checkpoint, the method further includes:

[0055] For any first spatiotemporal domain obtained by division, determine the number of checkpoints in the first spatiotemporal domain;

[0056] If any of the first spatiotemporal domains contains only one checkpoint, then the second spatiotemporal domain to which the single checkpoint belongs in any of the first spatiotemporal domains is determined; wherein the second spatiotemporal domain includes the single checkpoint and other checkpoints with the same location information as the single checkpoint, and the location information includes any one of the following: Area of ​​Interest (AOI) information, Point of Interest (POI) information, and the region to which it belongs;

[0057] From the first spatiotemporal domains to which the other checkpoints belong, determine the target first spatiotemporal domain that contains the largest number of the other checkpoints;

[0058] The single checkpoint and the target first spatiotemporal domain are divided into a new first spatiotemporal domain, and any one of the first spatiotemporal domains is replaced with the new first spatiotemporal domain.

[0059] In this embodiment of the application, by merging the first spatiotemporal domain formed by a single checkpoint with other first spatiotemporal domains, the accuracy of the clustering results is improved and the waste of resources in the distance process is saved.

[0060] In some possible embodiments, the second spatiotemporal domain is determined according to the following method:

[0061] If the AOI information of any checkpoint is determined, then the first type of checkpoint in the checkpoint set and the any checkpoint are divided into the same second spatiotemporal domain, wherein the first type of checkpoint is the checkpoint with the same AOI information as the any checkpoint.

[0062] If the AOI information of any checkpoint cannot be determined, but the POI information of any checkpoint is determined, then the second type of checkpoint in the checkpoint set and any checkpoint are divided into the same second spatiotemporal domain, wherein the second type of checkpoint is the checkpoint with the same POI information as any checkpoint.

[0063] If the POI information of any checkpoint cannot be determined, and the region to which any checkpoint belongs is determined, then the third type checkpoint in the checkpoint set and any checkpoint are classified into the same second spatiotemporal domain, wherein the third type checkpoint is a checkpoint that belongs to the same region as any checkpoint.

[0064] In this embodiment of the application, the checkpoint is divided into a second spatiotemporal domain based on the checkpoint's location information, and the first spatiotemporal domain composed of a single checkpoint in the first spatiotemporal domain is corrected based on the second spatiotemporal domain, thereby improving the accuracy of the first spatiotemporal domain division.

[0065] In some possible embodiments, after performing cluster analysis on the facial image information collected by checkpoints within a first specified time period in the first spatiotemporal domain to obtain the clustering results, the method further includes:

[0066] Obtain facial image information for a second specified time period to obtain the second clustering result;

[0067] The final clustering result is determined based on the first clustering result and the second clustering result;

[0068] The first time period and the second time period are two time periods that are adjacent in time.

[0069] In this embodiment of the application, in order to further improve the accuracy of portrait clustering, a time extension was performed, and the accuracy of portrait clustering results was improved by comparing the clustering results of two adjacent time periods.

[0070] Secondly, this application also provides an apparatus for human face clustering, the apparatus comprising:

[0071] The clustering module is used to perform cluster analysis on facial image information collected by checkpoints within a first specified time period in the first spatiotemporal domain, and obtain the first clustering result; wherein, the first spatiotemporal domain is determined according to the following method:

[0072] The acquisition module is used to obtain the geographical location of any checkpoint in the checkpoint set of the target area;

[0073] The search radius determination module is used to determine the standard search radius of any checkpoint based on preset parameters corresponding to the geographical location; wherein the preset parameters include: the name of the geographical location and / or the loop to which it belongs, and the loop to which it belongs represents the smallest loop among the loops surrounding the target area;

[0074] The spatiotemporal domain division module is used to divide the checkpoint set within the standard search radius of any checkpoint into a first spatiotemporal domain corresponding to any checkpoint.

[0075] In some possible embodiments, the preset parameters include the name of the geographic location;

[0076] When the search radius determination module performs the step of determining the standard search radius of any checkpoint based on the preset parameters corresponding to the geographical location, it is configured as follows:

[0077] Determine the key fields corresponding to any checkpoint based on the name of the geographical location;

[0078] The standard search radius of any checkpoint is determined according to the first search radius calculation formula corresponding to the key field.

[0079] In some possible embodiments, when the search radius determination module executes the standard search radius calculation formula corresponding to the key field to determine the standard search radius of any checkpoint, it is configured as follows:

[0080] If the key field is in the first key field set, then the formula for calculating the first search radius corresponding to any checkpoint is: r1 = r_base – delta_r1, where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the first key field set contains key fields indicating checkpoint density;

[0081] If the key field is in the second key field set, then the formula for calculating the first search radius corresponding to any checkpoint is: r1 = r_base + delta_r2, where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the second key field set contains key fields representing checkpoint sparsity;

[0082] If the key field is in both the first key field set and the second key field set, then the formula for determining the first search radius corresponding to any checkpoint is: r1 = r_base, where r1 is the standard search radius and r_base is an empirical value determined based on the sparsity of checkpoints in the target area.

[0083] In some possible embodiments, the preset parameters include the region location;

[0084] When the search radius determination module executes the function of determining the standard search radius of any checkpoint based on preset parameters corresponding to the geographical location, it is configured as follows:

[0085] The formula for calculating the second search radius corresponding to any checkpoint is determined based on the loop to which any checkpoint belongs;

[0086] The standard search radius of any checkpoint is determined based on the standard search radius calculation formula.

[0087] In some possible embodiments, the loop to which any checkpoint belongs is any one of the first loop, the second loop, the third loop, and the fourth loop, and the first loop is smaller than the second loop, the second loop is smaller than the third loop, and the third loop is smaller than the fourth loop.

[0088] When the search radius determination module executes the formula for calculating the second search radius corresponding to any checkpoint based on the area location corresponding to the geographical location, it is configured as follows:

[0089] If the loop to which any checkpoint belongs is the first loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2, where: r_loop1 is the standard search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0090] If the loop to which any checkpoint belongs is the second loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2+Δr1, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0091] If any checkpoint belongs to the third loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2+Δr2, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr2 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0092] If any checkpoint belongs to the fourth loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2+Δr3, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr3 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0093] In some possible embodiments, the preset parameters include the name of the geographic location and the regional location;

[0094] When the search radius determination module performs the task of determining the standard search radius of any checkpoint based on the geographical location and the preset parameters corresponding to the geographical location, it is configured as follows:

[0095] The third search radius of any checkpoint is determined according to the third search radius calculation formula corresponding to the key field; and

[0096] The fourth search radius calculation formula corresponding to any checkpoint is determined based on the loop to which any checkpoint belongs, and the fourth search radius of any checkpoint is determined based on the fourth search radius calculation formula.

[0097] The standard search radius of any checkpoint is determined based on the weights corresponding to the third and fourth search radii of any checkpoint, as well as the third and fourth search radii.

[0098] In some possible embodiments, when the search radius determination module executes the third search radius calculation formula corresponding to the key field to determine the third search radius of any checkpoint, it is configured as follows:

[0099] If the key field is in the first key field set, then the formula for calculating the third search radius corresponding to any checkpoint is: r2 = r_base – delta_r1, where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the first key field set contains key fields indicating checkpoint density;

[0100] If the key field is in the second key field set, then the formula for calculating the third search radius corresponding to any checkpoint is: r2 = r_base + delta_r2, where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the second key field set contains key fields representing checkpoint sparsity;

[0101] If the key field is in both the first key field set and the second key field set, then the formula for determining the third search radius corresponding to any checkpoint is: r2 = r_base, where r2 is the third search radius and r_base is an empirical value determined based on the sparsity of checkpoints in the target area.

[0102] In some possible embodiments, the loop to which any checkpoint belongs is any one of the first loop, the second loop, the third loop, and the fourth loop, and the first loop is smaller than the second loop, the second loop is smaller than the third loop, and the third loop is smaller than the fourth loop.

[0103] When the search radius determination module executes the fourth search radius calculation formula corresponding to any checkpoint based on the loop to which any checkpoint belongs, it is configured as follows:

[0104] If any checkpoint belongs to the first loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop2=r_base2, where: r_loop2 is the fourth search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0105] If any checkpoint belongs to the second loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop 2=r_base2+Δr1, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0106] If any checkpoint belongs to the third loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop2=r_base2+Δr2, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr2 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0107] If any checkpoint belongs to the fourth loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop 2=r_base2+Δr3, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr3 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0108] In some possible embodiments, the spatiotemporal domain determination module is further configured to:

[0109] In the process of determining each first spatiotemporal domain, once a first spatiotemporal domain is determined, the checkpoint located in the first spatiotemporal domain is deleted from the checkpoint set.

[0110] In some possible embodiments, after the spatiotemporal domain partitioning module performs the task of partitioning the checkpoint set within the standard search radius of any checkpoint into a first spatiotemporal domain corresponding to any checkpoint, it is further configured to:

[0111] For any first spatiotemporal domain obtained by division, determine the number of checkpoints in the first spatiotemporal domain;

[0112] If any of the first spatiotemporal domains contains only one checkpoint, then the second spatiotemporal domain to which the single checkpoint belongs in any of the first spatiotemporal domains is determined; wherein the second spatiotemporal domain includes the single checkpoint and other checkpoints with the same location information as the single checkpoint, and the location information includes any one of the following: Area of ​​Interest (AOI) information, Point of Interest (POI) information, and the region to which it belongs;

[0113] From the first spatiotemporal domains to which the other checkpoints belong, determine the target first spatiotemporal domain that contains the largest number of the other checkpoints;

[0114] The single checkpoint and the target first spatiotemporal domain are divided into a new first spatiotemporal domain, and any one of the first spatiotemporal domains is replaced with the new first spatiotemporal domain.

[0115] In some possible embodiments, the second spatiotemporal domain is determined according to the following method:

[0116] If the AOI information of any checkpoint is determined, then the first type of checkpoint in the checkpoint set and the any checkpoint are divided into the same second spatiotemporal domain, wherein the first type of checkpoint is the checkpoint with the same AOI information as the any checkpoint.

[0117] If the AOI information of any checkpoint cannot be determined, but the POI information of any checkpoint is determined, then the second type of checkpoint in the checkpoint set and any checkpoint are divided into the same second spatiotemporal domain, wherein the second type of checkpoint is the checkpoint with the same POI information as any checkpoint.

[0118] If the POI information of any checkpoint cannot be determined, and the region to which any checkpoint belongs is determined, then the third type checkpoint in the checkpoint set and any checkpoint are classified into the same second spatiotemporal domain, wherein the third type checkpoint is a checkpoint that belongs to the same region as any checkpoint.

[0119] In some possible embodiments, the clustering module performs cluster analysis on the facial image information collected by checkpoints within a first specified time period in the first spatiotemporal domain. After obtaining the clustering results, it is further configured to:

[0120] Obtain facial image information for a second specified time period to obtain the second clustering result;

[0121] The final clustering result is determined based on the first clustering result and the second clustering result;

[0122] The first time period and the second time period are two time periods that are adjacent in time.

[0123] Thirdly, another embodiment of this application also provides an electronic device, including at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform any of the methods provided in the first aspect embodiment of this application.

[0124] Fourthly, another embodiment of this application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program for causing a computer to perform any of the methods provided in the first aspect of this application.

[0125] Other features and advantages of this application will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the application. The objectives and other advantages of this application may be realized and obtained by means of the structures particularly pointed out in the written description, claims, and drawings. Attached Figure Description

[0126] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the embodiments of this application will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0127] Figure 1 This application provides an illustration of an image clustering method for human faces, as shown in the embodiments of this application.

[0128] Figure 2 A flowchart illustrating an overall image clustering method provided in this application embodiment;

[0129] Figure 3 A schematic diagram illustrating the determination of the standard search radius based on geographic location name in a portrait clustering method provided in this application embodiment;

[0130] Figure 4A A schematic diagram illustrating the determination of the standard search radius based on sparsity in a portrait clustering method provided in this application embodiment;

[0131] Figure 4B Another schematic diagram illustrating the determination of the standard search radius based on sparsity in a portrait clustering method provided in this application embodiment;

[0132] Figure 5A A schematic diagram illustrating the determination of a standard search radius based on region location in a portrait clustering method provided in this application embodiment;

[0133] Figure 5B This application provides a schematic diagram of a method for determining the loop based on the location of a human face clustering.

[0134] Figure 5C Another schematic diagram illustrating the determination of the loop based on the region location in a portrait clustering method provided in this application embodiment;

[0135] Figure 6 A schematic diagram illustrating the determination of a standard search radius based on geographic location name and region location in a portrait clustering method provided in this application embodiment;

[0136] Figure 7A schematic diagram illustrating the replacement of a first spatiotemporal domain composed of single checkpoints using a portrait clustering method provided in this application embodiment;

[0137] Figure 8A A schematic diagram illustrating the division of a second spatiotemporal domain based on AOI information in a portrait clustering method provided in this application embodiment;

[0138] Figure 8B A schematic diagram illustrating the division of a second spatiotemporal domain based on POI information in a portrait clustering method provided in this application embodiment;

[0139] Figure 8C A schematic diagram illustrating the division of a second spatiotemporal domain based on the region to which a human face clustering method belongs, provided in an embodiment of this application;

[0140] Figure 9A This is a schematic diagram illustrating the overall process of a portrait clustering method provided in an embodiment of this application.

[0141] Figure 9B A schematic diagram of an apparatus for a human face clustering method provided in an embodiment of this application;

[0142] Figure 10 This is a schematic diagram of an electronic device for a portrait clustering method provided in an embodiment of this application. Detailed Implementation

[0143] To enable those skilled in the art to better understand the technical solutions of this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.

[0144] It should be noted that the terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0145] To facilitate understanding, the technical terms used in this application will be explained first:

[0146] Image clustering: The process of comparing and grouping image data in a database to form multiple sets of images of people. Image data generally includes facial image data and body image data.

[0147] Spatiotemporal domain division: The spatiotemporal domain includes two main dimensions of the world in which people exist and act: time and space. Time represents the span of time during which people act within a certain spatial range, while space is the geographical interval within which people act within a continuous time period. Both can serve as the main carriers of people's presence in a certain spatiotemporal domain. It should be noted that a spatiotemporal domain consists of a set of continuous time points and spatial points. In this application, spatial points can be discretized into specific surveillance camera checkpoints.

[0148] Search Neighborhood: The size of the search geospatial range representing the trajectory of human activities. It is a key parameter when dividing the spatiotemporal domain, and to a certain extent determines the quality of the result, including the size of each spatiotemporal subset, the rationality of the number of monitoring checkpoints included, and the consistency with the behavioral patterns of each cluster.

[0149] Cluster: The group of people contained in each spatiotemporal subset.

[0150] The inventors discovered that large-scale facial image clustering is gradually becoming possible, driven by image recognition and clustering technologies, real-time computing technologies, and hardware storage media. Simultaneously, with the widespread adoption of intelligent monitoring terminals such as surveillance cameras in people's lives and the rapid development of monitoring technology, the amount of image data generated by these devices is experiencing explosive growth. For the security field, effectively utilizing massive amounts of image data for facial image clustering is a crucial and challenging issue.

[0151] Traditional portrait clustering techniques focus on comparing image feature values ​​from the image itself to achieve portrait clustering. However, these static methods require high image quality and struggle to effectively identify images with poor capture quality, blurriness, or partial occlusion. Furthermore, directly using massive amounts of data for portrait clustering not only drastically increases computational costs but also leads to poor clustering results because large samples have a higher probability of containing unrelated but similar images.

[0152] The inventors discovered that an effective solution to the above problems is based on the "divide and conquer" principle. This involves integrating spatiotemporal information about human activities to divide the space into spatiotemporal domains, and then performing human image clustering within each subset of these domains to improve the clustering results. A feasible technical approach to spatiotemporal domain division is to customize the division based on the activity trajectories of specific clusters (such as the spatiotemporal activity range of that cluster). Customization means that the division rules should be appropriately adjusted based on factors such as checkpoint distribution, cluster behavior patterns, and regional pedestrian traffic to better align with the actual behavioral patterns of each cluster.

[0153] In view of this, this application proposes a method, apparatus, electronic device, and storage medium for human face clustering to solve the above problems. The inventive concept of this application can be summarized as follows: First, the standard search radius of the checkpoint is determined according to the name of the checkpoint's geographical location and / or the loop to which it belongs; then, a first spatiotemporal domain is divided according to the standard search radius of the checkpoint; and clustering analysis is performed based on the divided first spatiotemporal domain to obtain the clustering results.

[0154] To facilitate understanding, the portrait clustering method proposed in the embodiments of this application will be described in detail below with reference to the accompanying drawings.

[0155] like Figure 1 The diagram shown illustrates an application scenario of the facial clustering method in this embodiment. The diagram includes: a server 10, a storage device 20, and checkpoints 30 (checkpoints 301, 302, 303, etc.); wherein,

[0156] First, server 10 retrieves the geographical location of any checkpoint in the set of checkpoints 30 in the target area from memory 20, and determines the standard search radius of the checkpoint according to the preset parameters corresponding to the geographical location. Then, all checkpoints within the standard search radius of the checkpoint are divided into the same first spatiotemporal domain. Then, the server performs cluster analysis on the facial image information collected by the checkpoints in the first spatiotemporal domain within a first specified time period and obtains the clustering results.

[0157] The description in this application details only a single server or bayonet; however, those skilled in the art should understand that the illustrated bayonet 30, server 10, and memory 20 are intended to illustrate the operation of the bayonet, server, and memory involved in the technical solutions of this application. The detailed description of a single server and memory is at least for ease of explanation and does not imply any limitation on the number, type, or location of bayonet and server. It should be noted that adding additional modules to or removing individual modules from the illustrated environment will not change the underlying concept of the exemplary embodiments of this application.

[0158] It should be noted that the memory in the embodiments of this application can be, for example, a cache system, hard disk storage, memory storage, etc. Furthermore, the portrait clustering method proposed in this application is not only applicable to… Figure 1 The application scenarios shown can also be applied to any device that requires human portrait clustering.

[0159] The facial image clustering method proposed in this application, when implemented, performs cluster analysis on facial image information collected by checkpoints within a first specified time period in the first spatiotemporal domain to obtain the first clustering result. For ease of understanding, the overall process of dividing the first spatiotemporal domain is described in detail below, such as... Figure 2 As shown:

[0160] In step 201: Obtain the geographical location of any checkpoint in the checkpoint set of the target area;

[0161] In step 202: Determine the standard search radius of any checkpoint based on the preset parameters corresponding to the geographical location; wherein the preset parameters include: the name of the geographical location and / or the ring road to which it belongs, and the ring road to which it belongs represents the smallest ring road around the target area;

[0162] In step 203: the checkpoints within the standard search radius of any checkpoint are divided into the first spatiotemporal domain corresponding to any checkpoint.

[0163] The process of dividing the first spatiotemporal domain is explained in detail below in three parts: dividing the first spatiotemporal domain according to geographical location name, dividing the first spatiotemporal domain according to the region to which it belongs, and dividing the first spatiotemporal domain according to both geographical location name and region to which it belongs.

[0164] 1. Divide the first spatiotemporal domain according to geographical location name.

[0165] In this application embodiment, when determining the standard search radius of any checkpoint based on the geographical location name corresponding to the geographical location, it can be specifically implemented as follows: Figure 3 The steps shown are as follows:

[0166] In step 301: Determine the key fields corresponding to any checkpoint based on the name of the geographical location;

[0167] In this embodiment of the application, in order to reasonably determine the standard search radius, the key fields corresponding to each checkpoint are first collected, such as: square, shopping mall, train station, road, scenic spot; other keywords that can indicate the density of checkpoints can also be used as key fields in this application, and the specific content of the key fields is not limited in this application.

[0168] In step 302: Determine the standard search radius of any checkpoint according to the first search radius calculation formula corresponding to the key field.

[0169] In this application, a first set of key fields and a second set of key fields are defined based on the different densities represented by the key fields. In practice, technicians can first determine the density of key fields in the current area by identifying key fields at the same geographical location, and then record the corresponding key fields for that area. The key fields representing dense and sparse key fields are then grouped into a first set of key fields and a second set of key fields, respectively. These sets are directly applied later when determining which set the key field corresponding to a key field belongs to. The first set of key fields may include fields such as square, shopping mall, and train station; the second set of key fields may include fields such as town, road, and scenic area.

[0170] To ensure a reasonable division of the first spatiotemporal domain, the method for determining the radius differs for key fields located in different sets of key fields. This will be explained in detail below:

[0171] Scenario 1: The key field is in the first set of key fields.

[0172] The formula for calculating the first search radius corresponding to any checkpoint is shown in Formula 1:

[0173] r1 = r_base – delta_r1, (Formula 1)

[0174] Where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is an empirical value determined based on the sparsity of checkpoints in the target area. In specific implementation, in order to quickly determine delta_r1, those skilled in the art can set the interval [a1,b1] based on experience, so that when determining delta_r1, a random value can be taken in the interval [a1,b1].

[0175] In some embodiments, technicians can pre-construct a checkpoint sparsity table based on the number of checkpoints. For example, if the number of checkpoints in the current target area is 100, the corresponding sparsity is 5. Then, the r_base and delta_r1 corresponding to the target area are determined based on the sparsity.

[0176] Scenario 2: The key field is in the second set of key fields.

[0177] The formula for calculating the first search radius corresponding to any checkpoint is shown in Formula 2:

[0178] r1 = r_base + delta_r2, (Formula 2)

[0179] Where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is an empirical value determined based on the sparsity of checkpoints in the target area. In specific implementation, in order to quickly determine delta_r2, those skilled in the art can set the interval [a2,b2] based on experience, so that when determining delta_r2, a random value can be taken in the interval [a2,b2].

[0180] In some embodiments, technicians can pre-construct a checkpoint sparsity table based on the number of checkpoints. For example, if the number of checkpoints in the current target area is 100, the corresponding sparsity is 5. In this case, the r_base and delta_r2 corresponding to the target area are determined based on the sparsity.

[0181] Scenario 3: The key field is in both the first set of key fields and the second set of key fields.

[0182] For example, if the key field is Road A and Plaza B, then the formula for determining the first search radius corresponding to any checkpoint is shown in Formula 3:

[0183] r1 = r_base, (Formula 3)

[0184] Where r1 is the standard search radius, and r_base is an empirical value determined based on the sparsity of checkpoints in the target area. In some embodiments, technicians can pre-construct a checkpoint sparsity table based on the number of checkpoints. For example, if the number of checkpoints in the current target area is 100, the corresponding sparsity is 5, and r_base corresponding to the target area is determined based on the sparsity.

[0185] In summary, the central idea of ​​this application is as follows: Figure 4A As shown, the standard search radius is smaller in areas with dense checkpoints, such as... Figure 4B As shown, the standard search radius is larger in areas with sparse checkpoints.

[0186] 2. Divide the first spatiotemporal domain according to the regional location.

[0187] In this embodiment of the application, determining the standard search radius of any checkpoint based on the geographical location corresponding to the area can be implemented as follows: Figure 5A The steps shown are as follows:

[0188] In step 501: Determine the formula for calculating the second search radius corresponding to any checkpoint based on the loop to which any checkpoint belongs;

[0189] In this embodiment, the ring roads to which the checkpoints belong are divided into a first ring road, a second ring road, a third ring road, and a fourth ring road based on the density of the checkpoint distribution. In specific implementation, the first ring road, second ring road, third ring road, and fourth ring road can be determined according to the current distribution of the city's ring roads. For example: Figure 5B As shown, if the current city's ring roads consist of an inner ring, a middle ring, an outer ring, and a suburban ring, then the first ring road is the inner ring, the second ring road is the middle ring, the third ring road is the outer ring, and the fourth ring road is the suburban ring; for example... Figure 5C As shown, if the current city's interchangeable highways are the first ring road, the second ring road is the second ring road, the third ring road is the third ring road, and the fourth ring road is the fourth ring road.

[0190] In step 502: Determine the standard search radius of any checkpoint based on the standard search radius calculation formula.

[0191] Specifically, the implementation will take the following four forms:

[0192] Scenario 1: Any checkpoint belongs to the first ring road.

[0193] The formula for calculating the second search radius corresponding to any checkpoint is shown in Formula 4:

[0194] r_loop1=r_base2, (Formula 4)

[0195] Where: r_loop1 is the standard search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0196] Scenario 2: Any checkpoint belongs to the second ring road.

[0197] The formula for calculating the second search radius corresponding to any checkpoint is shown in Formula 5:

[0198] r_loop1=r_base2+Δr1, (Formula 5)

[0199] Where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of the checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of the checkpoints in the target area;

[0200] Scenario 3: Any checkpoint belongs to the third ring road.

[0201] The formula for calculating the second search radius corresponding to any checkpoint is shown in Formula 6:

[0202] r_loop1 = r_base2 + Δr2, (Formula 6)

[0203] Where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0204] Scenario 4: Any checkpoint belongs to the fourth ring road.

[0205] The formula for calculating the second search radius corresponding to any checkpoint is shown in Formula 7:

[0206] r_loop1=r_base2+Δr3, (Formula 7)

[0207] Where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr3 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0208] 3. Divide the first spatiotemporal domain according to geographical location and regional location.

[0209] In this embodiment of the application, in order to further improve the accuracy of the first spatiotemporal domain division, the above two calculation methods can be combined and assigned certain weights to obtain the final standard search radius. Specifically, it can be implemented as follows: Figure 6 As shown:

[0210] In step 601: Determine the third search radius of any checkpoint according to the third search radius calculation formula corresponding to the key field;

[0211] The methods for determining the key fields, the first set of key fields, and the second set of key fields are the same as those described above, and will not be repeated here.

[0212] If the key field is in the first key field set, then the formula for calculating the third search radius corresponding to any checkpoint is as shown in Formula 8:

[0213] r2 = r_base – delta_r1, (Formula 8)

[0214] Where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, delta_r1 is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is uniformly distributed in the interval [a1,b1], which is determined by those skilled in the art based on experience.

[0215] If the key field is in the second key field set, then the formula for calculating the third search radius corresponding to any checkpoint is as shown in Formula 9:

[0216] r2 = r_base + delta_r2, (Formula 9)

[0217] Where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, delta_r2 is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is uniformly distributed in the interval [a2,b2], which is determined by those skilled in the art based on experience.

[0218] If a key field is in both the first and second key field sets, then the formula for determining the third search radius corresponding to any checkpoint is shown in Formula 10:

[0219] r2 = r_base, (Formula 10)

[0220] Where r2 is the third search radius, and r_base is an empirical value determined based on the sparsity of checkpoints in the target area.

[0221] In step 602: Determine the fourth search radius calculation formula for any checkpoint based on the loop to which any checkpoint belongs, and determine the fourth search radius of any checkpoint based on the fourth search radius calculation formula;

[0222] The method for determining the loop here is the same as described above, and will not be repeated here.

[0223] Specifically, the implementation will take the following four forms:

[0224] Scenario 1: Any checkpoint belongs to the first ring road.

[0225] The formula for calculating the fourth search radius corresponding to any checkpoint is shown in Formula 11:

[0226] r_loop 2=r_base2, (Formula 11)

[0227] Where: r_loop2 is the fourth search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0228] Scenario 2: Any checkpoint belongs to the second ring road.

[0229] The formula for calculating the fourth search radius corresponding to any checkpoint is shown in Formula 12:

[0230] r_loop 2=r_base2+Δr1, (Formula 12)

[0231] Where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of the checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of the checkpoints in the target area;

[0232] Scenario 3: Any checkpoint belongs to the third ring road.

[0233] The formula for calculating the fourth search radius corresponding to any checkpoint is shown in Formula 13:

[0234] r_loop2 = r_base2 + Δr2, (Formula 13)

[0235] Where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0236] If any checkpoint belongs to the fourth loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is shown in Formula 14:

[0237] r_loop 2=r_base2+Δr3, (Formula 14)

[0238] Where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr3 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0239] In step 603: the standard search radius of any checkpoint is determined based on the weights, third search radius, and fourth search radius corresponding to the third and fourth search radii of any checkpoint, respectively.

[0240] Those skilled in the art can determine the weights corresponding to the third and fourth search radii based on experience, and this application does not limit this.

[0241] In this embodiment of the application, to avoid inaccurate clustering results due to dividing the same checkpoint into two spatiotemporal domains, the checkpoints located in the first spatiotemporal domain are removed from the checkpoint set after each first spatiotemporal domain is determined. For example, if the checkpoint set contains checkpoint 1, checkpoint 2, checkpoint 3, checkpoint 4, and checkpoint 5, and it is determined that checkpoint 2 and checkpoint 3 are included within the standard search radius of checkpoint 1, then checkpoint 1, checkpoint 2, and checkpoint 3 are divided into the same spatiotemporal domain. Checkpoint 1, checkpoint 2, and checkpoint 3 are then removed from the checkpoint set, leaving only checkpoint 4 and checkpoint 5 in the checkpoint set; then the first spatiotemporal domain to which checkpoint 4 and checkpoint 5 belong is determined.

[0242] When dividing the first spatiotemporal domain using the above method, there may be a single checkpoint belonging to a single first spatiotemporal domain. Performing facial image clustering on such a first spatiotemporal domain would lead to a waste of computational resources. Therefore, in this embodiment, after dividing the checkpoints within the standard search radius of any checkpoint into the first spatiotemporal domain corresponding to any checkpoint, the following can be implemented: Figure 7 The method shown replaces the first spatiotemporal domain composed of individual checkpoints:

[0243] In step 701: For any first spatiotemporal domain obtained by division, determine the number of checkpoints in any first spatiotemporal domain;

[0244] In step 702: If any first spatiotemporal domain contains only one checkpoint, then determine the second spatiotemporal domain to which the single checkpoint belongs in any first spatiotemporal domain; wherein the second spatiotemporal domain includes the single checkpoint and other checkpoints with the same location information as the single checkpoint, and the location information includes any of the following: area of ​​interest (AOI) information, point of interest (POI) information, or the region to which it belongs;

[0245] In some embodiments, the geographic information near the checkpoint can be determined based on the pre-registered geographic latitude and longitude coordinates of the checkpoint. Since the latitude and longitude information in related technologies is designed based on the Mars coordinate system, reverse geocoding technology is used to encode the real geographic coordinates, and then crawl the location information near each checkpoint. The location information includes, but is not limited to, province, city, district, AOI, POI, and region. Among them, POI refers to a point that can be retrieved on the map, such as KFC; AOI refers to an area with area-like or regional characteristics, including but not limited to industrial parks, school campuses, business districts, residential areas, scenic spots, railway stations, airports, etc.

[0246] In some embodiments, the second spatiotemporal domain can be determined according to the following method:

[0247] First, based on the geographical location represented by each piece of information in the location information, the second spatiotemporal domain is divided according to the AOI information of each checkpoint. For checkpoints where the AOI information cannot be determined, the second spatiotemporal domain is divided according to the POI information. For checkpoints where the POI information cannot be determined either, the domain is divided according to the region to which they belong, as shown in the following three cases:

[0248] Scenario 1: Division based on AOI information

[0249] If the AOI information of any checkpoint is determined, the first type of checkpoint in the checkpoint set and any checkpoint are divided into the same second spatiotemporal domain, where the first type of checkpoint is the checkpoint with the same AOI information as any checkpoint.

[0250] For example: Figure 8A As shown, the checkpoint set includes checkpoint 1, checkpoint 2, checkpoint 3, checkpoint 4, and checkpoint 5; the AOI of checkpoint 1 is school A, the AOI of checkpoint 2 is school A, and the AOI of checkpoint 3 is school A. Therefore, checkpoint 1, checkpoint 2, and checkpoint 3 belong to the same second spatiotemporal domain. At the same time, in order to avoid dividing the same checkpoint into multiple spatiotemporal domains, after dividing checkpoint 1, checkpoint 2, and checkpoint 3 into the same second spatiotemporal domain, checkpoint 1, checkpoint 2, and checkpoint 3 need to be deleted from the checkpoint set.

[0251] Scenario 2: Division based on POI information

[0252] If the AOI information of any checkpoint cannot be determined, but the POI information of any checkpoint can be determined, then the second type of checkpoint in the checkpoint set is divided into the same second spatiotemporal domain as any checkpoint, wherein the second type of checkpoint is the checkpoint with the same POI information as any checkpoint.

[0253] For example: Figure 8BAs shown, the checkpoint set includes checkpoint 1, checkpoint 2, checkpoint 3, checkpoint 4, and checkpoint 5. Since the AOI information of checkpoint 1, checkpoint 2, and checkpoint 3 cannot be determined, the POI information of checkpoint 1, checkpoint 2, and checkpoint 3 is determined. If the POI information of checkpoint 1 is Hotel A, the POI information of checkpoint 2 is Hotel A, and the POI information of checkpoint 3 is Hotel B, then checkpoint 1 and checkpoint 2 are classified into the same second spatiotemporal domain.

[0254] Scenario 3: Based on the region

[0255] If the POI information of any checkpoint cannot be determined, and the region to which any checkpoint belongs can be determined, then the third type checkpoint in the checkpoint set is classified into the same second spatiotemporal domain as any checkpoint, wherein the third type checkpoint is the checkpoint that belongs to the same region as any checkpoint.

[0256] For example: Figure 8C As shown, the checkpoint set includes checkpoint 1, checkpoint 2, checkpoint 3, checkpoint 4, and checkpoint 5. If the POI information of checkpoint 1, checkpoint 2, and checkpoint 3 cannot be determined, then the regions to which checkpoint 1, checkpoint 2, and checkpoint 3 belong are determined. If the region to which checkpoint 1 belongs is the inner ring, the region to which checkpoint 2 belongs is the outer ring, and the region to which checkpoint 3 belongs is the inner ring, then checkpoint 1 and checkpoint 3 are classified into the same second spatiotemporal domain.

[0257] In step 703: From the first spatiotemporal domains to which other checkpoints belong, determine the target first spatiotemporal domain that contains the most other checkpoints;

[0258] For example: Regarding checkpoint 1, the first spatiotemporal domain to which checkpoint 1 belongs contains only checkpoint 1, and the second spatiotemporal domain to which checkpoint 1 belongs contains checkpoint 1, checkpoint 2, checkpoint 3, checkpoint 4, and checkpoint 5; among which checkpoint 2, checkpoint 3, and checkpoint 4 belong to the first spatiotemporal domain A, and checkpoint 5 belongs to the first spatiotemporal domain B, then the target first spatiotemporal domain is the first spatiotemporal domain A.

[0259] In step 704: the single checkpoint and the target first spatiotemporal domain are divided into a new first spatiotemporal domain, and any first spatiotemporal domain is replaced with the new first spatiotemporal domain.

[0260] Divide checkpoint 1 and the first spatiotemporal domain A into a new first spatiotemporal domain, and replace the first spatiotemporal domain corresponding to checkpoint 1 with this new first spatiotemporal domain.

[0261] In some embodiments, those skilled in the art may select only the first spatiotemporal domain for cluster analysis, or only the second spatiotemporal domain for cluster analysis, or combine the first and second spatiotemporal domains for cluster analysis, as needed. This application does not limit this.

[0262] In this embodiment of the application, in order to further extend the time frame, after performing cluster analysis on the facial image information collected by the checkpoints in the first spatiotemporal domain within a first specified time period to obtain the clustering results, facial image information within a second specified time period can be obtained to obtain the second clustering results; then, the final clustering result is determined based on the first and second clustering results. The second specified time period and the first specified time period should be two adjacent time periods.

[0263] For example: the first clustering result obtained by clustering analysis in different first spatiotemporal domains within the first time period is: there are portraits A, B, and C in first spatiotemporal domain A; and there are portraits D and E in first spatiotemporal domain B. The second clustering result obtained by clustering analysis in different first spatiotemporal domains within the second time period is: there are portraits A, B, C, and F in first spatiotemporal domain A; and there is portrait D in first spatiotemporal domain B. Then, by summing the first distance result and the second distance result, the final clustering result is: there are portraits A, B, C, and F in first spatiotemporal domain A; and there are portraits D and E in first spatiotemporal domain B.

[0264] To facilitate understanding of the portrait clustering method proposed in this application's embodiments, the overall process of the portrait clustering method provided in this application's embodiments will be described in detail below, taking the determination of the first spatiotemporal domain based on geographical location name and region as an example. Figure 9A As shown:

[0265] In step 901: Determine the third search radius of any checkpoint according to the third search radius calculation formula corresponding to the key field;

[0266] In step 902: Determine the fourth search radius calculation formula for any checkpoint based on the loop to which any checkpoint belongs, and determine the fourth search radius of any checkpoint based on the fourth search radius calculation formula;

[0267] In step 903: Determine the standard search radius of any checkpoint based on the weights, third search radius, and fourth search radius corresponding to the third search radius and fourth search radius of any checkpoint, respectively;

[0268] In step 904: the checkpoints within the standard search radius of any checkpoint are divided into a first spatiotemporal domain corresponding to any checkpoint;

[0269] In step 905: For any first spatiotemporal domain obtained by division, determine the number of checkpoints in any first spatiotemporal domain;

[0270] In step 906: If any first spatiotemporal domain contains only one checkpoint, then determine the second spatiotemporal domain to which the single checkpoint in any first spatiotemporal domain belongs;

[0271] In step 907: Among the first spatiotemporal domains to which other checkpoints belong, determine the target first spatiotemporal domain that contains the most other checkpoints;

[0272] In step 908: the single checkpoint and the target first spatiotemporal domain are divided into a new first spatiotemporal domain, and any first spatiotemporal domain is replaced with the new first spatiotemporal domain;

[0273] In step 909: obtain facial image information collected by checkpoints within the first spatiotemporal domain during the first specified time period, and obtain the first clustering result;

[0274] In step 910: Obtain facial image information for the second specified time period to obtain the second clustering result;

[0275] In step 911: the final clustering result is determined based on the first clustering result and the second clustering result.

[0276] like Figure 9B Based on the same inventive concept, a human face clustering device 900 is proposed, comprising:

[0277] Clustering module 9001 is used to perform cluster analysis on facial image information collected by checkpoints within a first specified time period in a first spatiotemporal domain, and obtain a first clustering result; wherein, the first spatiotemporal domain is determined according to the following method:

[0278] The acquisition module 9002 is used to acquire the geographical location of any checkpoint in the checkpoint set of the target area;

[0279] The search radius determination module 9003 is used to determine the standard search radius of any checkpoint according to preset parameters corresponding to the geographical location; wherein the preset parameters include: the name of the geographical location and / or the loop to which it belongs, and the loop to which it belongs represents the smallest loop among the loops surrounding the target area;

[0280] The spatiotemporal domain division module 9004 is used to divide the checkpoint set within the standard search radius of any checkpoint into a first spatiotemporal domain corresponding to any checkpoint.

[0281] In some possible embodiments, the preset parameters include the name of the geographic location;

[0282] When the search radius determination module performs the step of determining the standard search radius of any checkpoint based on the preset parameters corresponding to the geographical location, it is configured as follows:

[0283] Determine the key fields corresponding to any checkpoint based on the name of the geographical location;

[0284] The standard search radius of any checkpoint is determined according to the first search radius calculation formula corresponding to the key field.

[0285] In some possible embodiments, when the search radius determination module executes the standard search radius calculation formula corresponding to the key field to determine the standard search radius of any checkpoint, it is configured as follows:

[0286] If the key field is in the first key field set, then the formula for calculating the first search radius corresponding to any checkpoint is: r1 = r_base – delta_r1, where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the first key field set contains key fields indicating checkpoint density;

[0287] If the key field is in the second key field set, then the formula for calculating the first search radius corresponding to any checkpoint is: r1 = r_base + delta_r2, where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the second key field set contains key fields representing checkpoint sparsity;

[0288] If the key field is in both the first key field set and the second key field set, then the formula for determining the first search radius corresponding to any checkpoint is: r1 = r_base, where r1 is the standard search radius and r_base is an empirical value determined based on the sparsity of checkpoints in the target area.

[0289] In some possible embodiments, the preset parameters include the region location;

[0290] When the search radius determination module executes the function of determining the standard search radius of any checkpoint based on preset parameters corresponding to the geographical location, it is configured as follows:

[0291] The formula for calculating the second search radius corresponding to any checkpoint is determined based on the loop to which any checkpoint belongs;

[0292] The standard search radius of any checkpoint is determined based on the standard search radius calculation formula.

[0293] In some possible embodiments, the loop to which any checkpoint belongs is any one of the first loop, the second loop, the third loop, and the fourth loop, and the first loop is smaller than the second loop, the second loop is smaller than the third loop, and the third loop is smaller than the fourth loop.

[0294] When the search radius determination module executes the formula for calculating the second search radius corresponding to any checkpoint based on the area location corresponding to the geographical location, it is configured as follows:

[0295] If the loop to which any checkpoint belongs is the first loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2, where: r_loop1 is the standard search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0296] If the loop to which any checkpoint belongs is the second loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2+Δr1, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0297] If any checkpoint belongs to the third loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2+Δr2, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr2 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0298] If any checkpoint belongs to the fourth loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1=r_base2+Δr3, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr3 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0299] In some possible embodiments, the preset parameters include the name of the geographic location and the regional location;

[0300] When the search radius determination module performs the task of determining the standard search radius of any checkpoint based on the geographical location and the preset parameters corresponding to the geographical location, it is configured as follows:

[0301] The third search radius of any checkpoint is determined according to the third search radius calculation formula corresponding to the key field; and

[0302] The fourth search radius calculation formula corresponding to any checkpoint is determined based on the loop to which any checkpoint belongs, and the fourth search radius of any checkpoint is determined based on the fourth search radius calculation formula.

[0303] The standard search radius of any checkpoint is determined based on the weights corresponding to the third and fourth search radii of any checkpoint, as well as the third and fourth search radii.

[0304] In some possible embodiments, when the search radius determination module executes the third search radius calculation formula corresponding to the key field to determine the third search radius of any checkpoint, it is configured as follows:

[0305] If the key field is in the first key field set, then the formula for calculating the third search radius corresponding to any checkpoint is: r2 = r_base – delta_r1, where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the first key field set contains key fields indicating checkpoint density;

[0306] If the key field is in the second key field set, then the formula for calculating the third search radius corresponding to any checkpoint is: r2 = r_base + delta_r2, where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is an empirical value determined based on the sparsity of checkpoints in the target area; wherein, the second key field set contains key fields representing checkpoint sparsity;

[0307] If the key field is in both the first key field set and the second key field set, then the formula for determining the third search radius corresponding to any checkpoint is: r2 = r_base, where r2 is the third search radius and r_base is an empirical value determined based on the sparsity of checkpoints in the target area.

[0308] In some possible embodiments, the loop to which any checkpoint belongs is any one of the first loop, the second loop, the third loop, and the fourth loop, and the first loop is smaller than the second loop, the second loop is smaller than the third loop, and the third loop is smaller than the fourth loop.

[0309] When the search radius determination module executes the fourth search radius calculation formula corresponding to any checkpoint based on the loop to which any checkpoint belongs, it is configured as follows:

[0310] If any checkpoint belongs to the first loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop2=r_base2, where: r_loop2 is the fourth search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area;

[0311] If any checkpoint belongs to the second loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop 2=r_base2+Δr1, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0312] If any checkpoint belongs to the third loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop2=r_base2+Δr2, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr2 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0313] If any checkpoint belongs to the fourth loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop 2=r_base2+Δr3, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr3 is an empirical value determined based on the sparsity of checkpoints in the target area.

[0314] In some possible embodiments, the spatiotemporal domain determination module is further configured to:

[0315] In the process of determining each first spatiotemporal domain, once a first spatiotemporal domain is determined, the checkpoint located in the first spatiotemporal domain is deleted from the checkpoint set.

[0316] In some possible embodiments, after the spatiotemporal domain partitioning module performs the task of partitioning the checkpoint set within the standard search radius of any checkpoint into a first spatiotemporal domain corresponding to any checkpoint, it is further configured to:

[0317] For any first spatiotemporal domain obtained by division, determine the number of checkpoints in the first spatiotemporal domain;

[0318] If any of the first spatiotemporal domains contains only one checkpoint, then the second spatiotemporal domain to which the single checkpoint belongs in any of the first spatiotemporal domains is determined; wherein the second spatiotemporal domain includes the single checkpoint and other checkpoints with the same location information as the single checkpoint, and the location information includes any one of the following: Area of ​​Interest (AOI) information, Point of Interest (POI) information, and the region to which it belongs;

[0319] From the first spatiotemporal domains to which the other checkpoints belong, determine the target first spatiotemporal domain that contains the largest number of the other checkpoints;

[0320] The single checkpoint and the target first spatiotemporal domain are divided into a new first spatiotemporal domain, and any one of the first spatiotemporal domains is replaced with the new first spatiotemporal domain.

[0321] In some possible embodiments, the second spatiotemporal domain is determined according to the following method:

[0322] If the AOI information of any checkpoint is determined, then the first type of checkpoint in the checkpoint set and the any checkpoint are divided into the same second spatiotemporal domain, wherein the first type of checkpoint is the checkpoint with the same AOI information as the any checkpoint.

[0323] If the AOI information of any checkpoint cannot be determined, but the POI information of any checkpoint is determined, then the second type of checkpoint in the checkpoint set and any checkpoint are divided into the same second spatiotemporal domain, wherein the second type of checkpoint is the checkpoint with the same POI information as any checkpoint.

[0324] If the POI information of any checkpoint cannot be determined, and the region to which any checkpoint belongs is determined, then the third type checkpoint in the checkpoint set and any checkpoint are classified into the same second spatiotemporal domain, wherein the third type checkpoint is a checkpoint that belongs to the same region as any checkpoint.

[0325] In some possible embodiments, the clustering module performs cluster analysis on the facial image information collected by checkpoints within a first specified time period in the first spatiotemporal domain. After obtaining the clustering results, it is further configured to:

[0326] Obtain facial image information for a second specified time period to obtain the second clustering result;

[0327] The final clustering result is determined based on the first clustering result and the second clustering result;

[0328] The first time period and the second time period are two time periods that are adjacent in time.

[0329] Having introduced the portrait clustering method and apparatus according to exemplary embodiments of this application, we will now introduce an electronic device according to another exemplary embodiment of this application.

[0330] Those skilled in the art will understand that various aspects of this application can be implemented as a system, method, or program product. Therefore, various aspects of this application can be specifically implemented in the following forms: a completely hardware implementation, a completely software implementation (including firmware, microcode, etc.), or a combination of hardware and software implementations, collectively referred to herein as a "circuit," "module," or "system."

[0331] In some possible implementations, the electronic device according to this application may include at least one processor and at least one memory. The memory stores program code that, when executed by the processor, causes the processor to perform the steps in the portrait clustering method according to the various exemplary embodiments of this application described above.

[0332] The following reference Figure 10 To describe an electronic device 130 according to this embodiment of the present application. Figure 10 The electronic device 130 shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.

[0333] like Figure 10 As shown, the electronic device 130 is presented in the form of a general-purpose electronic device. The components of the electronic device 130 may include, but are not limited to: at least one processor 131, at least one memory 132, and a bus 133 connecting different system components (including memory 132 and processor 131).

[0334] Bus 133 represents one or more of several bus structures, including a memory bus or memory controller, peripheral bus, processor, or local bus using any of the various bus structures.

[0335] The memory 132 may include a readable medium in the form of volatile memory, such as random access memory (RAM) 1321 and / or cache memory 1322, and may further include read-only memory (ROM) 1323.

[0336] The memory 132 may also include a program / utility 1325 having a set (at least one) of program modules 1324, including but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of these examples may include an implementation of a network environment.

[0337] Electronic device 130 can also communicate with one or more external devices 134 (e.g., keyboard, pointing device, etc.), and with one or more devices that enable a user to interact with electronic device 130, and / or with any device that enables electronic device 130 to communicate with one or more other electronic devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 135. Furthermore, electronic device 130 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 136. As shown, network adapter 136 communicates with other modules used by electronic device 130 via bus 133. It should be understood that, although... Figure 10 As not shown, other hardware and / or software modules may be used in conjunction with electronic device 130, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0338] In some possible implementations, various aspects of the portrait clustering method provided in this application can also be implemented as a program product, which includes program code that, when the program product is run on a computer device, causes the computer device to perform the steps in the portrait clustering method according to the various exemplary embodiments of this application described above.

[0339] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0340] The program product for human face clustering according to the embodiments of this application can be a portable compact disc read-only memory (CD-ROM) and include program code, and can run on an electronic device. However, the program product of this application is not limited thereto. In this document, the readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0341] A readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying readable program code. This propagated data signal may take many forms, including—but not limited to—electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0342] Program code for performing the operations of this application can be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java and C++, and conventional procedural programming languages ​​such as C or similar languages. The program code can execute entirely on the user's electronic device, partially on the user's device, as a standalone software package, partially on the user's electronic device and partially on a remote electronic device, or entirely on a remote electronic device or server. In cases involving remote electronic devices, the remote electronic device can be connected to the user's electronic device via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external electronic device (e.g., via the Internet using an Internet service provider).

[0343] It should be noted that although several units or sub-units of the device have been mentioned in the detailed description above, this division is merely exemplary and not mandatory. In fact, according to embodiments of this application, the features and functions of two or more units described above can be embodied in one unit. Conversely, the features and functions of one unit described above can be further divided and embodied by multiple units.

[0344] Furthermore, although the operations of the method of this application are described in a specific order in the accompanying drawings, this does not require or imply that these operations must be performed in that specific order, or that all the operations shown must be performed to achieve the desired result. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step, and / or one step may be broken down into multiple steps.

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

[0346] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to this application. 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, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0347] 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.

[0348] 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.

[0349] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.

Claims

1. A method for clustering human images, characterized in that, The method includes: Cluster analysis is performed on facial image information collected by checkpoints within a first specified time period in the first spatiotemporal domain to obtain the first clustering result; wherein, the first spatiotemporal domain is determined according to the following method: Obtain the geographical location of any checkpoint in the checkpoint set of the target area; After determining the key field set to which the key field of any checkpoint belongs from multiple key field sets divided according to the sparsity of checkpoints based on the name of the geographical location, the standard search radius of any checkpoint is determined based on the key field set; or, the standard search radius of any checkpoint is determined based on the loop to which the key field of any checkpoint belongs; or, the standard search radius of any checkpoint is determined based on the key field set to which the key field of any checkpoint belongs and the loop to which it belongs. Wherein, the belonging loop refers to the smallest loop among the loops surrounding the target area; the belonging loop of any checkpoint is determined from multiple loops divided according to the sparsity of the checkpoints; in areas with dense checkpoints, the standard search radius of any checkpoint is small, and in areas with sparse checkpoints, the standard search radius of any checkpoint is large. The checkpoints within the standard search radius of any checkpoint in the checkpoint set are divided into a first spatiotemporal domain corresponding to any checkpoint.

2. The method according to claim 1, characterized in that, After determining the key field set to which the key field of any checkpoint belongs from multiple key field sets divided according to the sparsity of checkpoints based on the name of the geographical location, the standard search radius of any checkpoint is determined based on the key field set, including: The key field corresponding to any checkpoint is determined based on the name of the geographical location, and the set of key fields to which the key field belongs is determined from a pre-divided set of multiple key field sets; Based on the set of key fields to which the key fields belong, determine the formula for calculating the first search radius corresponding to any checkpoint; The standard search radius of any checkpoint is determined based on the first search radius calculation formula.

3. The method according to claim 2, characterized in that, The multiple key field sets include: a first key field set and a second key field set; the step of determining the first search radius calculation formula corresponding to any checkpoint based on the key field set to which the key field belongs includes: If the key field is in the first key field set, then the formula for calculating the first search radius corresponding to any checkpoint is: r1 = r_base – delta_r1, where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is a random value selected from the empirical interval [a1, b1] based on the sparsity of checkpoints in the target area; the first key field set contains key fields indicating checkpoint density; If the key field is in the second key field set, then the formula for calculating the first search radius corresponding to any checkpoint is: r1 = r_base + delta_r2, where: r1 is the standard search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is a random value selected from the empirical interval [a2, b2] based on the sparsity of checkpoints in the target area; the second key field set contains key fields representing checkpoint sparsity; If the key field is in both the first key field set and the second key field set, then the formula for determining the first search radius corresponding to any checkpoint is: r1 = r_base, where r1 is the standard search radius and r_base is an empirical value determined based on the sparsity of checkpoints in the target area.

4. The method according to claim 1, characterized in that, The step of determining the standard search radius of any checkpoint based on the loop to which any checkpoint belongs includes: Based on the loop to which any checkpoint belongs, determine the formula for calculating the second search radius corresponding to any checkpoint; The standard search radius of any checkpoint is determined based on the second search radius calculation formula.

5. The method according to claim 4, characterized in that, The loop to which any checkpoint belongs is either the first loop or the second loop, and the first loop is smaller than the second loop; The formula for calculating the second search radius corresponding to any checkpoint based on the loop to which any checkpoint belongs includes: If the loop to which any checkpoint belongs is the first loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1 = r_base2, where: r_loop1 is the standard search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area; If any checkpoint belongs to the second loop, then the formula for calculating the second search radius corresponding to any checkpoint is: r_loop1 = r_base2 + Δr1, where: r_loop1 is the standard search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of checkpoints in the target area.

6. The method according to claim 1, characterized in that, The step of determining the standard search radius of any checkpoint based on the set of key fields to which the key field of any checkpoint belongs and the loop to which it belongs includes: Based on the name of the geographical location, determine the key field corresponding to any checkpoint, and determine the key field set to which the key field belongs from a pre-divided set of multiple key field sets; based on the key field set to which the key field belongs, determine the third search radius calculation formula for any checkpoint; and based on the third search radius calculation formula, determine the third search radius of any checkpoint; and The fourth search radius calculation formula corresponding to any checkpoint is determined based on the loop to which any checkpoint belongs, and the fourth search radius of any checkpoint is determined based on the fourth search radius calculation formula. The standard search radius of any checkpoint is determined based on the weights corresponding to the third and fourth search radii of any checkpoint, as well as the third and fourth search radii.

7. The method according to claim 6, characterized in that, The multiple key field sets include: a first key field set and a second key field set; determining the third search radius of any checkpoint according to the third search radius calculation formula corresponding to the key fields includes: If the key field is in the first key field set, then the formula for calculating the third search radius corresponding to any checkpoint is: r2 = r_base – delta_r1, where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r1 is a random value selected from the empirical interval [a1, b1] based on the sparsity of checkpoints in the target area; wherein, the first key field set contains key fields indicating checkpoint density; If the key field is in the second key field set, then the formula for calculating the third search radius corresponding to any checkpoint is: r2 = r_base + delta_r2, where: r2 is the third search radius, r_base is an empirical value determined based on the sparsity of checkpoints in the target area, and delta_r2 is a random value selected from the empirical interval [a2, b2] based on the sparsity of checkpoints in the target area; wherein, the second key field set contains key fields representing checkpoint sparsity; If the key field is in both the first key field set and the second key field set, then the formula for determining the third search radius corresponding to any checkpoint is: r2 = r_base, where r2 is the third search radius and r_base is an empirical value determined based on the sparsity of checkpoints in the target area.

8. The method according to claim 6, characterized in that, The loop to which any checkpoint belongs is either the first loop or the second loop, and the first loop is smaller than the second loop; The formula for calculating the fourth search radius corresponding to any checkpoint based on the loop to which any checkpoint belongs includes: If any checkpoint belongs to the first loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop2 = r_base2, where: r_loop2 is the fourth search radius, and r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area; If any checkpoint belongs to the second loop, then the formula for calculating the fourth search radius corresponding to any checkpoint is: r_loop2 = r_base2 + Δr1, where: r_loop2 is the fourth search radius, r_base2 is an empirical value determined based on the sparsity of checkpoints in the target area, and Δr1 is an empirical value determined based on the sparsity of checkpoints in the target area.

9. The method according to claim 1, characterized in that, The method further includes: In the process of determining each first spatiotemporal domain, once a first spatiotemporal domain is determined, the checkpoint located in the first spatiotemporal domain is deleted from the checkpoint set.

10. The method according to claim 1, characterized in that, After dividing the checkpoint set within the standard search radius of any checkpoint into a first spatiotemporal domain corresponding to any checkpoint, the method further includes: For any first spatiotemporal domain obtained by division, determine the number of checkpoints in the first spatiotemporal domain; If any of the first spatiotemporal domains contains only one checkpoint, then the second spatiotemporal domain to which the single checkpoint belongs in any of the first spatiotemporal domains is determined; wherein the second spatiotemporal domain includes the single checkpoint and other checkpoints with the same location information as the single checkpoint, and the location information includes any one of the following: Area of ​​Interest (AOI) information, Point of Interest (POI) information, and the region to which it belongs; From the first spatiotemporal domains to which the other checkpoints belong, determine the target first spatiotemporal domain that contains the largest number of the other checkpoints; The single checkpoint and the target first spatiotemporal domain are divided into a new first spatiotemporal domain, and any one of the first spatiotemporal domains is replaced with the new first spatiotemporal domain.

11. The method according to claim 10, characterized in that, The second spatiotemporal domain was determined according to the following method: If the AOI information of any checkpoint is determined, then the first type of checkpoint in the checkpoint set and the any checkpoint are divided into the same second spatiotemporal domain, wherein the first type of checkpoint is the checkpoint with the same AOI information as the any checkpoint. If the AOI information of any checkpoint cannot be determined, but the POI information of any checkpoint is determined, then the second type of checkpoint in the checkpoint set and any checkpoint are divided into the same second spatiotemporal domain, wherein the second type of checkpoint is the checkpoint with the same POI information as any checkpoint. If the POI information of any checkpoint cannot be determined, and the region to which any checkpoint belongs is determined, then the third type checkpoint in the checkpoint set and any checkpoint are classified into the same second spatiotemporal domain, wherein the third type checkpoint is a checkpoint that belongs to the same region as any checkpoint.

12. The method according to any one of claims 1 to 11, characterized in that, After performing cluster analysis on the facial image information collected by checkpoints within the first spatiotemporal domain during a first specified time period to obtain the clustering results, the method further includes: Obtain facial image information for a second specified time period to obtain the second clustering result; The final clustering result is determined based on the first clustering result and the second clustering result; The first time period and the second time period are two time periods that are adjacent in time.

13. A human face clustering device, characterized in that, The device includes: The clustering module is used to perform cluster analysis on facial image information collected by checkpoints within a first specified time period in the first spatiotemporal domain, and obtain the first clustering result; wherein, the first spatiotemporal domain is determined according to the following method: The acquisition module is used to obtain the geographical location of any checkpoint in the checkpoint set of the target area; The search radius determination module is used to determine the standard search radius of any checkpoint based on the key field set to which the key field of any checkpoint belongs from multiple key field sets divided according to the sparsity of checkpoints, based on the name of the geographical location; or, to determine the standard search radius of any checkpoint based on the loop to which the key field of any checkpoint belongs; or, to determine the standard search radius of any checkpoint based on the key field set to which the key field of any checkpoint belongs and the loop to which the key field of any checkpoint belongs. Wherein, the belonging loop refers to the smallest loop among the loops surrounding the target area; the belonging loop of any checkpoint is determined from multiple loops divided according to the sparsity of the checkpoints; in areas with dense checkpoints, the standard search radius of any checkpoint is small, and in areas with sparse checkpoints, the standard search radius of any checkpoint is large. The spatiotemporal domain division module is used to divide the checkpoint set within the standard search radius of any checkpoint into a first spatiotemporal domain corresponding to any checkpoint.

14. An electronic device, characterized in that, The method includes at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1-12.

15. A computer storage medium, characterized in that, The computer storage medium stores a computer program that enables the computer to perform the method described in any one of claims 1-12.

Citation Information

Patent Citations

  • Face clustering method and device based on spatio-temporal trajectory data and storage medium

    CN112818149A

  • KR20190107530A