Target point cloud clustering method, device, electronic device and storage medium

By associating the target point cloud with the confirmation trajectory in the millimeter-wave traffic radar algorithm and adjusting the clustering threshold value according to the heading angle and maximum size, the target splitting problem in the clustering stage is solved, improving the accuracy and robustness of clustering.

CN117152477BActive Publication Date: 2025-04-25CHANGSHA FALCON EYE SOFTWARE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311288339.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-10-07
Publication Date
2025-04-25
Estimated Expiration
2043-10-07

AI Technical Summary

Technical Problem

Millimeter-wave traffic radar algorithms are prone to target splitting problems during the clustering stage, especially when the target drives horizontally, turns or turns, which leads to traffic flow statistics errors and the accuracy of traffic management services.

Method used

By performing association operations on the currently acquired target point cloud collection with the historical confirmation trajectory, the successfully associated target point cloud performs clustering operations, and adjusts the clustering threshold value based on the heading angle and maximum size obtained by the confirmed track to ensure the accuracy of the clustering results.

Benefits of technology

It effectively avoids target splitting, improves the accuracy of target recognition and tracking, makes the clustering results more in line with the characteristics of the actual target, and enhances the robustness and accuracy of clustering.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117152477B_ABST
    Figure CN117152477B_ABST
Patent Text Reader

Abstract

The present application provides a target point cloud clustering method, device, electronic device and storage medium, which performs an association operation on the currently acquired target point cloud set and the historical confirmed track; performs a clustering operation on the successfully associated target point cloud, and adjusts the clustering threshold value according to the heading angle and maximum size obtained from the confirmed track, wherein the heading angle is used to provide the deflection information of the target in the lateral direction, and the maximum size is used to estimate the size of the target in the longitudinal direction; based on the result of the clustering operation, the confirmed track is updated to ensure that the updated confirmed track and the target's motion track are consistent. The present application can solve the problem of target splitting and improve the effect of target recognition and tracking.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of radar technology, and in particular to a target point cloud clustering method, device, electronic device and storage medium. Background Art

[0002] Millimeter wave traffic radar uses high-frequency electromagnetic waves to monitor the number, speed and flow of vehicles on the road to provide data support for traffic management and road planning. Its advantages are that it can achieve high ranging accuracy and detection capabilities, helping decision makers to formulate traffic optimization strategies, reduce congestion and improve traffic mobility.

[0003] At present, the millimeter wave traffic radar algorithm generally includes the following steps: first, cluster the detection points, and the commonly used clustering algorithms are DBSCAN or K-means; then input the clustering results into the tracking management module to obtain the tracking results of the target. For small targets traveling radially (such as cars, non-motor vehicles, pedestrians, etc.), clustering algorithms using fixed thresholds or grouping thresholds usually do not have the problem of target splitting. However, when the target is traveling laterally (such as intersection scenes), turning or turning around, clustering algorithms using fixed thresholds or grouping thresholds are prone to target splitting problems, especially for targets such as large vehicles. Target splitting can lead to incorrect statistics of traffic flow, or affect the accuracy of traffic management services developed based on radar data, and thus affect decision makers' formulation of traffic optimization strategies. Summary of the invention

[0004] The present application provides a target point cloud clustering method, device, electronic device and storage medium to solve the problem of target splitting that may occur in the clustering stage of the current millimeter wave traffic radar algorithm in the related art.

[0005] In a first aspect, the present application provides a target point cloud clustering method, the method comprising:

[0006] Perform an association operation on the currently acquired target point cloud set and the historical confirmed trajectory;

[0007] Performing a clustering operation on the successfully associated target point cloud, and adjusting a clustering threshold value according to a heading angle and a maximum size obtained from the confirmed track, wherein the heading angle is used to provide deflection information of the target in a lateral direction, and the maximum size is used to estimate the size of the target in a longitudinal direction;

[0008] The confirmed track is updated based on the result of the clustering operation to ensure that the updated confirmed track is consistent with the motion track of the target.

[0009] In some embodiments of the present application, the step of associating the currently acquired target point cloud set with the historical confirmation trajectory includes:

[0010] Performing a global nearest neighbor association algorithm operation on the target point cloud set and the confirmed trajectory to calculate the distance between each target point cloud and all confirmed trajectories and finding the best matching track according to the size of the distance;

[0011] When the target point cloud and its best matching track meet the preset conditions, it means the match is successful, the target point cloud is associated with its best matching track as the confirmed track, and the association relationship is recorded in the point track association list;

[0012] The point track association list is a data structure for storing the association relationship between the target point cloud and the confirmed track, which includes the ID of the target point cloud and the ID of the confirmed track, and its size represents the number of successfully associated target point clouds and confirmed tracks.

[0013] In some embodiments of the present application, the step of performing a clustering operation on the successfully associated target point cloud and adjusting the clustering threshold value according to the heading angle and the maximum size obtained from the confirmed track includes:

[0014] Performing a clustering operation according to the ID of the target point cloud in the point track association list as the starting point of clustering, and obtaining the heading angle and the maximum size through the ID of the confirmed track;

