Method and device for detecting obstacles

By preprocessing point cloud data and lane information, combined with supervision network model, clustering algorithm and Kalman filtering algorithm, the problems of high detection costs and missed detection are solved, and the accuracy and reliability of detection are improved.

CN120356187APending Publication Date: 2025-07-22BEIJING JINGWEI HIRAIN TECH CO INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510495312.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-18
Publication Date
2025-07-22

AI Technical Summary

Technical Problem

The existing obstacle detection technology is costly and is prone to missed detection when the data is incomplete, which affects detection accuracy and reliability.

Method used

By preprocessing time-synchronized point cloud data and lane information, supervised network model and preset clustering algorithm are used to detect obstacles of interest and non-interested obstacles, and combined with Kalman filtering algorithm, obstacle association matching and attribute information update are output to determine the track state.

Benefits of technology

It effectively reduces the missed detection and misdetection rates of dynamic and static obstacles, reduces costs and processing volume, and improves the accuracy and robustness of obstacle detection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120356187A_ABST
    Figure CN120356187A_ABST
Patent Text Reader

Abstract

The invention provides a method and device for detecting an obstacle, and the method comprises the steps: carrying out the preprocessing of time-synchronized point cloud data and lane information, and obtaining non-ground point cloud data; for each frame of non-ground point cloud data, detecting an interested obstacle and a non-interested obstacle by using a supervised network model and a preset clustering algorithm; for each frame of detection obstacle after the initial track obstacle, according to the previous frame of track obstacle of the current frame and a Kalman filtering algorithm, correlation matching is carried out on the current frame of track obstacle and the current frame of detection obstacle, and attribute information of the current frame of track obstacle is updated; and if the updated state of the current frame track obstacle is in a determined track state, outputting the track obstacle. Through combination of a network model, a clustering algorithm and a track management method, leak detection and false detection rates of dynamic and static obstacles are effectively reduced. And meanwhile, the cost and the handling capacity are reduced, and the accuracy and the robustness of obstacle detection are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of intelligent driving technology, and particularly to a method and device for detecting obstacles. Background Art

[0002] In the field of intelligent driving technology, road obstacle detection is one of the important technologies for realizing autonomous driving decision-making and ensuring driving safety. The goal of obstacle detection is to accurately identify obstacles on the road, provide information such as their positions, sizes, categories, dynamic and static attributes, etc., provide necessary inputs for the decision-making system, and thus achieve a safe and smooth driving experience.

[0003] Currently, obstacle detection technology mainly uses deep learning methods to identify obstacles through neural networks, which has high adaptability and robustness and can effectively handle various obstacle recognition tasks in complex environments. However, this method requires a large amount of labeled data for training, which not only increases the cost of data collection and processing, but also makes the training process time-consuming. In addition, when the data is incomplete or the labeling is inaccurate, the deep learning model may miss detections, affecting the detection accuracy and reliability. Summary of the Invention

[0004] In view of this, embodiments of the present invention provide a method and device for detecting obstacles to solve the problems of high cost and possible missed detections when the data is incomplete in the current obstacle detection technology.

[0005] To achieve the above object, embodiments of the present invention provide the following technical solutions:

[0006] The first aspect of the present invention discloses a method for detecting obstacles, the method including:

[0007] When receiving point cloud data, obtaining corresponding lane information according to the timestamp of the point cloud data;

[0008] Preprocessing the point cloud data and the lane information to obtain non-ground point cloud data;

[0009] For each frame of non-ground point cloud data, using a supervised network model to detect the non-ground point cloud data to obtain interested obstacles, and using a preset clustering algorithm to detect the non-ground point cloud data to obtain non-interested obstacles;

[0010] Labeling the interested obstacles and non-interested obstacles corresponding to the first frame of non-ground point cloud data as initial track obstacles, and labeling the interested obstacles and non-interested obstacles corresponding to each frame of non-ground point cloud data except the first frame as the detected obstacles of this frame;

[0011] For each frame of detected obstacles after the initial track obstacle, the track obstacle of the current frame and the detected obstacle of the current frame are associated and matched according to the track obstacle of the previous frame of the detected obstacle of the current frame and the Kalman filter algorithm to obtain a matching result; wherein the track obstacle includes the current position information and motion trajectory information of the obstacle;

[0012] Based on the matching result, the attribute information of the obstacle of the current frame track is updated, and it is determined whether the state of the obstacle of the current frame track after the update is a determined track state;

[0013] Output the track obstacles in the determined track state.

[0014] Preferably, the preprocessing of the point cloud data and the lane information to obtain non-ground point cloud data includes:

[0015] Performing angle correction on the point cloud data based on the angle correction file and converting the point cloud data into structured point cloud data;

[0016] Converting the coordinate system of the structured point cloud data into the current vehicle coordinate system according to the laser radar external parameters;

[0017] Based on the lane line and road boundary information in the lane information, invalid point cloud data in the structured point cloud data is eliminated to obtain target point cloud data;

[0018] The ground point cloud data in the target point cloud data is eliminated to obtain non-ground point cloud data.

[0019] Preferably, for each frame of non-ground point cloud data, detecting the non-ground point cloud data using a supervised network model to obtain obstacles of interest, and detecting the non-ground point cloud data using a preset clustering algorithm to obtain obstacles of non-interest include:

[0020] For each frame of non-ground point cloud data, the non-ground point cloud data is detected using a supervised network model to obtain obstacles of interest;

[0021] Using a preset clustering algorithm to detect the non-ground point cloud data to obtain universal obstacles;

[0022] The obstacle of interest is deleted from the general obstacles to obtain obstacles of no interest.

[0023] Preferably, for each frame of obstacle detection after the initial track obstacle, the current frame track obstacle and the current frame detection obstacle are associated and matched according to the previous frame track obstacle of the current frame detection obstacle and the Kalman filter algorithm to obtain a matching result, including:

[0024] Detect obstacles for each frame after the initial track obstacle, and obtain the attribute information of the previous frame's track obstacle for the current frame's obstacle detection from the vehicle state information corresponding to the timestamp of the point cloud data;

[0025] According to the attribute information of the previous frame's track obstacle and the Kalman filtering algorithm, predict the target attribute information of the current frame's track obstacle;

