Target identification method and system based on point cloud data

Through the target recognition method based on point cloud data, point cloud data is collected and segmented, and the internal point recognition target type is detected, which solves the problem of inaccurate identification of obstacles such as Caotuan in deep learning methods, and achieves efficient and accurate target recognition and reduces false alarms.

CN120339854APending Publication Date: 2025-07-18BAO DING SHI TIAN HE DIAN ZI JI SHU YOU XIAN GONG SI
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410063955.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-01-16
Publication Date
2025-07-18

AI Technical Summary

Technical Problem

The target recognition method based on deep learning in the prior art is inaccurate in the identification of obstacles such as grass balls, resulting in frequent false alarms, affecting the normal operation of the train, and the sample collection workload is large, computing power requirements are high, and the cost is high, and the identification results cannot be explained.

Method used

By collecting point cloud data, the target point cloud is extracted and divided into sub-target point clouds, the internal number of points of the sub-target point clouds are detected, the target type is identified using the characteristic attributes of the internal points, and the false alarms of obstacles such as grass clusters are reduced.

Benefits of technology

It improves the accuracy of target recognition, reduces the false alarm rate, improves the safety of railway operation and the practicality of the system, and reduces the demand for computing power.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120339854A_ABST
    Figure CN120339854A_ABST
Patent Text Reader

Abstract

The invention provides a target identification method and system based on point cloud data, and the method can collect the point cloud data of a target region, and extract a target point cloud. Segmenting the target point cloud into sub-target point clouds; the internal point number of the sub-target point clouds is detected, and the target point clouds comprise data points in the point cloud data, and the distance between the data points in the background point clouds and the data points in the point cloud data is larger than a first distance; the background point cloud is the point cloud data after the rasterization sample reduction processing. The sub-target point cloud is a data point set in which the distance between the data points in the target point cloud is smaller than the second distance. The internal point number is the number of internal points in the sub-target point clouds. In each quadrant of an internal point coordinate system constructed by taking the internal point as an original point, data points with the distance from the internal point being smaller than a third distance exist. And identifying the target type of the sub-target point cloud based on the internal point number. According to the method, the feature attributes of the internal points of the target are utilized to perform target identification of the point cloud data, so that the accuracy of target identification is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of target recognition, and in particular, to a target recognition method and system based on point cloud data. Background Art

[0002] A lidar (Laser Radar) is a radar system that detects the position, speed, and other characteristic quantities of a target by emitting a laser beam. The lidar can emit laser pulses into the environment and calculate the distance of an object based on the time required for the pulse to return from the object. In this process, the lidar will obtain detailed three-dimensional point cloud data of the surrounding environment in terms of depth and height. The target recognition method is a process of identifying and positioning objects or targets in the environment based on the point cloud data. The target recognition method can be widely applied to fields such as autonomous driving, robot navigation, line obstacle detection, environmental perception, and security monitoring. For example, in a line obstacle detection system, there may be situations where rocks, landslides, and collapses occur on a railway line, forming obstacles that block the line and endangering the safety of train operation. The target recognition method based on lidar three-dimensional point cloud data can identify the obstacles affecting the line and issue warnings in a timely manner, improving the safety of railway operation.

[0003] When identifying obstacles affecting the line, for obstacle targets such as grass clumps that roll onto the railway line, they do not affect the safety of train operation and do not require warnings. If obstacle targets such as grass clumps are not accurately identified, a large number of false alarms will be generated, affecting the normal operation of the train and reducing the practicality of the system. To accurately identify different types of targets, deep learning methods can be used, but deep learning methods require a large amount of sample data, and the workload of sample collection for various types of targets is large. They also have high requirements for computing power, requiring high hardware support and cost investment, and the design of deep learning models is complex and the recognition results cannot be explained. This will reduce the accuracy of target recognition. Summary of the Invention

[0004] This application provides a target recognition method and system based on point cloud data to solve the problem of low accuracy of target recognition.

[0005] In a first aspect, this application provides a target recognition method based on point cloud data, including:

[0006] Collect point cloud data of a target area;

[0007] Extract target point cloud from the point cloud data, where the target point cloud includes data points in the point cloud data whose distance from the data points in the background point cloud is greater than a first distance, and the background point cloud is the point cloud data after performing rasterized downsampling processing;

[0008] Segment the target point cloud into sub-target point clouds, where the sub-target point cloud is a set of data points in the target point cloud whose distance between data points is less than a second distance;

[0009] Detect the number of internal points in the sub-target point cloud, where the number of internal points is the number of internal points in the sub-target point cloud. In each quadrant of the internal point coordinate system constructed with the internal point as the origin, there are data points whose distance from the internal point is less than the third distance;

[0010] Identify the target type of the sub-target point cloud based on the number of internal points.