[0015] If the absolute value of the heading angle is less than the first preset value or greater than the second preset value, the clustering threshold is adjusted according to the heading angle and the maximum size; otherwise, the point track association list is traversed to complete the clustering of all target point clouds associated with the confirmed tracks;

[0016] Wherein, the second preset value is greater than the first preset value.

[0017] In some embodiments of the present application, the step of adjusting the clustering threshold value according to the heading angle and the maximum size obtained from the confirmed track includes:

[0018] estimating the width and length of the current target according to the heading angle and the maximum size;

[0019] The clustering threshold is adjusted according to the estimated width and height, wherein the clustering threshold includes a first clustering threshold and a second clustering threshold, wherein the first clustering threshold represents a lateral distance threshold between clustering points, and the second clustering threshold represents a longitudinal distance threshold between clustering points.

[0020] In some embodiments of the present application, the calculation formula for estimating the width and length of the current target based on the heading angle and the maximum size is as follows:

[0021] wide=KSIZE*fabs(cos(courseAngle));

[0022] length=KSIZE*fabs(sin(courseAngle));

[0023] Among them, wide represents the width of the target in the horizontal direction, length represents the length of the target in the vertical direction, KSIZE represents the maximum size of the target, fabs() represents the absolute value, and courseAngle represents the heading angle.

[0024] In some embodiments of the present application, the calculation formula for adjusting the clustering threshold value according to the estimated width and height is as follows:

[0025]

[0026]

[0027] The adjusted clustering threshold value includes a horizontal distance threshold value and a vertical distance threshold value, wherein the horizontal distance threshold value = xThr+xThrExt, and the vertical distance threshold value = yThr+yThrExt;

[0028] Wherein, xThr represents the first clustering threshold value, yThr represents the second clustering threshold value, xThrExt represents the first adjustment value, and yThrExt represents the second adjustment value.

[0029] In some embodiments of the present application, the calculation formula of the heading angle is:

[0030] couseAngle=atan2(vy,vx);

[0031] Among them, couseAngle represents the heading angle, atan2 represents the calculation of the inverse tangent function, vy represents the longitudinal velocity of the target, vx represents the lateral velocity of the target, and the value range of couseAngle is (-π, π].

[0032] In some embodiments of the present application, the maximum size is calculated as follows:

[0033] XSIZE=(1-α)*XSIZE+α*Xsize;

[0034] YSIZE=(1-α)*YSIZE+α*Ysize;

[0035] Ksize = Max(Xsize, Ysize);

[0036] KSIZE=(1-β)*KSIZE+β*Ksize;

[0037] Among them, XSIZE represents the lateral size of the target, YSIZE represents the longitudinal size of the target, KSIZE represents the maximum size of the target, Xsize represents the lateral size of each cluster after the target point cloud is clustered, Ysize represents the longitudinal size of each cluster after the target point cloud is clustered, Ksize represents the maximum size of each cluster after the target point cloud is clustered, and α and β both represent filter coefficients.

[0038] In some embodiments of the present application, the method further includes:

[0039] The clustering operation is performed again on the remaining unclustered target point clouds to achieve temporary track association or create a new track.

[0040] In a second aspect, the present application further provides a target point cloud clustering device, the device comprising:

[0041] An association module is used to associate the currently acquired target point cloud set with the historical confirmed trajectory;

[0042] A clustering adjustment module, used to perform a clustering operation on the successfully associated target point cloud, and adjust a clustering threshold value according to a heading angle and a maximum size obtained from the confirmed track, wherein the heading angle is used to provide deflection information of the target in a lateral direction, and the maximum size is used to estimate the size of the target in a longitudinal direction;

[0043] An updating module is used to update the confirmed track based on the result of the clustering operation to ensure that the updated confirmed track is consistent with the motion track of the target.

[0044] In a third aspect, the present application also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the steps of the target point cloud clustering method described in the first aspect are implemented.

[0045] In a fourth aspect, the present application further provides a non-transitory computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the steps of the target point cloud clustering method as described in any one of the first aspects are implemented.

[0046] The target point cloud clustering method, device, electronic device and storage medium provided by the present application firstly perform an association operation, that is, by associating the currently acquired target point cloud set with the previously established confirmation trajectory, the relevant point clouds and trajectories can be matched and an association relationship between them can be established; secondly, a clustering operation is performed on the successfully associated target point clouds, that is, by clustering the successfully associated target point clouds, adjacent point clouds with similar features can be classified into the same category to form clusters; finally, the clustering threshold value is adjusted according to the clustering result, that is, the clustering threshold value is adjusted according to the clustering result to better adapt to targets of different sizes and shapes.

[0047] It can be seen that the present application can more accurately classify the point clouds of the same target into the same cluster through association operation and clustering operation for successfully associated target point clouds to avoid the target splitting phenomenon. At the same time, by adjusting the clustering threshold value, it can adapt to the shapes and sizes of different targets, enhance the robustness and accuracy of clustering, and also improve the effect of target recognition and tracking, so that the clustering result is more in line with the characteristics of the actual target. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] In order to more clearly illustrate the technical solutions in the present application or the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0049] Figure 1 It is a flowchart of the target point cloud clustering method provided in this application;