[0026] Through the cascade association matching strategy and the preset matching algorithm, associate and match the target attribute information with the attribute information of the current frame's detected obstacle to obtain a matching result.

[0027] Preferably, the step of "through the cascade association matching strategy and the preset matching algorithm, associate and match the target attribute information with the attribute information of the current frame's detected obstacle to obtain a matching result" includes:

[0028] According to the cascade association matching strategy, use the preset matching algorithm to match the track obstacles of interest in the target attribute information of the current frame's track obstacle with the detected obstacles of interest in the attribute information of the current frame's detected obstacle to obtain a matching result;

[0029] Use the preset matching algorithm to match the non-track obstacles of interest in the target attribute information with the non-detected obstacles of interest in the attribute information to obtain a matching result;

[0030] Use the preset matching algorithm to match the remaining unmatched track obstacles in the target attribute information with the remaining unmatched detected obstacles in the attribute information to obtain a matching result.

[0031] Preferably, the step of "update the attribute information of the current frame's track obstacle based on the matching result and determine whether the state of the updated current frame's track obstacle is the determined track state" includes:

[0032] When the matching result is a successful match, correct the target attribute information according to the attribute information of the current frame's detected obstacle, update the attribute information of the current frame's track obstacle, and increment the associated frame count by one;

[0033] When the matching result is an unsuccessful match, update the attribute information of the current frame's track obstacle according to the target attribute information, and decrement the associated frame count by one;

[0034] When the associated frame count is not less than the threshold and each frame corresponding to the associated frame count is a continuous frame, determine that the state of the updated current frame's track obstacle is the determined track state.

[0035] Preferably, the step of "output the track obstacles in the determined track state" includes:

[0036] Obtain the attribute information of the track obstacle in the determined track state, the absolute speed and heading of the current vehicle;

[0037] Determine the dynamic and static characteristics of the track obstacle according to the relative speed between the track obstacle and the current vehicle, the absolute speed and the heading in the attribute information;

[0038] Based on the position, size and heading in the attribute information, and combined with the lane line equation, determine the lane information where the track obstacle is located and the possibility of crossing the line;

[0039] Output the attribute information, dynamic and static characteristics, lane information where the track obstacle is located and the possibility of crossing the line of the track obstacle.

[0040] The second aspect of the present invention discloses a device for detecting obstacles, and the device includes:

[0041] A message synchronization module, configured to obtain corresponding lane information according to the timestamp of the point cloud data when receiving the point cloud data;

[0042] A point cloud preprocessing module, configured to preprocess the point cloud data and the lane information to obtain non-ground point cloud data;

[0043] A single-frame obstacle detection module, configured to, for each frame of non-ground point cloud data, use a supervised network model to detect the non-ground point cloud data to obtain interested obstacles, and use a preset clustering algorithm to detect the non-ground point cloud data to obtain non-interested obstacles;

[0044] An identification module, configured to identify the interested obstacles and non-interested obstacles corresponding to the first frame of non-ground point cloud data as initial track obstacles, and identify the interested obstacles and non-interested obstacles corresponding to each frame of non-ground point cloud data except the first frame as the detected obstacles of this frame;

[0045] An obstacle association and matching module, configured to, for each frame of detected obstacles after the initial track obstacle, perform association and matching on the current frame of track obstacle and the current frame of detected obstacles according to the previous frame of track obstacle of the current frame of detected obstacle and the Kalman filtering algorithm to obtain a matching result; wherein, the track obstacle includes the current position information and motion trajectory information of the obstacle;

[0046] An update module, configured to update the attribute information of the current frame of track obstacle based on the matching result, and determine whether the state of the updated current frame of track obstacle is the determined track state;

[0047] An output module, configured to output the track obstacles in the determined track state.

[0048] The third aspect of the present invention discloses an electronic device, including:

[0049] a memory and a processor;

[0050] wherein, the memory is used for storing a program;

[0051] the processor is used for executing the program, and when the program is executed, it is specifically used to implement a method for detecting obstacles disclosed in the first aspect of the present invention.

[0052] The fourth aspect of the present invention discloses a computer storage medium for storing a computer program, and when the computer program is executed, it is used to implement a method for detecting obstacles disclosed in the first aspect of the present invention.

[0053] Based on the method and device for detecting obstacles provided in the embodiments of the present invention above, the time-synchronized point cloud data and lane information are preprocessed to obtain non-ground point cloud data; for each frame of non-ground point cloud data, a supervised network model and a preset clustering algorithm are used to detect obstacles of interest and non-obstacles of interest; for each frame of detected obstacles after the initial track obstacle, according to the previous frame track obstacle of the current frame and the Kalman filtering algorithm, the current frame track obstacle and the current frame detected obstacle are associated and matched, and the attribute information of the current frame track obstacle is updated; if the state of the updated current frame track obstacle is in the determined track state, the track obstacle is output. By combining the network model, clustering algorithm and track management method, the missed detection and false detection rates of dynamic and static obstacles are effectively reduced. At the same time, the cost and processing volume are reduced, and the accuracy and robustness of obstacle detection are improved. Description of the Drawings

[0054] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the drawings in the following description are only the embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained according to the provided drawings.

[0055] Figure 1 It is a flowchart of a method for detecting obstacles provided by an embodiment of the present invention;

[0056] Figure 2 It is a schematic diagram of a method for detecting obstacles provided by an embodiment of the present invention;

[0057] Figure 3 It is a calculation example diagram of lanes and crossing lines provided by an embodiment of the present invention;

[0058] Figure 4Structural block diagram of a device for detecting obstacles provided by an embodiment of the present invention;

[0059] Figure 5 Schematic structural diagram of an electronic device provided by another embodiment of the present application. Detailed implementation manners

[0060] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

[0061] In the present application, the terms "include", "comprise" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or device. Without further limitation, an element defined by the phrase "including a..." does not exclude the existence of additional identical elements in the process, method, article or device including the element.

[0062] As can be seen from the background art, currently, the obstacle detection technology mainly uses deep learning methods to identify obstacles through neural networks. Since a large amount of labeled data is required for training, the cost is relatively high, and there may be a problem of missed detection when the data is incomplete.