[0011] In an alternative embodiment, the step of extracting the target point cloud from the point cloud data includes:

[0012] Perform rasterized downsampling on the point cloud data to obtain the background point cloud;

[0013] Calculate the distance between the data points in the point cloud data and the data points in the background point cloud;

[0014] If the distance between the data points in the point cloud data and the data points in the background point cloud is greater than the first distance, classify the data points in the point cloud data into the target point cloud.

[0015] In an alternative embodiment, the step of dividing the target point cloud into sub-target point clouds includes:

[0016] Calculate the distance between the data points in the target point cloud;

[0017] If the distance between two data points is less than the second distance, classify the two data points into the sub-target point cloud.

[0018] In an alternative embodiment, the method further includes:

[0019] Obtain the reference coordinate point of the point cloud data and obtain the target data point in the sub-target point cloud;

[0020] Construct an internal point coordinate system with the target data point as the origin and the reference coordinate point as the point on the vertical axis direction;

[0021] Extract a point cloud data set from the sub-target point cloud, where the point cloud data set includes data points whose distance from the target data point is less than the third distance, and the third distance is the distance between the target data point and the reference coordinate point;

[0022] Convert the data points in the point cloud data set from the current coordinate system to the internal point coordinate system to obtain a new point cloud data set;

[0023] Detect the internal points of the sub-target point cloud based on the new point cloud data set and the internal point coordinate system.

[0024] In an alternative embodiment, the step of extracting a point cloud data set from the sub-target point cloud includes:

[0025] Calculate a third distance between the target data point and the reference coordinate point;

[0026] Calculate the distance between the data points in the sub-target point cloud and the target data point;

[0027] If the distance between the data points in the sub-target point cloud and the target data point is less than the third distance, store the data points in the sub-target point cloud in the point cloud data set.

[0028] In an alternative embodiment, the step of converting the data points in the point cloud data set from the current coordinate system to the internal point coordinate system includes:

[0029] Perform a translation process on the data points in the point cloud data set according to the target data point;

[0030] Obtain a horizontal axis rotation matrix and a vertical axis rotation matrix, where the horizontal axis rotation matrix is a rotation relationship matrix based on the horizontal axis when converting from the current coordinate system to the internal point coordinate system, and the vertical axis rotation matrix is a rotation relationship matrix based on the vertical axis when converting from the current coordinate system to the internal point coordinate system;

[0031] Perform a horizontal axis rotation on the translated data points based on the horizontal axis rotation matrix;

[0032] Perform a vertical axis rotation on the translated data points based on the vertical axis rotation matrix.

[0033] In an alternative embodiment, the step of obtaining a horizontal axis rotation matrix and a vertical axis rotation matrix includes:

[0034] Perform a translation process on the reference coordinate point according to the target data point;

[0035] Calculate a horizontal axis rotation matrix and a vertical axis rotation matrix based on the translated reference coordinate point and the target data point.

[0036] In an alternative embodiment, the step of detecting the internal points of the sub-target point cloud based on the new point cloud data set and the internal point coordinate system includes:

[0037] Detect the data points in the four quadrants of the internal point coordinate system;

[0038] If there are data points in the new point cloud data set in all four quadrants, mark the target data point as an internal point;

[0039] If there are not data points in the new point cloud data set in all four quadrants, mark the target data point as a non-internal point.

[0040] In an alternative embodiment, the step of identifying the target type of the sub-target point cloud based on the internal point count includes:

[0041] Obtain the total point count of the sub-target point cloud;

[0042] Calculate a point count ratio, where the point count ratio is the ratio of the internal point count to the total point count;

[0043] If the point count ratio is greater than a ratio threshold, mark the target type of the sub-target point cloud as the grass clump type;

[0044] If the point count ratio is less than or equal to the ratio threshold, mark the target type of the sub-target point cloud as the non-grass clump type.

[0045] In a second aspect, the present application provides a target recognition system based on point cloud data, including:

[0046] A point cloud data acquisition module for acquiring point cloud data of a target area;

[0047] A target recognition module for extracting target point clouds from the point cloud data, where the target point clouds include data points in the point cloud data whose distance from the data points in the background point cloud is greater than a first distance, and the background point cloud is the point cloud data after performing rasterized downsampling processing;

[0048] Segment the target point clouds into sub-target point clouds, where the sub-target point clouds are sets of data points in the target point clouds whose distance between data points is less than a second distance;

[0049] Detect the internal point count of the sub-target point clouds, where the internal point count is the number of internal points in the sub-target point clouds, and in each quadrant of the internal point coordinate system constructed with the internal points as the origin, there are data points whose distance from the internal points is less than a third distance;

[0050] Identify the target type of the sub-target point cloud based on the internal point count.