[0050] Figure 2A is a schematic diagram of a vehicle traveling laterally provided in an embodiment of the present application;

[0051] Figure 2B yes Figure 2A Schematic diagram of the corresponding dimensions;

[0052] Figure 3A is a schematic diagram of a vehicle traveling longitudinally provided in an embodiment of the present application;

[0053] Figure 3B yes Figure 3A Schematic diagram of the corresponding dimensions;

[0054] Figure 4 is a schematic diagram of clusters after point cloud clustering provided in an embodiment of the present application;

[0055] Figure 5 is a schematic diagram of a heading angle provided in an embodiment of the present application;

[0056] Figure 6 It is a structural schematic diagram of the target point cloud clustering device provided in this application. DETAILED DESCRIPTION

[0057] In order to make the purpose, technical solutions and advantages of this application clearer, the technical solutions in this application will be clearly and completely described below in conjunction with the drawings in this application. Obviously, the described embodiments are part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0058] The terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchanged where appropriate, so that the embodiments described herein can be implemented in an order other than that illustrated or described herein.

[0059] The target splitting problem refers to the situation that clustering algorithms using fixed thresholds or grouping thresholds in millimeter-wave traffic radar algorithms are prone to when the target is traveling sideways, turning, or making a U-turn. Specifically, during the detection and tracking process, a target may be incorrectly split into two or more targets. This may lead to errors in the statistics of traffic flow, or affect the business developed based on radar data, and ultimately affect decision makers' formulation of traffic optimization strategies.

[0060] In other words, the reason for the splitting of large targets is that, for example, when the large targets are turning or making a U-turn, the distribution of the point cloud is not concentrated, which easily forms multiple clustering results, resulting in multiple tracks, that is, target splitting.

[0061] Moreover, the target splitting problem is very important for traffic management and road planning, because correctly and accurately identifying and tracking targets is crucial to accurately calculate the number of vehicles, speed and flow. Solving the target splitting problem can improve the accuracy and reliability of millimeter-wave traffic radar.

[0062] In order to solve the problem of target splitting that may occur in the clustering stage of the current millimeter-wave traffic radar algorithm in the related art, the present application provides a target point cloud clustering method, device, electronic device and storage medium. The method can effectively solve the problem of target splitting that may occur in the clustering stage. Specifically, through association operations and clustering operations on successfully associated target point clouds, the point clouds of the same target can be more accurately classified into the same cluster group to avoid the phenomenon of target splitting. At the same time, by adjusting the clustering threshold value, it can adapt to the shapes and sizes of different targets and enhance the robustness and accuracy of clustering. These measures can improve the effect of target recognition and tracking, so that the clustering results are more in line with the characteristics of the actual target.

[0063] Combine the following Figure 1-Figure 6 The present invention describes a target point cloud clustering method, device, electronic device and storage medium.

[0064] Please refer to Figure 1 , Figure 1 : is a flow chart of a target point cloud clustering method provided in this application. A target point cloud clustering method, the method comprising:

[0065] Step 101 : performing an association operation on the currently acquired target point cloud set and the historical confirmed trajectory.

[0066] For example, target point cloud data refers to a set of point cloud collections associated with a target. In target tracking or 3D perception tasks, the target point cloud collection may be point cloud information on the surface of a target object acquired by a laser radar or other sensor. The point cloud information may include information such as the geometric shape, position, and motion state of the target.

[0067] For example, the historical confirmed trajectory refers to the target motion trajectory that has been confirmed and tracked in the past. In target tracking or object recognition tasks, the system tracks the motion trajectory of the object through continuous observation data and processing algorithms. Each successful tracking of the target will generate a new trajectory segment. The historical confirmed trajectory contains information such as the target position, speed, acceleration, etc. recorded in the past period of time, as well as the predicted future motion state of the target.

[0068] For example, the association operation refers to matching different data or information to establish an association relationship between them in target tracking or related tasks. The association operation can be used to match the target point cloud and the track. Through the association operation, the related target point cloud data can be linked and further analyzed, processed and decided.

[0069] Therefore, by performing an association operation, the target point cloud can be associated with the historical confirmed trajectory, so that the current target point cloud is matched with the previously tracked confirmed trajectory, which enables the system to maintain continuous tracking of the target.

[0070] Step 102, performing a clustering operation on the successfully associated target point cloud, and adjusting the clustering threshold value according to the heading angle and the maximum size obtained from the confirmed track, wherein the heading angle is used to provide the deflection information of the target in the lateral direction, and the maximum size is used to estimate the size of the target in the longitudinal direction.

[0071] That is, after the target point cloud and the confirmed track are successfully associated, when the clustering operation is performed on these associated target point clouds, the clustering threshold value can be adjusted according to the heading angle and the maximum size extracted from the confirmed track.