[0063] Therefore, an embodiment of the present invention provides a method and device for detecting obstacles, which preprocess time-synchronized point cloud data and lane information to obtain non-ground point cloud data; for each frame of non-ground point cloud data, a supervised network model and a preset clustering algorithm are used to detect obstacles of interest and non-obstacles of interest; for each frame of detected obstacles after the initial track obstacle, according to the track obstacle of the previous frame of the current frame and the Kalman filtering algorithm, the track obstacle of the current frame and the detected obstacle of the current frame are associated and matched, and the attribute information of the track obstacle of the current frame is updated; if the state of the updated track obstacle of the current frame is in the determined track state, the track obstacle is output. By combining the network model, clustering algorithm and track management method, the missed detection and false detection rates of dynamic and static obstacles are effectively reduced. At the same time, the cost and processing volume are reduced, and the accuracy and robustness of obstacle detection are improved.

[0064] See Figure 1 , which shows a flowchart of a method for detecting obstacles provided by an embodiment of the present invention. The method includes:

[0065] Step S101: When receiving the point cloud data, obtain the corresponding lane information according to the timestamp of the point cloud data.

[0066] In the process of specifically implementing step S101, when receiving the point cloud data sent by the lidar sensor, according to the timestamp of the point cloud data, obtain the lane information corresponding to the same timestamp, including but not limited to lane lines and road boundary information (obtained through visual perception or the map module).

[0067] In practical applications, according to the timestamp of the point cloud data, obtain the vehicle state information corresponding to the same timestamp, including but not limited to the vehicle speed and heading information of the vehicle itself (obtained through in-vehicle bus information or a combined inertial navigation sensor).

[0068] It can be understood that the point cloud data sent by the lidar sensor is the main metadata. After receiving the point cloud data, trigger the synchronization mechanism to obtain the vehicle state information corresponding to the same timestamp, that is, lane line and road boundary information, the vehicle speed and heading information of the vehicle itself.

[0069] It can be further understood that if the point cloud data is not received, the synchronization mechanism will not be triggered. Combining with the "S1 message synchronization module" shown in the embodiments of the present invention Figure 2 after triggering the synchronization mechanism, perform the "S2 point cloud preprocessing module", including three parts: point cloud correction, drivable area restriction, and non-ground point cloud segmentation. The specific preprocessing content is as follows.

[0070] Step S102: Preprocess the point cloud data and lane information to obtain non-ground point cloud data.

[0071] In the process of specifically implementing step S102, the preprocessing performed on the point cloud data and lane information includes correcting the point cloud, restricting the drivable area, and segmenting the non-ground point cloud, so as to obtain the preprocessed non-ground point cloud data.

[0072] It can be understood that the process of preprocessing includes (processes A1 to A4):

[0073] Process A1: Perform angle correction on the point cloud data based on the angle correction file and convert it into structured point cloud data.

[0074] It should be noted that since the original point cloud data sent by the lidar is arranged disorderly, and there are problems with angle offset and inconsistent coordinate systems between the point cloud data and the lidar's own coordinate system, it is necessary to correct the point cloud before subsequent processing.

[0075] Specifically, obtain the angle correction file, perform angle correction on the point cloud data, and then convert the angle-corrected point cloud data into structured point cloud data.

[0076] Process A2: Convert the coordinate system of the structured point cloud data into the current vehicle coordinate system according to the extrinsic parameters of the lidar.

[0077] Specifically, according to the extrinsic parameters of the lidar, convert the coordinate system of the structured point cloud data into the coordinate system of the current vehicle for subsequent processing.

[0078] Process A3: Based on the lane lines and road boundary information in the lane information, eliminate the invalid point cloud data in the structured point cloud data to obtain the target point cloud data.

[0079] It can be understood that according to the lane lines and road boundary information in the lane information, it can be determined that the drivable area of the vehicle should be within the range of the left and right lane lines or the road boundary. Therefore, the valid point cloud data can be determined according to the left and right boundaries [y_right, y_left] in the vehicle coordinate system, and the point cloud data outside this range can be eliminated to reduce the processing volume.

[0080] That is to say, the point cloud data outside the left and right boundary ranges in the vehicle coordinate system is invalid point cloud data. After elimination, the target point cloud data is obtained, that is, the point cloud data within the range of the left and right lane lines or the road boundary.

[0081] Process A4: Eliminate the ground point cloud data in the target point cloud data to obtain the non-ground point cloud data.

[0082] It should be noted that since obstacles are usually located in the non-ground point cloud area, in order to further reduce the point cloud processing volume and avoid errors in obstacle detection caused by ground points, it is necessary to segment the point cloud data.

[0083] Specifically, the ground point cloud data in the target point cloud data can be eliminated by methods such as plane fitting, occupancy grid, clustering, and region growing to obtain the non-ground point cloud data.

[0084] It can be understood that by segmenting the ground points and non-ground points, the ground point cloud data can be effectively eliminated, thereby retaining the point cloud data related to obstacles and improving the accuracy and efficiency of subsequent processing.

[0085] Step S103: For each frame of non-ground point cloud data, use the supervised network model to detect the non-ground point cloud data to obtain the obstacles of interest, and use the preset clustering algorithm to detect the non-ground point cloud data to obtain the non-obstacles of interest.

[0086] It should be noted that in step S103, single-frame obstacle detection is performed on the non-ground point cloud data, as shown in the "S3 Single-Frame Obstacle Detection Module" of this embodiment of the present invention. Figure 2 as shown.

[0087] It is understandable that the common, movable, easily collectible and labelable obstacles on the road are usually referred to as obstacles of interest, mainly including the following five categories: cars (various passenger cars), large vehicles (van trucks, trucks, buses), tricycles, two-wheeled riders (motorcycles, electric vehicles, bicycles), and pedestrians.

[0088] In the process of specifically implementing step S103, for each frame of non-ground point cloud data, the supervised network model is used to detect the non-ground point cloud data, and the obstacles of interest are obtained (including information such as the position (X / Y / Z coordinates), heading angle, size (length, width, and height), and category attributes of the obstacles of interest in the coordinate system of the current vehicle). In addition, the preset clustering algorithm is used to detect the non-ground point cloud data to obtain general obstacles, and then the obstacles of interest are removed from the general obstacles to obtain non-obstacles of interest.

[0089] It should be particularly noted that the supervised network model can refer to the PointPillars model or the PointNet model. The data of the obstacles of interest are collected and labeled in advance to establish a training data set, the supervised network model is trained and evaluated, and the trained supervised network model is deployed in the vehicle-side computing platform.