[0051] As can be seen from the above technical solutions, the present application provides a target recognition method and system based on point cloud data. The method can collect point cloud data of a target area and extract target point clouds. Then, the target point clouds are segmented into sub-target point clouds. Next, the number of internal points in the sub-target point clouds is detected. Here, the target point clouds include data points in the point cloud data whose distance from the data points in the background point cloud is greater than a first distance. The background point cloud is the point cloud data after performing rasterization downsampling processing. The sub-target point clouds are sets of data points in the target point clouds whose distance between data points is less than a second distance. The number of internal points is the number of internal points in the sub-target point clouds. In each quadrant of the internal point coordinate system constructed with the internal point as the origin, there are data points whose distance from the internal point is less than a third distance. The target type of the sub-target point clouds is recognized based on the number of internal points. The method uses the characteristic attributes of the internal points of the target to perform target recognition of the point cloud data, improving the accuracy of target recognition. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] In order to more clearly illustrate the technical solutions in the embodiments of the present application 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 following drawings are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.

[0053] Figure 1 It is a schematic flowchart of the target recognition method provided by the embodiment of the present application;

[0054] Figure 2 It is a schematic diagram of a picture and point cloud data including a grass clump target in a railway line provided by the embodiment of the present application;

[0055] Figure 3 It is a partial enlarged schematic diagram of the grass clump target provided by the embodiment of the present application;

[0056] Figure 4 It is a schematic flowchart of extracting target point clouds provided by the embodiment of the present application;

[0057] Figure 5 It is a schematic flowchart of segmenting target point clouds into sub-target point clouds provided by the embodiment of the present application;

[0058] Figure 6 It is a schematic flowchart of detecting internal points of sub-target point clouds provided by the embodiment of the present application;

[0059] Figure 7 It is a schematic flowchart of obtaining a point cloud data set provided by the embodiment of the present application;

[0060] Figure 8 It is a schematic flowchart of recognizing the target type provided by the embodiment of the present application. Detailed implementation mode

[0061] The embodiments will be described in detail below, and the examples are shown in the accompanying drawings. When the following description refers to the accompanying drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementation modes described in the following embodiments do not represent all implementation modes consistent with the present application. They are only examples of systems and methods consistent with some aspects of the present application detailed in the claims.

[0062] In the on-line obstacle system, on the railway line, there will be situations where falling rocks, landslides, and collapses form obstacles blocking the line, endangering the safety of train operation. The target recognition method based on lidar three-dimensional point cloud data can identify the obstacles affecting the line and issue warnings in a timely manner, improving the safety of railway operation.

[0063] When identifying obstacles affecting the line, for obstacle targets such as grass clumps that roll onto the railway line, they do not affect the safety of train operation and do not require warnings. If obstacle targets such as grass clumps are not accurately identified, a large number of false alarms will be generated, affecting the normal operation of trains and reducing the practicality of the system.

[0064] In some embodiments, in order to accurately identify different types of targets, deep learning methods can be used. However, deep learning methods require a large amount of sample data. In the on-line obstacle system, in addition to grass clump recognition, various targets such as animals, people, trains, rain, snow, and fog also need to be identified, and the workload of sample collection for various targets is large. The computing power requirement is also very high. For example, for a long railway line, the three-dimensional radar monitoring unit is installed near the track, and each radar monitors a distance of 30 - 100 meters, and each monitoring unit operates independently on-site. And the design of the deep learning model is complex, and the recognition results cannot be explained. As a result, the accuracy of target recognition will be reduced.

[0065] To solve the problem of low accuracy of target recognition, an embodiment of the present application provides a target recognition system based on point cloud data, as Figure 1 shown. The system includes a point cloud data acquisition module and a target recognition module. The point cloud data acquisition module is used to acquire the point cloud data of the target area. For example, in the on-line obstacle system, the point cloud data acquisition module is a lidar, and the target area is the railway line that needs to be monitored for obstacles. The point cloud data refers to a set of data points obtained by lidar scanning measurement, which can reflect the true situation of the target area with high precision, such as the ground state, the reflection characteristics of ground objects, and the characteristics of obstacles.

[0066] As Figure 2 、 3 shown, Figure 2 is a schematic diagram of a picture and point cloud data containing a grass clump target in the railway line provided by an embodiment of the application.Figure 3 This is a partially enlarged schematic diagram of the grass bale target provided by the embodiment of the present application. When the lidar scans an obstacle target such as a grass bale, the branches inside the obstacle target will also form internal point cloud data. For solid obstacle targets such as falling rocks and debris flows, the lidar can only obtain the surface point cloud data of such obstacle targets, and there will be no internal point cloud.