[0072] The heading angle is used to provide the deflection information of the target in the lateral direction. By analyzing the heading angle of the target, the lateral movement trend and turning behavior of the target can be inferred. The maximum size is used to estimate the size of the target in the longitudinal direction, that is, the space occupied by the target in the vertical direction.

[0073] By using the heading angle and maximum size extracted from the confirmation track, the clustering threshold value can be adjusted as a whole, that is, the condition for determining whether two point clouds belong to the same cluster. For example, if the heading angle extracted from the confirmation track is large, it means that the target has a large lateral deflection. At this time, the clustering threshold value can be adjusted to a larger value so that more point clouds can be classified into the same cluster. If the maximum size extracted from the confirmation track is large, it means that the target is large in the longitudinal direction. At this time, the clustering threshold value can be adjusted to a smaller value to increase the clustering sensitivity for small targets.

[0074] Therefore, by adjusting the clustering threshold according to the heading angle and the maximum size, the point cloud clustering operation can be better performed according to the motion and size characteristics of the target, thereby obtaining a more accurate target clustering result.

[0075] Step 103: updating the confirmed track based on the result of the clustering operation to ensure that the updated confirmed track is consistent with the motion track of the target.

[0076] That is, updating the confirmed trajectory based on the result of the clustering operation means matching and adjusting the target with the confirmed trajectory to ensure that the updated confirmed trajectory can accurately reflect the actual motion trajectory of the target.

[0077] The above steps 101 to 103 are described in detail below.

[0078] In some embodiments of the present application, in the above step 101, the step of associating the currently acquired target point cloud set with the historical confirmed trajectory includes:

[0079] Step 1011 , performing a global nearest neighbor association algorithm operation on the target point cloud set and the confirmed trajectories to calculate the distance between each target point cloud and all confirmed trajectories and find the best matching track according to the size of the distance.

[0080] Step 1012: When the target point cloud and its best matching track meet the preset conditions, it indicates that the match is successful. After the match is successful, the target point cloud is associated with its best matching track as the confirmed track, and the association relationship is recorded in the point track association list;

[0081] The point track association list is a data structure used to store the association relationship between the target point cloud and the confirmed track. The point track association list includes the ID of the target point cloud and the ID of the confirmed track. The size of the point track association list indicates the number of successfully associated target point clouds and confirmed tracks.

[0082] For example, the point association list is represented by associateList, and the size of associateList is represented by associateNum.

[0083] In the above steps 1011 to 1012, the best matching track can be found by calculating the distance between each target point cloud and all confirmed tracks. This ensures that the target point cloud is matched with its most relevant track, reduces the possibility of mis-association, and improves the accuracy of the association. When the match is successful, the target point cloud is associated with its best matching track, and the association relationship is recorded in the track association list. In this way, the correspondence between the target point cloud and the corresponding track can be saved. In addition, the match is considered successful only when the preset conditions are met, and some inaccurate or abnormal matching results can be filtered out, which improves the reliability of the association.

[0084] In some embodiments of the present application, in the above step 102, the step of performing a clustering operation on the successfully associated target point cloud and adjusting the clustering threshold value according to the heading angle and the maximum size obtained from the confirmed track includes:

[0085] Step 1021, performing a clustering operation based on the ID of the target point cloud in the point track association list as the starting point of clustering, and obtaining the heading angle and the maximum size by confirming the ID of the track.

[0086] Exemplarily, clustering is started by using the DBSCAN (Density-Based Spatial Clustering of Applications with Noise) method with the ID of the target point cloud in the point association list associateList as the clustering starting point.

[0087] The DBSCAN algorithm clusters data points based on their density. It takes each data point as the center and determines whether it belongs to the same cluster by calculating the density of other data points around it. Adjacent high-density points are classified into the same cluster, while low-density areas are considered noise or outliers.

[0088] For example, use the DBSCAN algorithm to perform clustering operations, and use the target point cloud ID in the associateList table as the starting point for clustering. That is, according to the DBSCAN rules, starting from a given starting point, find other points connected to it in density, establish a cluster, and then continue to find other points connected in density and expand the range of the cluster. Finally, a set of clustered data points is obtained.

[0089] For example, each confirmed track contains a series of track information associated with a target. Through the ID of the confirmed track in the associateList table, the course angle courseAngle and the maximum size KSIZE associated with the track can be obtained, which can be used for subsequent data processing to more accurately understand the motion characteristics and spatial size of the target.

[0090] For example, please refer to Figure 2A , Figure 2B , Figure 3A as well as Figure 3B , Figure 2A is a schematic diagram of a vehicle traveling laterally provided in an embodiment of the present application, Figure 2B yes Figure 2A Schematic diagram of the corresponding dimensions, Figure 3A is a schematic diagram of a vehicle traveling longitudinally provided in an embodiment of the present application, Figure 3B yes Figure 3A Schematic diagram of the corresponding dimensions.