[0090] It should be noted that due to the limitations of the training data set, the supervised network model can only detect and output the obstacles of interest, and these obstacles are mostly movable (including dynamic and static obstacles). Due to the mobility, such obstacles have high requirements for category detection and need to predict their movement trends in the decision-making module to provide a basis for reasonable planning.

[0091] It is understandable that the preset clustering algorithm can be the Euclidean clustering algorithm or the density clustering algorithm. When performing 3D point cloud clustering, the features of each point and its surrounding local space are extracted or transformed to obtain various attributes, such as normal vector, density, distance, reflection intensity, etc. Through these attributes, the point clouds of different categories are segmented and clustered.

[0092] Taking the Euclidean clustering algorithm as an example, based on the Euclidean distance as the judgment criterion, for a point P in space, the k nearest points are searched in its neighborhood through the KD-Tree, and the points with a distance less than the set threshold are added to the set Q. If the elements in Q no longer increase, the clustering ends; otherwise, a point other than point P is selected from the set Q, and the above process is repeated.

[0093] It should be noted that during the sampling process of lidar sensors, the point cloud data shows the characteristic of being dense near and sparse far away: the distance between point sets at close range is small, while the distance between point sets at far range is large. To avoid the problem that the clustering effect of nearby obstacles is good while the distant obstacles are under-segmented or truncated, in practical applications, a segmented clustering method can be adopted. Different distance thresholds are set for different clustering segments, and the clustering algorithms for each segment are processed in parallel through multi-threading. Finally, the clustering results are fused between the segments.

[0094] In addition, to avoid abnormal point cloud clusters in the clustering results, in specific applications, threshold management is performed on the clustering results according to experience. For example, thresholds can be set for the size and position of the clusters, and the clustering results with overly large sizes or suspended in the air are removed.

[0095] In a specific embodiment, for the non-ground point cloud data of the same frame, two types of obstacle detection results (i.e., interested obstacles and general obstacles) are obtained through a supervised network model and a preset clustering algorithm. Obstacles that are usually difficult to detect by the supervised network model include stationary objects, such as fixed obstacles on the road like cone barrels, stone piers, stone piles, sand piles, road construction facilities occupying the road, guardrails, water horses, etc.

[0096] Therefore, the two detection results of the supervised network model and the preset clustering algorithm are matched, and the clustering detection results that match the detection results of the supervised network model are removed from the general obstacles. In this way, all the obstacles detected by the supervised network model are regarded as interested obstacles, and the remaining general obstacles after removal are regarded as non-interested obstacles.

[0097] It should be noted that to avoid inaccurate or jittery single-frame obstacle detection results, the embodiments of the present invention perform multi-frame tracking to ensure the accuracy of obstacle detection and the stability of various attributes of the obstacles, thereby improving the robustness of the algorithm. The specific multi-frame tracking process is as shown in the "S4 Obstacle Tracking and Attribute Judgment Module" in the embodiments of the present invention. Figure 2 as shown in

[0098] Step S104: Mark the interested obstacles and non-interested obstacles corresponding to the first-frame non-ground point cloud data as initial track obstacles, and mark the interested obstacles and non-interested obstacles corresponding to each frame of non-ground point cloud data except the first frame as the detected obstacles of that frame.

[0099] It should be specifically noted that the detected obstacles refer to identifying, positioning, and measuring the obstacles between the device, robot, or aircraft. Usually, they are detected by sensors (such as lidar, radar, camera, ultrasonic sensor, etc.).

[0100] A track obstacle refers to an obstacle that may collide with other objects when an object moves along a given trajectory or path during navigation, flight, or driving. Track obstacles not only involve the current position of the obstacle but also the movement trajectory of the obstacle.

[0101] During the specific implementation of step S104, since there is no historical track during the first-frame processing, it is not necessary to predict the first-frame track obstacle based on the historical track. Specifically, the interested obstacles and non-interested obstacles corresponding to the first-frame non-ground point cloud data are marked as initial track obstacles. In addition, the interested obstacles and non-interested obstacles corresponding to each frame of non-ground point cloud data except the first frame are marked as the detected obstacles of that frame.

[0102] It can be understood that when marking the interested obstacles and non-interested obstacles corresponding to the first-frame non-ground point cloud data as initial track obstacles, the marking process can be implemented in combination with the vehicle state information obtained in step S101.

[0103] Step S105: For each frame of track obstacle after the initial track obstacle, perform association and matching on the current-frame track obstacle according to the previous-frame track obstacle of the current-frame track obstacle and the Kalman filtering algorithm to obtain a matching result.

[0104] The specific implementation process of step S105 is as follows (processes B1 to B3):

[0105] Process B1: For each frame of detected obstacle after the initial track obstacle, obtain the attribute information of the previous-frame track obstacle of the current-frame detected obstacle from the vehicle state information corresponding to the timestamp of the point cloud data.

[0106] Specifically, for each frame of detected obstacle after the initial track obstacle, obtain the attribute information of the previous-frame track obstacle of the current-frame detected obstacle from the vehicle state information corresponding to the timestamp of the point cloud data, including but not limited to information such as position, heading, and speed in the vehicle coordinate system.

[0107] Process B2: Predict the target attribute information of the current-frame track obstacle according to the attribute information of the previous-frame track obstacle and the Kalman filtering algorithm.

[0108] Specifically, predict the target attribute information of the current-frame track obstacle according to the attribute information of the previous-frame track obstacle and the Kalman filtering algorithm, including but not limited to information such as position, heading, and speed at the current-frame moment.

[0109] It should be specifically noted that since non - interested obstacles are usually stationary, without absolute speed and heading, and only have relative motion with respect to the current vehicle, the vehicle speed and heading information of the current vehicle are reversed and used as the speed and heading of non - interested obstacles.

[0110] Process B3: Through the cascade association matching strategy and the preset matching algorithm, the target attribute information is associated and matched with the attribute information of the detected obstacles in the current frame to obtain a matching result.

[0111] It can be understood that both detected obstacles and track obstacles include two types: interested obstacles and non - interested obstacles.