[0067] Therefore, based on the feature that the internal points can be scanned for obstacle targets such as grass bales, the obstacle targets such as grass bales in the point cloud data can be identified. The embodiment of the present application can scan the railway track in real time through the lidar and output three-dimensional point cloud data. The target recognition module performs the recognition of obstacle targets according to the three-dimensional point cloud data. When target types such as grass bales are recognized, no alarm information is output to reduce false alarms caused by obstacles such as grass bales and reduce the occurrence of events of false blocking of trains. When target types such as falling rocks and debris flows are recognized, alarm information is output to improve the safety of railway operation and improve the practicability and accuracy of the three-dimensional line obstacle system.

[0068] It should be noted that the technical solutions provided by the embodiments of the present application are described by taking the above line obstacle system as an example. It should be understood that the provided technical solutions are not limited to being applied in the line obstacle system, but can also be applied to other systems related to target recognition.

[0069] As Figure 1 shown, the point cloud data acquisition module collects the point cloud data of the railway line in real time and sends the point cloud data to the target recognition module for target recognition. Among them, the point cloud data obtained by the point cloud data acquisition module scanning the railway line completely once is called single-field point cloud data (PCD_FIELD_SINGLE).

[0070] The target recognition module executes a target recognition method based on the point cloud data, which specifically includes the following content:

[0071] S100: Obtain the point cloud data. The point cloud data is the three-dimensional point cloud data obtained by the lidar scanning the target area in real time. According to the radar point cloud resolution, in order to more accurately and finely describe the regional scene, multiple-field point cloud data can be obtained for target recognition. In order to improve the recognition efficiency, grid downsampling processing can also be performed on the multiple-field point cloud data to reduce the amount of point cloud data for subsequent analysis and processing. Among them, the point cloud data after grid downsampling processing can be called background point cloud (PCD_BK_GRID).

[0072] S200: Extract the target point cloud from the point cloud data.

[0073] Among them, the target point cloud includes data points in the point cloud data whose distance from the data points in the background point cloud is greater than a first distance. The background point cloud is the point cloud data after performing rasterized downsampling processing.

[0074] As Figure 4 shown, it is a schematic flowchart of extracting the target point cloud provided by an embodiment of the present application. After the target recognition module obtains the point cloud data, it can perform rasterized downsampling processing on the point cloud data to obtain the background point cloud. Then, it traverses the data points in the point cloud data and calculates the distance between the data points in the point cloud data and the data points in the background point cloud. If the distance between the data points in the point cloud data and the data points in the background point cloud is greater than the first distance, then the data point in the point cloud data is classified into the target point cloud.

[0075] For example, after obtaining the single-field point cloud data (PCD_FIELD_SINGLE) collected by the lidar each time, target point cloud extraction is performed. The data points in the point cloud data (PCD_FIELD_SINGLE) whose distance from the data points in the background point cloud (PCD_BK_GRID) is greater than the first distance (DIST_BK) are classified into the target point cloud (PCD_OBJ).

[0076] S300: Segment the target point cloud into sub-target point clouds.

[0077] Among them, the sub-target point cloud is a set of data points in the target point cloud whose distance between data points is less than a second distance.

[0078] After the target recognition module extracts the target point cloud, it performs target segmentation and clustering on the data points in the target point cloud, and segments the target point cloud into multiple sub-target point clouds (PCD_OBJ_SEG). As Figure 5 shown, it is a schematic flowchart of segmenting the target point cloud into sub-target point clouds provided by an embodiment of the present application. The target recognition module traverses the data points in the target point cloud and calculates the distance between the data points in the target point cloud. If the distance between two data points is less than the second distance (DIST_SEG), then the two data points are classified into the sub-target point cloud. That is, the data points in the target point cloud whose distance is less than the second distance (DIST_SEG) are classified into the same sub-target point cloud. After segmentation, the target point cloud will form one or more sub-target point clouds.

[0079] S400: Detect the number of internal points of the sub-target point cloud.

[0080] After the target recognition module obtains the sub-target point cloud, it can perform target recognition on the sub-target point cloud to identify the target type of the sub-target point cloud. If the target type is the grass clump type, no alarm is output. If the target type is a non-grass clump type, an alarm is output.

[0081] Based on the feature that obstacle targets such as grass clusters can scan internal points, the embodiments of this application identify obstacle targets such as grass clusters in the point cloud data. Therefore, the target recognition module can detect the internal points of the sub-target point cloud, count the number of internal points, and identify whether the sub-target point cloud is of the grass cluster type based on the number of internal points. Among them, the number of internal points is the number of internal points in the sub-target point cloud. In each quadrant of the internal point coordinate system constructed with the internal point as the origin, there are data points whose distance from the internal point is less than the third distance.

[0082] As Figure 6 shown, it is a schematic flowchart of detecting the internal points of the sub-target point cloud provided by the embodiments of this application. When the target recognition module detects the internal points of the target point cloud, it can obtain the reference coordinate point of the point cloud data and the target data points in the sub-target point cloud. Taking the target data point as the origin and the reference coordinate point as the point on the vertical axis direction, an internal point coordinate system is constructed.

