An image archiving method and device, electronic equipment and storage medium
By determining the acquisition time interval and position interval of candidate images, and combining the range of object movement speed, the displacement duration interval of candidate images is determined, thus solving the accuracy problem in image clustering and achieving higher clustering accuracy.
Patent Information
- Application Number
- CN202111621839.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-28
- Publication Date
- 2026-02-13
- Estimated Expiration
- 2041-12-28
AI Technical Summary
Existing image clustering methods tend to group images of different target objects that are close in time and have a large geographical span into one file when dealing with large amounts of data and extensive spatial environments, which reduces the accuracy of image clustering.
By determining the acquisition time interval of candidate images and the positional interval between the target image acquisition devices, and combining this with the preset object movement speed range, the displacement time interval of the target object is determined. When the acquisition time interval falls within the displacement time interval, the candidate images are clustered.
It improves the accuracy of image clustering, avoids clustering images of different target objects that are close in time and have a large geographical span into one file, and enhances the accuracy of image clustering.
Smart Images

Figure CN114357218B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of image processing, and particularly relates to an image clustering method and device, electronic equipment and a storage medium. BACKGROUND
[0002] With the wide application of image recognition technology, the construction of an image recognition system covering public areas has been gradually completed. The image recognition system can capture and recognize target objects, and perform image clustering on the obtained massive captured images, thereby forming an image archive of the target objects, which can assist the development of related security services.
[0003] For example, in daily life, in order to cluster images of target objects, the image recognition system compares the similarity of images by setting a certain threshold. If the similarity of two images containing target objects is greater than or equal to the threshold, the two images are classified into one cluster; if the similarity of two images containing target objects is less than the threshold, the two images are not classified into one cluster.
[0004] Specifically, in an actual scenario, the image recognition system first obtains image feature values of a to-be-clustered image and archive feature values of a target object image archive, then judges the feature similarity of the to-be-clustered image and the target object image archive, thereby retaining or rejecting the to-be-clustered image, and finally updates the archive feature values of the target object image archive, and verifies a new target object image according to a verification period.
[0005] However, the image clustering in the above manner may result in to-be-clustered images of different target objects with high similarity in time and large geographical span in a large data volume and wide space environment. In this case, multiple to-be-clustered images may be classified into the same image archive, thereby causing a contradiction in time and space, i.e., the same target object appears in two places with large geographical span in a short time, thereby reducing the accuracy of image clustering. SUMMARY
[0006] The embodiments of the present application provide a method, device, electronic equipment and storage medium for image clustering, to improve the accuracy of image clustering.
[0007] In a first aspect, the embodiments of the present application provide an image clustering method, which comprises:
[0008] Based on the image acquisition times corresponding to the two candidate images containing the same target object, determine the corresponding acquisition time interval; wherein the two candidate images are obtained by two target image acquisition devices.
[0009] The position interval between the two target image acquisition devices is determined based on position information corresponding to the two target image acquisition devices respectively.
[0010] The displacement time interval of the target object is determined based on the position interval and a preset object moving speed range.
[0011] The two candidate images are clustered when it is determined that the acquisition time interval belongs to the displacement time interval.
[0012] In a second aspect, the embodiments of the present application further provide an image clustering device, and the device comprises:
[0013] The acquisition module is configured to determine a corresponding acquisition time interval based on image acquisition times corresponding to two candidate images containing a same target object respectively, wherein the two candidate images are obtained by two target image acquisition devices respectively; and determine a position interval between the two target image acquisition devices based on position information corresponding to the two target image acquisition devices respectively.
[0014] The processing module is configured to determine a displacement time interval of the target object based on the position interval and a preset object moving speed range.
[0015] The clustering module is configured to cluster the two candidate images when it is determined that the acquisition time interval belongs to the displacement time interval.
[0016] In an optional embodiment, before determining the corresponding acquisition time interval based on the image acquisition times corresponding to the two candidate images containing the same target object respectively, the acquisition module is further configured to:
[0017] Obtain selection priorities corresponding to at least two image acquisition devices respectively, wherein each image acquisition device obtains at least one original image containing the target object.
[0018] Select the two target image acquisition devices from the at least two image acquisition devices based on the selection priorities corresponding to the at least two image acquisition devices respectively.
[0019] In an optional embodiment, when obtaining the selection priorities corresponding to the at least two image acquisition devices respectively, the acquisition module is specifically configured to:
[0020] Obtain a recommended priority of at least one preset path, wherein each path comprises the at least two image acquisition devices.
[0021] Determine the selection priorities corresponding to the at least two image acquisition devices respectively based on the recommended priority of the at least one path and a corresponding relationship between the path and the image acquisition device.
[0022] In an alternative embodiment, before determining the corresponding acquisition time interval based on the image acquisition time corresponding to each of the two candidate images containing the same target object, the acquisition module is further configured to:
[0023] For the two target image acquisition devices, the following operations are respectively performed:
[0024] At least one original image containing the same target object is obtained for a target image acquisition device, and the image acquisition time corresponding to each of the at least one original image is obtained.
[0025] Based on the image acquisition time corresponding to each of the at least one original image, a time arrangement order is determined.
[0026] Based on the time arrangement order, a candidate image is selected from each of the original images.
[0027] In an alternative embodiment, when determining the displacement time interval of the target object based on the position interval and the preset object movement speed range, the processing module is specifically configured to:
[0028] The preset object movement speed range is obtained; wherein, the object movement range includes the maximum object movement speed and the minimum object movement speed;
[0029] Based on the minimum object movement speed and the position interval, the maximum movement time of the target object is obtained.
[0030] Based on the maximum object movement speed and the position interval, the minimum movement time of the target object is obtained.
[0031] Based on the maximum movement time and the minimum movement time, the displacement time interval of the target object is obtained.
[0032] In an alternative embodiment, when determining that the acquisition time interval belongs to the displacement time interval, the clustering module is specifically configured to:
[0033] The image feature value corresponding to each of the two candidate images is obtained; wherein, the image feature value is used to represent the target object;
[0034] Based on the image feature value corresponding to each of the two candidate images, the similarity of the target object in the two candidate images is determined;
[0035] When the similarity reaches the set similarity threshold, the two candidate images are clustered.
[0036] In an alternative embodiment, after determining that the acquisition time interval belongs to the displacement time interval, the clustering module is further configured to:
[0037] Based on the two candidate images, the following operations are respectively performed:
[0038] Obtaining image feature values corresponding to at least one original image excluding the corresponding candidate image in the image acquisition device corresponding to one candidate image;
[0039] Respectively determining the similarity of the target object in the corresponding original image and another candidate image;
[0040] When it is determined that the similarity of the target object in the at least one original image excluding the corresponding candidate image and another candidate image is not less than the similarity threshold, the corresponding original image and another candidate image are respectively clustered.
[0041] In a third aspect, an electronic device is provided, and the electronic device comprises:
[0042] A memory for storing computer instructions.
[0043] A processor for reading computer instructions and executing the image clustering method according to the first aspect.
[0044] In a fourth aspect, a computer readable storage medium is provided, and the computer readable storage medium stores computer executable instructions for causing a computer to execute the image clustering method according to the first aspect.
[0045] In a fifth aspect, a computer program product is provided, and when the computer program product is invoked by a computer, the computer program product causes the computer to execute the image clustering method according to the first aspect.
[0046] In the embodiments of the present application, based on the interval of the acquisition time between the two candidate images containing the same target object and the interval of the positions between the two target image acquisition devices, and in combination with the preset object moving speed range, the displacement time interval of the target object is determined, so as to determine whether the interval of the acquisition time belongs to the displacement time interval, and to cluster the two candidate images. In this way, it is determined whether the interval of the acquisition time belongs to the displacement time interval, and then it is determined whether to cluster the two candidate images, thereby avoiding the traditional way of clustering the similar images of different target objects with similar time and large geographical span into one cluster, and improving the accuracy of image clustering. BRIEF DESCRIPTION OF DRAWINGS
[0047] Figure 1 An exemplary system architecture diagram to which the embodiments of the present application are applicable is shown;
[0048] Figure 2 An exemplary schematic diagram of a path provided by the embodiments of the present application is shown;
[0049] Figure 3An exemplary flowchart of a method for selecting a target image acquisition device is shown in the embodiments of the present application.
[0050] Figure 4 An exemplary flowchart of a method for obtaining an image acquisition device selection priority is shown in the embodiments of the present application.
[0051] Figure 5 An exemplary schematic diagram of a recommended path is shown in the embodiments of the present application.
[0052] Figure 6 An exemplary flowchart of a method for obtaining a candidate image corresponding to a target image acquisition device is shown in the embodiments of the present application.
[0053] Figure 7 An exemplary logic diagram of a method for obtaining an image acquisition time of an original image is shown in the embodiments of the present application.
[0054] Figure 8 An exemplary logic diagram of a method for obtaining a candidate image is shown in the embodiments of the present application.
[0055] Figure 9 An exemplary flowchart of a method for image clustering of two candidate images is shown in the embodiments of the present application.
[0056] Figure 10 An exemplary method diagram for determining an interval to which an interval of acquisition times of two candidate images belongs is shown in the embodiments of the present application.
[0057] Figure 11 An exemplary flowchart of another method for image clustering of two candidate images is shown in the embodiments of the present application.
[0058] Figure 12 An exemplary logic diagram for determining whether two candidate images are clustered is shown in the embodiments of the present application.
[0059] Figure 13 An exemplary flowchart of a method for image clustering of an original image and a candidate image is shown in the embodiments of the present application.
[0060] Figure 14 An exemplary logic diagram for determining whether an original image and a candidate image are clustered is shown in the embodiments of the present application.
[0061] Figure 15 An exemplary structural diagram of an image clustering apparatus is shown in the embodiments of the present application.
[0062] Figure 16 An exemplary structural diagram of an electronic device is shown in the embodiments of the present application. DETAILED DESCRIPTION
[0063] In order to improve the accuracy of image clustering, in the embodiments of the present application, based on the acquisition time interval of the two candidate images and the position interval between the target image acquisition devices corresponding to the two candidate images, and in combination with the preset moving object speed range, the displacement time interval of the target object is obtained, so that when it is determined that the acquisition time interval belongs to the displacement time interval, the two candidate images are clustered.
[0064] In order to better understand the embodiments of the present application, the technical terms involved in the embodiments of the present application will be described first.
[0065] (1) Image archive: refers to clustering all portrait pictures of a specific target object in a set into a group.
[0066] (2) One person with multiple archives: refers to a target object being attributed to multiple target image archives at the same time;
[0067] (3) One archive with multiple people: refers to a target image archive including multiple target objects at the same time;
[0068] (4) Spatio-temporal contradiction: refers to that it is unreasonable to cluster the target object images with high similarity obtained by image acquisition devices with large geographical span in a very short time into a class, that is, the same target object appears in two places with a very long physical distance in a very short time interval, which is contradictory in time and space.
[0069] (5) Image feature value: refers to the numerical value of various feature information contained in each original image. For the sake of understanding, in this paper, the image feature value is mainly used to represent the feature information of the target object.
[0070] (6) Archive verification: the image clustering result may have the problem of inaccurate clustering of one archive with multiple people and one person with multiple archives, and the secondary verification of each original image after clustering.
[0071] (7) Similarity threshold: when the similarity of the two candidate images after image clustering is compared, the similarity threshold is set, when the similarity of the two candidate images is greater than or equal to the similarity threshold, the two candidate images are merged, and when the similarity of the two candidate images is less than the similarity threshold, the two candidate images are not merged.
[0072] It should be noted that the above technical term naming method is only an example, and the embodiments of the present application do not limit the naming method of the above technical terms.
[0073] To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. The specific operational methods in the method embodiments can also be applied to the device embodiments or system embodiments. It should be noted that in the description of this application, "multiple" is understood as "at least two". "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. A connected to B can represent: A and B directly connected, and A and B connected through C. Furthermore, in the description of this application, terms such as "first" and "second" are used only for distinguishing the purpose of description and should not be construed as indicating or implying relative importance or order.
[0074] It should be noted that the embodiments described in this application are merely some embodiments, not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments in this application without inventive effort are within the scope of protection of this invention.
[0075] Currently, most image aggregation methods compare image similarity by setting a certain threshold, thereby aggregating the original images. However, this often results in multiple archives for one person or multiple people for one archive. Therefore, it is necessary to verify the archives of each original image in the image archive of the image acquisition device.
[0076] Figure 1 An exemplary system architecture diagram applicable to embodiments of this application is shown, such as... Figure 1 As shown, the system architecture includes: server 101, terminal devices (102a, 102b), and image acquisition devices (103a, 103b). Terminal device 102a is connected to image acquisition device 103a, and terminal device 102b is connected to image acquisition device 103b. Server 101 and terminal devices (102a, 102b) can exchange information via wireless or wired communication.
[0077] For example, server 101 can access the network via cellular mobile communication technology to communicate with terminal devices (102a, 102b), such as 5th generation mobile network (5G) technology.
[0078] Optionally, server 101 can access the network via short-range wireless communication to communicate with terminal devices (102a, 102b), such as Wireless Fidelity (Wi-Fi) technology.
[0079] It should be noted that each terminal device can be connected with one or more image acquisition devices, and the number of servers and other devices described above is not limited by the embodiments of the present application. Figure 1 Only one server is described as an example.
[0080] The server 101 is configured to determine a corresponding acquisition time interval based on image acquisition times of two candidate images containing the same target object, determine a position interval between two target image acquisition devices based on position information of the two target image acquisition devices, determine a displacement time interval of the target object based on the position interval and a preset object movement speed range, and cluster the two candidate images when it is determined that the acquisition time interval belongs to the displacement time interval.
[0081] The terminal device (102a, 102b) is a device that can provide voice and / or data connectivity to a user, including handheld terminal devices with wireless connection functions, vehicle-mounted terminal devices, etc.
[0082] For example, the terminal device can be a mobile phone, a tablet computer, a notebook computer, a palm computer, a mobile internet device (MID), a wearable device, a virtual reality (VR) device, an augmented reality (AR) device, a wireless terminal device in industrial control, a wireless terminal device in unmanned driving, a wireless terminal device in smart power grids, a wireless terminal device in transportation safety, a wireless terminal device in smart cities, or a wireless terminal device in smart homes, etc.
[0083] The image acquisition device (103a, 103b) is a device for acquiring images or recording videos, including handheld image acquisition devices with wireless connection functions, head-mounted image acquisition devices, and fixed image acquisition devices, etc.
[0084] For example, the image acquisition device can be a camera, a video camera, a digital still camera (DSC), a single lens reflex camera (SLRC), other image acquisition devices with photographing functions (mobile phones, tablet computers, etc.), and a video acquisition card, etc.
[0085] It should be noted that in this embodiment of the application, the image acquisition device is described using a checkpoint device as an example. A checkpoint device can acquire images of a target object. Generally, when the same checkpoint device acquires multiple original images of the same target object, these original images are aggregated into an image file of the same target object after an image aggregation operation. The data information of each acquired original image is then stored in a database and finally uploaded to the terminal device.
[0086] Furthermore, based on the above system architecture, the image acquisition time corresponding to each original image and the location information corresponding to each image acquisition device are obtained.
[0087] Specifically, the server receives initial image archive data from various image acquisition devices, each containing the same target object. The data is then categorized, and from each initial image archive data, the image acquisition time of the corresponding original image and the location information of the image acquisition device for that original image are obtained. The initial image archive data includes at least: the image acquisition device number, the location information of the image acquisition device, the image feature values of the target object, and the image acquisition time.
[0088] For example, see Figure 2 As shown, taking a region with 5 checkpoint devices as an example, the road segment between any two checkpoint devices can form a route, thus a total of 10 routes can be formed. The server obtains the initial image archive data for each device, and obtains all images of the same target object captured by the 5 checkpoint devices within a day. For example, each checkpoint device captures 5 original images containing the same target object, as well as the location information of the 5 checkpoint devices, such as latitude and longitude coordinates (Coordinate.Y, Coordinate.X). Longitude is represented by Coordinate.Y, and latitude by Coordinate.X. Optionally, when a checkpoint device obtains an original image containing the target object, it records the image acquisition time of capturing the same target object. The checkpoint devices and their corresponding latitude and longitude coordinates are shown in Table 1.
[0089] Table 1
[0090]
[0091] As shown in the table above, the server can obtain the latitude and longitude coordinates of each checkpoint device, and then determine the location coordinates of the same target object using the latitude and longitude coordinates of each checkpoint device. For example, taking checkpoint device A as an example, when the server obtains 5 original images containing the same target object captured by checkpoint device A, it also obtains the latitude and longitude coordinates (Cd.YA, Cd.XA) of checkpoint device A.
[0092] Further, still taking the example of the card mouth device A, after the server obtains the five original images containing the same target object captured by the card mouth device A, based on the image initial profiling data of each original image, according to the data type of the image acquisition time, the image acquisition time corresponding to the respective original image is obtained from the image initial profiling data. Taking the example of the card mouth device obtaining five original images of the same target object, i.e., original image 1, original image 2, original image 3, original image 4, and original image 5, the image acquisition time identifier and the image acquisition time corresponding to each original image are shown in Table 2:
[0093] Table 2
[0094]
[0095] From the above table, the server can obtain the image initial profiling data of the five original images containing the same target object obtained by the card mouth device A, and then obtain the image acquisition time identifier corresponding to each of the five original images according to the data type of the image acquisition time. Taking the example of the original image 1, the server first obtains the image initial profiling data of the original image 1, and then obtains the image acquisition time identifier T1 of the original image 1 from the image initial profiling data according to the data type of the image acquisition time. Finally, according to the corresponding image acquisition time identifier T1, the image acquisition time of the original image 1 is obtained, i.e., November 14, 2019 09:35:01.
[0096] Further, based on the above method steps, referring to FIG. 7, after the server obtains the image acquisition time corresponding to each original image and the position information corresponding to each image acquisition device, two target image acquisition devices are selected from the image acquisition devices, and the specific steps are as follows: Figure 3
[0097] S301: Obtain the selection priority corresponding to each of the at least two image acquisition devices.
[0098] Specifically, when performing step S301, the server can determine the selection priority corresponding to each image acquisition device deployed on each recommended path according to the recommended priority of the path that the target object may pass through, referring to FIG. 6, and the specific steps are as follows: Figure 4
[0099] S3011: Obtain the recommended priority of at least one preset path.
[0100] Specifically, in step S3011, the server first uses a map search tool to draw at least one path for the target objects to reach the same destination based on the location information of each image acquisition device. Then, it sorts the paths according to the recommended order and finally sets different priorities based on the path order. The higher the path is in the ranking, the more likely the target object is to choose that path; that is, the target object's movement trajectory is most likely to be the path ranked first.
[0101] For example, see Figure 5 As shown, the server, based on the location information of each checkpoint device, uses a map search tool to obtain five recommended paths for the target object. These five recommended paths are then sorted according to their recommendation order, and their respective recommendation priorities are determined. The recommendation priorities of each path, from highest to lowest, are: Level 1, Level 2, Level 3, Level 4, and Level 5. Optionally, the path recommendation order can be determined based on either the shortest time principle or the shortest path principle. In this embodiment, the path recommendation order is described using the shortest time principle as an example. The travel time and recommendation priority of each recommended path are shown in Table 3.
[0102] Table 3
[0103]
[0104] As shown in the table above, the server can determine the recommendation priority of each recommended path based on its corresponding travel time. For example, taking recommended path 1 as an example, the server obtains that the travel time required for recommended path 1 is 1 hour and 30 minutes. It is easy to see that the travel time required for recommended path 1 ranks third among the shortest travel times of the five recommended paths. Therefore, according to the principle of shortest time, the recommendation priority of recommended path 1 is level 3, and so on.
[0105] In one possible implementation, after obtaining the recommendation priority corresponding to each recommended path, the server obtains a recommendation priority dictionary for each path based on the recommendation priority of each path.
[0106] For example, the specific operation of the server setting the corresponding path recommendation priority according to the path recommendation order is as follows: set the path as key1 and the recommendation priority as value1, that is, {key1:value1}, and then combine them into a path recommendation priority dictionary. For example, taking the above 5 recommended paths as an example, the path recommendation priority dictionary is: [{recommended path 1:3}, {recommended path 2:1}, {recommended path 3:4}, {recommended path 4:2}, {recommended path 5:5}].
[0107] S3012: Determine the selection priority of each image acquisition device respectively based on the recommended priority of at least one path and the correspondence between the path and the image acquisition device.
[0108] Specifically, when performing step S3012, the server obtains the selection priority of each image acquisition device respectively based on the recommended priority of at least one path and the correspondence between the path and the image acquisition device. Further, if an image acquisition device is located on different paths, the highest path recommended priority is selected, and the selection priority of the image acquisition device is determined according to the path recommended priority.
[0109] For example, as shown in Table 4, the server determines the selection priority of each image acquisition device respectively based on the recommended priority of each path and the correspondence between the path and the image acquisition device. Figure 5 For example, as shown in Table 4, the server determines the selection priority of each image acquisition device respectively based on the recommended priority of each path and the correspondence between the path and the image acquisition device.
[0110] Table 4
[0111]
[0112] As can be seen from the above table, the server can determine the selection priority of each image acquisition device respectively based on the path recommended priority of the path where the image acquisition device is located and the correspondence between the path and the image acquisition device. For example, taking the image acquisition device B as an example, the image acquisition device B is deployed on the recommended path 3 and the recommended path 5, the recommended priority of the recommended path 3 is 4, and the recommended priority of the recommended path 5 is 2, so the maximum recommended priority of the recommended path where the image acquisition device B is located is 2, and the selection priority of the image acquisition device B can be determined as Ⅱ, and so on.
[0113] In one possible implementation, after obtaining the selection priority of each image acquisition device respectively, the server obtains the selection priority dictionary of the image acquisition device based on the selection priority of each image acquisition device and the number.
[0114] For example, the specific operation of the server setting the selection priority of the corresponding image acquisition device according to the path recommendation priority is as follows: set the image acquisition device as key2 and the selection priority as value2, that is, {key2:value2}, and then combine them to form the selection priority dictionary of the image acquisition device. For example, taking the five checkpoint devices deployed on the above five recommended paths as an example, the selection priority dictionary of the image acquisition device is: [{checkpoint device A: I}, {checkpoint device B: II}, {checkpoint device C: II}, {checkpoint device D: III}, {checkpoint device E: I}].
[0115] S302: Based on the selection priority of each of the at least two image acquisition devices, select two target image acquisition devices from the at least two image acquisition devices.
[0116] Specifically, when executing step S302, after obtaining the selection priority of each of the at least two image acquisition devices, the server selects the two image acquisition devices with the highest selection priority as the target image acquisition devices based on the size of the selection priority of each image acquisition device.
[0117] For example, taking the five checkpoint devices in Table 4 as an example, after the server obtains the selection priority of each checkpoint device, it sorts the five checkpoint devices according to the selection priority, selects the two checkpoint devices with the highest selection priority, namely checkpoint device A and checkpoint device E, and then uses checkpoint device A and checkpoint device E as target checkpoint devices.
[0118] Furthermore, based on the above method steps, after the server selects two target image acquisition devices and obtains their respective original images, refer to... Figure 6 As shown in the embodiment of this application, the method flow for obtaining corresponding candidate images for two target image acquisition devices is as follows: Specifically, the steps for obtaining a candidate image corresponding to one target image acquisition device are as follows:
[0119] S601: Obtain at least one original image of a target image acquisition device containing the same target object, and the image acquisition time corresponding to each of the at least one original image.
[0120] For details, please refer to Figure 7 As shown, when executing step S601, the server receives initial image archive data containing various original images of the same target object from the target image acquisition device, classifies the data by data category, and obtains the image acquisition time of the corresponding original image from the initial image archive data of the target image acquisition device.
[0121] S602: Determine the corresponding time arrangement order based on the image capture time corresponding to each of the original images.
[0122] Specifically, when performing step S602, the server sorts the original images according to the image capture time corresponding to each of the original images after obtaining the image capture time corresponding to each of the original images.
[0123] For example, still taking the 5 original images of the lens device A in Table 2, i.e., original image 1, original image 2, original image 3, original image 4, and original image 5, as an example, the server sorts the 5 original images based on the image capture time of the 5 original images, and the time arrangement order corresponding to the image capture time of the 5 original images is original image 2, original image 4, original image 1, original image 5, and original image 3.
[0124] S603: Select a candidate image from each of the original images based on the time arrangement order.
[0125] Specifically, referring to Figure 8 When performing step S603, the server selects the original image with the earliest image capture time from each of the original images after determining the corresponding time arrangement order and obtaining the time arrangement order of the image capture time corresponding to each of the original images.
[0126] For example, the server has obtained 5 original images of the same target object captured by the lens device A, and the time arrangement order corresponding to the image capture time of the 5 original images is original image 2, original image 4, original image 1, original image 5, and original image 3. It is easy to know that original image 2 is the original image that captures the target object first, and therefore original image 2 is the candidate image captured by the target image capture device.
[0127] Further, based on the above pre-operation processing, the server obtains two target image capture devices and their respective candidate images, referring to Figure 9 In the embodiments of the present application, the method for image aggregation of two candidate images of the same target object is as follows:
[0128] S901: Determine the corresponding capture time interval based on the image capture time corresponding to each of the two candidate images containing the same target object.
[0129] Specifically, when performing step S901, after the server obtains the two target image acquisition devices each corresponding to a candidate image, the server performs difference processing based on the image acquisition times of the two candidate images to obtain the acquisition time interval of the two candidate images collected by the two target image acquisition devices.
[0130] For example, the bayonet device A and the bayonet device E are taken as the target image acquisition devices, assuming that the image acquisition time of the candidate image A of the bayonet device A is , and the image acquisition time of the candidate image E of the bayonet device E is , then the acquisition time interval of the two candidate images is . , wherein the image acquisition time is later than the image acquisition time .
[0131] S902: Based on the position information corresponding to the two target image acquisition devices respectively, the position interval between the two target image acquisition devices is determined.
[0132] Specifically, when performing step S902, after the server determines the corresponding acquisition time interval and the candidate images corresponding to the two target image acquisition devices respectively, the server performs distance calculation based on the position information of the two target image acquisition devices to obtain the position interval between the two target image acquisition devices.
[0133] For example, the bayonet device A and the bayonet device E are taken as the target image acquisition devices, and according to Table 1, the latitude and longitude coordinates of the bayonet device A (Cd.Y.A, Cd.X.A) and the latitude and longitude coordinates of the bayonet device E (Cd.Y.E, Cd.X.E), the server processes the latitude and longitude coordinates corresponding to the bayonet device A and the bayonet device E respectively according to the following rules: taking 0-degree meridian as the reference, taking longitude east as positive value, taking longitude west as negative value, taking 90- latitude as value for latitude north, and taking 90+ latitude as value for latitude south, then the latitude and longitude coordinates of the two bayonet devices after the above processing are recorded as (MLonA, MLatA) and (MLonE, MLatE) respectively. The position interval between the bayonet device A and the bayonet device E is obtained by using the latitude and longitude distance calculation formula, and the latitude and longitude distance calculation formula is as follows:
[0134]
[0135]
[0136] , wherein is the included angle of two vectors with the center of the earth as the starting point and the bayonet device A and the bayonet device E as the terminal point; R is the average radius of the earth; and D is the position interval between the bayonet device A and the bayonet device E.
[0137] S903: determining a displacement time interval of the target object based on the position interval and a preset object moving speed range.
[0138] Specifically, in the step S903, the server first obtains the preset object moving speed range after determining the position interval between the two target image acquisition devices; wherein, the object moving speed range includes a maximum object moving speed and a minimum object moving speed; then, based on the minimum object moving speed and the position interval, the maximum moving time of the target object is obtained, and based on the maximum object moving speed and the position interval, the minimum moving time of the target object is obtained; finally, based on the maximum moving time and the minimum moving time, the displacement time interval of the target object is obtained.
[0139] For example, the server obtains the preset object moving speed range, wherein the minimum object moving speed, i.e. the walking speed, is generally 5 kilometers per hour, and the maximum object moving speed, i.e. the general speed limit of urban roads, is 60 kilometers per hour. The server obtains the displacement time interval of the target object from the detection range of the card hole device A to the detection range of the card hole device E based on the latitude and longitude distance calculation formula, the latitude and longitude coordinates of the card hole device A and the latitude and longitude coordinates of the card hole device E, and the object moving speed range.
[0140] For example, the server obtains the position interval between the card hole device A and the card hole device E by the latitude and longitude distance calculation formula 30 kilometers, and the maximum moving time and the minimum moving time of the target object can be obtained by the following formula:
[0141]
[0142]
[0143] wherein, represents the maximum moving time of the target object; represents the minimum moving time of the target object; represents the minimum object moving speed; represents the maximum object moving speed.
[0144] Therefore, the server can know by calculation that the maximum moving time of the target object from the card hole device A to the card hole device E is 6 hours, and the minimum moving time is 0.5 hours.
[0145] Further, the server can obtain the maximum moving time and the minimum moving time The displacement time interval of the target object moving from the card equipment A to the card equipment E can be obtained, that is, [0.5, 6], unit: hour.
[0146] S904: Clustering the two candidate images when determining that the collection time interval belongs to the displacement time interval.
[0147] Specifically, referring to Figure 10 When performing step S904, the server determines the displacement time interval of the target object, and then determines whether the two candidate images need to be clustered based on the collection time interval of the two candidate images and the time interval to which the collection time interval belongs. If the collection time interval is not less than the minimum moving time and not greater than the maximum moving time, the two candidate images are clustered; if the collection time interval is less than the minimum moving time or greater than the maximum moving time, the two candidate images are not clustered.
[0148] For example, still taking the card equipment A and the card equipment E as an example, if the card equipment A and the card equipment E obtain the collection time interval of the corresponding candidate images 0.2 hours, it is easy to know that 0.2 is less than the minimum moving time 0.5 hours of the target object from the card equipment A to the card equipment E, and a space-time contradiction occurs, so the two candidate images are not clustered; if the collection time interval 3.5 hours, it is easy to know that 3.5 is greater than the minimum moving time 0.5 hours and less than the maximum moving time 6 hours, so the two candidate images are clustered; if the collection time interval 10 hours, it is easy to know that 10 is greater than the maximum moving time 6 hours, so the two candidate images are not clustered.
[0149] Further, when determining that the collection time interval belongs to the displacement time interval, the server clusters the two candidate images, referring to Figure 11 As shown in the figure, the specific steps are as follows:
[0150] S9041: Obtaining the image feature value corresponding to each of the two candidate images.
[0151] Specifically, when performing step S9041, the server receives the image initial clustering data of the candidate images corresponding to each of the two target image collection devices, classifies according to the data category, and obtains the image feature value of the corresponding candidate image from the two image initial clustering data, wherein the image feature value is used to represent the target object.
[0152] For example, after acquiring candidate images of checkpoint device A and checkpoint device E, the server obtains the corresponding image feature values for each candidate image from the initial image archive data of the two candidate images, based on the data type of the image feature values. For instance, the server obtains the image feature value of the candidate image of the target object captured by checkpoint device A, i.e., image feature value .A, and the image feature value of the candidate image of the target object captured by checkpoint device E, i.e., image feature value .E.
[0153] S9042: Determine the similarity of the target objects in the two candidate images based on the image feature values corresponding to each of the two candidate images.
[0154] Specifically, in step S9042, after obtaining the image feature values corresponding to each of the two candidate images, the server performs a similarity comparison based on the image feature values of the two candidate images to obtain the similarity of the target objects in the two candidate images. For example, the server obtains image feature value A and image feature value E, and after the similarity comparison, it finds that the similarity of the target objects in the two candidate images is 95%.
[0155] S9043: When the similarity reaches the set similarity threshold, the two candidate images are clustered.
[0156] For details, please refer to Figure 12 As shown, when executing step S9043, after the server determines the similarity of the target objects in the two candidate images based on the image feature values of the two candidate images, it determines whether to cluster the two candidate images by combining the relationship between the similarity of the target objects and the similarity threshold.
[0157] Optionally, if the similarity between the target objects is greater than or equal to the similarity threshold, the two candidate images are clustered; if the similarity between the target objects is less than the similarity threshold, the two candidate images are not clustered.
[0158] For example, assuming a similarity threshold of 90%, and still taking image feature value A and image feature value E as examples, if the similarity of the target objects in image feature value A and image feature value E is 92%, which is greater than the similarity threshold, then the two candidate images can be clustered; if the similarity of the target objects in image feature value A and image feature value E is 87%, which is less than the similarity threshold, then the two candidate images cannot be clustered.
[0159] In a possible implementation, the similarity threshold can vary according to different recommended priorities of the path. For example, the higher the recommended priority of the path, the lower the similarity threshold; and the lower the recommended priority of the path, the higher the similarity threshold. For example, if the recommended priority of the path is level 1, the similarity threshold is 85%; and if the recommended priority of the path is level 5, the similarity threshold is 95%.
[0160] Further, based on the above method steps, when the server determines that the collection time interval belongs to the displacement duration interval, the server combines the similarity threshold, clusters the two candidate images, and then refers to FIG. 7. Figure 13 As shown in FIG. 7, in the embodiment of the present application, the server clusters each original image obtained by the target image collection device and does not include the candidate image, and the candidate image obtained by another target image collection device, and the method flow is as follows:
[0161] S1301: Obtain image feature values corresponding to at least one original image that does not include a corresponding candidate image in an image collection device corresponding to a candidate image.
[0162] Specifically, when step S1301 is performed, the server receives image initial clustering data from each original image corresponding to the target image collection device and does not include the candidate image, classifies the data according to the data category, and obtains the image feature values of the corresponding original image from the image initial clustering data of each original image, wherein the image feature values are used to represent the target object.
[0163] For example, taking the lens device A as an example, as shown in Table 3, the original image 2 is the candidate image, and the server obtains the corresponding image feature values according to the image initial clustering data of the original image 1, the original image 3, the original image 4, and the original image 5, respectively, and each original image and the corresponding image feature values are shown in Table 5:
[0164] Table 5
[0165]
[0166] As shown in the above table, the server can obtain the image feature values of the corresponding original image from the image initial clustering data of each original image of the lens device A. For example, taking the original image 1 as an example, the server obtains the image initial clustering data in the original image 1, obtains the corresponding image feature values from the image initial clustering data according to the data type of the image feature values, that is, the image feature value A.1.
[0167] S1302: Determine the similarity of the target object in the corresponding original image and another candidate image, respectively.
[0168] Specifically, when executing step S1302, after obtaining the image feature values corresponding to at least one original image, the server performs a similarity comparison based on the image feature values corresponding to each original image that does not contain a candidate image, and the image feature value of another candidate image, and then determines the similarity between the target object in the corresponding original image and the other candidate image.
[0169] For example, taking checkpoint device A as an example, the similarity between the target object in each original image (excluding candidate images) and another candidate image is shown in Table 6:
[0170] Table 6
[0171]
[0172] As shown in the table above, the server can determine the similarity between the target object in each original image and another candidate image based on the image feature values of each original image (excluding candidate images) obtained by the checkpoint device, and the image feature values of another candidate image. For example, taking original image 1 as an example, the server compares the similarity between the image feature values of original image 1 and the image feature values of the candidate image from checkpoint device E, and finds that the similarity between the target object in original image 1 and the candidate image from checkpoint device E is 89%, and so on.
[0173] S1303: When it is determined that the similarity between at least one original image (excluding the corresponding candidate image) and the target object in another candidate image is not less than the similarity threshold, the corresponding original image and the other candidate image are clustered respectively.
[0174] For details, please refer to Figure 14 As shown, when executing step S1303, after the server determines the similarity between the target objects in the corresponding original image and another candidate image, it determines the similarity between the target objects in the corresponding original image and another candidate image based on the image feature values of each original image that does not contain the candidate image obtained by one target image acquisition device and the image feature values of another candidate image obtained by another target image acquisition device. Then, it determines whether to cluster each original image that does not contain the candidate image with another candidate image by combining the relationship between the similarity of the target objects and the similarity threshold.
[0175] Optionally, if the similarity of the target objects is greater than or equal to the similarity threshold, the original image that does not contain the candidate image will be clustered with another candidate image; if the similarity of the target objects is less than the similarity threshold, the original image that does not contain the candidate image will not be clustered with another candidate image.
[0176] For example, the selection priority of the camera equipment A is level I, the highest recommended priority of the corresponding path is level 1, and the similarity threshold can be determined as 90%. As shown in Table 6, the similarity between the original image 1, the original image 3, the original image 5 and the candidate image of the camera equipment E is greater than the similarity threshold, and the original image 1, the original image 3 and the original image 5 can be clustered with the candidate image of the camera equipment E respectively. The similarity between the original image 4 and the candidate image of the camera equipment E is less than the similarity threshold, and the original image 4 is not clustered with the candidate image of the camera equipment E.
[0177] The image clustering method provided by the embodiment of the present application determines the displacement time interval of the target object based on the acquisition time interval between the two candidate images containing the same target object and the position interval between the two target image acquisition devices, and combines the preset object moving speed range, so that it is determined whether the acquisition time interval belongs to the displacement time interval, and the two candidate images are clustered. In this way, it is determined whether the acquisition time interval belongs to the displacement time interval, and then it is determined whether the two candidate images are clustered, which avoids that the similar images of different target objects with similar time and large geographical span are clustered into one cluster in the traditional way, and improves the accuracy of image clustering.
[0178] Based on the same technical concept, the embodiment of the present application also provides an image clustering device, which can implement the method flow of the embodiment of the present application.
[0179] Figure 15 An exemplary structure diagram of an image clustering device provided by the embodiment of the present application is shown. As shown in the figure, the image clustering device includes an acquisition module 1501, a processing module 1502 and a clustering module 1503. Figure 15
[0180] The acquisition module 1501 is configured to determine the corresponding acquisition time interval based on the image acquisition time corresponding to each of the two candidate images containing the same target object. The two candidate images are obtained by two target image acquisition devices respectively. The position interval between the two target image acquisition devices is determined based on the position information corresponding to each of the two target image acquisition devices.
[0181] The processing module 1502 is configured to determine the displacement time interval of the target object based on the position interval and the preset object moving speed range.
[0182] The clustering module 1503 is configured to cluster the two candidate images when it is determined that the acquisition time interval belongs to the displacement time interval.
[0183] In an alternative embodiment, before determining the corresponding acquisition time interval based on the image acquisition time corresponding to each of the two candidate images containing the same target object, the obtaining module 1501 is further configured to:
[0184] obtain the selection priority corresponding to each of the at least two image acquisition devices; wherein each image acquisition device obtains at least one original image containing the target object.
[0185] select two target image acquisition devices from the at least two image acquisition devices based on the selection priority corresponding to each of the at least two image acquisition devices.
[0186] In an alternative embodiment, when obtaining the selection priority corresponding to each of the at least two image acquisition devices, the obtaining module 1501 is specifically configured to:
[0187] obtain the recommended priority of at least one preset path; wherein each path includes at least two image acquisition devices.
[0188] determine the selection priority corresponding to each of the at least two image acquisition devices based on the recommended priority of the at least one path and the correspondence between the path and the image acquisition device.
[0189] In an alternative embodiment, before determining the corresponding acquisition time interval based on the image acquisition time corresponding to each of the two candidate images containing the same target object, the obtaining module 1501 is further configured to:
[0190] for each of the two target image acquisition devices, perform the following operations:
[0191] obtain at least one original image containing the same target object from one target image acquisition device, and the image acquisition time corresponding to each of the at least one original image.
[0192] determine the time arrangement order based on the image acquisition time corresponding to each of the at least one original image.
[0193] select a candidate image from each of the original images based on the time arrangement order.
[0194] In an alternative embodiment, when determining the displacement time interval of the target object based on the position interval and the preset object movement speed range, the processing module 1502 is specifically configured to:
[0195] obtain the preset object movement speed range; wherein the object movement range includes the maximum object movement speed and the minimum object movement speed;
[0196] obtain the maximum movement time of the target object based on the minimum object movement speed and the position interval.
[0197] obtain the minimum moving time length of the target object based on the maximum object moving speed and the position interval.
[0198] obtain the displacement time length interval of the target object based on the maximum moving time length and the minimum moving time length.
[0199] In an optional embodiment, when it is determined that the acquisition time interval belongs to the displacement time length interval, the clustering module 1503 is specifically configured to:
[0200] obtain image feature values corresponding to the two candidate images respectively, wherein the image feature values are used to represent the target object;
[0201] determine the similarity of the target object in the two candidate images based on the image feature values corresponding to the two candidate images respectively;
[0202] cluster the two candidate images when it is determined that the similarity reaches a set similarity threshold.
[0203] In an optional embodiment, after clustering the two candidate images when it is determined that the acquisition time interval belongs to the displacement time length interval, the clustering module 1503 is further configured to:
[0204] based on the two candidate images, respectively perform the following operations:
[0205] obtain image feature values corresponding to at least one original image not including the corresponding candidate image in the image acquisition device corresponding to one candidate image;
[0206] determine the similarity of the target object in the other candidate image with respect to each of the at least one original image not including the corresponding candidate image respectively;
[0207] cluster the other candidate image with respect to each of the at least one original image not including the corresponding candidate image respectively when it is determined that the similarity of the target object in the other candidate image with respect to each of the at least one original image not including the corresponding candidate image is not less than a similarity threshold.
[0208] Based on the same technical concept, the embodiments of the present application also provide an electronic device, which can implement the method processes provided by the above-mentioned embodiments of the present application. In an embodiment, the electronic device can be a server, a terminal device or other electronic device. Figure 16 An exemplary structure diagram of an electronic device provided by an embodiment of the present application is shown. As shown in the figure, Figure 16 The electronic device can include:
[0209] at least one processor 1601 and a memory 1602 connected to the at least one processor 1601, and the specific connection medium between the processor 1601 and the memory 1602 is not limited in the embodiments of the present application,Figure 16 The connection between the processor 1601 and the memory 1602 through the bus 1600 is taken as an example. The bus 1600 is represented by a thick line, and the connection between other components is only schematically illustrated and is not limited. The bus 1600 can be divided into an address bus, a data bus, a control bus and the like. For the convenience of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or only one type of bus. Alternatively, the processor 1601 can also be referred to as a controller, and the name is not limited. Figure 16 Figure 16 The connection between the processor 1601 and the memory 1602 through the bus 1600 is taken as an example. The bus 1600 is represented by a thick line, and the connection between other components is only schematically illustrated and is not limited. The bus 1600 can be divided into an address bus, a data bus, a control bus and the like. For the convenience of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or only one type of bus. Alternatively, the processor 1601 can also be referred to as a controller, and the name is not limited.
[0210] In the embodiment of the present application, the memory 1602 stores instructions executable by the at least one processor 1601, and the at least one processor 1601 can execute the foregoing image clustering method by executing the instructions stored in the memory 1602. The processor 1601 can realize the functions of various modules in the apparatus shown in the figure. Figure 15
[0211] The processor 1601 is the control center of the apparatus, and can connect all parts of the control device through various interfaces and lines. By running or executing the instructions stored in the memory 1602 and calling the data stored in the memory 1602, the processor 1601 can process data and realize various functions of the apparatus, thereby monitoring the apparatus as a whole.
[0212] In a possible design, the processor 1601 can include one or more processing units, and the processor 1601 can integrate an application processor and a modem processor. The application processor mainly processes the operating system, user interface, application programs and the like, and the modem processor mainly processes wireless communication. It can be understood that the foregoing modem processor can also not be integrated into the processor 1601. In some embodiments, the processor 1601 and the memory 1602 can be implemented on the same chip, and in some embodiments, they can also be implemented on separate chips respectively.
[0213] The processor 1601 can be a general-purpose processor, for example, a CPU (CPU), a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, and can realize or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the image clustering method disclosed in the embodiments of the present application can be directly embodied by a hardware processor for execution, or executed by a combination of hardware and software modules in the processor.
[0214] The memory 1602, as a non-volatile computer readable storage medium, can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory 1602 can include at least one type of storage medium, for example, can include flash memory, hard disk, multimedia card, card type memory, random access memory (RAM), static random access memory (SRAM), programmable read-only memory (PROM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), magnetic storage, magnetic disk, optical disk, etc. The memory 1602 is any other medium capable of carrying or storing desired program code in the form of instructions or data structures and capable of being accessed by a computer, but is not limited thereto. The memory 1602 in the embodiments of the present application can also be a circuit or any other device capable of realizing a storage function, used for storing program instructions and / or data.
[0215] By designing and programming the processor 1601, the code corresponding to the image clustering method introduced in the foregoing embodiments can be fixed in the chip, so that the chip can execute the steps of the image clustering method of the embodiments shown in the running time. Figure 9 How to design and program the processor 1601 is a technology known to those skilled in the art, and will not be described here.
[0216] Based on the same inventive concept, the embodiments of the present application also provide a storage medium storing computer instructions, when the computer instructions run on a computer, the computer instructions make the computer execute the image clustering method discussed above.
[0217] In some possible implementations, the present application provides various aspects of an image clustering method can also be implemented in the form of a program product, which includes program code, when the program product runs on the device, the program code is used to make the control device execute the steps in the image clustering method according to various exemplary embodiments of the present application described above in the specification.
[0218] Those skilled in the art will appreciate that embodiments of the present application can be readily used as software, hardware, or a combination of software and hardware. In one
[0219] The present application is described in reference to the flowchart illustrations and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart Figure 1 one or more functions specified in the flowchart block or blocks. Figure 1 one or more functions specified in the flowchart block or blocks.
[0220] These computer program instructions can also be stored in a computer- readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instructions which implement the function specified in the flowchart block or blocks. Figure 1 one or more functions specified in the flowchart block or blocks. Figure 1 one or more functions specified in the flowchart block or blocks.
[0221] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 one or more functions specified in the flowchart block or blocks. Figure 1 one or more functions specified in the flowchart block or blocks.
[0222] Obviously, numerous modifications and variations of the present application are possible in light of the above teachings. It is therefore to be understood that within the scope of the apparatus and methods disclosed herein, equivalents and substitutions thereof could be made by one of ordinary skill in the art without departing from the spirit and scope of the disclosure. Any and all such modifications and variations are intended to be included herein within the scope of the present application and expressed as a part thereof.
Claims
1. A method of image filing, characterized by, The method comprises the following steps: determining a corresponding acquisition time interval based on the image acquisition times corresponding to the two candidate images containing the same target object; wherein the two candidate images are obtained by two target image acquisition devices respectively; determining a position interval between the two target image acquisition devices based on the position information corresponding to the two target image acquisition devices respectively; determining a displacement time interval of the target object based on the position interval and a preset object movement speed range; clustering the two candidate images when it is determined that the acquisition time interval belongs to the displacement time interval; before the step of determining the acquisition time interval based on the image acquisition times corresponding to the two candidate images containing the same target object, the method further comprises the following steps: obtaining selection priorities corresponding to the at least two image acquisition devices respectively; wherein each image acquisition device obtains at least one original image containing the target object; selecting two target image acquisition devices from the at least two image acquisition devices based on the selection priorities corresponding to the at least two image acquisition devices respectively; the step of obtaining selection priorities corresponding to the at least two image acquisition devices respectively comprises the following steps: obtaining a recommended priority of at least one preset path; wherein each path comprises the at least two image acquisition devices; determining the selection priorities corresponding to the at least two image acquisition devices respectively based on the recommended priority of the at least one path and the correspondence between the path and the image acquisition device; the step of clustering the two candidate images when it is determined that the acquisition time interval belongs to the displacement time interval comprises the following steps: obtaining image feature values corresponding to the two candidate images respectively; wherein the image feature values are used to represent the target object; determining the similarity of the target object in the two candidate images based on the image feature values corresponding to the two candidate images respectively; clustering the two candidate images when it is determined that the similarity reaches a set similarity threshold; the similarity threshold changes according to the difference in the recommended priority of the path; the higher the recommended priority of the path is, the lower the similarity threshold is; the lower the recommended priority of the path is, the higher the similarity threshold is; after the step of clustering the two candidate images when it is determined that the acquisition time interval belongs to the displacement time interval, the method further comprises the following steps: based on the two candidate images, the following operations are performed respectively: obtaining image feature values corresponding to at least one original image which does not include the corresponding candidate image in the image acquisition device corresponding to one candidate image; determining the similarity of the target object in the corresponding original image and another candidate image respectively; clustering the corresponding original image and the another candidate image respectively when it is determined that the similarity of the target object in the at least one original image which does not include the corresponding candidate image and the another candidate image is not less than the similarity threshold.
2. The method of claim 1, wherein, before the step of determining the acquisition time interval based on the image acquisition times corresponding to the two candidate images containing the same target object, the method further comprises the following steps: The following operations are performed for the two target image acquisition devices: Obtain at least one original image containing the same target object from a target image acquisition device, and the image acquisition time corresponding to each of the at least one original image; Determine the corresponding time arrangement order based on the image acquisition time corresponding to each of the at least one original image; Select a candidate image from the original images based on the time arrangement order.
3. The method of claim 1, wherein, The determination of the displacement time interval of the target object based on the position interval and the preset object movement speed range includes: Obtain a preset object movement speed range; wherein the object movement range includes a maximum object movement speed and a minimum object movement speed; Determine the maximum movement time of the target object based on the minimum object movement speed and the position interval; Determine the minimum movement time of the target object based on the maximum object movement speed and the position interval; Determine the displacement time interval of the target object based on the maximum movement time and the minimum movement time.
4. An image filing apparatus characterized by comprising: It includes: An acquisition module is configured to determine the corresponding acquisition time interval based on the image acquisition time corresponding to each of the two candidate images containing the same target object; wherein the two candidate images are obtained by two target image acquisition devices; and determine the position interval between the two target image acquisition devices based on the position information corresponding to each of the two target image acquisition devices; A processing module is configured to determine the displacement time interval of the target object based on the position interval and the preset object movement speed range; A clustering module is configured to cluster the two candidate images when it is determined that the acquisition time interval belongs to the displacement time interval. Before determining the corresponding acquisition time interval based on the image acquisition time corresponding to each of the two candidate images containing the same target object, the acquisition module is further configured to: Obtain the selection priority corresponding to each of the at least two image acquisition devices; wherein each image acquisition device obtains at least one original image containing the target object; Select two target image acquisition devices from the at least two image acquisition devices based on the selection priority corresponding to each of the at least two image acquisition devices; When obtaining the selection priority corresponding to each of the at least two image acquisition devices, the acquisition module is specifically configured to: Obtain the recommended priority of at least one preset path; wherein each path includes the at least two image acquisition devices; Determine the selection priority corresponding to each of the at least two image acquisition devices based on the recommended priority of the at least one path and the correspondence between the path and the image acquisition device; When it is determined that the acquisition time interval belongs to the displacement time interval, the clustering module is specifically configured to: Obtain the image feature value corresponding to each of the two candidate images; wherein the image feature value is used to represent the target object; Determine the similarity of the target object in the two candidate images based on the image feature value corresponding to each of the two candidate images; cluster the two candidate images when it is determined that the similarity reaches a set similarity threshold; the similarity threshold changes according to different recommendation priorities of the path; the higher the recommendation priority of the path, the lower the similarity threshold; the lower the recommendation priority of the path, the higher the similarity threshold; when it is determined that the time interval belongs to the displacement time length interval, the clustering module is further configured to: based on the two candidate images, respectively perform the following operations: obtain image feature values corresponding to at least one original image not including the corresponding candidate image in the image acquisition device corresponding to one candidate image; respectively determine the similarity of the target object in the corresponding original image and another candidate image; when it is determined that the similarity of the at least one original image not including the corresponding candidate image and the target object in the another candidate image is not less than the similarity threshold, respectively cluster the corresponding original image and the another candidate image.
5. The apparatus of claim 4, wherein, before the acquisition module determines the corresponding time interval based on the image acquisition time corresponding to the two candidate images containing the same target object, the acquisition module is further configured to: for the two target image acquisition devices, respectively perform the following operations: obtain at least one original image containing the same target object in one target image acquisition device, and image acquisition time corresponding to the at least one original image; determine the time arrangement order based on the image acquisition time corresponding to the at least one original image; based on the time arrangement order, select a candidate image from the original images.
6. The apparatus of claim 4, wherein, when the processing module determines the displacement time length interval of the target object based on the position interval and the preset object moving speed range, the processing module is specifically configured to: obtain a preset object moving speed range; wherein the object moving range includes a maximum object moving speed and a minimum object moving speed; based on the minimum object moving speed and the position interval, obtain the maximum moving time length of the target object; based on the maximum object moving speed and the position interval, obtain the minimum moving time length of the target object; based on the maximum moving time length and the minimum moving time length, obtain the displacement time length interval of the target object.
7. An electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor executes the computer program to realize the method of any one of claims 1-3.
8. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to realize the steps of the method of any one of claims 1-3.
9. A computer program product, characterised in that, The computer program product, when invoked by a computer, causes the computer to perform the method of any one of claims 1-3.
Citation Information
Patent Citations
Clustering processing method and device, storage medium and electronic device
CN110969215A
Intelligent suspect tracking method and system and computer readable storage medium
CN111935450A
Track analysis method and device, storage medium and system
CN113344124A