[0112] Therefore, when performing association matching, combining the cascade association matching strategy and the preset matching algorithm, first, the interested detected obstacles are matched with the interested track obstacles, second, the non - interested detected obstacles are matched with the non - interested track obstacles, and finally, the remaining unmatched detected obstacles are matched with the track obstacles.

[0113] Among them, after excluding interested and non - interested obstacles, there are several possibilities for the remaining unmatched detected obstacles and track obstacles: First, unknown objects. The remaining obstacles may be objects that were not involved or clearly labeled during the training of the preset matching algorithm and may belong to unknown categories. Second, abnormal objects. The remaining obstacles may be abnormal objects, indicating that their features do not conform to any known interested or non - interested categories. They may be caused by environmental interference, noise, or sensor errors resulting in false detections or misclassifications.

[0114] It should be specifically noted that the preset matching algorithm is a multi - obstacle association matching algorithm, such as IOU - based matching, nearest - neighbor algorithm, probabilistic data association, Hungarian matching algorithm, Kuhn - Munkres algorithm (KM algorithm), etc. In the implementation of the present invention, the KM algorithm, that is, the weighted Hungarian matching algorithm, is preferably used. Among them, the weight represents the distance metric, which can be measured by calculating the IOU value of the top - down projection two - dimensional box of the three - dimensional boxes of the two obstacles, the Euclidean distance between the center points, etc. The association threshold value can be adjusted according to the specific algorithm debugging situation.

[0115] In the specific implementation of process B3, first, according to the association matching strategy, the interested track obstacles in the target attribute information of the track obstacles in the current frame are matched with the interested detected obstacles in the attribute information of the detected obstacles in the current frame by using the preset matching algorithm to obtain a matching result.

[0116] Specifically, the preset matching algorithm regards the detected obstacles and the track obstacles as two types of nodes in the graph, and the weight of the edge can be calculated according to the distance, speed or other features. The minimum cost matching is solved by the KM algorithm. The optimal matching is found in multi-object tracking to ensure the minimum matching cost between each detected obstacle and the track obstacle.

[0117] Secondly, use the preset matching algorithm to match the non-interested track obstacles in the target attribute information with the non-interested detected obstacles in the attribute information to obtain the matching result.

[0118] Finally, use the preset matching algorithm to match the remaining unmatched track obstacles in the target attribute information with the remaining unmatched detected obstacles in the attribute information to obtain the matching result.

[0119] It can be understood that the matching result includes two cases: successful matching and unsuccessful matching.

[0120] It should be noted that this matching method can effectively improve the matching accuracy and reduce unnecessary computational complexity by preferentially matching the same type of obstacles. In practical applications, different types of obstacles may have different characteristics and motion laws. If the same type of obstacles are preferentially matched, the possibility of mis-matching can be minimized, while ensuring that the algorithm focuses on the most relevant data, thus improving the reliability of the matching result. In addition, this method reduces the consumption of computing resources by reducing the matching of irrelevant obstacles and optimizes the efficiency of the system. Through this optimization, the matching task can be completed more quickly to meet the requirements of real-time and accuracy in a high-dynamic environment.

[0121] Step S106: Update the attribute information of the current frame track obstacle based on the matching result, and determine whether the state of the updated current frame track obstacle is the determined track state.

[0122] It can be understood that the track is divided into three states: determined track state, pending track state, and invalid track state. The determined track is the effective track that needs to be finally output; the invalid track is the track that needs to be deleted; the pending track changes according to the association with other frames. When the number of associated frames increases, the pending track may become a determined track; when the number of associated frames decreases, the pending track may become an invalid track.

[0123] The specific implementation steps of S106 are as follows (Process C1 to Process C4):

[0124] Process C1: When the matching result is a successful match, correct the target attribute information according to the attribute information of the current frame detected obstacle, update the attribute information of the current frame track obstacle, and increment the number of associated frames by one.

[0125] When the matching result is a successful match, it indicates that the obstacle detected in the current frame matches the obstacle in the current value track.

[0126] Specifically, the predicted target attribute information is corrected according to the attribute information of the obstacle detected in the current frame, so as to update the attribute information of the obstacle in the current frame track, that is, the track is updated, and the associated frame number is incremented by one.

[0127] It can be understood that the track update includes the update of the category information, motion information, and size information of the obstacle.

[0128] Specifically, the category information of the obstacle (such as passenger car, large truck, pedestrian, cyclist, cone, etc.) is updated through the DS evidence theory algorithm.

[0129] DS evidence theory is a theoretical method for dealing with uncertainty problems. It describes uncertain information through "interval estimation" and has great flexibility. Given the probabilities of the detected obstacle categories and the track obstacle categories, the DS theory formula can be used to fuse these two sets of probabilities to obtain a new probability value, and the item with the highest probability is selected as the finally determined obstacle category.

[0130] As for the motion information of the obstacle (such as position, speed), it is updated through the Kalman filter algorithm.

[0131] The Kalman filter can use the uniformly accelerated model in the lateral and longitudinal directions respectively, write the state equation with position and speed as state variables, and then update and obtain the state variables (i.e., position and speed) at the current moment according to the prediction and update steps of the Kalman filter.

[0132] Finally, the size information of the obstacle (such as the length, width, and height of the obstacle) is updated through logical judgment. Specifically, the updated track size can be calculated by using the average value method based on the length, width, and height of the detected obstacle and the track obstacle that are matched to ensure the accuracy of the size data.

[0133] It should be noted that by combining different types of information updates, the accuracy of obstacle recognition and the stability of the system can be improved in a changing environment.

[0134] Process C2: When the matching result is an unsuccessful match, update the attribute information of the obstacle in the current frame track according to the target attribute information, and decrement the associated frame number by one.

[0135] It can be understood that when the matching result is an unsuccessful match, update the attribute information of the obstacle in the current frame track according to the target attribute information, and at the same time decrement the associated frame number by one.

[0136] Among them, the attribute information of the track obstacle in the current frame is updated according to the target attribute information. Specifically, the category and size information of the track obstacle that is not associated in the target attribute information are used as the category and size information of the track obstacle in the current frame. The motion information of the track obstacle in the current frame is updated through the Kalman filter algorithm.

[0137] Process C3: When the number of associated frames is not less than the threshold and each frame corresponding to the number of associated frames is a continuous frame, determine that the state of the updated track obstacle in the current frame is the determined track state.