[0083] Among them, the reference coordinate point is the position point where the laser signal is emitted when collecting the point cloud data. During the process of collecting the point cloud data, the lidar obtains the three-dimensional coordinate information of the target by emitting laser signals around and receiving the reflected laser signals. This process takes the radar center as the reference point, and this reference coordinate point is fixed, representing the position of the lidar.

[0084] For example, first, initialize the variables:

[0085] The total number of data points in the sub-target point cloud (PCD_OBJ_SEG) is: p_count_all.

[0086] The number of internal points in the sub-target point cloud (PCD_OBJ_SEG) is: p_count_inside, and its initial value is 0.

[0087] The reference coordinate point is p_radar(x, y, z), that is, the center of the lidar.

[0088] Determine whether each data point in the sub-target point cloud (PCD_OBJ_SEG) is an internal point:

[0089] Extract a target data point p_obj(x, y, z) from the target point cloud, convert the current coordinate system to the internal point coordinate system. The internal point coordinate system takes p_obj(x, y, z) as the origin and p_radar(x, y, z) as the point on the positive Z-axis direction, and generates the internal point coordinate system according to p_obj(x, y, z) and p_radar(x, y, z). Converting the current coordinate system to the internal point coordinate system requires performing a series of transformation operations, including translation, rotation of the horizontal axis (X-axis), and rotation of the vertical axis (Y-axis).

[0090] Among them, the translation and rotation matrix calculations of the internal point coordinate system are as follows:

[0091] Perform a translation process on the reference coordinate point according to the target data point p_obj(x, y, z). The coordinates of the reference coordinate point after translation are p_radar_tran(x, y, z):

[0092] p_radar_tran.x = p_radar.x - p_obj.x;

[0093] p_radar_tran.y = p_radar.y - p_obj.y;

[0094] p_radar_tran.z = p_radar.z - p_obj.z;

[0095] Among them, p_radar.x, p_radar.y, and p_radar.z are the x-axis coordinate value, y-axis coordinate value, and z-axis coordinate value of the reference coordinate point before translation, respectively. p_radar_tran.x, p_radar_tran.y, and p_radar_tran.z are the x-axis coordinate value, y-axis coordinate value, and z-axis coordinate value of the reference coordinate point after translation, respectively.

[0096] According to the translated reference coordinate point p_radar_tran(x, y, z) and the target data point p_obj(x, y, z), calculate the horizontal axis rotation matrix and vertical axis rotation matrix.

[0097] Calculate the horizontal axis (x-axis) rotation matrix MartixRotaX[3, 3] according to the following formula:

[0098] MartixRotaX[0][0] = 1;

[0099] MartixRotaX[1][1] = p_radar_tran.z / dist;

[0100] MartixRotaX[1][2] = -p_radar_tran.y / dist;

[0101] MartixRotaX[2][1] = p_radar_tran.y / dist;

[0102] MartixRotaX[2][2] = p_radar_tran.z / dist;

[0103] MartixRotaX[3][3] = 1;

[0104] Among them, the unassigned elements in MartixRotaX take the value of 0. dist is the distance between the two data points of point p(0, p_obj.y, p_obj.z) and point p(0, pradar.y, p_radar.z).

[0105] Right-multiply p_radar_tran(x, y, z) by MartixRotaX to obtain p_radar_tranrx(x, y, z), and calculate the longitudinal axis (Y-axis) rotation matrix MartixRotaY[3, 3] according to the following formula:

[0106] MartixRotaY[0][0] = p_radar_tranrx.z / dist1;

[0107] MartixRotaY[0][2] = -p_radar_tranrx.x / dist1;

[0108] MartixRotaY[1][1] = 1;

[0109] MartixRotaY[2][0] = p_radar_tranrx.x / distl;

[0110] MartixRotaY[2][2] = p_radar_tranrx.z / dist1;

[0111] MartixRotaY[3][3] = 1;

[0112] Among them, the unassigned elements in MartixRotaY take the value of 0. dist1 is the distance between the two data points of point p(p_radar_tranrx.x, 0, p_radar_tranrx.z) and point p(O, 0, 0).

[0113] After constructing the internal point coordinates, the target recognition module can extract the point cloud data set from the sub-target point cloud. Among them, the point cloud data set includes data points whose distance from the target data point is less than the third distance, and the third distance is the distance between the target data point and the reference coordinate point. As Figure 7 shown, it is a schematic flow chart of obtaining the point cloud data set provided by the embodiment of the present application. The target recognition module can calculate the third distance between the target data point and the reference coordinate point, and calculate the distance between the data points in the sub-target point cloud and the target data point. If the distance between the data points in the sub-target point cloud and the target data point is less than the third distance, then store the data point in the sub-target point cloud into the point cloud data set.