[0091] from Figure 2B It can be seen that when the vehicle is moving normally in the horizontal direction, the maximum size of the vehicle is calculated, and the maximum size in the horizontal direction is equal to Xsize. Figure 3B It can be seen that when the vehicle is traveling normally longitudinally, the maximum size of the vehicle is calculated. When traveling longitudinally, the maximum size is equal to Ysize, and other directions are also similar or close to the vehicle size.

[0092] For example, the heading angle is calculated as:

[0093] couseAngle=atan2(vy,vx);

[0094] Among them, couseAngle represents the heading angle, atan2 represents the calculation of the inverse tangent function, vy represents the longitudinal velocity of the target, vx represents the lateral velocity of the target, and the value range of couseAngle can be (-π, π].

[0095] For example, Figure 4 As shown in FIG. 1 , by clustering the target point cloud set, the point clouds on the same target can be grouped into a cluster. The size of each cluster can be described by the horizontal size Xsize, the vertical size Ysize and the maximum size Ksize.

[0096] Exemplarily, the horizontal size XSIZE of the target and the vertical size YSIZE of the target can be obtained by filtering and updating Xsize and Ysize as follows:

[0097] XSIZE=(1-α)*XSIZE+α*Xsize;

[0098] YSIZE=(1-α)*YSIZE+α*Ysize;

[0099] Among them, XSIZE represents the lateral size of the target, YSIZE represents the longitudinal size of the target, KSIZE represents the maximum size of the target, Xsize represents the lateral size of each cluster after the target point cloud is clustered, Ysize represents the longitudinal size of each cluster after the target point cloud is clustered, Ksize represents the maximum size of each cluster after the target point cloud is clustered, and α represents the filter coefficient. For example, the value of α can be 0.1.

[0100] Exemplarily, Ksize is the maximum value of Xsize and Ysize, and Xsize and Ysize are filtered as follows:

[0101] Ksize = Max(Xsize, Ysize);

[0102] KSIZE=(1-β)*KSIZE+β*Ksize;

[0103] Wherein, KSIZE represents the maximum size of the target, and β represents the filter coefficient. For example, the value of β can be 0.1.

[0104] It should be noted that after the target point cloud is clustered, the horizontal size of each cluster is Xsize, the vertical size is Ysize, and the maximum size is Ksize. However, after filtering, the corresponding horizontal size is XSIZE, the vertical size is YSIZE, and the maximum size is KSIZE.

[0105] Step 1022, if the absolute value of the heading angle is less than the first preset value or greater than the second preset value, adjust the clustering threshold value according to the heading angle and the maximum size; otherwise, traverse the point track association list to complete the clustering of all target point clouds associated with the confirmed tracks, wherein the second preset value is greater than the first preset value;

[0106] For example, if the absolute value of the courseAngle is less than π / 3 or greater than 2π / 3, the clustering threshold is adjusted according to the courseAngle and the maximum size KSIZE.

[0107] Specifically, if the absolute value of the courseAngle is less than π / 3 or greater than 2π / 3, it means that the target's moving direction is relatively close to the horizontal direction (parallel or anti-parallel). In this case, according to the courseAngle and the maximum size KSIZE, the clustering threshold can be adjusted to adapt to such horizontal moving targets.

[0108] Exemplarily, the step of adjusting the clustering threshold value according to the heading angle and the maximum size includes:

[0109] Step 10221, estimate the width and length of the current target based on the heading angle and the maximum size.

[0110] Exemplarily, the calculation formula for estimating the width and length of the current target is as follows:

[0111] wide=KSIZE*fabs(cos(courseAngle));

[0112] length=KSIZE*fabs(sin(courseAngle));

[0113] Among them, wide represents the width of the target in the horizontal direction, length represents the length of the target in the vertical direction, KSIZE represents the maximum size of the target, fabs() represents the absolute value, and courseAngle represents the heading angle.

[0114] Step 10222, adjust the clustering threshold value according to the estimated width and height, wherein the clustering threshold value includes a first clustering threshold value and a second clustering threshold value, the first clustering threshold value represents the horizontal distance threshold value between clustering points, and the second clustering threshold value represents the vertical distance threshold value between clustering points.

[0115] Exemplarily, the calculation formula for adjusting the clustering threshold value according to the estimated width and height is as follows:

[0116]

[0117]

[0118] The adjusted clustering threshold value includes a horizontal distance threshold value and a vertical distance threshold value, wherein the horizontal distance threshold value = xThr+xThrExt, and the vertical distance threshold value = yThr+yThrExt;

[0119] Wherein, xThr represents the first clustering threshold value, yThr represents the second clustering threshold value, xThrExt represents the first adjustment value, and yThrExt represents the second adjustment value.

[0120] Specifically, after estimating the width and length of the current target, the threshold for determining whether two points belong to the same cluster can be adjusted according to these values. If the width of the target is large, then xThr can be increased to allow for a larger horizontal distance. Similarly, if the length of the target is large, then yThr can be increased to allow for a larger vertical distance. By adjusting these threshold values, the clustering needs of targets of different sizes and shapes can be better adapted.