[0138] For example: Suppose an autonomous vehicle is driving:

[0139] Frame 1: A pedestrian is detected, and a new "pending" track is added to the track pool.

[0140] Frames 2 - 4: The pedestrian is continuously detected, the number of associated frames is incremented by one, and the track state remains "pending".

[0141] Frame 5: The number of associated frames reaches the threshold (e.g., 5 frames), and the track is upgraded to "determined".

[0142] Frame 6: The pedestrian disappears (not detected), and the number of associated frames is decremented by one.

[0143] Frame 8: No match for 3 consecutive frames, the track is marked as "invalid" and deleted from the track pool.

[0144] Step S107: Output the attribute information of the track obstacle in the determined track state.

[0145] The specific implementation steps of S107 are as follows (Process D1 to Process D4):

[0146] Process D1: Obtain the attribute information of the track obstacle in the determined track state, the absolute speed and heading of the current vehicle.

[0147] Process D2: Determine the dynamic and static characteristics of the track obstacle according to the relative speed, absolute speed and heading of the track obstacle in the attribute information with respect to the current vehicle.

[0148] It can be understood that based on the absolute speed and heading of the current vehicle, combined with the relative speed of the track obstacle in the attribute information with respect to the current vehicle, the absolute speed of the track obstacle is judged.

[0149] It should be noted that when the absolute speed is 0, it is determined that the track obstacle is a static obstacle; when the absolute speed is not 0, it is determined that the track obstacle is a dynamic obstacle.

[0150] Based on this, it can be avoided that when the current vehicle is in motion, an obstacle that remains relatively stationary with respect to the current vehicle is regarded as a static obstacle.

[0151] Process D3: Based on the position, size, and heading in the attribute information, and in combination with the lane line equation, determine the lane information where the track obstacle is located and the possibility of crossing the line.

[0152] In actual implementation, given the information of the forward road lane line equation in the vehicle coordinate system, in combination with the position, size, and heading information of the track obstacle, by analyzing the relative position relationship between the obstacle and the lane line, determine the lane information where the track obstacle is located and whether there is a risk of crossing the line.

[0153] The specific approach is as follows Figure 3 As shown: Suppose there are four lane lines corresponding to three lanes (-1, 0, 1), and the equations of each lane line in the vehicle coordinate system are known. First, obtain the position (x, y) of the target obstacle, and then substitute the x coordinate into the equations of each lane line to calculate the corresponding y' value. By comparing the y' value with the actual y value of the obstacle, the lane to which the target obstacle belongs can be determined.

[0154] In addition, by substituting the corner points of the two-dimensional box of the target obstacle on the plane into the lane line equation and comparing the calculated y' value with the y value of each corner point, it can be determined whether the obstacle crosses the lane line or there is a potential risk of crossing the line.

[0155] Process D4: Output the attribute information, dynamic and static characteristics, lane information where the track obstacle is located, and the possibility of crossing the line of the track obstacle.

[0156] In the specific implementation of Process D4, output the track obstacles in the determined track state, including but not limited to obstacle category (each category of interest, general obstacle), size (length, width, height), movement (position, speed, heading angle), dynamic and static characteristics, lane information where it is located, and the possibility of crossing the line, etc., to facilitate the downstream module to make safe and smooth planning strategies.

[0157] In the embodiment of the present invention, by combining various information such as lidar point cloud data, lane line and road boundary information, vehicle speed and heading, through the combination of a network model, a clustering algorithm, and a track management method, the missed detection and false detection rates of dynamic and static obstacles are effectively reduced. At the same time, the cost of model training and the processing volume of point cloud data are reduced, and the accuracy and robustness of obstacle detection are improved. In addition, this embodiment also adds information such as the dynamic and static characteristics of the obstacle and the lane to which it belongs, providing more abundant and effective support for the decision-making module.

[0158] Corresponding to the method for detecting obstacles provided in the above embodiment of the present invention, refer to Figure 4 , which shows the structural block diagram of a device for detecting obstacles provided in the embodiment of the present invention.

[0159] The device includes: a message synchronization module 401, a point cloud preprocessing module 402, a single-frame obstacle detection module 403, an identification module 404, an obstacle association and matching module 405, an update module 406, and an output module 407.

[0160] The message synchronization module 401 is used to obtain corresponding lane information according to the timestamp of the point cloud data when receiving the point cloud data.

[0161] The point cloud preprocessing module 402 is used to preprocess the point cloud data and lane information to obtain non-ground point cloud data.

[0162] The single-frame obstacle detection module 403 is used to, for each frame of non-ground point cloud data, detect the non-ground point cloud data by using a supervised network model to obtain obstacles of interest, and detect the non-ground point cloud data by using a preset clustering algorithm to obtain non-obstacles of interest.

[0163] The identification module 404 is used to identify the obstacles of interest and non-obstacles of interest corresponding to the first frame of non-ground point cloud data as initial track obstacles, and identify the obstacles of interest and non-obstacles of interest corresponding to each frame of non-ground point cloud data except the first frame as the detected obstacles of this frame.

[0164] The obstacle association and matching module 405 is used to, for each frame of detected obstacles after the initial track obstacles, perform association and matching on the current frame of track obstacles and the current frame of detected obstacles according to the previous frame of track obstacles of the current frame of detected obstacles and the Kalman filtering algorithm to obtain a matching result; wherein, the track obstacles include the current position information and motion trajectory information of the obstacles.

[0165] The update module 406 is used to update the attribute information of the current frame of track obstacles based on the matching result, and determine whether the state of the updated current frame of track obstacles is the determined track state.

[0166] The output module 407 is used to output the track obstacles in the determined track state.

[0167] In the embodiment of the present invention, by combining various information such as lidar point cloud data, lane line and road boundary information, vehicle speed and heading, and through the combination of a network model, a clustering algorithm, and a track management method, the missed detection and false detection rates of dynamic and static obstacles are effectively reduced. At the same time, the cost of model training and the processing volume of point cloud data are reduced, and the accuracy and robustness of obstacle detection are improved. In addition, this embodiment also adds information such as the dynamic and static characteristics of obstacles and the lanes to which they belong, providing richer and more effective support for the decision-making module.

[0168] Combined with Figure 4As shown in the figure, the point cloud preprocessing module 402 includes: an angle correction module, a conversion module, a first rejection module, and a second rejection module.