[0114] For example, following the above example, calculate the distance dist3 between two data points p_obj(x, y, z) and p_radar(x, y, z), and find the data points in the sub-target point cloud (PCD_OBJ_SEG) whose distance from p_radar(x, y, z) is less than dist3, and store them in the point cloud data set (PCD_OBJ_SEG_FRONT).

[0115] After obtaining the point cloud data set, the target recognition module can convert the data points in the point cloud data set from the current coordinate system to the internal point coordinate system to obtain a new point cloud data set. The target recognition module can perform a translation process on the data points according to the coordinates of the target data points. Then, obtain the horizontal axis rotation matrix and the vertical axis rotation matrix. Among them, the horizontal axis rotation matrix is the rotation relationship matrix based on the horizontal axis when the current coordinate system is converted to the internal point coordinate system, and the vertical axis rotation matrix is the rotation relationship matrix based on the horizontal axis when the current coordinate system is converted to the internal point coordinate system. Perform a horizontal axis rotation on the translated data points based on the horizontal axis rotation matrix. Perform a vertical axis rotation on the translated data points based on the vertical axis rotation matrix to perform the coordinate transformation of the data points in the point cloud data set.

[0116] For example, following the above example, perform a coordinate transformation of the internal point coordinate system on each data point in the point cloud data set (PCD_OBJ_SEG_FRONT), and store it in the new point cloud data set (PCD_OBJ_SEG_FRONT_TRXY).

[0117] p_front(x, y, z) is a data point in the point cloud data set (PCD_OBJ_SEG_FRONT), and the conversion process is as follows:

[0118] Translation operation:

[0119] The translated data point is p_front_tran(x, y, z):

[0120] p_front_tran.x = p_front.x - p_obj.x;

[0121] p_front_tran.y = p_front.y - p_obj.y;

[0122] p_front_tran.z = p_front.z - p_obj.z;

[0123] Among them, p_front.x, p_front.y, and p_front.z are the x-axis coordinate value, y-axis coordinate value, and z-axis coordinate value of the data point p_front(x, y, z) before translation, respectively. p_front_tran.x, p_front_tran.y, and p_front_tran.z are the x-axis coordinate value, y-axis coordinate value, and z-axis coordinate value of the data point p_front(x, y, z) after translation, respectively.

[0124] Rotation about the X axis:

[0125] The point p_front_tranRX(x, y, z) is obtained by multiplying the point p_front_tran(x, y, z) on the right by the MartixRotaX matrix;

[0126] Rotation about the Y axis:

[0127] The point p_front_tranRXY(x, y, z) is obtained by multiplying the point p_front_tranRX(x, y, z) on the right by the MartixRotaY;

[0128] Thus, after translation, rotation about the X axis, and rotation about the Y axis, the data point p_front(x, y, z) is transformed into the data point p_front_tranRXY(x, y, z), and p_front_tranRXY(x, y, z) is added to the new point cloud data set (PCD_OBJ_SEG_FRONT_TRXY). Repeat the above steps to perform the above translation and rotation transformation on each data point in the point cloud data set (PCD_OBJ_SEG_FRONT), and add the transformation results to the new point cloud data set (PCD_OBJ_SEG_FRONT_TRXY).

[0129] After obtaining the new point cloud data set, the target recognition module detects the internal points of the sub-target point cloud based on the new point cloud data set and the internal point coordinate system. The target recognition module can detect the data points in the four quadrants of the internal point coordinate system. If there are data points in the new point cloud data set in all four quadrants, mark the target data point as an internal point. If there are not data points in the new point cloud data set in all four quadrants, mark the target data point as a non-internal point.

[0130] For example, continuing with the above example, determine whether the target data point p_obj(x, y, z) is an internal point:

[0131] According to the positive and negative of the coordinate values of each data point in the X-axis and Y-axis directions in the new point cloud dataset (PCD_OBJ_SEG_FRONT_TRXY), determine the quadrant where the data point is located on the XY coordinate plane. If data points fall into all four quadrants, determine p_obj(x, y, z) as an interior point, and increment the interior point count variable p_count_inside by 1.

[0132] Thus, the determination of whether a single data point in the sub-target point cloud (PCD_OBJ_SEG) is an interior point is completed. Repeat the above steps to determine whether all data points in the sub-target point cloud (PCD_OBJ_SEG) are interior points, thereby obtaining the number of interior points p_count_inside of the sub-target point cloud (PCD_OBJ_SEG).

[0133] S500: Identify the target type of the sub-target point cloud based on the number of interior points.