[0121] For example, please refer to Figure 5 , Figure 5 is a schematic diagram of the course angle provided in the embodiment of the present application. When the vehicle is turning, wide and length are calculated according to the course angle courseAngle and the maximum size KSIZE, and then the above-mentioned xThrExt and yThrExt are obtained. If Figure 5 If the horizontal distance threshold delta_x is less than xThr+xThrExt, it can be considered that the two point clouds belong to the same target and should be grouped together. Similarly, it can also be calculated whether the vertical distance threshold delta_y is less than yThr+yThrExt.

[0122] It can be seen that by estimating the width and length of the target according to the heading angle and the maximum size, and adjusting the clustering threshold according to the estimation results, the accuracy and adaptability of the target size estimation, as well as the accuracy and stability of the target segmentation are improved.

[0123] In some embodiments of the present application, in the above step 102, the step of performing a clustering operation on the successfully associated target point cloud and adjusting the clustering threshold value according to the heading angle and the maximum size obtained from the confirmed track further includes:

[0124] Step 1023, clustering operation is performed again on the remaining unclustered target point clouds to achieve temporary track association or create a new track.

[0125] By clustering the target point clouds, the point clouds on the same target can be grouped into a cluster to form a track. However, there may be some target point clouds that cannot be clustered into the existing track, or there may be newly appeared target point clouds. In order to deal with these situations, it is necessary to cluster the remaining unclustered target point clouds again. By performing further clustering analysis, the unclustered target point clouds can be associated with temporary tracks or newly created tracks based on the spatial relationship and feature similarity between the point clouds. This ensures that the motion information of all targets is captured and updated as much as possible.

[0126] In summary, the present application first associates the currently acquired target point cloud with the previously confirmed track (i.e., the historical confirmed track) so as to determine which point clouds belong to the same target by matching the corresponding target point cloud and track. Secondly, a further clustering operation is performed on the successfully associated target point cloud to cluster the point clouds belonging to the same target into clusters to form a new track. Then, the clustering threshold is adjusted according to the heading angle and maximum size information obtained from the confirmed track so as to better adapt to the actual size and shape characteristics of the target by adjusting the clustering threshold. Finally, the confirmed track is updated according to the obtained clustering results to ensure that the updated confirmed track is consistent with the actual motion track of the target, and the newly clustered track is merged or updated into the confirmed track. Through the above steps, the target splitting problem can be effectively solved and the accuracy and stability of target tracking can be improved.

[0127] The target point cloud clustering device provided in the present application is described below. The target point cloud clustering device described below and the target point cloud clustering method described above can be referenced to each other.

[0128] Please refer to Figure 6 , Figure 6 6 is a schematic diagram of the structure of the target point cloud clustering device provided in the present application. A target point cloud clustering device 600 includes an association module 601 , a cluster adjustment module 602 and an update module 603 .

[0129] Exemplarily, the association module 601 is used to:

[0130] The currently acquired target point cloud set is associated with the historical confirmed trajectory.

[0131] Exemplarily, the cluster adjustment module 602 is used to:

[0132] A clustering operation is performed on the successfully associated target point cloud, and a clustering threshold is adjusted according to the heading angle and the maximum size obtained from the confirmed track, wherein the heading angle is used to provide deflection information of the target in the lateral direction, and the maximum size is used to estimate the size of the target in the longitudinal direction.

[0133] Exemplarily, the updating module 603 is used for:

[0134] The confirmed track is updated based on the result of the clustering operation to ensure that the updated confirmed track is consistent with the motion track of the target.

[0135] Exemplarily, the association module 601 is further used for:

[0136] Performing a global nearest neighbor association algorithm operation on the target point cloud set and the confirmed trajectory to calculate the distance between each target point cloud and all confirmed trajectories and finding the best matching track according to the size of the distance;

[0137] When the target point cloud and its best matching track meet the preset conditions, it means the match is successful, the target point cloud is associated with its best matching track as the confirmed track, and the association relationship is recorded in the point track association list;

[0138] The point track association list is a data structure for storing the association relationship between the target point cloud and the confirmed track, which includes the ID of the target point cloud and the ID of the confirmed track, and its size represents the number of successfully associated target point clouds and confirmed tracks.

[0139] Exemplarily, the cluster adjustment module 602 is further used for:

[0140] Performing a clustering operation according to the ID of the target point cloud in the point track association list as the starting point of clustering, and obtaining the heading angle and the maximum size through the ID of the confirmed track;

[0141] If the absolute value of the heading angle is less than the first preset value or greater than the second preset value, the clustering threshold is adjusted according to the heading angle and the maximum size; otherwise, the point track association list is traversed to complete the clustering of all target point clouds associated with the confirmed tracks;

[0142] Wherein, the second preset value is greater than the first preset value.

[0143] Exemplarily, the cluster adjustment module 602 is further used for:

[0144] estimating the width and length of the current target according to the heading angle and the maximum size;

[0145] The clustering threshold is adjusted according to the estimated width and height, wherein the clustering threshold includes a first clustering threshold and a second clustering threshold, wherein the first clustering threshold represents a lateral distance threshold between clustering points, and the second clustering threshold represents a longitudinal distance threshold between clustering points.