[0169] The angle correction module is used to correct the angle of the point cloud data based on the angle correction file and convert it into structured point cloud data.

[0170] The conversion module is used to convert the coordinate system of the structured point cloud data into the current vehicle coordinate system according to the extrinsic parameters of the lidar.

[0171] The first rejection module is used to reject the invalid point cloud data in the structured point cloud data based on the lane lines and road boundary information in the lane information to obtain the target point cloud data.

[0172] The second rejection module is used to reject the ground point cloud data in the target point cloud data to obtain the non-ground point cloud data.

[0173] Combined Figure 4 As shown in the figure, the single-frame obstacle detection module 403 includes: a first detection module, a second detection module, and a deletion module.

[0174] The first detection module is used to detect the non-ground point cloud data for each frame using the supervised network model to obtain the obstacles of interest.

[0175] The second detection module is used to detect the non-ground point cloud data using the preset clustering algorithm to obtain the general obstacles.

[0176] The deletion module is used to delete the obstacles of interest from the general obstacles to obtain the non-interest obstacles.

[0177] Combined Figure 4 As shown in the figure, the obstacle association and matching module 405 includes: a first acquisition module, a prediction module, and an association and matching module.

[0178] The first acquisition module is used to, for each frame of detected obstacle after the initial trajectory obstacle, obtain the attribute information of the previous frame of trajectory obstacle of the current frame of detected obstacle from the vehicle state information corresponding to the timestamp of the point cloud data.

[0179] The prediction module is used to predict the target attribute information of the current frame of trajectory obstacle according to the attribute information of the previous frame of trajectory obstacle and the Kalman filtering algorithm.

[0180] The association and matching module is used to associate and match the target attribute information and the attribute information of the current frame of detected obstacle through the cascade association and matching strategy and the preset matching algorithm to obtain the matching result.

[0181] Combined Figure 4The content shown, the association matching module includes: an interested obstacle matching module, a non - interested obstacle matching module, and a remaining matching module.

[0182] The interested obstacle matching module is used to match the interested track obstacles in the target attribute information of the current - frame track obstacles with the interested detected obstacles in the attribute information of the current - frame detected obstacles according to the association matching strategy by using a preset matching algorithm to obtain a matching result.

[0183] The non - interested obstacle matching module is used to match the non - interested track obstacles in the target attribute information with the non - interested detected obstacles in the attribute information by using a preset matching algorithm to obtain a matching result.

[0184] The remaining matching module is used to match the remaining unmatched track obstacles in the target attribute information with the remaining unmatched detected obstacles in the attribute information by using a preset matching algorithm to obtain a matching result.

[0185] Combined with Figure 4 The content shown, the update module 406 includes: a first update module, a second update module, and a first determination module.

[0186] The first update module is used to, when the matching result is a successful match, correct the target attribute information according to the attribute information of the current - frame detected obstacles, update the attribute information of the current - frame track obstacles, and increment the associated frame number by one.

[0187] The second update module is used to, when the matching result is an unsuccessful match, update the attribute information of the current - frame track obstacles according to the target attribute information, and decrement the associated frame number by one.

[0188] The first determination module is used to, when the associated frame number is not less than the threshold and each frame corresponding to the associated frame number is a continuous frame, determine that the state of the updated current - frame track obstacle is a determined track state.

[0189] Combined with Figure 4 The content shown, the output module 407 includes: a second acquisition module, a second determination module, a third determination module, and an output module.

[0190] The second acquisition module is used to acquire the attribute information of the track obstacles in the determined track state, the absolute speed, and the heading of the current vehicle.

[0191] The second determination module is used to determine the dynamic and static characteristics of the track obstacles according to the relative speed, absolute speed, and heading of the track obstacles in the attribute information with respect to the current vehicle.

[0192] A third determination module, configured to determine the lane information where the track obstacle is located and the possibility of crossing the line based on the position, size, and heading in the attribute information and in combination with the lane line equation.

[0193] An output module, configured to output the attribute information, dynamic and static characteristics, lane information where the track obstacle is located, and the possibility of crossing the line of the track obstacle.

[0194] Another embodiment of the present application provides an electronic device, as Figure 5 shown, including: a memory 501 and a processor 502.

[0195] Among them, the memory 501 is used to store programs.

[0196] The processor 502 is configured to execute the program, and when the program is executed, it is specifically configured to implement a method for detecting obstacles provided in any one of the above embodiments.

[0197] The electronic device in this article may be a server, a PC, a PAD, a mobile phone, an ECU (Electronic Control Unit), a VCU (Vehicle Control Unit), an MCU (Micro Controller Unit), an HCU (Hybrid Control Unit), etc.

[0198] Another embodiment of the present application provides a computer storage medium, configured to store a computer program, and when the computer program is executed, it is used to implement a method for detecting obstacles provided in any one of the above embodiments.

[0199] The computer storage medium includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. The information may be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette tapes, tapes, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transitory media such as modulated data signals and carrier waves.

[0200] Each embodiment in this specification is described in a progressive manner. For the identical or similar parts among the embodiments, reference can be made to each other, and the differences between each embodiment and other embodiments are emphasized. In particular, for a system or system embodiment, since it is basically similar to a method embodiment, it is described relatively simply, and reference can be made to the corresponding parts of the method embodiment for the relevant content. The systems and system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. A person of ordinary skill in the art can understand and implement it without creative efforts.

[0201] Those skilled in the art can further realize that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of each example have been generally described according to their functions in the above description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods for each specific application to implement the described functions, but such implementation should not be considered to exceed the scope of the present invention.