[0134] As Figure 8 shown, it is a schematic flowchart of the process for identifying the target type provided by the embodiment of the present application. After the target recognition module obtains the number of interior points of the sub-target point cloud, it can obtain the total number of points of the sub-target point cloud. Then calculate the point ratio, where the point ratio is the ratio of the number of interior points to the total number of points. Compare the point ratio with a preset ratio threshold. If the point ratio is greater than the ratio threshold, mark the target type of the sub-target point cloud as the grass clump type. If the point ratio is less than or equal to the ratio threshold, mark the target type of the sub-target point cloud as the non-grass clump type.

[0135] For example, following the above example, calculate the point ratio of the number of interior points p_count_inside of the sub-target point cloud to the total number of points p_count_all of the sub-target point cloud. If the point ratio is greater than the preset ratio threshold for grass clump determination, then determine that the sub-target point cloud is a grass clump target and do not output an alarm message.

[0136] Thus, the determination of whether a single sub-target point cloud (PCD_OBJ_SEG) is of the grass clump type is completed. Repeat the above process to determine whether all other sub-target point clouds in the single-scan point cloud data are of the grass clump type. After processing the single-scan point cloud data, receive new single-scan point cloud data from the lidar and repeat the above processing process to monitor the railway line in real time.

[0137] For single-scan point cloud data, when a sub-target point cloud identified as the grass clump type is detected, no alarm is output. When target types such as falling rocks and debris flows are detected, an alarm message is output. This effectively reduces false alarms caused by grass clump targets, improves the practicality and accuracy of the three-dimensional line obstacle system, and reduces the occurrence of false alarms and false train blocking events.

[0138] It should be noted that in the embodiments of the present application, specific limitations are not imposed on the above-mentioned first distance, second distance, third distance, ratio threshold, etc. Those skilled in the art can set them according to actual needs. For example, the parameters of the 3D lidar are a horizontal angular resolution of 0.0625° and a vertical angular resolution of 0.4°. The first distance DIST_BK for distinguishing point cloud data and background point cloud is 8 cm. The second distance DIST_SEG for target segmentation is 12 cm. The ratio threshold for grass clump type determination is 15%.

[0139] Based on the above target recognition system based on point cloud data, the embodiments of the present application further provide a target recognition method based on point cloud data, and the method includes:

[0140] Collect point cloud data of the target area.

[0141] Extract target point cloud from the point cloud data. Among them, the target point cloud includes data points in the point cloud data whose distance from the data points in the background point cloud is greater than the first distance. The background point cloud is the point cloud data after performing rasterized downsampling processing.

[0142] Segment the target point cloud into sub-target point clouds. Among them, the sub-target point cloud is a set of data points in the target point cloud whose distance between data points is less than the second distance.

[0143] Detect the number of internal points in the sub-target point cloud. Among them, the number of internal points is the number of internal points in the sub-target point cloud. In each quadrant of the internal point coordinate system constructed with the internal point as the origin, there are data points whose distance from the internal point is less than the third distance.

[0144] Identify the target type of the sub-target point cloud based on the number of internal points.

[0145] As can be seen from the above technical solutions, the target recognition method and system based on point cloud data provided by the above embodiments can collect point cloud data of the target area and extract the target point cloud. Then segment the target point cloud into sub-target point clouds. Then detect the number of internal points in the sub-target point cloud. Among them, the target point cloud includes data points in the point cloud data whose distance from the data points in the background point cloud is greater than the first distance. The background point cloud is the point cloud data after performing rasterized downsampling processing. The sub-target point cloud is a set of data points in the target point cloud whose distance between data points is less than the second distance. The number of internal points is the number of internal points in the sub-target point cloud. In each quadrant of the internal point coordinate system constructed with the internal point as the origin, there are data points whose distance from the internal point is less than the third distance. Identify the target type of the sub-target point cloud based on the number of internal points. The method uses the characteristic attributes of the target internal points to perform target recognition of point cloud data, improving the accuracy of target recognition.

[0146] For the similar parts between the embodiments provided in this application, reference can be made to each other. The specific embodiments provided above are only several examples under the general concept of this application and do not constitute a limitation on the protection scope of this application. For those skilled in the art, any other embodiments extended based on the solution of this application without creative efforts belong to the protection scope of this application.

Claims

1. A target recognition method based on point cloud data, characterized in that, Including: Collecting point cloud data of a target area; Extracting target point cloud from the point cloud data, where the target point cloud includes data points in the point cloud data whose distance from the data points in the background point cloud is greater than a first distance, and the background point cloud is the point cloud data after performing rasterized downsampling processing; Dividing the target point cloud into sub-target point clouds, where the sub-target point cloud is a set of data points in the target point cloud whose distance between data points is less than a second distance; Detecting the number of internal points of the sub-target point cloud, where the number of internal points is the number of internal points in the sub-target point cloud, and in each quadrant of the internal point coordinate system constructed with the internal point as the origin, there are data points whose distance from the internal point is less than a third distance; Identifying the target type of the sub-target point cloud based on the number of internal points.