[0146] Exemplarily, the cluster adjustment module 602 is further used for:

[0147] The width and length of the current target are estimated using the following calculation formula according to the heading angle and the maximum size:

[0148] wide=KSIZE*fabs(cos(courseAngle));

[0149] length=KSIZE*fabs(sin(courseAngle));

[0150] Among them, wide represents the width of the target in the horizontal direction, length represents the length of the target in the vertical direction, KSIZE represents the maximum size of the target, fabs() represents the absolute value, and courseAngle represents the heading angle.

[0151] Exemplarily, the cluster adjustment module 602 is further used for:

[0152] The clustering threshold is adjusted according to the estimated width and height using the following calculation formula:

[0153]

[0154]

[0155] The adjusted clustering threshold value includes a horizontal distance threshold value and a vertical distance threshold value, wherein the horizontal distance threshold value = xThr+xThrExt, and the vertical distance threshold value = yThr+yThrExt;

[0156] Wherein, xThr represents the first clustering threshold value, yThr represents the second clustering threshold value, xThrExt represents the first adjustment value, and yThrExt represents the second adjustment value.

[0157] Exemplarily, the calculation formula of the heading angle is:

[0158] couseAngle=atan2(vy,vx);

[0159] Among them, couseAngle represents the heading angle, atan2 represents the calculation of the inverse tangent function, vy represents the longitudinal velocity of the target, vx represents the lateral velocity of the target, and the value range of couseAngle is (-π, π].

[0160] Exemplarily, the maximum size is calculated as follows:

[0161] XSIZE=(1-α)*XSIZE+α*Xsize;

[0162] YSIZE=(1-α)*YSIZE+α*Ysize;

[0163] Ksize = Max(Xsize, Ysize);

[0164] KSIZE=(1-β)*KSIZE+β*Ksize;

[0165] Among them, XSIZE represents the lateral size of the target, YSIZE represents the longitudinal size of the target, KSIZE represents the maximum size of the target, Xsize represents the lateral size of each cluster after the target point cloud is clustered, Ysize represents the longitudinal size of each cluster after the target point cloud is clustered, Ksize represents the maximum size of each cluster after the target point cloud is clustered, and α and β both represent filter coefficients.

[0166] Exemplarily, the cluster adjustment module 602 is further used for:

[0167] The clustering operation is performed again on the remaining unclustered target point clouds to achieve temporary track association or create a new track.

[0168] In some embodiments of the present application, the present application also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the target point cloud clustering method as described above when executing the program.

[0169] In addition, the logic instructions in the above-mentioned memory can be implemented in the form of software functional units and can be stored in a computer-readable storage medium when sold or used as an independent product. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art, and the computer software product is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a disk or an optical disk.

[0170] On the other hand, the present application also provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer can execute the target point cloud clustering method provided by the above-mentioned methods.

[0171] On the other hand, the present application also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which is implemented when the computer program is executed by a processor to perform the target point cloud clustering methods provided above.

[0172] The embodiments of the present application provide a target point cloud clustering device, an electronic device, a computer program product, and a processor-readable storage medium, on which the computer program stored enables the processor to implement all the method steps implemented by the above-mentioned method embodiments and can achieve the same technical effects. The parts and beneficial effects of this embodiment that are the same as those of the method embodiments will not be described in detail herein.

[0173] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.

[0174] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0175] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A target point cloud clustering method, characterized in that: The method comprises: Associating the currently acquired target point cloud set with the historical confirmed track; A clustering operation is performed on the successfully associated target point cloud, and a clustering threshold value is adjusted according to the heading angle and the maximum size obtained from the confirmed track, including: estimating the width of the current target in the lateral direction and the length of the target in the longitudinal direction according to the heading angle and the maximum size; adjusting the clustering threshold value according to the estimated width and length, wherein the clustering threshold value includes a first clustering threshold value and a second clustering threshold value, the first clustering threshold value represents the lateral distance threshold value between clustering time points and points, and the second clustering threshold value represents the longitudinal distance threshold value between clustering time points and points; if the absolute value of the heading angle is less than a first preset value or greater than a second preset value, the clustering threshold value is adjusted according to the heading angle and the maximum size; wherein the second preset value is greater than the first preset value; the heading angle is used to provide deflection information of the target in the lateral direction, and the maximum size is used to estimate the size of the target; the maximum size is calculated as follows: XSIZE′=(1-α)*XSIZE+α*Xsize; YSIZE′=(1-α)*YSIZE+α*Ysize; Ksize = Max(Xsize, Ysize); KSIZE′=(1-β)*KSIZE+β*Ksize; XSIZE represents the width of the target, YSIZE represents the length of the target, KSIZE represents the maximum size of the target, Xsize represents the horizontal size of each cluster after the target point cloud is clustered, Ysize represents the vertical size of each cluster after the target point cloud is clustered, Ksize represents the maximum size of each cluster after the target point cloud is clustered, α and β both represent filter coefficients; The confirmed track is updated based on the result of the clustering operation to ensure that the updated confirmed track is consistent with the movement track of the target.

