Track initiation method, device, equipment and medium
By performing multi-directional heading angle assumption and clustering processing on radar point cloud data, the problems of low efficiency and poor accuracy of radar target track tracking are solved, and efficient and accurate target tracking is achieved, reducing costs and simplifying algorithm development.
Patent Information
- Application Number
- CN202510353185.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-24
- Publication Date
- 2025-07-04
AI Technical Summary
The existing radar technology has low track starting efficiency and poor accuracy in target tracking, especially when target flickering at the edge of the detection area, and the risk of track merging is high during multi-target tracking, and the need for collaborative work of multiple sensors increases the difficulty of algorithm development.
By performing multi-directional assumption heading angle processing on the point cloud data collected by the radar, track start is performed, and combining clustering and track correlation management, the amount of calculation data is reduced, and the effective area and accuracy of target tracking can be improved. Efficient tracking can be achieved using millimeter wave radar alone.
It improves the speed and sensitivity of radar target tracking, expands the effective tracking area, reduces the cost of target tracking, avoids the risk of multi-target track merging, and simplifies algorithm development.
Smart Images

Figure CN120254835A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of radar technology, and in particular, to a method, device, equipment and medium for track initiation. Background Art
[0002] Track initiation refers to the process by which a sensor detects and confirms a target from the environment and establishes an initial motion trajectory of the target. Among them, the sensor can be, for example, a radar. The radar can be applied in the field of road traffic auxiliary monitoring to real-time track the targets on the road surface and provide technical support and data support for the digital intelligent transportation system. Summary of the Invention
[0003] Embodiments of this application provide a method, device, equipment and medium for track initiation, so as to improve the efficiency and accuracy of track initiation, expand the effective area of target tracking, thereby improving the target tracking effect and reducing the target tracking cost.
[0004] A method for track initiation provided by an embodiment of this application includes:
[0005] Obtain the point cloud data of at least one target in the current frame, where the point cloud data of the target is collected by a preset sensor for detecting a preset detection area, and each point cloud data of the target includes the data of at least one measurement point of the target;
[0006] For each target:
[0007] Determine a plurality of different-direction assumed heading angles of the target;
[0008] Based on the plurality of different-direction assumed heading angles and the point cloud data of the target in the current frame, perform track initiation on the target; where the direction of the assumed heading angle is a preset direction.
[0009] The track initiation method provided by the embodiments of the present application, for each target, through the assumed heading angles in multiple different directions of the target, can realize the track initiation of the target based on the assumed heading angles in multiple different directions and the point cloud data of the target in the current frame. Therefore, the track initiation of the embodiments of the present application only requires single-frame point cloud data collected by one sensor to realize fast track initiation, thereby achieving an efficient target tracking effect and greatly reducing the target tracking cost; moreover, the embodiments of the present application can quickly initiate the track through single-frame point cloud data, improving the speed and sensitivity of target tracking. Since track initiation can be realized without accumulating multi-frame point cloud data of the same target, it can effectively track flickering targets at the edge of the sensor's field of view, expanding the effective area of target tracking; the embodiments of the present application assume multiple heading angles for the same measurement point, so multiple tracks can be generated, and thus can provide multiple direction possibilities during multi-target tracking, effectively avoiding the risk of track merging when multiple targets approach each other and improving the tracking accuracy in multi-target tracking scenarios; in addition, the embodiments of the present application only require one sensor, so there is no need to consider transmission protocols, spatial and target calibration issues with other sensors, reducing the difficulty of algorithm development and improving the development efficiency.
[0010] In some embodiments, for each of the targets, determining the assumed heading angles in multiple different directions of the target includes:
[0011] For each of the targets, based on the point cloud data of the target in the current frame, select N assumed heading angles in different directions from M pre-set assumed heading angles in different directions as the assumed heading angles in multiple different directions of the target;
[0012] Wherein, the included angle between the assumed heading angle in each selected direction and the direction of the Doppler velocity of the target in the current frame is less than 90°;
[0013] Both N and M are preset positive integers, and the value of N is less than the value of M.
[0014] It can be seen that the embodiments of the present application can further screen the M pre-set assumed heading angles in different directions, and leave N more reasonable assumed heading angles in different directions as the assumed heading angles in multiple different directions of the target for the sensor to perform target tracking, greatly improving the measurement information of the sensor and more conveniently and accurately determining the track, thus making it more convenient to achieve accurate target tracking. And, by comparing the assumed heading angle in each selected direction with the direction of the Doppler velocity of the target in the current frame and selecting the assumed heading angle with an included angle less than 90°, not only can the rationality of the assumed heading angle be guaranteed, but also the calculation amount can be reduced.
[0015] In some embodiments, the method further includes:
[0016] Clustering the point cloud data of at least one target in the current frame to obtain at least one clustering cluster, and each clustering cluster includes data of at least one measurement point;
[0017] For each clustering cluster, determining a representative point of the clustering cluster from the measurement points of the clustering cluster;
[0018] For each target, based on the plurality of assumed heading angles in different directions and the point cloud data of the target in the current frame, initiating a track for the target, including:
[0019] Taking the data of each representative point as the data of one target, and for each target:
[0020] Based on the plurality of assumed heading angles in different directions and the data of the representative point corresponding to the target in the current frame, determining the data of a plurality of predicted measurement points of the representative point; wherein, the data of each predicted measurement point corresponds to an assumed heading angle in one direction;
[0021] Based on the data of each predicted measurement point of the representative point, generating a track head, and obtaining the track heads corresponding to the plurality of assumed heading angles in different directions of the target.
[0022] It can be seen that in the embodiments of the present application, by clustering the point cloud data, the amount of point cloud data involved in subsequent calculations is reduced, thereby improving the subsequent calculation efficiency, and by further determining a representative point from the plurality of measurement points of each clustering cluster to represent the clustering cluster, the amount of calculation data can be further reduced, and the interference between targets can also be reduced.
[0023] In some embodiments, the method further includes:
[0024] Obtaining the point cloud data of the next frame;
[0025] Based on the point cloud data of the next frame, performing track association on each track head. Among them, for each track head, if the association is successful, the preset track quality parameter corresponding to the track head is adjusted according to the first preset rule, and if the association fails, the preset track quality parameter corresponding to the track head is adjusted according to the second preset rule;
[0026] For any track head, when the value of the preset track quality parameter corresponding to the track head satisfies the first preset condition, the track corresponding to the track head is deleted.
[0027] It can be seen that through the above track association, the embodiments of the present application achieve the maintenance and management of tracks, retain accurate tracks, and delete untrustworthy tracks.
[0028] In some embodiments, the method further includes:
[0029] For any one of the track headers, when the value of the preset track quality parameter corresponding to the track header satisfies the second preset condition, output and display the track corresponding to the track header.
[0030] It can be seen that the embodiments of the present application further output more trustworthy tracks to the user for viewing by maintaining the value of the preset track quality parameter.
[0031] In some embodiments, for each of the clustering clusters, determining a representative point of the clustering cluster from the measurement points of the clustering cluster includes:
[0032] For each of the clustering clusters:
[0033] For each measurement point in the clustering cluster, determine the measurement points within the clustering neighborhood of the measurement point. When the number of measurement points within the clustering neighborhood of the measurement point exceeds the threshold, determine the measurement point as a core point;
[0034] When there are multiple core points in the clustering cluster, determine the center point position based on the position information of the multiple core points;
[0035] Determine the core point closest to the center point position as the representative point of the clustering cluster.
[0036] It can be seen that for the selection of the clustering center in the embodiments of the present application, the center point position of the point cloud within the same cluster is first calculated, then the distance between each measurement point and the center point is calculated by traversing, and the measurement point with the closest distance is selected as the clustering representative point, so that the representative point of the clustering cluster can be determined more reasonably and conveniently.
[0037] In some embodiments, for each measurement point in each of the clustering clusters, the threshold is determined in the following manner:
[0038] Determine the first sum value of the preset near shielding distance and the maximum detection distance for the sensor; and determine the second sum value of the near shielding distance and the radial distance of the measurement point; wherein, the point cloud data collected by the sensor is the point cloud data of the target whose distance from the sensor exceeds the near shielding distance;
[0039] Determine the ratio of the first sum value to the second sum value;
[0040] Take the square root of the ratio to obtain the value after taking the square root;
[0041] Round down the value after taking the square root to obtain the threshold corresponding to the measurement point.
[0042] It can be seen that in the embodiments of the present application, when determining the number of measurement points in the clustering neighborhood, the case where the energy of the sensor decays exponentially with the increase of distance is considered. The non-linear relationship of the detection performance of the sensor is converted into a linear relationship through taking the square root, thereby improving the stability of the sensor observation, that is, improving the accuracy of determining the core point, and finally improving the accuracy of determining the clustering representative point.
[0043] An initial track device provided by an embodiment of the present application includes:
[0044] A first unit, configured to obtain point cloud data of at least one target in the current frame, where the point cloud data of the target is collected by a preset sensor for detecting a preset detection area, and each point cloud data of the target includes data of at least one measurement point of the target;
[0045] A second unit, configured to:
[0046] For each target:
[0047] Determine a plurality of different-direction assumed heading angles of the target;
[0048] Based on the plurality of different-direction assumed heading angles and the point cloud data of the target in the current frame, perform initial track for the target; wherein, the direction of the assumed heading angle is a preset direction.
[0049] Another embodiment of the present application provides an electronic device, which includes a memory and a processor. The memory is used to store program instructions, and the processor is used to call the program instructions stored in the memory and execute any of the above methods according to the obtained program.
[0050] Another embodiment of the present application provides a computer-readable storage medium, which stores computer-executable instructions, and the computer-executable instructions are used to make the computer execute any of the above methods. BRIEF DESCRIPTION OF THE DRAWINGS
[0051] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for description in the embodiments. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained according to these drawings without creative efforts.
[0052] Figure 1 It is a schematic flowchart of an initial track method provided by an embodiment of the present application;
[0053] Figure 2 Schematic flow chart of another track initiation method provided by an embodiment of the present application;
[0054] Figure 3 Schematic diagram of radar measurement provided by an embodiment of the present application;
[0055] Figure 4 Schematic diagram of the adaptive clustering process provided by an embodiment of the present application;
[0056] Figure 5 Schematic diagram of the adaptive clustering result provided by an embodiment of the present application;
[0057] Figure 6 Schematic diagram of the clustering center provided by an embodiment of the present application;
[0058] Figure 7 Schematic diagram of the mutual conversion between the radar rectangular coordinate system and the space polar coordinate system provided by an embodiment of the present application;
[0059] Figure 8 Schematic diagram of the radar coordinate system conversion provided by an embodiment of the present application;
[0060] Figure 9 Schematic diagram of the angle conversion of a navigation state provided by an embodiment of the present application;
[0061] Figure 10 Schematic diagram of another angle conversion of a navigation state provided by an embodiment of the present application;
[0062] Figure 11 Schematic diagram of the heading angle hypothesis provided by an embodiment of the present application;
[0063] Figure 12 Schematic diagram of 8 assumed heading angles provided by an embodiment of the present application;
[0064] Figure 13 Schematic diagram of the assumed heading angle distribution provided by an embodiment of the present application;
[0065] Figure 14 Schematic diagram of the heading angle distribution for comparison with the assumed heading angle provided by an embodiment of the present application;
[0066] Figure 15 Schematic diagram of the case where the angle between the direction of the target total velocity and the direction of the Doppler velocity in the heading angle screening is greater than 90° provided by an embodiment of the present application;
[0067] Figure 16 Schematic diagram of the case where the angle between the direction of the target total velocity and the direction of the Doppler velocity in the heading angle screening is less than 90° provided by an embodiment of the present application;
[0068] Figure 17 Schematic diagram of heading angle screening in the case of a target approaching the radar provided by an embodiment of the present application;
[0069] Figure 18 Schematic diagram of heading angle screening in the case of a target moving away from the radar provided by an embodiment of the present application;
[0070] Figure 19 Schematic diagram of the track initiation process provided by an embodiment of the present application;
[0071] Figure 20 Schematic diagram of track estimation and track association provided by an embodiment of the present application;
[0072] Figure 21 Schematic diagram of the structure of an electronic device provided by an embodiment of the present application;
[0073] Figure 22 Schematic diagram of the structure of a track initiation device provided by an embodiment of the present application. Detailed implementation manners
[0074] Next, the technical solutions in the embodiments of the present application will be clearly and completely described with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0075] The embodiments of the present application provide a track initiation method, device, equipment and medium, which are used to improve the efficiency and accuracy of track initiation, expand the effective area of target tracking, thereby improving the target tracking effect and reducing the target tracking cost.
[0076] Among them, the method, device, equipment and medium are based on the same inventive concept. Since the principles for solving problems by the method, device, equipment and medium are similar, the implementation of the device, equipment, medium and method can be referred to each other, and the repeated parts will not be described again.
[0077] In the description of the embodiments of the present application, the terms "first", "second", etc. (if any) in the specification, claims 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 data used in this way can be interchanged under appropriate circumstances, so that the embodiments described herein can be implemented in an order different from that shown or described herein. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that includes a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0078] The following examples and embodiments are to be understood only as illustrative examples. Although the present specification may refer to "one", "a" or "some" examples or embodiments in several places, this does not mean that each such reference relates to the same example or embodiment, nor does it mean that the feature applies only to a single example or embodiment. The individual features of different embodiments can also be combined to provide other embodiments. In addition, terms such as "comprising" and "including" should be understood not to limit the described embodiments to only the features that have been mentioned; such examples and embodiments may also include features, structures, units, modules, etc. that have not been specifically mentioned.
[0079] The following will describe each embodiment of the present application in detail with reference to the drawings of the specification. It should be noted that the display order of the embodiments of the present application only represents the sequence of the embodiments, and does not represent the superiority or inferiority of the technical solutions provided by the embodiments.
[0080] In the field of target tracking, since radar can only observe the radial Doppler velocity component of a target and cannot directly obtain the magnitude and direction of the target's velocity from the measurement points, the rapid estimation of the target's speed and heading has become a key link in track initiation and multi-target tracking, which can directly affect the speed, accuracy of track initiation and the quality of target tracking.
[0081] In addition, at the edge of the radar detection area, due to weak echo energy or susceptibility to interference, etc., the measurement points at the edge show flickering, or track initiation is not timely, which will result in the inability to effectively track distant targets.
[0082] Therefore, the embodiment of the present application proposes a fast track initiation method by performing hypothesis processing on point clouds, which can improve the efficiency and accuracy of track initiation, increase the tracking probability of flickering point clouds, and improve the tracking effectiveness and accuracy of millimeter-wave radars. Moreover, the embodiment of the present application can, without relying on other sensors, calculate the possible motion states of each point cloud and convert reasonable point clouds into track headers only based on the single-frame point cloud data collected by one sensor (such as a single millimeter-wave radar), realizing single-frame track initiation of measurement points. And since there is no need to rely on other sensors, the embodiment of the present application also greatly improves the portability of the product and reduces the later maintenance difficulty, thus significantly reducing costs. At the same time, through the adaptive clustering of point clouds and the rationality judgment and screening of hypothesized tracks, the amount of calculated data can be effectively reduced and the operation pressure can be reduced, which is of great significance for the application of sensors such as millimeter-wave radars.
[0083] See Figure 1 , a track initiation method provided by the embodiment of the present application includes:
[0084] S101. Obtain the point cloud data of at least one target in the current frame, where the point cloud data of the target is collected by a preset sensor for detecting a preset detection area, and the point cloud data of each target includes the data of at least one measurement point of the target;
[0085] The data of the measurement point, for example, includes one or a combination of the following parameters: radial distance rng, Doppler velocity vel, azimuth angle azi, elevation angle elv, signal-to-noise ratio snr, etc.
[0086] S102. For each target: determine multiple different-direction hypothesized heading angles of the target; based on the multiple different-direction hypothesized heading angles and the point cloud data of the target in the current frame, perform track initiation on the target; where the direction of the hypothesized heading angle is a preset direction.
[0087] In some embodiments, for each target, determining multiple different-direction hypothesized heading angles of the target includes:
[0088] For each target, based on the point cloud data of the target in the current frame, screen out N different-direction hypothesized heading angles from M preset different-direction hypothesized heading angles as the multiple different-direction hypothesized heading angles of the target;
[0089] where the included angle between the hypothesized heading angle in each screened-out direction and the direction of the Doppler velocity of the target in the current frame is less than 90°;
[0090] Both the N and the M are preset positive integers, and the value of the N is less than the value of the M.
[0091] In some embodiments, among the M preset hypothetical heading angles in different directions, the hypothetical heading angles in the four directions of due north, due east, due west, and due south are not included.
[0092] For example, the M takes a value of 8, and the N takes a value of 4.
[0093] The M preset hypothetical heading angles in different directions are, for example, the hypothetical heading angles of [15°, 60°, 105°, 150°, 195°, 240°, 285°, 330°] calculated clockwise from due north.
[0094] In some embodiments, the method further includes:
[0095] Clustering the point cloud data of at least one target in the current frame to obtain at least one clustering cluster (i.e., a data subset, and one cluster corresponds to the point cloud data of one target), and each of the clustering clusters includes the data of at least one measurement point;
[0096] For each of the clustering clusters, determining a representative point from the measurement points of the clustering cluster;
[0097] For each of the targets, based on the multiple hypothetical heading angles in different directions and the point cloud data of the target in the current frame, performing track initiation for the target, including:
[0098] Taking the data of each representative point as the data of one target, and for each of the targets:
[0099] Based on the multiple hypothetical heading angles in different directions and the data of the representative point corresponding to the target in the current frame, determining the data of multiple predicted measurement points of the representative point; wherein, the data of each predicted measurement point corresponds to a hypothetical heading angle in one direction;
[0100] Based on the data of each predicted measurement point of the representative point, generating a track header to obtain the track headers corresponding to the multiple hypothetical heading angles in different directions of the target.
[0101] For example, if four hypothetical heading angles in different directions are determined for one representative point, then the representative point has four predicted measurement points, and each hypothetical heading angle corresponds to one predicted measurement point. Therefore, four track headers can be generated.
[0102] In some embodiments, the method further includes:
[0103] Obtaining the point cloud data of the next frame;
[0104] Based on the point cloud data of the next frame, perform track association on each of the track headers. Among them, for each of the track headers, if the association is successful, adjust the preset track quality parameters corresponding to the track header according to the first preset rule; if the association fails, adjust the preset track quality parameters corresponding to the track header according to the second preset rule;
[0105] For any one of the track headers, when the value of the preset track quality parameter corresponding to the track header satisfies the first preset condition, delete the track corresponding to the track header.
[0106] The first preset rule can be, for example, incrementing the preset track quality parameter corresponding to the track header by 1 each time.
[0107] The second preset rule can be, for example, decrementing the preset track quality parameter corresponding to the track header by 1 each time.
[0108] The first preset condition can be, for example, that the value of the preset track quality parameter corresponding to the track header is less than 0.
[0109] In some embodiments, the method further includes:
[0110] For any one of the track headers, when the value of the preset track quality parameter corresponding to the track header satisfies the second preset condition, output and display the track corresponding to the track header.
[0111] The second preset condition includes, for example: the value of the preset track quality parameter corresponding to the track header is greater than a preset value (such as 3), and / or, the track display status corresponding to the track header is marked as a preset value (such as 1).
[0112] In some embodiments, for each of the clustering clusters, determining a representative point of the clustering cluster from the measurement points of the clustering cluster includes:
[0113] For each of the clustering clusters:
[0114] For each measurement point in the clustering cluster, determine the measurement points within the clustering neighborhood of the measurement point. When the number of measurement points within the clustering neighborhood of the measurement point exceeds a threshold, determine the measurement point as a core point;
[0115] When there are multiple core points in the clustering cluster, determine the center point position based on the position information of the multiple core points;
[0116] Determine the core point closest to the center point position as the representative point of the clustering cluster.
[0117] The threshold can be a preset value or a value determined according to the actual situation during the actual calculation process. For example:
[0118] In some embodiments, for each measurement point in each of the clustering clusters, the threshold is determined in the following manner:
[0119] Determine the first sum of the preset near shielding distance and the maximum detection distance for the sensor; and, determine the second sum of the near shielding distance and the radial distance of the measurement point; wherein, the point cloud data collected by the sensor is the point cloud data of the target whose distance from the sensor exceeds the near shielding distance;
[0120] Determine the ratio of the first sum to the second sum;
[0121] Take the square root of the ratio to obtain the value after taking the square root;
[0122] Round down the value after taking the square root to obtain the threshold corresponding to the measurement point.
[0123] Taking a millimeter-wave radar as an example of the sensor for implementing track initiation, the track initiation process provided by the embodiments of the present application will be illustrated by way of example below.
[0124] It should be noted that in the embodiments of the present application, taking the sensor as a millimeter-wave radar as an example for illustration, but the sensor described in the embodiments of the present application is not limited to the millimeter-wave radar.
[0125] See Figure 2 , a track initiation method provided by the embodiments of the present application includes:
[0126] S201. In the radar configuration file, set the detection parameters of the millimeter-wave radar according to the scene requirements.
[0127] The detection parameters of the radar, for example, see Figure 3 , for example, include one or a combination of the following parameters:
[0128] I. Radar parameters:
[0129] Maximum detection distance: MAX_RNG;
[0130] Maximum detection speed: MAX_VEL;
[0131] Maximum detection left angle: LEFT_AZI;
[0132] Maximum detection right angle: RIGHT_AZI;
[0133] Range measurement resolution: RNG_RES;
[0134] Velocity measurement resolution: VEL_RES;
[0135] Horizontal angle measurement resolution: AZI_RES.
[0136] II. System parameters:
[0137] Maximum number of point clouds: MAX_OBJ_NUM;
[0138] Frame interval: FRAME_T;
[0139] Near shielding distance: SHIELDING_DISTANCE.
[0140] Regarding the near shielding distance, when the target approaches the radar, the energy of the reflected signal is too large, which will affect the operation of the radar. Therefore, a near shielding distance needs to be set. That is, in some embodiments, only targets with a distance from the radar greater than the preset near shielding distance are detected. For targets with a distance from the radar less than SHIELDING_DISTANCE, the radar does not detect them, that is, their point cloud data is not collected.
[0141] III. Target parameters:
[0142] Body width: VEHICLE_WIDTH;
[0143] Minimum vehicle spacing: VEHICLE_SPACING.
[0144] S202. Detect the target detection area through the millimeter-wave radar and collect the point cloud data of the target.
[0145] The collected point cloud data is the collection of dynamic point cloud data (i.e., the original measured point cloud).
[0146] Regarding the point cloud data, the millimeter-wave radar measures the target area (i.e., the preset detection area), and multiple frames of point cloud data about the target can be obtained. Each target (such as a vehicle) will have multiple measurement points. Therefore, the point cloud data of each target will include the data of multiple measurement points. That is to say, each frame of point cloud data can obtain the data of multiple measurement points for the same target, for example, including: radial distance rng, Doppler velocity vel, and horizontal angle azi.
[0147] In some embodiments, for example Figure 3 As shown, after the radar measures the target object, the radial distance rng, Doppler velocity vel, azimuth angle azi, elevation angle elv, and signal-to-noise ratio snr can be obtained.
[0148] In the embodiments of the present application, the measurement information obtained by the radar can be defined as a measurement descriptor word (MeasureDescriptor Word, MDW), that is, mdw is:
[0149] mdw = [rng vel azi elv snr] Equation (1)
[0150] In the above Equation (1), the radial distance rng, Doppler velocity vel, azimuth angle azi, elevation angle elv, and signal-to-noise ratio snr of the target are combined into a 1×5 vector as the measurement descriptor.
[0151] Considering that the measurement elevation angle (elv) and signal-to-noise ratio (snr) capabilities of different radars vary greatly, in order to make the algorithm have as much generalization ability as possible, in some embodiments, the measurement descriptor can be simplified to include range measurement, horizontal angle measurement, and velocity measurement. That is, for the data of each measurement point, only rng, azi, and vel can be retained. That is, the above Equation (1) is simplified to the following Equation (2):
[0152] mdw = [rng vel azi] Equation (3)
[0153] Then, the measurement descriptor of the i-th target can be defined as mdw i = [rng i vel i azi i , and the set space of the current measurement point is represented as EDW.
[0154] In some embodiments, only the tracking of moving targets can be considered, so only dynamic measurement points are retained, and static point clouds are removed. For example, the following formula is used to filter static point cloud data:
[0155]
[0156] That is, only the point cloud data with a Doppler velocity vel greater than or equal to a preset threshold (i.e., the preset velocity measurement resolution VEL_RES) is retained.
[0157] Within the radar illumination range, multiple measurement points will be generated for the same target, forming point cloud data, and these point cloud data have obvious clustering characteristics. Therefore, the amount of point cloud data can be compressed and the subsequent calculation efficiency can be improved by clustering the collected point cloud data.
[0158] S203. Cluster the collected point cloud data to obtain at least one cluster, and for each cluster, determine the representative point of the cluster.
[0159] In some embodiments, determining the representative point of each cluster may include: determining the core point from the multiple measurement points of the cluster, and then determining the representative point of the cluster from the core points. Specifically as follows:
[0160] For each cluster, regarding determining the core point from the measurement points of the cluster:
[0161] For example, it is necessary to perform DBSCAN (Density-Based Spatial Clustering of Applications with Noise) clustering on the point cloud data collected in step S202. Among them, the data of each measurement point, as shown in the above formula (3), includes radial distance rng, Doppler velocity vel, and azimuth azi information.
[0162] Then, for each measurement point, specifically, taking measurement point i as an example, for measurement point j, if the radial distance rng, Doppler velocity vel, and azimuth azi of the measurement point j respectively meet the requirements of the following formulas (4), (5), and (6), then the measurement point j can enter the clustering neighborhood of the measurement point i;
[0163] |rng i -rng j | < VEHICLE_SPACING Formula (5)
[0164] |vel i -vel j | ≤ VEL_RES Formula (6)
[0165] |azi i -azi j | < AZI_RES Formula (7)
[0166] That is to say, if the following conditions are met:
[0167] The radial distance rng of measurement point j j , and the radial distance rng of measurement point i i The difference is less than the preset minimum vehicle spacing VEHICLE_SPACING;
[0168] The Doppler velocity vel of measurement point j j , and the Doppler velocity vel of measurement point i i The difference is less than or equal to the preset velocity measurement resolution VEL_RES;
[0169] The azimuth azi of measurement point j j , and the azimuth azi of measurement point i i The difference is less than the preset horizontal angle measurement resolution AZI_RES;
[0170] Then, measurement point j enters the clustering neighborhood of measurement point i.
[0171] Thus, the clustering neighborhood of each measurement point can be determined.
[0172] It can be seen that the embodiments of the present application not only achieve adaptive clustering of point cloud data, but also can determine the clustering neighborhood according to the actual detection performance of the radar, ensuring the determination of the clustering neighborhood range and the core points, which can change with the changes in different distances and angles, thus ensuring the consistency of the clustering algorithm within the region.
[0173] In some embodiments, in formula (8), the minimum vehicle spacing VEHICLE_SPACING is set to, for example, 1 meter.
[0174] Furthermore, when the number of measurement points within the clustering neighborhood of the measurement point i is greater than or equal to Minpts i (the minimum number of points), then the measurement point i can be used as a core point; otherwise, the measurement point i is used as a boundary point.
[0175] The measurement points outside the clustering neighborhood of the measurement point i can be used as noise points.
[0176] In some embodiments, the Minpts i can be determined by the following formula (9):
[0177]
[0178] In some embodiments, in formula (11), the near shielding distance SHIELDING_DISTANCE is set to, for example, 20 meters; the value of MAX_RNG can be set according to the radar capabilities, for example, taking values: 120m, 150m, 200m, 250m, 300m, etc.; is the floor symbol.
[0179] The clustering process is as follows Figure 4 As shown, the measurement point 1 can enter the neighborhood of the measurement point 2, and the measurement point 2 can enter the neighborhood of the measurement point 3. The finally obtained clustering clusters are, for example Figure 5 As shown, the measurement points 1, 2, and 3 can all be used as core points.
[0180] Regarding determining the representative point of the clustering from the core points:
[0181] When there are multiple measurement points in the clustering cluster (such as Figure 5 the clustering cluster shown), it is necessary to select a clustering representative point to represent the measurement information. For the actual scenario, the spatial position of the target can better represent the geometric center of the target. Therefore, the center of distance and angle is selected as the position of the center point within the cluster. The clustering cluster is the process of dividing the data set into several subsets, and each subset is called a cluster. The data points within the cluster are similar to each other, while the data points between different clusters are quite different.
[0182] Assume there are C core points in the clustering cluster. Then, for all the core points within the clustering cluster, calculate the radial distance rng of the center point center and the azimuth angle azi center , for example, determined by the following formula (12):
[0183]
[0184] Then, select the core point closest to the center point as the clustering representative point.
[0185] For example Figure 6 as shown, assume Figure 5 in the clustering cluster shown, there are 4 core points (C = 4). Then, based on the radial distances of these four core points, calculate the radial distance rng of the center point center , and, based on the azimuth angles of these four core points, calculate the azimuth angle azi of the center point center , obtain the position of the center point, and then determine the core point closest to this center point, that is, core point 2, and use this core point 2 as the representative point of the clustering.
[0186] That is to say, in order to reduce the amount of calculation data and reduce the interference between targets in the embodiments of the present application, for each clustering cluster, one representative point can be determined from multiple measurement points of the clustering cluster to represent the clustering cluster.
[0187] So far, after the clustering in the embodiments of the present application is completed, take the data of the representative points within each clustering cluster, perform the subsequent track initiation process based on the data of the representative points, and delete all other point cloud data, that is, only retain the data of the representative points.
[0188] S204. For each representative point, convert the spatial polar coordinates of the representative point to the rectangular coordinate system.
[0189] Specifically, for example
[0190] For the spatial static point P (i.e., the measurement point), there is a geometric relationship as shown Figure 7 between its radar rectangular coordinate system (x, y, z) and the spatial polar coordinate system (rng, azi, elv).
[0191] Denote the coordinates of point P in the spatial polar coordinate system as (rng, azi, elv), and the coordinates in the radar rectangular coordinate system as (x, y, z). Then, the transformation relationship between the coordinates in the spatial polar coordinate system and the coordinates in the radar rectangular coordinate system is as follows:
[0192]
[0193] For millimeter-wave radars in scenarios such as perimeters and traffic, the elevation angle elv information can be disregarded. Therefore, in some embodiments, the elevation angle information can be ignored. That is, assuming the target is on a plane (i.e., the xy plane), formula (9) is simplified to:
[0194]
[0195] For example Figure 8 As shown, the coordinates (rng, azi) of any point P in the space polar coordinate system can be converted into the coordinates (x, y) in the rectangular coordinate system.
[0196] Figure 8 In, FOV represents the field of view of the radar (Field of View, FOV), which means the range or angle that the radar can detect.
[0197] To avoid ambiguity in definitions, the parameters of the target in the rectangular coordinate system are defined as follows: Let the distance of the target in the x-axis direction (i.e., the coordinate x in the rectangular coordinate system) be p x and the speed be v x , and the distance of the target in the y-axis direction (i.e., the coordinate y in the rectangular coordinate system) be p y and the speed be v y .
[0198] When the target is in a moving state, its speed information needs to be considered. According to the common rectangular coordinate system and polar coordinate system, the total moving speed v of the target o can be decomposed into the speed [v x , v y in the rectangular coordinate system and the speed [v r , v a in the polar coordinate system. Among them, v r is the speed of the radial component of the target relative to the radar, and v a is the speed of the tangential component of the target relative to the radar. For example Figure 9 , Figure 10 As shown, where α represents the azimuth angle (the incident angle of the measured target relative to the radar, with the positive Y semi-axis as the reference), and θ represents the longitudinal swing angle (the angle by which the speed v o of the moving target deflects relative to the positive Y semi-axis).
[0199] For example Figure 9 , Figure 10 As shown, the position coordinates of the vehicle (i.e., the target) in the rectangular coordinate system are (p x , p y ), v ois the total speed of the vehicle. It should be noted that the speed magnitude and direction in both the rectangular coordinate system and the polar coordinate system need to meet the actual situation, that is, the decomposed speed components need to form acute angles with v o Since the total speed remains unchanged, the conversion relationships between the rectangular coordinate system and the polar coordinate system can be analyzed as follows:
[0200]
[0201] According to formula (16), to ensure the effective solvability of the angle conversion, p y and v y cannot be 0;
[0202] According to formula (17), to ensure that the total speed v o is solvable and v o > 0, it is necessary to satisfy |θ - α| < 90°.
[0203] S205. Based on the rectangular coordinates of the representative point, make a heading angle assumption for the representative point.
[0204] After determining the data of the representative point (including the coordinate information in the rectangular coordinate system), the radar can only obtain the radial distance, azimuth angle, and Doppler velocity of the target. Since the Doppler velocity is the velocity component of the target's total velocity along the radar's radial direction, it cannot represent the direction and magnitude of the target's total velocity.
[0205] To effectively analyze formula (17), it is necessary to introduce or assume unknown variables. Therefore, the embodiment of the present application proposes to make a heading angle assumption.
[0206] For example, in the rectangular coordinate system, assume that there are 8 possibilities for the direction of the target's total velocity v o . Start the assumption from due north, the first is 15°, and each subsequent direction is spaced 45°, as Figure 11 shown. A total of 8 assumed heading angles can be obtained. Specifically, they are respectively as Figure 12 shown.
[0207] The 8 directions can ensure that at least one direction has an angle deviation from the true velocity direction of no more than 22.5°. And, by comparing Figure 13 with Figure 14 , Figure 13 since the four directions of due north, due east, due west, and due south are not adopted, the problem of no solution caused by the trigonometric function operation of formula (16) can be avoided.
[0208] To ensure the rationality of the assumed direction and the solvability of the above formula (17), it should be ensured that the angle between the direction of the total velocity of the target and the Doppler velocity vel of the target is less than 90°. The calculation cases of the angle between the Doppler velocity vel and the assumed heading are respectively as follows Figure 15 and Figure 16 shown. Among them, Figure 15 the situation shown is the case greater than 90°, Figure 16 the situation shown is the case less than 90°. Then, the rationality of the assumption is screened, respectively as Figure 17 and Figure 18 shown. Among them, Figure 17 the situation shown is the case where the target approaches the radar, Figure 18 the situation shown is the case where the target moves away from the radar. The assumed headings (four assumed headings) within the rectangular frame are the assumed headings selected for the target.
[0209] In summary, in this embodiment, when presetting the track, 8 headings are set for the target, which are [15°, 60°, 105°, 150°, 195°, 240°, 285°, 330°] calculated clockwise from the due north. This not only fully considers the heading possibilities in different directions but also avoids the problems of zeros and poles of trigonometric functions in the x-axis and y-axis directions.
[0210] Moreover, after screening the assumed headings, no more than 4 reasonable assumed headings will be left for the radar to track, greatly improving the effective measurement information of the radar and reducing the calculation amount.
[0211] After step S205 is completed, the head of the track of each target is generated, that is, the track head. For the subsequent steps, track initiation and management are required.
[0212] S206. Based on the assumed heading angle of the representative point, track initiation is performed.
[0213] According to the screened assumed heading angle, using the above formula (15) (where x is p x , and y is p y ) and formula (17), the observed state information [p x , v x , p y , v y of the target can be calculated. For example, Figure 19 shown, which shows the track initiation process for the four assumed heading angles after selecting the measurement points (the selected measurement points are the representative points). The four assumed heading angles correspond to four predicted measurement points, which are predicted measurement points ① to ④ respectively. Among them, the data of predicted measurement point ① is the observed state information [p x[vx1, py, vy1], and based on this data, generate the track header corresponding to the assumed heading angle; the same applies to other predicted measurement points and will not be elaborated here.
[0214] S207. Track management.
[0215] For example, preset the track quality track_qualit of the track header to 3 and the track display status to track_flag = 0 for subsequent frames to perform track prediction and association.
[0216] Among them, the track quality track_quality is used to characterize the credibility of the track. For example, when the track quality track_quality reaches a preset value, the track is considered credible; otherwise, if the track quality track_quality is lower than the preset value, the track is considered not credible and the track is deleted.
[0217] The track display status track_flag is used to characterize whether the track needs to be output and displayed to the platform for the user to view. For example, when the track display status track_flag reaches a preset value, it is output and displayed; otherwise, it is temporarily stored.
[0218] For example, see Figure 20 , which shows the situation of performing measurement point prediction and track association with the predicted measurement point ③ (i.e., the predicted measurement point corresponding to one of the four assumed heading angles screened above) as the track header. For any of the track headers, for example, when the track header is associated with the point cloud data of the next frame, that is, when the value of the track quality track_quality corresponding to the track header is greater than the preset value (the specific value depends on actual needs), set the track display status track_flag to 1. track_flag being 1 indicates that the track can be displayed; otherwise, the track is not displayed temporarily.
[0219] In some embodiments, for the point cloud data of the next frame, manage the track quality as shown in the following formula (13):
[0220]
[0221] For any track header, if the track is successfully associated, the preset track quality track_quality corresponding to the track header is incremented by 1 (i.e., the first preset rule); if the association fails, the track quality track_quality is decremented by 1 (i.e., the second preset rule).
[0222] And so on. For example, when the value of the track quality track_quality corresponding to a track header becomes negative, the track corresponding to the track header is deleted and no longer associated.
[0223] Among them, regarding whether the association is successful, for example Figure 20 As shown, if there is a measurement point in the next frame within the association gate of any predicted measurement point, it is considered that the association is successful; otherwise, it is determined that the association fails. The association gate is a preset regional range.
[0224] In summary, the embodiments of the present application have the following beneficial effects:
[0225] For target tracking, since the heading angle hypothesis processing is performed on the point cloud data collected by the millimeter-wave radar, only the single-frame data of a single millimeter-wave radar is required to achieve an efficient target tracking effect, and the target tracking cost is greatly reduced;
[0226] In the embodiments of the present application, the track can be quickly initiated through single-frame measurement data, improving the speed and sensitivity of target tracking. Since the track initiation can be achieved without accumulating multi-frame point cloud data of the same target, effective tracking of flickering targets can be performed at the edge of the radar FOV, expanding the effective area of target tracking;
[0227] In the embodiments of the present application, multiple heading angle hypotheses are made for the same measurement point, so multiple tracks can be generated. Therefore, when tracking multiple targets, multiple direction possibilities can be provided, effectively avoiding the risk of track merging when multiple targets approach each other, and improving the tracking accuracy in the multi-target tracking scenario;
[0228] A single radar does not need to consider the transmission protocol, space, and target calibration issues with other sensors, reducing the difficulty of algorithm development and improving the development efficiency.
[0229] In addition, the millimeter-wave radar can work all-weather, avoiding problems such as bad weather like rain and snow and poor visibility at night.
[0230] Next, the devices or apparatuses provided by the embodiments of the present application will be introduced. The explanations or examples of the same or corresponding technical features as those in the above method will not be repeated hereinafter.
[0231] An electronic device provided by an embodiment of the present application, see Figure 21 , for example, includes:
[0232] A processor 600, configured to read a program in a memory 620 and execute the following processes:
[0233] Obtain the point cloud data of at least one target in the current frame, where the point cloud data of the target is collected by a preset sensor for detecting a preset detection area, and the data of at least one measurement point of the target is included in the point cloud data of each target;
[0234] For each of the said targets:
[0235] Determine the hypothesized heading angles of the target in multiple different directions;
[0236] Based on the hypothesized heading angles of the target in multiple different directions and the point cloud data of the target in the current frame, perform track initiation for the target; wherein, the directions of the hypothesized heading angles are preset directions.
[0237] In some embodiments, for each of the said targets, determining the hypothesized heading angles of the target in multiple different directions includes:
[0238] For each of the said targets, based on the point cloud data of the target in the current frame, screen out N hypothesized heading angles in N different directions from M preset hypothesized heading angles in M different directions as the hypothesized heading angles of the target in multiple different directions;
[0239] Wherein, the included angle between the hypothesized heading angle in each screened-out direction and the direction of the Doppler velocity of the target in the current frame is less than 90°;
[0240] Both N and M are preset positive integers, and the value of N is less than the value of M.
[0241] In some embodiments, the processor 600 is further configured to read the program in the memory 620 and execute the following process:
[0242] Cluster the point cloud data of at least one target in the current frame to obtain at least one cluster, and each cluster includes the data of at least one measurement point;
[0243] For each of the said clusters, determine the representative point of the cluster from the measurement points of the cluster;
[0244] The performing track initiation for the target based on the hypothesized heading angles of the target in multiple different directions and the point cloud data of the target in the current frame includes:
[0245] Take the data of each representative point as the data of one target, and for each of the said targets:
[0246] Based on the hypothesized heading angles of the target in multiple different directions and the data of the representative point corresponding to the target in the current frame, determine the data of multiple predicted measurement points of the representative point; wherein, the data of each predicted measurement point corresponds to a hypothesized heading angle in one direction;
[0247] Generate a track header based on the data of each predicted measurement point of the representative point, and obtain the track headers corresponding to the hypothesized heading angles of the target in multiple different directions.
[0248] In some embodiments, the processor 600 is further configured to read a program in the memory 620 and execute the following processes:
[0249] Obtain the point cloud data of the next frame;
[0250] Based on the point cloud data of the next frame, perform track association on each of the track headers. Wherein, for each of the track headers, if the association is successful, adjust the preset track quality parameter corresponding to the track header according to the first preset rule; if the association fails, adjust the preset track quality parameter corresponding to the track header according to the second preset rule;
[0251] For any one of the track headers, when the value of the preset track quality parameter corresponding to the track header meets the first preset condition, delete the track corresponding to the track header.
[0252] In some embodiments, the processor 600 is further configured to read a program in the memory 620 and execute the following processes:
[0253] For any one of the track headers, when the value of the preset track quality parameter corresponding to the track header meets the second preset condition, output and display the track corresponding to the track header.
[0254] In some embodiments, for each of the clustering clusters, determining a representative point of the clustering cluster from the measurement points of the clustering cluster includes:
[0255] For each of the clustering clusters:
[0256] For each measurement point in the clustering cluster, determine the measurement points within the clustering neighborhood of the measurement point. When the number of measurement points within the clustering neighborhood of the measurement point exceeds a threshold, determine the measurement point as a core point;
[0257] When there are multiple core points in the clustering cluster, determine the center point position based on the position information of the multiple core points;
[0258] Determine the core point closest to the center point position as the representative point of the clustering cluster.
[0259] In some embodiments, for each measurement point in each of the clustering clusters, the threshold is determined in the following manner:
[0260] Determine the first sum value of the preset near shielding distance and the maximum detection distance for the sensor; and determine the second sum value of the near shielding distance and the radial distance of the measurement point; wherein, the point cloud data collected by the sensor is the point cloud data of a target whose distance from the sensor exceeds the near shielding distance;
[0261] Determine the ratio of the first sum value to the second sum value;
[0262] Take the square root of the said ratio to obtain the value after taking the square root;
[0263] Round down the value after taking the square root to obtain the said threshold corresponding to the measurement point.
[0264] A transceiver 610, configured to receive and send data under the control of a processor 600.
[0265] Wherein, in Figure 21 Among them, the bus architecture may include any number of interconnected buses and bridges, specifically, various circuits represented by one or more processors represented by the processor 600 and a memory represented by the memory 620 are linked together. The bus architecture can also link together various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art, and therefore, will not be further described herein. The bus interface provides an interface. The transceiver 610 may be multiple components, that is, including a transmitter and a receiver, and provides a unit for communicating with various other devices on a transmission medium, and these transmission mediums include, these transmission mediums include wireless channels, wired channels, optical fiber cables and other transmission mediums. For different user devices, the user interface 630 may also be an interface capable of externally connecting and internally connecting required devices, and the connected devices include but are not limited to a keypad, a display, a speaker, a microphone, a joystick, etc.
[0266] The processor 600 is responsible for managing the bus architecture and general processing, and the memory 620 may store data used by the processor 600 when executing operations.
[0267] In some embodiments, the processor 600 may be a CPU (Central Processing Unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a CPLD (Complex Programmable Logic Device), and the processor may also adopt a multi-core architecture.
[0268] The processor is used to execute any of the methods provided in the embodiments of the present application according to the obtained executable instructions by calling a computer program stored in the memory. The processor and the memory may also be physically separated.
[0269] It should be noted here that the above-mentioned device provided in the embodiments of the present application can implement all the method steps implemented by the above-mentioned method embodiments, and can achieve the same technical effects. The same parts and beneficial effects as those in the method embodiments in this embodiment will not be specifically described herein.
[0270] See Figure 22 , a track initiation device provided by an embodiment of the present application includes:
[0271] The first unit 1 is configured to obtain point cloud data of at least one target in the current frame, where the point cloud data of the target is collected by a preset sensor for detecting a preset detection area, and the point cloud data of each target includes data of at least one measurement point of the target;
[0272] The second unit 12 is configured to:
[0273] For each of the targets:
[0274] Determine a plurality of different-direction assumed heading angles of the target;
[0275] Based on the plurality of different-direction assumed heading angles and the point cloud data of the target in the current frame, perform track initiation on the target; where the direction of the assumed heading angle is a preset direction.
[0276] In some embodiments, for each of the targets, determining a plurality of different-direction assumed heading angles of the target includes:
[0277] For each of the targets, based on the point cloud data of the target in the current frame, screen out N different-direction assumed heading angles from M different-direction assumed heading angles set in advance as the plurality of different-direction assumed heading angles of the target;
[0278] Wherein, the included angle between the assumed heading angle of each screened-out direction and the direction of the Doppler velocity of the target in the current frame is less than 90°;
[0279] Both N and M are preset positive integers, and the value of N is less than the value of M.
[0280] In some embodiments, the second unit 12 is further configured to:
[0281] Cluster the point cloud data of at least one target in the current frame to obtain at least one clustering cluster, and each clustering cluster includes data of at least one measurement point;
[0282] For each of the clustering clusters, determine a representative point of the clustering cluster from the measurement points of the clustering cluster;
[0283] The performing track initiation on the target based on the plurality of different-direction assumed heading angles and the point cloud data of the target in the current frame includes:
[0284] Use the data of each representative point as the data of one target, and for each of the targets:
[0285] Based on the assumed heading angles in a plurality of different directions and the data of the representative point corresponding to the target in the current frame, determine the data of a plurality of predicted measurement points of the representative point; wherein, the data of each predicted measurement point corresponds to an assumed heading angle in one direction.
[0286] Based on the data of each predicted measurement point of the representative point, generate a track head, and obtain the track heads corresponding to the assumed heading angles in the plurality of different directions of the target.
[0287] In some embodiments, the second unit 12 is further configured to:
[0288] Obtain the point cloud data of the next frame;
[0289] Based on the point cloud data of the next frame, perform track association on each of the track heads. Among them, for each of the track heads, if the association is successful, adjust the preset track quality parameter corresponding to the track head according to the first preset rule, and if the association fails, adjust the preset track quality parameter corresponding to the track head according to the second preset rule.
[0290] For any one of the track heads, when the value of the preset track quality parameter corresponding to the track head satisfies the first preset condition, delete the track corresponding to the track head.
[0291] In some embodiments, the second unit 12 is further configured to:
[0292] For any one of the track heads, when the value of the preset track quality parameter corresponding to the track head satisfies the second preset condition, output and display the track corresponding to the track head.
[0293] In some embodiments, for each of the clustering clusters, determining the representative point of the clustering cluster from the measurement points of the clustering cluster includes:
[0294] For each of the clustering clusters:
[0295] For each measurement point in the clustering cluster, determine the measurement points within the clustering neighborhood of the measurement point. When the number of measurement points within the clustering neighborhood of the measurement point exceeds a threshold, determine the measurement point as a core point.
[0296] When there are multiple core points in the clustering cluster, determine the center point position based on the position information of the multiple core points;
[0297] Determine the core point closest to the center point position as the representative point of the clustering cluster.
[0298] In some embodiments, for each measurement point in each of the clustering clusters, the threshold is determined in the following manner:
[0299] Determine the first sum value of the preset near shielding distance and the maximum detection distance for the sensor; and determine the second sum value of the near shielding distance and the radial distance of the measurement point; wherein, the point cloud data collected by the sensor is the point cloud data of a target whose distance from the sensor exceeds the near shielding distance;
[0300] Determine the ratio of the first sum value to the second sum value;
[0301] Take the square root of the ratio to obtain the value after taking the square root;
[0302] Round down the value after taking the square root to obtain the threshold corresponding to the measurement point.
[0303] It should be noted that the division of units in the embodiments of the present application is illustrative. It is only a logical function division, and there may be other division methods in actual implementation. In addition, in each embodiment of the present application, each functional unit may be integrated in a processing unit, or each unit may exist physically alone, or two or more units may be integrated in one unit. The above integrated unit may be implemented in the form of hardware or in the form of a software functional unit.
[0304] If the above integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the methods described in the various embodiments of the present application. The foregoing storage medium includes: various media such as USB flash drives, mobile hard disks, read-only memories (ROMs), random access memories (RAMs), magnetic disks, or optical discs that can store program codes.
[0305] Any of the devices or apparatuses provided in the embodiments of the present application may specifically be a desktop computer, a portable computer, a smart phone, a tablet computer, a personal digital assistant (PDA), etc. It may include a central processing unit (CPU), a memory, input / output devices, etc. The input devices may include a keyboard, a mouse, a touch screen, etc., and the output devices may include a display device, such as a liquid crystal display (LCD), a cathode ray tube (CRT), etc.
[0306] The memory may include a read-only memory (ROM) and a random access memory (RAM), and provide program instructions and data stored in the memory to the processor. In the embodiments of the present application, the memory may be used to store the programs of any of the methods provided in the embodiments of the present application.
[0307] By invoking the program instructions stored in the memory, the processor is configured to execute any of the methods provided in the embodiments of the present application according to the obtained program instructions.
[0308] The embodiments of the present application further provide a computer program product or a computer program. The computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes any of the methods in the above embodiments. The program product may adopt any combination of one or more readable media. The readable media may be a readable signal medium or a readable storage medium. The readable storage medium may, for example, but not be limited to, be an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples (non-exhaustive list) of the readable storage medium include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
[0309] The embodiments of the present application provide a computer-readable storage medium for storing computer program instructions used for the apparatuses provided in the embodiments of the present application, and the computer-readable storage medium contains programs for executing any of the methods provided in the embodiments of the present application. The computer-readable storage medium may be a non-transitory computer-readable medium.
[0310] The computer-readable storage medium may be any available medium or data storage device accessible by a computer, including but not limited to magnetic memories (such as floppy disks, hard disks, magnetic tapes, magneto-optical disks (MO), etc.), optical memories (such as CDs, DVDs, BDs, HVDs, etc.), and semiconductor memories (such as ROM, EPROM, EEPROM, non-volatile memory (NANDFLASH), solid state drives (SSD)), etc.
[0311] It should be understood that:
[0312] The access technology through which entities in a communication network transmit traffic to and from each other may be any suitable current or future technology, such as WLAN (Wireless Local Area Network), WiMAX (Worldwide Interoperability for Microwave Access), LTE, LTE-A, 5G, Bluetooth, infrared, etc.; additionally, embodiments may also apply wired technologies, for example, IP-based access technologies, such as wired networks or fixed lines.
[0313] Embodiments suitable for being implemented as software code or a part thereof and running using a processor or processing function are independent of the software code and may be specified using any known or future-developed programming language, such as high-level programming languages, such as objective-C, C, C++, C#, Java, Python, Javascript, other scripting languages, etc., or low-level programming languages, such as machine language or assembler.
[0314] The implementation of embodiments is independent of hardware and may be implemented using any known or future-developed hardware technology or any combination thereof, such as microprocessors or CPUs (Central Processing Units), MOS (Metal Oxide Semiconductor), CMOS (Complementary MOS), BiMOS (Bipolar MOS), BiCMOS (Bipolar CMOS), ECL (Emitter Coupled Logic), and / or TTL (Transistor-Transistor Logic).
[0315] Embodiments may be implemented as separate devices, apparatuses, units, components, or functions, or in a distributed manner. For example, one or more processors or processing functions may be used or shared in the processing, or one or more processing segments or processing parts may be used and shared in the processing, where one physical processor or more than one physical processor may be used to implement one or more processing parts dedicated to a specific processing as described.
[0316] The apparatus may be implemented by a semiconductor chip, a chipset, or a (hardware) module including such a chip or chipset.
[0317] The embodiments can also be implemented as any combination of hardware and software, such as ASIC (Application Specific IC (Integrated Circuit)) components, FPGA (Field Programmable Gate Array) or CPLD (Complex Programmable Logic Device) components, or DSP (Digital Signal Processor) components.
[0318] The embodiments can also be implemented as a computer program product, including a computer-usable medium having computer-readable program code embodied therein, the computer-readable program code being adapted to execute the processes as described in the embodiments, wherein the computer-usable medium can be a non-transitory medium.
[0319] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories and optical memories, etc.) containing computer-usable program code.
[0320] The present application is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of flows and / or blocks in the flowcharts and / or block diagrams, can be realized by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices generate means for realizing the functions specified in Figure 1 one or more flows and / or blocks Figure 1 one or more blocks.
[0321] These computer program instructions can also be stored in a computer-readable memory capable of guiding a computer or other programmable data processing device to work in a specific manner, such that the instructions stored in the computer-readable memory generate a manufactured article including instruction means, the instruction means realizing the functions specified in Figure 1 one or more flows and / or blocks Figure 1 one or more blocks.
[0322] These computer program instructions can also be loaded onto a computer or other programmable data processing device, such that a series of operation steps are executed on the computer or other programmable device to generate a computer-implemented process, so that the instructions executed on the computer or other programmable device provide means for realizing the functions specified in Figure 1 one or more flows and / or blocksFigure 1 Steps of functions specified in one or more boxes.
[0323] Obviously, those skilled in the art can make various changes and modifications to this application without departing from the spirit and scope of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalent technologies, this application is also intended to include these changes and modifications.
Claims
1. A track initiation method, characterized in that, The method includes: Obtaining point cloud data of at least one target in the current frame, where the point cloud data of the target is collected by a preset sensor detecting a preset detection area, and the point cloud data of each target includes data of at least one measurement point of the target; For each of the targets: Determining a plurality of hypothesized heading angles in different directions of the target; Based on the plurality of hypothesized heading angles in different directions and the point cloud data of the target in the current frame, initiating a track for the target; wherein the direction of the hypothesized heading angle is a preset direction.
2. The method according to claim 1, characterized in that For each of the targets, determining a plurality of hypothesized heading angles in different directions of the target includes: For each of the targets, based on the point cloud data of the target in the current frame, screening out N hypothesized heading angles in different directions from M preset hypothesized heading angles in different directions as the plurality of hypothesized heading angles in different directions of the target; Wherein, the included angle between the hypothesized heading angle in each screened-out direction and the direction of the Doppler velocity of the target in the current frame is less than 90°; Both N and M are preset positive integers, and the value of N is less than the value of M.
3. The method according to claim 1, characterized in that The method further includes: Clustering the point cloud data of at least one target in the current frame to obtain at least one clustering cluster, and each clustering cluster includes data of at least one measurement point; For each of the clustering clusters, determining a representative point of the clustering cluster from the measurement points of the clustering cluster; The step of, for each of the targets, initiating a track for the target based on the plurality of hypothesized heading angles in different directions and the point cloud data of the target in the current frame includes: Taking the data of each representative point as the data of a target, and for each of the targets: Based on the plurality of hypothesized heading angles in different directions and the data of the representative point corresponding to the target in the current frame, determining data of a plurality of predicted measurement points of the representative point; wherein the data of each predicted measurement point corresponds to a hypothesized heading angle in one direction; Generating a track header based on the data of each predicted measurement point of the representative point to obtain track headers corresponding to the plurality of hypothesized heading angles in different directions of the target.
4. The method according to claim 3, characterized in that, The method further includes: Obtaining the point cloud data of the next frame; Based on the point cloud data of the next frame, performing track association on each of the track headers. For each of the track headers, if the association is successful, adjusting the preset track quality parameter corresponding to the track header according to a first preset rule, and if the association fails, adjusting the preset track quality parameter corresponding to the track header according to a second preset rule; For any one of the track headers, when the value of the preset track quality parameter corresponding to the track header satisfies a first preset condition, deleting the track corresponding to the track header.
5. The method according to claim 4, wherein The method further includes: For any one of the track headers, when the value of the preset track quality parameter corresponding to the track header satisfies a second preset condition, outputting and displaying the track corresponding to the track header.
6. The method according to claim 1, wherein For each of the clustering clusters, determining a representative point of the clustering cluster from the measurement points of the clustering cluster includes: For each of the clustering clusters: For each measurement point in the cluster, determine the measurement points within the clustering neighborhood of the measurement point. When the number of measurement points within the clustering neighborhood of the measurement point exceeds a threshold, determine the measurement point as a core point; When there are multiple core points in the cluster, determine the center point position based on the position information of the multiple core points; Determine the core point closest to the center point position as the representative point of the cluster.
7. The method according to claim 6, characterized in that, For each measurement point in each of the clusters, the threshold is determined in the following manner: Determine the first sum value of the preset near shielding distance and the maximum detection distance for the sensor; and, determine the second sum value of the near shielding distance and the radial distance of the measurement point; wherein, the point cloud data collected by the sensor is the point cloud data of the target whose distance from the sensor exceeds the near shielding distance; Determine the ratio of the first sum value to the second sum value; Take the square root of the ratio to obtain the value after taking the square root; Round down the value after taking the square root to obtain the threshold corresponding to the measurement point.
8. A track initiation device, characterized in that, The device includes: A first unit for obtaining point cloud data of at least one target in the current frame, wherein the point cloud data of the target is collected by a preset sensor for detecting a preset detection area, and the point cloud data of each target includes data of at least one measurement point of the target; A second unit for: For each of the targets: Determine multiple different direction assumed heading angles of the target; Based on the multiple different direction assumed heading angles and the point cloud data of the target in the current frame, initiate the track of the target; wherein the direction of the assumed heading angle is a pre-set direction.
9. An electronic device, characterized in that, Comprising: A memory for storing program instructions; A processor for calling the program instructions stored in the memory and executing the method according to any one of claims 1 to 7 according to the obtained program.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions for causing the computer to execute the method according to any one of claims 1 to 7.