2. The object recognition method based on point cloud data according to claim 1, characterized in that, The step of extracting target point cloud from the point cloud data includes: Performing rasterized downsampling processing on the point cloud data to obtain a background point cloud; Calculating the distance between the data points in the point cloud data and the data points in the background point cloud; If the distance between the data points in the point cloud data and the data points in the background point cloud is greater than the first distance, classifying the data points in the point cloud data into the target point cloud.

3. The object recognition method based on point cloud data according to claim 1, characterized in that The step of dividing the target point cloud into sub-target point clouds includes: Calculating the distance between the data points in the target point cloud; If the distance between two data points is less than the second distance, classifying the two data points into the sub-target point cloud.

4. The object recognition method based on point cloud data according to claim 1, characterized in that The method further includes: Obtaining the reference coordinate point of the point cloud data and obtaining the target data point in the sub-target point cloud, where the reference coordinate point is the position point where the laser signal is emitted when collecting the point cloud data; Constructing an internal point coordinate system with the target data point as the origin and the reference coordinate point as the point on the vertical axis direction; Extracting a point cloud data set from the sub-target point cloud, where the point cloud data set includes data points whose distance from the target data point is less than a third distance, and the third distance is the distance between the target data point and the reference coordinate point; Converting the data points in the point cloud data set from the current coordinate system to the internal point coordinate system to obtain a new point cloud data set; Detecting the internal points of the sub-target point cloud based on the new point cloud data set and the internal point coordinate system.

5. The object recognition method based on point cloud data according to claim 4, wherein The step of extracting a point cloud data set from the sub-target point cloud includes: Calculating the third distance between the target data point and the reference coordinate point; Calculating the distance between the data points in the sub-target point cloud and the target data point; If the distance between the data points in the sub-target point cloud and the target data point is less than the third distance, storing the data points in the sub-target point cloud into the point cloud data set.

6. The object recognition method based on point cloud data according to claim 4, wherein The step of converting the data points in the point cloud data set from the current coordinate system to the internal point coordinate system includes: Performing a translation process on the data points in the point cloud data set according to the target data point; Obtain the horizontal axis rotation matrix and the vertical axis rotation matrix. The horizontal axis rotation matrix is the rotation relationship matrix based on the horizontal axis when converting the current coordinate system to the internal point coordinate system, and the vertical axis rotation matrix is the rotation relationship matrix based on the vertical axis when converting the current coordinate system to the internal point coordinate system; Perform horizontal axis rotation on the translated data points based on the horizontal axis rotation matrix; Perform vertical axis rotation on the translated data points based on the vertical axis rotation matrix.

7. The object recognition method based on point cloud data according to claim 6, characterized in that, The steps of obtaining the horizontal axis rotation matrix and the vertical axis rotation matrix include: Perform translation processing on the reference coordinate points according to the target data points; Calculate the horizontal axis rotation matrix and the vertical axis rotation matrix according to the translated reference coordinate points and the target data points.

8. The object recognition method based on point cloud data according to claim 4, wherein The steps of detecting the internal points of the sub-target point cloud based on the new point cloud dataset and the internal point coordinate system include: Detect the data points in the four quadrants of the internal point coordinate system; If there are data points in the new point cloud dataset in all four quadrants, mark the target data point as an internal point; If there are not data points in the new point cloud dataset in all four quadrants, mark the target data point as a non-internal point.

9. The object recognition method based on point cloud data according to claim 1, wherein The steps of identifying the target type of the sub-target point cloud based on the number of internal points include: Obtain the total number of points of the sub-target point cloud; Calculate the point ratio, where the point ratio is the ratio of the number of internal points to the total number of points; If the point ratio is greater than the ratio threshold, mark the target type of the sub-target point cloud as the grass clump type; If the point ratio is less than or equal to the ratio threshold, mark the target type of the sub-target point cloud as the non-grass clump type.

10. A target recognition system based on point cloud data, characterized in that, Include: A point cloud data acquisition module for acquiring point cloud data of a target area; A target recognition module for extracting a target point cloud from the point cloud data. The target point cloud includes data points in the point cloud data whose distance from the data points in the background point cloud is greater than a first distance. The background point cloud is the point cloud data after performing rasterized downsampling processing; Segment the target point cloud into sub-target point clouds, where the sub-target point cloud is a set of data points whose distance between data points in the target point cloud is less than a second distance; Detect the number of internal points of the sub-target point cloud. The number of internal points is the number of internal points in the sub-target point cloud. In each quadrant of the internal point coordinate system constructed with the internal point as the origin, there are data points whose distance from the internal point is less than a third distance; Identify the target type of the sub-target point cloud based on the number of internal points.