[0202] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present invention. Various modifications to these embodiments will be obvious to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the scope of the present invention. Therefore, the present invention will not be limited to the embodiments shown herein, but will be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A method for detecting obstacles, characterized in that, The method includes: When receiving point cloud data, obtaining corresponding lane information according to the timestamp of the point cloud data; Preprocessing the point cloud data and the lane information to obtain non-ground point cloud data; For each frame of non-ground point cloud data, using a supervised network model to detect the non-ground point cloud data to obtain interested obstacles, and using a preset clustering algorithm to detect the non-ground point cloud data to obtain non-interested obstacles; Identifying the interested obstacles and non-interested obstacles corresponding to the first frame of non-ground point cloud data as initial track obstacles, and identifying the interested obstacles and non-interested obstacles corresponding to each frame of non-ground point cloud data except the first frame as the detected obstacles of this frame; For each frame of detected obstacles after the initial track obstacles, according to the previous frame of track obstacle of the current frame of detected obstacles and the Kalman filtering algorithm, performing association matching on the current frame of track obstacle and the current frame of detected obstacles to obtain a matching result; wherein, the track obstacle includes the current position information and motion trajectory information of the obstacle; Updating the attribute information of the current frame of track obstacle based on the matching result, and determining whether the state of the updated current frame of track obstacle is the determined track state; Outputting the track obstacles in the determined track state.

2. The method according to claim 1, wherein The preprocessing the point cloud data and the lane information to obtain non-ground point cloud data includes: Performing angle correction on the point cloud data based on an angle correction file and converting it into structured point cloud data; Converting the coordinate system of the structured point cloud data into the current vehicle coordinate system according to the extrinsic parameters of the lidar; Based on the lane lines and road boundary information in the lane information, removing the invalid point cloud data in the structured point cloud data to obtain target point cloud data; Removing the ground point cloud data in the target point cloud data to obtain non-ground point cloud data.

3. The method according to claim 1, wherein The for each frame of non-ground point cloud data, using a supervised network model to detect the non-ground point cloud data to obtain interested obstacles, and using a preset clustering algorithm to detect the non-ground point cloud data to obtain non-interested obstacles includes: For each frame of non-ground point cloud data, using a supervised network model to detect the non-ground point cloud data to obtain interested obstacles; Using a preset clustering algorithm to detect the non-ground point cloud data to obtain general obstacles; Deleting the interested obstacles from the general obstacles to obtain non-interested obstacles.

4. The method according to claim 1, characterized in that The for each frame of detected obstacles after the initial track obstacles, according to the previous frame of track obstacle of the current frame of detected obstacles and the Kalman filtering algorithm, performing association matching on the current frame of track obstacle and the current frame of detected obstacles to obtain a matching result includes: For each frame of detected obstacles after the initial track obstacles, obtaining the attribute information of the previous frame of track obstacle of the current frame of detected obstacles from the vehicle state information corresponding to the timestamp of the point cloud data; Predicting the target attribute information of the current frame of track obstacle according to the attribute information of the previous frame of track obstacle and the Kalman filtering algorithm; The target attribute information and the attribute information of the detected obstacles in the current frame are associated and matched through a cascaded association matching strategy and a preset matching algorithm to obtain a matching result.

5. The method according to claim 4, wherein The process of associating and matching the target attribute information and the attribute information of the detected obstacles in the current frame through the cascaded association matching strategy and the preset matching algorithm to obtain a matching result includes: According to the cascaded association matching strategy, using the preset matching algorithm to match the track obstacles of interest in the target attribute information of the track obstacles in the current frame with the detected obstacles of interest in the attribute information of the detected obstacles in the current frame to obtain a matching result; Using the preset matching algorithm to match the non-track obstacles of interest in the target attribute information with the non-detected obstacles of interest in the attribute information to obtain a matching result; Using the preset matching algorithm to match the remaining unmatched track obstacles in the target attribute information with the remaining unmatched detected obstacles in the attribute information to obtain a matching result.

6. The method according to claim 4, wherein Updating the attribute information of the track obstacles in the current frame based on the matching result and determining whether the state of the updated track obstacles in the current frame is the determined track state includes: When the matching result is a successful match, correcting the target attribute information according to the attribute information of the detected obstacles in the current frame, updating the attribute information of the track obstacles in the current frame, and incrementing the associated frame count by one; When the matching result is an unsuccessful match, updating the attribute information of the track obstacles in the current frame according to the target attribute information, and decrementing the associated frame count by one; When the associated frame count is not less than the threshold and each frame corresponding to the associated frame count is a continuous frame, determining that the state of the updated track obstacles in the current frame is the determined track state.

7. The method according to claim 1, characterized in that, Outputting the track obstacles in the determined track state includes: Obtaining the attribute information of the track obstacles in the determined track state, the absolute speed and heading of the current vehicle; Determining the dynamic and static characteristics of the track obstacles according to the relative speed between the track obstacles and the current vehicle, the absolute speed and the heading in the attribute information; Based on the position, size and heading in the attribute information, and combining with the lane line equation, determining the lane information and the possibility of crossing the line where the track obstacles are located; Outputting the attribute information, dynamic and static characteristics, lane information and crossing line possibility of the track obstacles.

8. A device for detecting obstacles, characterized in that, The device includes: A message synchronization module for obtaining the corresponding lane information according to the timestamp of the point cloud data when receiving the point cloud data; A point cloud preprocessing module for preprocessing the point cloud data and the lane information to obtain non-ground point cloud data; A single-frame obstacle detection module for, for each frame of non-ground point cloud data, using a supervised network model to detect the non-ground point cloud data to obtain obstacles of interest, and using a preset clustering algorithm to detect the non-ground point cloud data to obtain non-obstacles of interest; An identification module, configured to identify the interested obstacles and non-interested obstacles corresponding to the first-frame non-ground point cloud data as initial track obstacles, and identify the interested obstacles and non-interested obstacles corresponding to each frame of non-ground point cloud data except the first frame as the detected obstacles of that frame; An obstacle association and matching module, configured to, for each frame of detected obstacles after the initial track obstacles, perform association and matching on the current-frame track obstacles and the current-frame detected obstacles according to the previous-frame track obstacles of the current-frame detected obstacles and the Kalman filtering algorithm, to obtain a matching result; wherein, the track obstacles include the current position information and motion trajectory information of the obstacles; An update module, configured to update the attribute information of the current-frame track obstacles based on the matching result, and determine whether the state of the updated current-frame track obstacles is the determined track state; An output module, configured to output the track obstacles in the determined track state.

9. An electronic device, characterized in that, Comprising: A memory and a processor; Wherein, the memory is used to store a program; The processor is used to execute the program, and when the program is executed, it is specifically used to implement a method for detecting obstacles according to any one of claims 1 to 7.

10. A computer storage medium, characterized in that, For storing a computer program, which is used to implement a method for detecting obstacles according to any one of claims 1 to 7 when the computer program is executed.