2. The target point cloud clustering method according to claim 1, characterized in that: The step of associating the currently acquired target point cloud set with the historical confirmed track includes: Performing a global nearest neighbor association algorithm operation on the target point cloud set and the confirmed track to calculate the distance between each target point cloud and all confirmed tracks and finding the best matching track according to the size of the distance; When the target point cloud and its best matching track meet the preset conditions, it means the match is successful, the target point cloud is associated with its best matching track as the confirmed track, and the association relationship is recorded in the point track association list; The point track association list is a data structure for storing the association relationship between the target point cloud and the confirmed track, which includes the ID of the target point cloud and the ID of the confirmed track, and its size represents the number of successfully associated target point clouds and confirmed tracks.

3. The target point cloud clustering method according to claim 2, characterized in that: The step of performing a clustering operation on the successfully associated target point cloud and adjusting the clustering threshold value according to the heading angle and the maximum size obtained from the confirmed track includes: Performing a clustering operation according to the ID of the target point cloud in the point track association list as the starting point of clustering, and obtaining the heading angle and the maximum size through the ID of the confirmed track; The point track association list is traversed to complete the clustering of all target point clouds associated with confirmed tracks.

4. The target point cloud clustering method according to claim 1, characterized in that: The calculation formula for estimating the width of the current target in the horizontal direction and the length of the target in the vertical direction according to the heading angle and the maximum size is as follows: wide=KSIZE*fabs(cos(courseAngle)); length=KSIZE*fabs(sin(courseAngle)); Among them, wide represents the width of the target in the horizontal direction, length represents the length of the target in the vertical direction, KSIZE represents the maximum size of the target, fabs() represents the absolute value, and courseAngle represents the heading angle.

5. The target point cloud clustering method according to claim 4, characterized in that: The calculation formula for adjusting the clustering threshold value according to the estimated width and length is as follows: The adjusted clustering threshold value includes a horizontal distance threshold value and a vertical distance threshold value, wherein the horizontal distance threshold value = xThr+xThrExt, and the vertical distance threshold value = yThr+yThrExt; Wherein, xThr represents the first clustering threshold value, yThr represents the second clustering threshold value, xThrExt represents the first adjustment value, and yThrExt represents the second adjustment value.

6. The target point cloud clustering method according to claim 3, characterized in that: The calculation formula of the heading angle is: couseAngle=atan2(vy,vx); Among them, couseAngle represents the heading angle, atan2 represents the calculation of the inverse tangent function, vy represents the longitudinal velocity of the target, vx represents the lateral velocity of the target, and the value range of couseAngle is (-π, π].

7. The target point cloud clustering method according to claim 1, characterized in that: The method further comprises: The clustering operation is performed again on the remaining unclustered target point clouds to achieve temporary track association or create a new track.

8. A target point cloud clustering device, characterized in that: The device comprises: An association module is used to associate the currently acquired target point cloud set with the historical confirmed track; A clustering adjustment module is used to perform a clustering operation on the successfully associated target point cloud, and adjust the clustering threshold value according to the heading angle and the maximum size obtained by the confirmed track, including: estimating the width of the current target in the lateral direction and the length of the target in the longitudinal direction according to the heading angle and the maximum size; adjusting the clustering threshold value according to the estimated width and length, wherein the clustering threshold value includes a first clustering threshold value and a second clustering threshold value, the first clustering threshold value represents the lateral distance threshold value between the clustering time point and the point, and the second clustering threshold value represents the longitudinal distance threshold value between the clustering time point and the point; if the absolute value of the heading angle is less than the first preset value or greater than the second preset value, adjusting the clustering threshold value according to the heading angle and the maximum size; wherein the second preset value is greater than the first preset value; the heading angle is used to provide the deflection information of the target in the lateral direction, and the maximum size is used to estimate the size of the target; the maximum size is calculated as follows: XSIZE′=(1-α)*XSIZE+α*Xsize; YSIZE′=(1-α)*YSIZE+α*Ysize; Ksize = Max(Xsize, Ysize); KSIZE′=(1-β)*KSIZE+β*Ksize; XSIZE represents the width of the target, YSIZE represents the length of the target, KSIZE represents the maximum size of the target, Xsize represents the horizontal size of each cluster after the target point cloud is clustered, Ysize represents the vertical size of each cluster after the target point cloud is clustered, Ksize represents the maximum size of each cluster after the target point cloud is clustered, α and β both represent filter coefficients; An updating module is used to update the confirmed track based on the result of the clustering operation to ensure that the updated confirmed track is consistent with the movement track of the target.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the steps of the target point cloud clustering method according to any one of claims 1 to 7 are implemented.

10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the target point cloud clustering method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Vehicle identification method and system based on adaptive threshold target clustering, and medium

    CN111123253A

  • Automobile millimeter-wave radar plot condensation method and system

    CN112731296A