WO2022099530A1 - Motion segmentation method and apparatus for point cloud data, computer device and storage medium - Google Patents

Motion segmentation method and apparatus for point cloud data, computer device and storage medium Download PDF

Info

Publication number
WO2022099530A1
WO2022099530A1 PCT/CN2020/128264 CN2020128264W WO2022099530A1 WO 2022099530 A1 WO2022099530 A1 WO 2022099530A1 CN 2020128264 W CN2020128264 W CN 2020128264W WO 2022099530 A1 WO2022099530 A1 WO 2022099530A1
Authority
WO
WIPO (PCT)
Prior art keywords
point cloud
cloud data
bounding box
ground
frame
Prior art date
Application number
PCT/CN2020/128264
Other languages
French (fr)
Chinese (zh)
Inventor
吴伟
Original Assignee
深圳元戎启行科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳元戎启行科技有限公司 filed Critical 深圳元戎启行科技有限公司
Priority to CN202080092973.6A priority Critical patent/CN115066708A/en
Priority to PCT/CN2020/128264 priority patent/WO2022099530A1/en
Publication of WO2022099530A1 publication Critical patent/WO2022099530A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation

Definitions

  • the present application relates to a method, device, computer equipment and storage medium for motion segmentation of point cloud data.
  • Lidar sensors can provide real-time and accurate 3D scene information, with a large ranging range and high accuracy, and the measured values are not affected by ambient light.
  • the information collected by lidar sensors is usually presented in the form of a point cloud.
  • unmanned driving in order to ensure the safety of unmanned vehicles, it is necessary to monitor objects in the surrounding environment in real time, especially to detect and track moving objects such as pedestrians and moving vehicles. Data is segmented to identify moving objects.
  • non-deep learning methods such as based on grid maps, count the change status of point cloud data in grids corresponding to multiple consecutive frames, so as to identify dynamic points and static points in point cloud data. point.
  • the traditional method only considers the individual features of each point, and it is difficult to directly correspond to the point cloud data of consecutive frames, resulting in low accuracy of point cloud motion segmentation.
  • a point cloud data segmentation method, apparatus, computer equipment and storage medium capable of accurate point cloud motion segmentation are provided.
  • a motion segmentation method for point cloud data comprising:
  • the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
  • a point cloud data motion segmentation device comprising:
  • Communication module for acquiring multi-frame point cloud data
  • the point cloud motion segmentation module is used to perform point cloud motion segmentation on the point cloud data, and obtain the point cloud motion segmentation result;
  • the ground filtering module is used to perform ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
  • the cluster analysis module is used to perform cluster analysis on the multi-frame non-ground point cloud data, and obtain the three-dimensional bounding box corresponding to each frame of the non-ground point cloud data;
  • an occlusion analysis module for performing occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box;
  • the updating module is used to update the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box when the point cloud motion state is dynamic, and obtain the target point cloud motion segmentation result.
  • a computer device includes a memory and one or more processors, the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the processor, causes the one or more processors to perform the following steps:
  • the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
  • One or more non-volatile computer-readable storage media storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform the following steps:
  • the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
  • FIG. 1 is an application environment diagram of a method for motion segmentation of point cloud data in one or more embodiments.
  • FIG. 2 is a schematic flowchart of a method for motion segmentation of point cloud data in one or more embodiments.
  • FIG. 3 is a schematic flowchart of steps of performing occlusion analysis on a three-dimensional bounding box to determine a point cloud motion state corresponding to the three-dimensional bounding box in one or more embodiments.
  • FIG. 4 is a block diagram of an apparatus for motion segmentation of point cloud data in one or more embodiments.
  • FIG. 5 is a block diagram of a computer device in one or more embodiments.
  • the point cloud data motion segmentation method provided in this application can be applied to the application environment shown in FIG. 1 .
  • the vehicle-mounted sensor 102 sends the collected multi-frame point cloud data to the computer device 104 .
  • the onboard sensor could be a lidar.
  • the computer device 104 performs point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result.
  • the computer device 104 can also perform ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data, and perform cluster analysis on the multiple frames of non-ground point cloud data to obtain a three-dimensional enclosure corresponding to each frame of non-ground point cloud data.
  • the computer device 104 updates the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box to obtain the target point cloud motion segmentation result.
  • FIG. 2 a method for motion segmentation of point cloud data is provided, and the method is applied to the computer equipment in FIG. 1 as an example to illustrate, including the following steps:
  • Step 202 acquiring multi-frame point cloud data.
  • the point cloud data can be the data recorded by the vehicle-mounted sensor in the form of point cloud by scanning the surrounding environment information.
  • the onboard sensor could be a lidar.
  • a single frame of point cloud data refers to the original point cloud collected by the vehicle-mounted sensor rotating one circle horizontally.
  • Multi-frame point cloud data refers to the original point cloud in which multiple consecutive frames exist in time sequence.
  • the original point cloud is distributed on multiple circular scan lines with different vertical angles, and the point cloud data on each circular scan line is composed of a circle of laser points.
  • the point cloud data may specifically include three-dimensional coordinates (x, y, z) of each point, laser reflection intensity (Intensity), color information (RGB), and the like.
  • Three-dimensional coordinates are used to represent the position information of the target object surface in the surrounding environment.
  • the three-dimensional coordinates may be the coordinates of the point in the Cartesian coordinate system, and specifically include the horizontal, vertical, and vertical coordinates of the point in the Cartesian coordinate system.
  • the Cartesian coordinate system is a three-dimensional space coordinate system established with lidar as the origin.
  • the three-dimensional space coordinate system includes a horizontal axis (x axis), a vertical axis (y axis) and a vertical axis (z axis).
  • the three-dimensional space coordinate system established with lidar as the origin satisfies the right-hand rule.
  • the x-axis coordinate in the three-dimensional coordinates represents the longitudinal distance of the scanned target object surface relative to the lidar
  • the y-axis coordinate represents the lateral offset of the scanned target object surface relative to the lidar
  • the z-axis coordinate represents the scanned target.
  • the surrounding environment can be scanned by the lidar installed on the vehicle to obtain the corresponding multi-frame point cloud data, and the collected multi-frame point cloud data can be transmitted to the computer equipment.
  • Step 204 Perform point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result.
  • Point cloud motion segmentation refers to classifying the motion of points in point cloud data and identifying whether each point is a dynamic point or a static point. After acquiring the multi-frame point cloud data transmitted by the vehicle sensor, the computer equipment can perform point cloud motion segmentation on the point cloud data.
  • the point cloud motion segmentation result includes the motion state corresponding to each point in the point cloud data, including dynamic points and static points.
  • the way to perform point cloud motion segmentation on point cloud data may be to first divide the data space corresponding to each frame of point cloud data into multiple grids according to the preset grid size to obtain a grid map, so that the computer equipment counts multiple consecutive frames. For the quantitative change value of the point cloud data under each grid, the point corresponding to the grid with the quantitative change value greater than the threshold is determined as a dynamic point, and the point corresponding to the grid with the quantitative change value less than or equal to the threshold value is determined as a static point. .
  • the computer device may further establish a spatial grid containing the point cloud data, and set each grid to a preset size, such as 0.1 meters, so as to divide the spatial grid into a plurality of grids.
  • the raster When a raster has one or more points in the point cloud data at its corresponding location, the raster can be marked as occupied. When the position corresponding to the grid does not have any point, the grid is marked as unoccupied, thereby realizing the marking of each grid in the spatial grid.
  • the grid of the target object By marking the grid, the grid of the target object can be quickly determined, so as to perform point cloud motion segmentation.
  • the smaller the size of the grid the higher the precision and the higher the resolution, that is, for the same spatial grid, the more grids there are, the higher the resolution of the spatial grid is. The higher the resolution rate of the spatial grid, the higher the accuracy of the raster map.
  • the point cloud motion segmentation method may be any one of a variety of point cloud motion segmentation methods, such as a point-level occlusion analysis method, a point cloud motion segmentation method based on a deep learning model, and the like.
  • performing point cloud motion segmentation on point cloud data, and obtaining a point cloud motion segmentation result includes: calling a pre-trained point cloud motion segmentation model, and inputting the point cloud data into the point cloud motion segmentation model;
  • the cloud motion segmentation model classifies the point cloud data, outputs the corresponding motion state of each point in the point cloud data, and generates the point cloud motion segmentation result.
  • the point cloud motion segmentation model is trained by a large number of labeled sample data.
  • the point cloud motion segmentation model can be any one of pointnet, pointnet++, etc.
  • the computer equipment can input the point cloud data into the point cloud motion segmentation model, classify the point cloud data through the point cloud motion segmentation model, and determine the motion state of each point in the point cloud data, that is, output each point as a dynamic point. Still a static point.
  • the motion classification of point cloud data can improve the accuracy of point cloud motion segmentation by using a pre-established point cloud motion segmentation model.
  • the computer device may further preprocess the point cloud data before the point cloud motion segmentation.
  • the way of preprocessing can include downsampling and filtering processing operations.
  • computer equipment can use voxel grid filtering to downsample point cloud data, which can remove noise points, reduce the amount of redundant data, improve point cloud processing speed, and maintain details in the depth direction during filtering. Reduce the loss of detail in the depth direction. Therefore, the computer equipment performs through filtering processing on the downsampled point cloud data.
  • the depth direction data range of the point cloud data can be set, for example, between 0.6-1.0m, and the point cloud outside this range will be used as interference. Click to remove.
  • the computer equipment adopts the statistical filtering method on the point cloud data after the pass-through filtering, performs a statistical analysis on the neighborhood of each point, and removes the point cloud outside the standard range, thereby reducing the isolated redundant point cloud.
  • the computer equipment can use the sparse outlier removal method to calculate the average distance from each point in the point cloud data to all adjacent points, determine the points whose average distance is outside the standard range as outliers, and extract the points from the point cloud data. removed from cloud data.
  • the standard range is defined by the global distance mean and variance. By removing outliers, the accuracy of point cloud motion segmentation can be improved.
  • Step 206 Perform ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data.
  • Step 208 Perform cluster analysis on multiple frames of non-ground point cloud data to obtain a three-dimensional bounding box corresponding to each frame of non-ground point cloud data.
  • the computer equipment can also perform point cloud motion on the point cloud data.
  • 3D object-level occlusion analysis is performed on the point cloud data to assist the traditional point cloud motion segmentation method and improve the accuracy of point cloud motion segmentation.
  • the computer equipment Before performing occlusion analysis on the point cloud data at the 3D target level, the computer equipment needs to perform ground filtering, cluster analysis and identification of 3D bounding boxes on the point cloud data of each frame.
  • Ground filtering refers to filtering out the ground points in the point cloud data, and the remaining points are non-ground points.
  • the computer equipment can identify the ground points in each frame of point cloud data by performing ground segmentation on each frame of point cloud data, thereby filtering the ground points in each frame of point cloud data to obtain each frame of non-ground point cloud data.
  • the computer device may first divide the point cloud area where the point cloud data is located into a plurality of sub-areas.
  • the point cloud area refers to the three-dimensional data space where the point cloud data is located.
  • the division method may be grid division of the point cloud area, that is, division of the horizontal plane formed by the point cloud area in the x-axis direction and the y-axis direction.
  • the grid division method may be equal division or random division. For example, for a vehicle-mounted sensor with a visible range of 100m, and the horizontal plane in the scanning area of the vehicle-mounted sensor is 100m*100m, the point cloud area can be equally divided into 10*10 horizontal grids.
  • the computer device may use the least squares method to estimate the corresponding ground according to the preset plane equation, so as to obtain the corresponding ground of each sub-region.
  • the preset plane equation may be a ternary linear equation.
  • the ground corresponding to each sub-region is embodied in the form of a ternary linear equation.
  • the computer equipment traverses the coordinates of the points in the corresponding sub-regions in the equation corresponding to the ground, calculates the distance between each point and the corresponding ground, and determines the point as a ground point when the distance is less than a threshold. When the distance is greater than or equal to the threshold, the point is determined as a non-ground point. Threshold refers to the distance threshold used to judge whether the point is a ground point.
  • the computer equipment further filters the ground points to obtain non-ground points in each frame of point cloud data, thereby obtaining each frame of non-ground point cloud data.
  • the ground segmentation method may be any one of a depth image and geometric relationship-based method, a normal vector method, an absolute height method, an average height method, and the like.
  • the computer equipment performs cluster analysis on multiple frames of non-ground point cloud data, and obtains a three-dimensional bounding box corresponding to each target object in each frame of non-ground point cloud data.
  • Cluster analysis refers to clustering the points corresponding to the same target object together, and identifying the three-dimensional bounding box corresponding to each target object.
  • Cluster analysis can include two steps of clustering and identifying three-dimensional bounding boxes.
  • the clustering method may be any one of the clustering algorithms such as the connected domain clustering method and the DBSCAN (Density-Based Spatial Clustering of Applications with Noise, density clustering) algorithm.
  • the three-dimensional bounding box corresponding to the identified target object may be any one of L-shape fitting method, principal component analysis method, and the like.
  • the three-dimensional bounding box may include the center point coordinates, size, orientation, etc. of the target object.
  • Step 210 Perform occlusion analysis on the three-dimensional bounding box to determine the motion state of the point cloud corresponding to the three-dimensional bounding box.
  • Occlusion analysis refers to identifying the motion state of point cloud data according to the characteristics of the laser beam.
  • the occlusion characteristic of the laser beam means that when multiple objects are on the same laser scanning zone, the lidar will directly measure the target object closest to the vehicle, but will not measure other target objects on the same laser scanning zone. There is no other target object between it and the measured target object.
  • the laser scanning zone can be the scanning range of the laser beam emitted by the lidar at a certain time. Therefore, the computer equipment can use the characteristics of the laser beam emitted by the lidar to surround the target object corresponding to multiple frames of non-ground point cloud data. box for occlusion analysis.
  • the computer device can perform occlusion analysis on the middle position of the line connecting each 3D bounding box of the current frame and the 3D bounding box of the historical frame to the vehicle. If the bounding box is dynamic, all points in the three-dimensional bounding box are determined as dynamic points.
  • Step 212 when the motion state of the point cloud is dynamic, update the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box to obtain the target point cloud motion segmentation result.
  • the computer equipment can update the point cloud motion segmentation result according to the dynamic points obtained by the occlusion analysis, and can correct the wrong points in the dynamic point recognition in the point cloud motion segmentation results. Get the target point cloud segmentation result.
  • the computer equipment performs point cloud motion segmentation on the acquired multi-frame point cloud data to obtain the point cloud motion segmentation result.
  • the computer equipment performs ground filtering processing on each frame of point cloud data to obtain effective cloud data. Clustering analysis of multiple frames of non-ground point cloud data can cluster the points belonging to the same target object together, and obtain the three-dimensional bounding box corresponding to each target object.
  • the computer equipment performs occlusion analysis on the three-dimensional bounding box, and determines the points in the dynamic three-dimensional bounding box as dynamic points.
  • the occlusion analysis of the 3D bounding box avoids the situation that the points corresponding to the same target object have different motion states, and can obtain a more accurate point cloud motion state, thereby obtaining a more accurate dynamic point. Further, the computer equipment updates the result of the point cloud motion segmentation according to the dynamic points, thereby improving the accuracy of the point cloud motion segmentation.
  • the occlusion analysis is performed on the three-dimensional bounding box, and the step of determining the motion state of the point cloud corresponding to the three-dimensional bounding box includes:
  • Step 302 in the three-dimensional bounding box, determine the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the historical three-dimensional bounding box corresponding to the non-ground point cloud data of the historical frame.
  • Step 304 Perform occlusion analysis on the current 3D bounding box and the historical 3D bounding box, and identify the motion state of the point cloud corresponding to the current 3D bounding box.
  • the computer device may determine the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the historical three-dimensional bounding box corresponding to the non-ground point cloud data of the historical frame in the three-dimensional bounding box obtained by the cluster analysis.
  • the historical frame may be a certain historical frame, or may be multiple historical frames within a preset time period.
  • the current 3D bounding box and the historical 3D bounding box may be one or multiple. Therefore, the computer device performs occlusion analysis on the current three-dimensional bounding box and the historical three-dimensional bounding box.
  • performing occlusion analysis on the current 3D bounding box and the historical 3D bounding box, and identifying the motion state of the point cloud corresponding to the current 3D bounding box includes: acquiring point cloud scan lines corresponding to each historical 3D bounding box; identifying the current 3D bounding box The positional relationship between the bounding box and the point cloud scan line; identify the motion state of the point cloud corresponding to the current bounding box according to the positional relationship.
  • the computer device acquires the point cloud scan line corresponding to the historical three-dimensional bounding box of each frame in the historical frame.
  • the point cloud scan line refers to the connection between the historical 3D bounding box obtained on the laser scan band emitted by the lidar and the vehicle.
  • the point cloud scan line includes the scan angle of the lidar. Therefore, the computer device recognizes the positional relationship between the current 3D bounding box and each point cloud scan line. Since there is no other target object in the connection between the historical 3D bounding box and the vehicle, when the computer device recognizes the current When there is a 3D bounding box located in the middle of the point cloud scan line in the 3D box, the 3D bounding box can be determined as a dynamic target, and the points in the 3D bounding box are all dynamic points.
  • the computer device only needs to determine the three-dimensional bounding box as a dynamic target when detecting that there is a three-dimensional bounding box located in the middle of each point cloud scan line in the current three-dimensional bounding box, and determine the points in the three-dimensional bounding box as dynamic points. It can quickly judge the motion state of the point cloud.
  • the lidar scans the target object z(n, 1), indicating that there is no other target object in the connection between the vehicle and the target object z(n, 1), while at time t, the lidar measures the target object z(n, 1).
  • the target object z(m, 1) in the middle of the point cloud scan line formed by the vehicle to the target object z(n, 1) at time t-k indicates that the target object z(m, 1) is dynamic relative to time t-k. Therefore, the computer device can determine the points in the three-dimensional bounding box corresponding to the target object z(m, 1) as dynamic points.
  • the computer device performs occlusion analysis on the current 3D bounding box and the historical 3D bounding box, and can quickly and accurately determine the motion state of the point cloud by using the characteristics of the laser beam.
  • the 3D bounding box is a real 3D target
  • the occlusion analysis of the 3D bounding box avoids the situation that the points corresponding to the same target object have different motion states, and can obtain more accurate dynamic points.
  • the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and obtaining the point cloud data segmentation result includes: extracting dynamic point cloud data corresponding to the 3D bounding box; In the segmentation result, the point cloud motion segmentation result corresponding to each dynamic point in the dynamic point cloud data is determined; when the determined point cloud motion segmentation result is a static point, the determined point cloud motion segmentation result is replaced with a dynamic point.
  • the computer device can update the point cloud motion segmentation result according to the dynamic point cloud data corresponding to the dynamic three-dimensional bounding box. Specifically, the computer device extracts dynamic point cloud data corresponding to the dynamic three-dimensional bounding box, and the dynamic point cloud data includes a plurality of dynamic points. The computer device thus determines the point cloud motion segmentation result corresponding to each dynamic point in the point cloud motion segmentation result. When the determined point cloud motion segmentation result is a static point, the computer equipment updates the point cloud motion segmentation result to a dynamic point, thereby improving the recognition accuracy of the dynamic point in the point cloud motion segmentation result, thereby improving the detection of dynamic targets. accuracy.
  • performing ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data includes: dividing the point cloud area corresponding to each frame of point cloud data into multiple grids; The equation calculates the ground corresponding to the point cloud data in each grid; calculates the distance value between each point in the point cloud data of each grid and the corresponding ground; filters the points whose distance value is less than the first threshold to obtain multiple frames Non-ground point cloud data.
  • the point cloud area refers to the data space where the point cloud data of each frame is located.
  • the computer equipment may divide the point cloud area corresponding to each frame of point cloud data into grids to obtain multiple grids.
  • Grid division refers to dividing the point cloud area in the x-axis direction and the y-axis direction, that is, dividing the point cloud area on the xy level.
  • the computer device may divide the data area corresponding to the extracted point cloud data in the x-axis direction and the y-axis direction according to preset parameters.
  • the preset parameter may be a parameter for grid division of the data region where the extracted point cloud data is located.
  • the preset parameter may be length*width, indicating the length and width of each grid obtained after grid division.
  • the length and width can be the same or different.
  • the preset parameter may also be equal division.
  • the height of multiple grids is the same.
  • the computer device may first divide the point cloud area corresponding to the extracted point cloud data in the x-axis direction according to preset parameters, and then divide the point cloud area corresponding to the extracted point cloud data in the y-axis direction according to the preset parameters.
  • the point cloud area corresponding to the extracted point cloud data may also be firstly divided in the y-axis direction according to preset parameters, and then the point cloud area corresponding to the extracted point cloud data may be divided in the x-axis direction according to the preset parameters.
  • the computer device obtains the preset plane equation, and calculates the ground corresponding to the point cloud data in each grid according to the preset plane equation and the least square method, so as to obtain the ground corresponding to each grid.
  • the ground corresponding to each grid is embodied in the form of a ternary linear equation.
  • the computer equipment traverses and inputs the point coordinates of each point in the corresponding grid in the equation corresponding to the ground, and calculates the distance value between each point and the corresponding ground.
  • a first threshold for judging the type of the point is pre-stored in the computer device.
  • Classes of points can include ground points as well as non-ground points.
  • the computer device compares the distance value with the first threshold value, and when the distance value is smaller than the first threshold value, it indicates that the point is a ground point. When the distance value is greater than or equal to the first threshold, it indicates that the point is a non-ground point.
  • the computer equipment filters the points whose distance value is less than the first threshold, and the remaining points constitute non-ground point cloud data.
  • the point cloud area corresponding to each frame of point cloud data is divided into multiple grids, so as to calculate the ground corresponding to the point cloud data in each grid, and by calculating the distance between each point and the corresponding ground, Thereby filtering the ground points. Since the grid division only needs to divide the data area corresponding to the point cloud data in the x-axis direction and the y-axis direction, it can be quickly performed in the unmanned mode, when the computing resources of the computer equipment are limited and the real-time requirements are high. Ground filtration treatment.
  • calculating the ground corresponding to the point cloud data in each grid according to the preset plane equation includes: selecting the point with the smallest height value in the point cloud data corresponding to each grid; calculating the point corresponding to each grid The height difference between each point in the cloud data and the point with the smallest height value; extract the points whose height difference is less than the second threshold, and perform plane fitting on the selected points according to the preset plane equation to obtain the points in each grid The ground corresponding to the cloud data.
  • the computer equipment After the computer equipment divides the point cloud area corresponding to each frame of point cloud data, and obtains multiple grids, it can select the point with the smallest height value in the point cloud data corresponding to each grid, and calculate the corresponding grid. The height difference between each point in the point cloud data and the point with the smallest height value.
  • a second threshold for judging whether it is a plane fitting point is pre-stored in the computer device. When the height difference is less than the second threshold, it indicates that the point corresponding to the height difference is a plane fitting point.
  • the computer equipment compares the height difference with the second threshold, selects points whose height difference is less than the second threshold, and performs plane fitting on the selected points according to the preset plane equation by the computer equipment to obtain the point cloud data in each grid. corresponding ground.
  • the computer device selects the plane fitting by calculating the height difference between each point in the point cloud data corresponding to each grid and the point with the smallest height value, and comparing the height difference with the second threshold. Because the probability of the point with the smallest height value being the ground point is the largest, by calculating the height difference between each point and the point with the smallest height value, the plane fitting point can be determined more accurately, and the ground estimation efficiency can be improved, and then Improve ground filtration efficiency.
  • a motion segmentation device for point cloud data including: a communication module 402 , a point cloud motion segmentation module 404 , a ground filtering module 406 , a cluster analysis module 408 , and an occlusion analysis module. module 410 and update module 412, where:
  • the communication module 402 is used for acquiring multi-frame point cloud data.
  • the point cloud motion segmentation module 404 is configured to perform point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result.
  • the ground filtering module 406 is configured to perform ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data.
  • the cluster analysis module 408 is configured to perform cluster analysis on multiple frames of non-ground point cloud data to obtain a three-dimensional bounding box corresponding to each frame of non-ground point cloud data.
  • the occlusion analysis module 410 is configured to perform occlusion analysis on the three-dimensional bounding box, and determine the motion state of the point cloud corresponding to the three-dimensional bounding box.
  • the updating module 412 is configured to update the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box when the motion state of the point cloud is dynamic, so as to obtain the target point cloud motion segmentation result.
  • the occlusion analysis module 410 is further configured to determine, in the three-dimensional bounding box, the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the historical three-dimensional bounding box corresponding to the non-ground point cloud data of the historical frame; The current 3D bounding box and the historical 3D bounding box are subjected to occlusion analysis to identify the motion state of the point cloud corresponding to the current 3D bounding box.
  • the occlusion analysis module 410 is further configured to obtain the point cloud scan line corresponding to each historical 3D bounding box; identify the positional relationship between the current 3D bounding box and the point cloud scan line; identify the current bounding box according to the positional relationship The motion state of the point cloud corresponding to the box.
  • the update module 412 is further configured to extract the dynamic point cloud data corresponding to the three-dimensional bounding box; determine the point cloud motion segmentation result corresponding to each dynamic point in the dynamic point cloud data in the point cloud motion segmentation result; when When the determined point cloud motion segmentation result is a static point, replace the determined point cloud motion segmentation result with a dynamic point.
  • the ground filtering module 406 is further configured to divide the point cloud area corresponding to each frame of point cloud data into multiple grids; calculate the ground corresponding to the point cloud data in each grid according to a preset plane equation ; Calculate the distance value between each point in the point cloud data of each grid and the corresponding ground; filter the points whose distance value is less than the first threshold to obtain multiple frames of non-ground point cloud data.
  • the ground filtering module 406 is further configured to select the point with the smallest height value in the point cloud data corresponding to each grid; calculate the point with the smallest height value in the point cloud data corresponding to each grid The height difference between the two points is extracted; the points whose height difference is less than the second threshold are extracted, and the selected points are fitted according to the preset plane equation to obtain the ground corresponding to the point cloud data in each grid.
  • the point cloud motion segmentation module 404 is further configured to call a pre-trained point cloud motion segmentation model, and input the point cloud data into the point cloud motion segmentation model; Perform classification, output the motion state corresponding to each point in the point cloud data, and generate a point cloud motion segmentation result.
  • Each module in the above-mentioned point cloud data motion segmentation device can be implemented in whole or in part by software, hardware and combinations thereof.
  • the above modules can be embedded in or independent of the processor in the computer device in the form of hardware, or stored in the memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.
  • a computer device is provided, the internal structure of which can be shown in FIG. 5 .
  • the computer device includes a processor, memory, a communication interface, and a database connected by a system bus.
  • the processor of the computer device is used to provide computing and control capabilities.
  • the memory of the computer device includes a non-volatile storage medium, an internal memory.
  • the non-volatile storage medium stores an operating system, computer readable instructions and a database.
  • the internal memory provides an environment for the execution of the operating system and computer-readable instructions in the non-volatile storage medium.
  • the database of the computer device is used to store the point cloud motion segmentation results, the target point cloud motion segmentation results, and the like.
  • the communication interface of the computer device is used to connect and communicate with the vehicle sensor.
  • the computer readable instructions when executed by a processor, implement a method for motion segmentation of point cloud data.
  • FIG. 5 is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer equipment to which the solution of the present application is applied. Include more or fewer components than shown in the figures, or combine certain components, or have a different arrangement of components.
  • a computer device includes a memory and one or more processors, the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the one or more processors, causes the one or more processors to perform the following steps:
  • the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
  • the processor further implements the following steps when executing the computer-readable instructions: determining, in the three-dimensional bounding box, the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the historical frame corresponding to the non-ground point cloud data of the historical frame 3D bounding box: Perform occlusion analysis on the current 3D bounding box and historical 3D bounding box, and identify the point cloud motion state corresponding to the current 3D bounding box.
  • the processor when the processor executes the computer-readable instructions, it further implements the following steps: acquiring point cloud scan lines corresponding to each historical three-dimensional bounding box; identifying the positional relationship between the current three-dimensional bounding box and the point cloud scan line; The positional relationship identifies the motion state of the point cloud corresponding to the current bounding box.
  • the processor further implements the following steps when executing the computer-readable instructions: extracting the dynamic point cloud data corresponding to the three-dimensional bounding box; determining the point corresponding to each dynamic point in the dynamic point cloud data in the point cloud motion segmentation result Cloud motion segmentation result; when the determined point cloud motion segmentation result is a static point, replace the determined point cloud motion segmentation result with a dynamic point.
  • the processor further implements the following steps when executing the computer-readable instructions: dividing the point cloud area corresponding to each frame of point cloud data into a plurality of grids; calculating the points in each grid according to a preset plane equation The ground corresponding to the cloud data; calculate the distance value between each point in the point cloud data of each grid and the corresponding ground; filter the points whose distance value is less than the first threshold to obtain multiple frames of non-ground point cloud data.
  • the processor further implements the following steps when executing the computer-readable instructions: selecting the point with the smallest height value in the point cloud data corresponding to each grid; calculating the difference between each point in the point cloud data corresponding to each grid and the The height difference between the points with the smallest height value; extract the points whose height difference is less than the second threshold, and perform plane fitting on the selected points according to the preset plane equation to obtain the ground corresponding to the point cloud data in each grid.
  • the processor further implements the following steps when executing the computer-readable instructions: calling a pre-trained point cloud motion segmentation model, inputting point cloud data into the point cloud motion segmentation model; The point cloud data is classified, and the motion state corresponding to each point in the point cloud data is output to generate the point cloud motion segmentation result.
  • One or more non-volatile computer-readable storage media storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform the following steps:
  • the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
  • the following steps are further implemented: determining, in the three-dimensional bounding box, the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the non-ground point cloud data of the historical frame corresponding to the current frame.
  • Historical 3D bounding box Perform occlusion analysis on the current 3D bounding box and historical 3D bounding box, and identify the point cloud motion state corresponding to the current 3D bounding box.
  • the computer-readable instructions further implement the following steps when executed by the processor: acquiring point cloud scan lines corresponding to each historical 3D bounding box; identifying the positional relationship between the current 3D bounding box and the point cloud scan lines; Identify the motion state of the point cloud corresponding to the current bounding box according to the positional relationship.
  • the following steps are further implemented: extracting dynamic point cloud data corresponding to a three-dimensional bounding box; Point cloud motion segmentation result; when the determined point cloud motion segmentation result is a static point, replace the determined point cloud motion segmentation result with a dynamic point.
  • the following steps are further implemented: dividing the point cloud area corresponding to each frame of point cloud data into a plurality of grids; The ground corresponding to the point cloud data; calculate the distance value between each point in the point cloud data of each grid and the corresponding ground; filter the points whose distance value is less than the first threshold to obtain multiple frames of non-ground point cloud data.
  • the following steps are further implemented: selecting the point with the smallest height value in the point cloud data corresponding to each grid; calculating each point in the point cloud data corresponding to each grid The height difference between the point with the smallest height value; extract the points whose height difference is less than the second threshold, and perform plane fitting on the selected points according to the preset plane equation to obtain the ground corresponding to the point cloud data in each grid .
  • the following steps are further implemented: calling a pre-trained point cloud motion segmentation model, inputting point cloud data into the point cloud motion segmentation model; Classify the point cloud data, output the motion state corresponding to each point in the point cloud data, and generate the point cloud motion segmentation result.
  • Nonvolatile memory may include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory.
  • Volatile memory may include random access memory (RAM) or external cache memory.
  • RAM is available in various forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous chain Road (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Traffic Control Systems (AREA)

Abstract

A motion segmentation method for point cloud data, comprising: acquiring multiple frames of point cloud data; performing point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result; performing ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data; performing cluster analysis on the multiple frames of non-ground point cloud data to obtain a 3D bounding box corresponding to each frame of non-ground point cloud data; performing occlusion analysis on the 3D bounding box to determine a point cloud motion state corresponding to the 3D bounding box; and when the point cloud motion state is dynamic, updating the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the 3D bounding box to obtain a target point cloud motion segmentation result.

Description

点云数据运动分割方法、装置、计算机设备和存储介质Point cloud data motion segmentation method, device, computer equipment and storage medium 技术领域technical field
本申请涉及一种点云数据运动分割方法、装置、计算机设备和存储介质。The present application relates to a method, device, computer equipment and storage medium for motion segmentation of point cloud data.
背景技术Background technique
激光雷达传感器能够提供实时并且精确的三维场景信息,测距范围大、精度高,且测量值不受环境光照的影响,被广泛应用于无人驾驶、安防监测、测绘勘探等领域。激光雷达传感器所采集的信息通常以点云的形式呈现。在无人驾驶过程中,为了保证无人驾驶车辆的安全,需要对周围环境中的物体进行实时监测,尤其是对运动物体,如行人、移动的车辆等进行检测和跟踪,因此需要对点云数据进行分割,以识别运动物体。Lidar sensors can provide real-time and accurate 3D scene information, with a large ranging range and high accuracy, and the measured values are not affected by ambient light. The information collected by lidar sensors is usually presented in the form of a point cloud. In the process of unmanned driving, in order to ensure the safety of unmanned vehicles, it is necessary to monitor objects in the surrounding environment in real time, especially to detect and track moving objects such as pedestrians and moving vehicles. Data is segmented to identify moving objects.
传统的点云运动分割方式中,是通过非深度学习方法,如基于栅格地图,统计多个连续帧对应的栅格中点云数据的变化状态,从而识别点云数据中的动态点与静态点。然而,传统方式是仅考虑每个点单独的特征,很难将连续帧的点云数据进行直接对应,从而导致点云运动分割准确性较低。In the traditional point cloud motion segmentation method, non-deep learning methods, such as based on grid maps, count the change status of point cloud data in grids corresponding to multiple consecutive frames, so as to identify dynamic points and static points in point cloud data. point. However, the traditional method only considers the individual features of each point, and it is difficult to directly correspond to the point cloud data of consecutive frames, resulting in low accuracy of point cloud motion segmentation.
发明内容SUMMARY OF THE INVENTION
根据本申请公开的各种实施例,提供一种能够点云运动分割准确性的点云数据分割方法、装置、计算机设备和存储介质。According to various embodiments disclosed in the present application, a point cloud data segmentation method, apparatus, computer equipment and storage medium capable of accurate point cloud motion segmentation are provided.
一种点云数据运动分割方法,包括:A motion segmentation method for point cloud data, comprising:
获取多帧点云数据;Obtain multi-frame point cloud data;
对点云数据进行点云运动分割,得到点云运动分割结果;Perform point cloud motion segmentation on the point cloud data to obtain the point cloud motion segmentation result;
对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;Perform ground filtering on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;Perform cluster analysis on multiple frames of non-ground point cloud data, and obtain the three-dimensional bounding box corresponding to each frame of non-ground point cloud data;
对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态;及Perform occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box; and
当点云运动状态为动态时,根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到目标点云运动分割结果。When the motion state of the point cloud is dynamic, the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
一种点云数据运动分割装置,包括:A point cloud data motion segmentation device, comprising:
通信模块,用于获取多帧点云数据;Communication module for acquiring multi-frame point cloud data;
点云运动分割模块,用于对点云数据进行点云运动分割,得到点云运动分割结果;The point cloud motion segmentation module is used to perform point cloud motion segmentation on the point cloud data, and obtain the point cloud motion segmentation result;
地面过滤模块,用于对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;The ground filtering module is used to perform ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
聚类分析模块,用于对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;The cluster analysis module is used to perform cluster analysis on the multi-frame non-ground point cloud data, and obtain the three-dimensional bounding box corresponding to each frame of the non-ground point cloud data;
遮挡分析模块,用于对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态;及an occlusion analysis module for performing occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box; and
更新模块,用于当点云运动状态为动态时,根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到目标点云运动分割结果。The updating module is used to update the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box when the point cloud motion state is dynamic, and obtain the target point cloud motion segmentation result.
一种计算机设备,包括存储器和一个或多个处理器,存储器中储存有计算机可读指令,计算机可读指令被处理器执行时,使得一个或多个处理器执行以下步骤:A computer device includes a memory and one or more processors, the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the processor, causes the one or more processors to perform the following steps:
获取多帧点云数据;Obtain multi-frame point cloud data;
对点云数据进行点云运动分割,得到点云运动分割结果;Perform point cloud motion segmentation on the point cloud data to obtain the point cloud motion segmentation result;
对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;Perform ground filtering on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;Perform cluster analysis on multiple frames of non-ground point cloud data, and obtain the three-dimensional bounding box corresponding to each frame of non-ground point cloud data;
对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态;及Perform occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box; and
当点云运动状态为动态时,根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到目标点云运动分割结果。When the motion state of the point cloud is dynamic, the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
一个或多个存储有计算机可读指令的非易失性计算机可读存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:One or more non-volatile computer-readable storage media storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform the following steps:
获取多帧点云数据;Obtain multi-frame point cloud data;
对点云数据进行点云运动分割,得到点云运动分割结果;Perform point cloud motion segmentation on the point cloud data to obtain the point cloud motion segmentation result;
对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;Perform ground filtering on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;Perform cluster analysis on multiple frames of non-ground point cloud data, and obtain the three-dimensional bounding box corresponding to each frame of non-ground point cloud data;
对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态;及Perform occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box; and
当点云运动状态为动态时,根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到目标点云运动分割结果。When the motion state of the point cloud is dynamic, the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
本申请的一个或多个实施例的细节在下面的附图和描述中提出。本申请的其它特征和优点将从说明书、附图以及权利要求书变得明显。The details of one or more embodiments of the application are set forth in the accompanying drawings and the description below. Other features and advantages of the present application will be apparent from the description, drawings, and claims.
附图说明Description of drawings
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通 技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。In order to illustrate the technical solutions in the embodiments of the present application more clearly, the following briefly introduces the drawings required in the embodiments. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can also be obtained from these drawings without any creative effort.
图1为一个或多个实施例中点云数据运动分割方法的应用环境图。FIG. 1 is an application environment diagram of a method for motion segmentation of point cloud data in one or more embodiments.
图2为一个或多个实施例中点云数据运动分割方法的流程示意图。FIG. 2 is a schematic flowchart of a method for motion segmentation of point cloud data in one or more embodiments.
图3为一个或多个实施例中对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态步骤的流程示意图。3 is a schematic flowchart of steps of performing occlusion analysis on a three-dimensional bounding box to determine a point cloud motion state corresponding to the three-dimensional bounding box in one or more embodiments.
图4为一个或多个实施例中点云数据运动分割装置的框图。FIG. 4 is a block diagram of an apparatus for motion segmentation of point cloud data in one or more embodiments.
图5为一个或多个实施例中计算机设备的框图。5 is a block diagram of a computer device in one or more embodiments.
具体实施方式Detailed ways
为了使本申请的技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。In order to make the technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application, but not to limit the present application.
本申请提供的点云数据运动分割方法,可以应用于如图1所示的应用环境中。车载传感器102将采集到的多帧点云数据发送至计算机设备104。例如,车载传感器可以是激光雷达。计算机设备104对点云数据进行点云运动分割,得到点云运动分割结果。计算机设备104还可以对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据,对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框,从而对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态。当点云运动状态为动态时,计算机设备104根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到目标点云运动分割结果。The point cloud data motion segmentation method provided in this application can be applied to the application environment shown in FIG. 1 . The vehicle-mounted sensor 102 sends the collected multi-frame point cloud data to the computer device 104 . For example, the onboard sensor could be a lidar. The computer device 104 performs point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result. The computer device 104 can also perform ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data, and perform cluster analysis on the multiple frames of non-ground point cloud data to obtain a three-dimensional enclosure corresponding to each frame of non-ground point cloud data. box, so as to perform occlusion analysis on the 3D bounding box, and determine the motion state of the point cloud corresponding to the 3D bounding box. When the motion state of the point cloud is dynamic, the computer device 104 updates the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box to obtain the target point cloud motion segmentation result.
在其中一个实施例中,如图2所示,提供了一种点云数据运动分割方法,以该方法应用于图1中的计算机设备为例进行说明,包括以下步骤:In one of the embodiments, as shown in FIG. 2 , a method for motion segmentation of point cloud data is provided, and the method is applied to the computer equipment in FIG. 1 as an example to illustrate, including the following steps:
步骤202,获取多帧点云数据。 Step 202, acquiring multi-frame point cloud data.
点云数据可以是车载传感器将扫描到的周围环境信息以点云形式记录的数据。例如,车载传感器可以是激光雷达。单帧点云数据是指车载传感器水平旋转一圈所采集的原始点云。多帧点云数据是指连续多帧在时间上存在先后顺序的原始点云。原始点云分布在垂直角度不同的多条环形扫描线上,每条环形扫描线上的点云数据是由一圈激光点构成的。点云数据具体可以包括各点的三维坐标(x,y,z)、激光反射强度(Intensity)、颜色信息(RGB)等。三维坐标用于表示周围环境中目标物体表面的位置信息。例如,三维坐标可以是点在笛卡尔坐标系中的坐标,具体包括点在笛卡尔坐标系中的横轴坐标、纵轴坐标和竖轴坐标。笛卡尔坐标系是以激光雷达为原点建立的三维空间坐标系,三维空间坐标系包括横轴(x轴)、纵 轴(y轴)和竖轴(z轴)。以激光雷达为原点建立的三维空间坐标系满足右手定则。三维坐标中的x轴坐标表示扫描到的目标物体表面相对于激光雷达的纵向距离,y轴坐标表示扫描到的目标物体表面相对于激光雷达的横向偏移量,z轴坐标表示扫描到的目标物体表面相对于激光雷达的高度。The point cloud data can be the data recorded by the vehicle-mounted sensor in the form of point cloud by scanning the surrounding environment information. For example, the onboard sensor could be a lidar. A single frame of point cloud data refers to the original point cloud collected by the vehicle-mounted sensor rotating one circle horizontally. Multi-frame point cloud data refers to the original point cloud in which multiple consecutive frames exist in time sequence. The original point cloud is distributed on multiple circular scan lines with different vertical angles, and the point cloud data on each circular scan line is composed of a circle of laser points. The point cloud data may specifically include three-dimensional coordinates (x, y, z) of each point, laser reflection intensity (Intensity), color information (RGB), and the like. Three-dimensional coordinates are used to represent the position information of the target object surface in the surrounding environment. For example, the three-dimensional coordinates may be the coordinates of the point in the Cartesian coordinate system, and specifically include the horizontal, vertical, and vertical coordinates of the point in the Cartesian coordinate system. The Cartesian coordinate system is a three-dimensional space coordinate system established with lidar as the origin. The three-dimensional space coordinate system includes a horizontal axis (x axis), a vertical axis (y axis) and a vertical axis (z axis). The three-dimensional space coordinate system established with lidar as the origin satisfies the right-hand rule. The x-axis coordinate in the three-dimensional coordinates represents the longitudinal distance of the scanned target object surface relative to the lidar, the y-axis coordinate represents the lateral offset of the scanned target object surface relative to the lidar, and the z-axis coordinate represents the scanned target. The height of the object's surface relative to the lidar.
车辆在无人驾驶过程中,可以通过安装在车辆上的激光雷达对周围环境进行扫描,得到相应的多帧点云数据,并将采集到的多帧点云数据传送至计算机设备。When the vehicle is unmanned, the surrounding environment can be scanned by the lidar installed on the vehicle to obtain the corresponding multi-frame point cloud data, and the collected multi-frame point cloud data can be transmitted to the computer equipment.
步骤204,对点云数据进行点云运动分割,得到点云运动分割结果。Step 204: Perform point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result.
点云运动分割是指对点云数据中的点进行运动分类,识别各点是动态点还是静态点。计算机设备在获取到车载传感器传输的多帧点云数据之后,可对点云数据进行点云运动分割。点云运动分割结果中包括点云数据中每个点对应的运动状态,包括动态点和静态点。Point cloud motion segmentation refers to classifying the motion of points in point cloud data and identifying whether each point is a dynamic point or a static point. After acquiring the multi-frame point cloud data transmitted by the vehicle sensor, the computer equipment can perform point cloud motion segmentation on the point cloud data. The point cloud motion segmentation result includes the motion state corresponding to each point in the point cloud data, including dynamic points and static points.
对点云数据进行点云运动分割的方式可以是先根据预设栅格尺寸将各帧点云数据对应的数据空间划分为多个栅格,得到栅格地图,从而计算机设备统计多个连续帧在每个栅格下的点云数据的数量变化值,将数量变化值大于阈值的栅格对应的点确定为动态点,将数量变化值小于或者等于阈值的栅格对应的点确定位静态点。在其中一个实施例中,计算机设备还可以建立包含点云数据的空间格网,将每个栅格设置为预设大小,如0.1米,从而将空间格网划分为多个栅格。当某个栅格对应的位置处具有点云数据中的一个或多个点,则可以将该栅格标记为已占据。当栅格对应的位置处不具备任何点,则将该栅格标记为未占据,由此实现对空间格网中的每个栅格进行标记。通过对栅格进行标记可以快速确定存在目标物体的栅格,从而进行点云运动分割。在其中一个实施例中,栅格的尺寸越小,精度越高,分辨率也越高,即针对相同的空间格网,栅格数目越多,空间格网的分辨率也就越高。空间格网的分辨率率越高,栅格地图的准确度越高。The way to perform point cloud motion segmentation on point cloud data may be to first divide the data space corresponding to each frame of point cloud data into multiple grids according to the preset grid size to obtain a grid map, so that the computer equipment counts multiple consecutive frames. For the quantitative change value of the point cloud data under each grid, the point corresponding to the grid with the quantitative change value greater than the threshold is determined as a dynamic point, and the point corresponding to the grid with the quantitative change value less than or equal to the threshold value is determined as a static point. . In one embodiment, the computer device may further establish a spatial grid containing the point cloud data, and set each grid to a preset size, such as 0.1 meters, so as to divide the spatial grid into a plurality of grids. When a raster has one or more points in the point cloud data at its corresponding location, the raster can be marked as occupied. When the position corresponding to the grid does not have any point, the grid is marked as unoccupied, thereby realizing the marking of each grid in the spatial grid. By marking the grid, the grid of the target object can be quickly determined, so as to perform point cloud motion segmentation. In one of the embodiments, the smaller the size of the grid, the higher the precision and the higher the resolution, that is, for the same spatial grid, the more grids there are, the higher the resolution of the spatial grid is. The higher the resolution rate of the spatial grid, the higher the accuracy of the raster map.
在其中一个实施例中,点云运动分割的方式可以是基于点级别的遮挡分析方法、基于深度学习模型的点云运动分割方法等多种点云运动分割方法中的任意一种。In one of the embodiments, the point cloud motion segmentation method may be any one of a variety of point cloud motion segmentation methods, such as a point-level occlusion analysis method, a point cloud motion segmentation method based on a deep learning model, and the like.
在其中一个实施例中,对点云数据进行点云运动分割,得到点云运动分割结果包括:调用预先训练的点云运动分割模型,将点云数据输入至点云运动分割模型中;通过点云运动分割模型对点云数据进行分类,输出点云数据中各点对应的运动状态,生成点云运动分割结果。In one embodiment, performing point cloud motion segmentation on point cloud data, and obtaining a point cloud motion segmentation result includes: calling a pre-trained point cloud motion segmentation model, and inputting the point cloud data into the point cloud motion segmentation model; The cloud motion segmentation model classifies the point cloud data, outputs the corresponding motion state of each point in the point cloud data, and generates the point cloud motion segmentation result.
点云运动分割模型是通过大量带标注的样本数据进行训练得到的。例如,点云运动分割模型可以是pointnet、pointnet++等中的任意一种。计算机设备可以将点云数据输入至点云运动分割模型中,通过点云运动分割模型对点云数据进行运动分类,确定点云数据中每个点的运动状态,即输出每个点是动态点还是静态点。通过预先建立的点云运动分割模型对点云数据进行运动分类,能够提高点云运动分割的准确性。The point cloud motion segmentation model is trained by a large number of labeled sample data. For example, the point cloud motion segmentation model can be any one of pointnet, pointnet++, etc. The computer equipment can input the point cloud data into the point cloud motion segmentation model, classify the point cloud data through the point cloud motion segmentation model, and determine the motion state of each point in the point cloud data, that is, output each point as a dynamic point. Still a static point. The motion classification of point cloud data can improve the accuracy of point cloud motion segmentation by using a pre-established point cloud motion segmentation model.
在其中一个实施例中,计算机设备还可以在点云运动分割之前,对点云数据进行预处理。预处理的方式可以包括降采样以及滤波的处理操作。具体的,计算机设备可以采用体素网格滤波的方式对点云数据进行降采样处理,能够去除噪声点,减少冗余数据量,提高点云处理速度,滤波时能够在深度方向上保持细节,减少深度方向的细节损失。从而计算机设备对降采样后的点云数据进行直通滤波处理,具体可以通过设定点云数据的深度方向数据范围,例如0.6-1.0m之间,将此范围之外的点云都将作为干扰点进行去除。进而计算机设备对直通滤波后的点云数据采用统计滤波方法,对每个点的邻域进行一个统计分析,并去除标准范围之外的点云,减少了孤立冗余点云。具体的,计算机设备可以采用稀疏离群点移除方法,计算点云数据中每个点到所有邻近点的平均距离,将平均距离在标准范围之外的点确定为离群点,并从点云数据中去除。标准范围是由全局距离平均值和方差定义的。通过去除离群点,能够提高点云运动分割的准确性。In one of the embodiments, the computer device may further preprocess the point cloud data before the point cloud motion segmentation. The way of preprocessing can include downsampling and filtering processing operations. Specifically, computer equipment can use voxel grid filtering to downsample point cloud data, which can remove noise points, reduce the amount of redundant data, improve point cloud processing speed, and maintain details in the depth direction during filtering. Reduce the loss of detail in the depth direction. Therefore, the computer equipment performs through filtering processing on the downsampled point cloud data. Specifically, the depth direction data range of the point cloud data can be set, for example, between 0.6-1.0m, and the point cloud outside this range will be used as interference. Click to remove. Furthermore, the computer equipment adopts the statistical filtering method on the point cloud data after the pass-through filtering, performs a statistical analysis on the neighborhood of each point, and removes the point cloud outside the standard range, thereby reducing the isolated redundant point cloud. Specifically, the computer equipment can use the sparse outlier removal method to calculate the average distance from each point in the point cloud data to all adjacent points, determine the points whose average distance is outside the standard range as outliers, and extract the points from the point cloud data. removed from cloud data. The standard range is defined by the global distance mean and variance. By removing outliers, the accuracy of point cloud motion segmentation can be improved.
步骤206,对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据。Step 206: Perform ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data.
步骤208,对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框。Step 208: Perform cluster analysis on multiple frames of non-ground point cloud data to obtain a three-dimensional bounding box corresponding to each frame of non-ground point cloud data.
由于传统的点云运动分割算法仅考虑每个点单独的特征,缺乏点的语义信息,很难将连续帧的点云数据进行直接对应,因此计算机设备还可以在对点云数据进行点云运动分割的同时,对点云数据进行三维目标级别的遮挡分析,以辅助传统的点云运动分割方法,提高点云运动分割的准确性。Since the traditional point cloud motion segmentation algorithm only considers the individual features of each point and lacks the semantic information of the points, it is difficult to directly correspond to the point cloud data of consecutive frames. Therefore, the computer equipment can also perform point cloud motion on the point cloud data. At the same time of segmentation, 3D object-level occlusion analysis is performed on the point cloud data to assist the traditional point cloud motion segmentation method and improve the accuracy of point cloud motion segmentation.
计算机设备在对点云数据进行三维目标级别的遮挡分析之前,需要先对各帧点云数据进行地面过滤处理、聚类分析及识别三维包围框等。地面过滤处理是指将点云数据中的地面点过滤掉,剩余的点则为非地面点。计算机设备可以通过对各帧点云数据进行地面分割,识别出各帧点云数据中的地面点,从而将各帧点云数据中的地面点进行过滤,得到各帧非地面点云数据。具体的,计算机设备可以先将点云数据所在的点云区域划分为多个子区域。点云区域是指点云数据所在的三维数据空间。划分方式可以是对点云区域进行栅格划分,即对点云区域在x轴方向与y轴方向形成的水平面进行划分,栅格划分方式可以是均等划分,也可以是随机划分。例如,对于可视范围为100m的车载传感器,车载传感器扫描区域内的水平面大小为100m*100m,则可将点云区域均等划分成10*10个水平格子。针对划分得到的每个子区域,计算机设备可以根据预设平面方程采用最小二乘法估计相应的地面,从而得到每个子区域对应的地面。例如,预设平面方程可以是三元一次方程。每个子区域对应的地面是以三元一次方程的形式体现的。计算机设备在地面对应的方程中遍历输入相应子区域中的点坐标,计算各点与相应的地面之间的距离,当距离小于阈值时,则将该点确定为地面点。当距离大 于或者等于阈值时,则将该点确定为非地面点。阈值是指用于判断该点是否为地面点的距离阈值。计算机设备进而将地面点进行过滤,得到各帧点云数据中的非地面点,从而得到各帧非地面点云数据。Before performing occlusion analysis on the point cloud data at the 3D target level, the computer equipment needs to perform ground filtering, cluster analysis and identification of 3D bounding boxes on the point cloud data of each frame. Ground filtering refers to filtering out the ground points in the point cloud data, and the remaining points are non-ground points. The computer equipment can identify the ground points in each frame of point cloud data by performing ground segmentation on each frame of point cloud data, thereby filtering the ground points in each frame of point cloud data to obtain each frame of non-ground point cloud data. Specifically, the computer device may first divide the point cloud area where the point cloud data is located into a plurality of sub-areas. The point cloud area refers to the three-dimensional data space where the point cloud data is located. The division method may be grid division of the point cloud area, that is, division of the horizontal plane formed by the point cloud area in the x-axis direction and the y-axis direction. The grid division method may be equal division or random division. For example, for a vehicle-mounted sensor with a visible range of 100m, and the horizontal plane in the scanning area of the vehicle-mounted sensor is 100m*100m, the point cloud area can be equally divided into 10*10 horizontal grids. For each sub-region obtained by division, the computer device may use the least squares method to estimate the corresponding ground according to the preset plane equation, so as to obtain the corresponding ground of each sub-region. For example, the preset plane equation may be a ternary linear equation. The ground corresponding to each sub-region is embodied in the form of a ternary linear equation. The computer equipment traverses the coordinates of the points in the corresponding sub-regions in the equation corresponding to the ground, calculates the distance between each point and the corresponding ground, and determines the point as a ground point when the distance is less than a threshold. When the distance is greater than or equal to the threshold, the point is determined as a non-ground point. Threshold refers to the distance threshold used to judge whether the point is a ground point. The computer equipment further filters the ground points to obtain non-ground points in each frame of point cloud data, thereby obtaining each frame of non-ground point cloud data.
在其中一个实施例中,地面分割的方式可以是基于深度图像和几何关系的方法、法向量方法、绝对高度方法、平均高度方法等中的任意一种。In one of the embodiments, the ground segmentation method may be any one of a depth image and geometric relationship-based method, a normal vector method, an absolute height method, an average height method, and the like.
计算机设备对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据中各目标物体对应的三维包围框。聚类分析是指将同一个目标物体对应的点聚类在一起,并识别各目标物体对应的三维包围框。聚类分析可以包括聚类以及识别三维包围框两个步骤。例如,聚类的方法可以是连通域聚类法、DBSCAN(Density-Based Spatial Clustering of Applications with Noise,密度聚类)算法等聚类算法中的任意一种。识别目标物体对应的三维包围框可以是L-shape拟合法、主成分分析法等中的任意一种。三维包围框中可以包括目标物体的中心点坐标、大小、朝向等。通过识别目标物体对应的三维包围框,能够准确区分不同的目标物体,有利于提高点云运动分割的准确性。The computer equipment performs cluster analysis on multiple frames of non-ground point cloud data, and obtains a three-dimensional bounding box corresponding to each target object in each frame of non-ground point cloud data. Cluster analysis refers to clustering the points corresponding to the same target object together, and identifying the three-dimensional bounding box corresponding to each target object. Cluster analysis can include two steps of clustering and identifying three-dimensional bounding boxes. For example, the clustering method may be any one of the clustering algorithms such as the connected domain clustering method and the DBSCAN (Density-Based Spatial Clustering of Applications with Noise, density clustering) algorithm. The three-dimensional bounding box corresponding to the identified target object may be any one of L-shape fitting method, principal component analysis method, and the like. The three-dimensional bounding box may include the center point coordinates, size, orientation, etc. of the target object. By identifying the three-dimensional bounding box corresponding to the target object, different target objects can be accurately distinguished, which is beneficial to improve the accuracy of point cloud motion segmentation.
步骤210,对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态。Step 210: Perform occlusion analysis on the three-dimensional bounding box to determine the motion state of the point cloud corresponding to the three-dimensional bounding box.
遮挡分析是指根据激光束的特性来识别点云数据的运动状态。激光束的遮挡特性是指当多个物体处于同一激光扫描带上时,激光雷达会直接测量到与车辆距离最近的目标物体,而不会测量到同一激光扫描带上的其他目标物体,激光雷达与测量到的目标物体之间不存在其他的目标物体。其中,激光扫描带可以是某一时刻激光雷达发射的激光束的扫描范围,因此,计算机设备可以利用激光雷达发射的激光束的特性,对多帧非地面点云数据对应的目标物体的三维包围框进行遮挡分析。具体的,计算机设备可以将当前帧的每个三维包围框与历史帧的三维包围框到车辆的连线的中间位置进行遮挡分析,当计算机设备在进行遮挡分析的过程中,识别到某个三维包围框为动态的,则将该三维包围框中的所有点确定为动态点。Occlusion analysis refers to identifying the motion state of point cloud data according to the characteristics of the laser beam. The occlusion characteristic of the laser beam means that when multiple objects are on the same laser scanning zone, the lidar will directly measure the target object closest to the vehicle, but will not measure other target objects on the same laser scanning zone. There is no other target object between it and the measured target object. Among them, the laser scanning zone can be the scanning range of the laser beam emitted by the lidar at a certain time. Therefore, the computer equipment can use the characteristics of the laser beam emitted by the lidar to surround the target object corresponding to multiple frames of non-ground point cloud data. box for occlusion analysis. Specifically, the computer device can perform occlusion analysis on the middle position of the line connecting each 3D bounding box of the current frame and the 3D bounding box of the historical frame to the vehicle. If the bounding box is dynamic, all points in the three-dimensional bounding box are determined as dynamic points.
步骤212,当点云运动状态为动态时,根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到目标点云运动分割结果。 Step 212 , when the motion state of the point cloud is dynamic, update the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box to obtain the target point cloud motion segmentation result.
由于通过遮挡分析得到的动态点的准确性较高,因此,计算机设备可以根据遮挡分析得到的动态点对点云运动分割结果进行更新,能够将点云运动分割结果中动态点识别错误的点进行修正,得到目标点云分割结果。Since the dynamic points obtained by occlusion analysis have high accuracy, the computer equipment can update the point cloud motion segmentation result according to the dynamic points obtained by the occlusion analysis, and can correct the wrong points in the dynamic point recognition in the point cloud motion segmentation results. Get the target point cloud segmentation result.
在本实施例中,计算机设备对获取到的多帧点云数据进行点云运动分割,得到点云运动分割结果,同时,计算机设备对各帧点云数据进行地面过滤处理,能够得到有效的点云数据。对多帧非地面点云数据进行聚类分析,能够将属于同一个目标物体的点聚类在一起,并得到各目标物体对应的三维包围框。计算机设备对三维包围框进行遮挡性分析,将动态的三维包 围框中的点确定为动态点。由于三维包围框是真实的三维目标,对三维包围框进行遮挡性分析,避免了同一目标物体对应的点存在不同运动状态的情况,能够得到更为准确的点云运动状态,从而得到更为准确的动态点。进而计算机设备根据动态点对点云运动分割结果进行更新,由此提高了点云运动分割的准确性。In this embodiment, the computer equipment performs point cloud motion segmentation on the acquired multi-frame point cloud data to obtain the point cloud motion segmentation result. At the same time, the computer equipment performs ground filtering processing on each frame of point cloud data to obtain effective cloud data. Clustering analysis of multiple frames of non-ground point cloud data can cluster the points belonging to the same target object together, and obtain the three-dimensional bounding box corresponding to each target object. The computer equipment performs occlusion analysis on the three-dimensional bounding box, and determines the points in the dynamic three-dimensional bounding box as dynamic points. Since the 3D bounding box is a real 3D target, the occlusion analysis of the 3D bounding box avoids the situation that the points corresponding to the same target object have different motion states, and can obtain a more accurate point cloud motion state, thereby obtaining a more accurate dynamic point. Further, the computer equipment updates the result of the point cloud motion segmentation according to the dynamic points, thereby improving the accuracy of the point cloud motion segmentation.
在其中一个实施例中,如图3所示,对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态的步骤包括:In one embodiment, as shown in FIG. 3 , the occlusion analysis is performed on the three-dimensional bounding box, and the step of determining the motion state of the point cloud corresponding to the three-dimensional bounding box includes:
步骤302,在三维包围框中确定当前帧非地面点云数据对应的当前三维包围框以及历史帧非地面点云数据对应的历史三维包围框。 Step 302 , in the three-dimensional bounding box, determine the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the historical three-dimensional bounding box corresponding to the non-ground point cloud data of the historical frame.
步骤304,对当前三维包围框以及历史三维包围框进行遮挡分析,识别当前三维包围框对应的点云运动状态。Step 304: Perform occlusion analysis on the current 3D bounding box and the historical 3D bounding box, and identify the motion state of the point cloud corresponding to the current 3D bounding box.
计算机设备可以在聚类分析得到的三维包围框中确定当前帧非地面点云数据对应的当前三维包围框以及历史帧非地面点云数据对应的历史三维包围框。历史帧可以是某一历史帧,也可以是预设时间段内的多个历史帧。当前三维包围框以及历史三维包围框可以为一个,也可以为多个。从而计算机设备对当前三维包围框以及历史三维包围框进行遮挡分析。在其中一个实施例中,对当前三维包围框以及历史三维包围框进行遮挡分析,识别当前三维包围框对应的点云运动状态包括:获取各历史三维包围框对应的点云扫描线;识别当前三维包围框与点云扫描线之间的位置关系;根据位置关系识别当前包围框对应的点云运动状态。具体的,计算机设备获取历史帧中每一帧历史三维包围框对应的点云扫描线。点云扫描线是指在激光雷达发射的激光扫描带上获取的历史三维包围框与车辆所形成的连线。点云扫描线包括激光雷达的扫描角度。从而计算机设备识别当前三维包围框与每个点云扫描线之间的位置关系,由于历史三维包围框与车辆所形成的连线中间是不存在其他目标物体的,因此,当计算机设备识别到当前三维框中存在位于点云扫描线中间的三维包围框时,则可以将该三维包围框确定为动态目标,则三维包围框中的点均为动态点。计算机设备只需要在检测到当前三维包围框中存在位于各点云扫描线中间的三维包围框时,将三维包围框确定为动态目标,并将该三维包围框中的点确定为动态点。能够快速判断点云运动状态。The computer device may determine the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the historical three-dimensional bounding box corresponding to the non-ground point cloud data of the historical frame in the three-dimensional bounding box obtained by the cluster analysis. The historical frame may be a certain historical frame, or may be multiple historical frames within a preset time period. The current 3D bounding box and the historical 3D bounding box may be one or multiple. Therefore, the computer device performs occlusion analysis on the current three-dimensional bounding box and the historical three-dimensional bounding box. In one embodiment, performing occlusion analysis on the current 3D bounding box and the historical 3D bounding box, and identifying the motion state of the point cloud corresponding to the current 3D bounding box includes: acquiring point cloud scan lines corresponding to each historical 3D bounding box; identifying the current 3D bounding box The positional relationship between the bounding box and the point cloud scan line; identify the motion state of the point cloud corresponding to the current bounding box according to the positional relationship. Specifically, the computer device acquires the point cloud scan line corresponding to the historical three-dimensional bounding box of each frame in the historical frame. The point cloud scan line refers to the connection between the historical 3D bounding box obtained on the laser scan band emitted by the lidar and the vehicle. The point cloud scan line includes the scan angle of the lidar. Therefore, the computer device recognizes the positional relationship between the current 3D bounding box and each point cloud scan line. Since there is no other target object in the connection between the historical 3D bounding box and the vehicle, when the computer device recognizes the current When there is a 3D bounding box located in the middle of the point cloud scan line in the 3D box, the 3D bounding box can be determined as a dynamic target, and the points in the 3D bounding box are all dynamic points. The computer device only needs to determine the three-dimensional bounding box as a dynamic target when detecting that there is a three-dimensional bounding box located in the middle of each point cloud scan line in the current three-dimensional bounding box, and determine the points in the three-dimensional bounding box as dynamic points. It can quickly judge the motion state of the point cloud.
例如,在t-k时刻,激光雷达扫描到了目标物体z(n,1),表明车辆到目标物体z(n,1)的连线中间不存在其他的目标物体,而在t时刻,激光雷达测量到t-k时刻车辆到目标物体z(n,1)形成的点云扫描线中间的目标物体z(m,1),表明目标物体z(m,1)相对t-k时刻是动态的。因此,计算机设备可以将目标物体z(m,1)对应的三维包围框中的点确定为动态点。For example, at time t-k, the lidar scans the target object z(n, 1), indicating that there is no other target object in the connection between the vehicle and the target object z(n, 1), while at time t, the lidar measures the target object z(n, 1). The target object z(m, 1) in the middle of the point cloud scan line formed by the vehicle to the target object z(n, 1) at time t-k indicates that the target object z(m, 1) is dynamic relative to time t-k. Therefore, the computer device can determine the points in the three-dimensional bounding box corresponding to the target object z(m, 1) as dynamic points.
在本实施例中,计算机设备对当前三维包围框以及历史三维包围框进行遮挡性分析,通过利用激光束的特性,能够能够快速且准确地判断点云运动状态。另外,由于三维包围框是 真实的三维目标,对三维包围框进行遮挡性分析,避免了同一目标物体对应的点存在不同运动状态的情况,能够得到更为准确的动态点。In this embodiment, the computer device performs occlusion analysis on the current 3D bounding box and the historical 3D bounding box, and can quickly and accurately determine the motion state of the point cloud by using the characteristics of the laser beam. In addition, since the 3D bounding box is a real 3D target, the occlusion analysis of the 3D bounding box avoids the situation that the points corresponding to the same target object have different motion states, and can obtain more accurate dynamic points.
在其中一个实施例中,根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到点云数据分割结果包括:提取三维包围框对应的动态点云数据;在点云运动分割结果中确定动态点云数据中各动态点对应的点云运动分割结果;当确定的点云运动分割结果为静态点时,将确定的点云运动分割结果更换为动态点。In one embodiment, the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and obtaining the point cloud data segmentation result includes: extracting dynamic point cloud data corresponding to the 3D bounding box; In the segmentation result, the point cloud motion segmentation result corresponding to each dynamic point in the dynamic point cloud data is determined; when the determined point cloud motion segmentation result is a static point, the determined point cloud motion segmentation result is replaced with a dynamic point.
由于通过遮挡分析得到的动态点的准确性较高,因此,计算机设备可以根据动态三维包围框对应的动态点云数据对点云运动分割结果进行更新。具体的,计算机设备提取动态三维包围框对应的动态点云数据,动态点云数据中包括多个动态点。计算机设备从而在点云运动分割结果中确定每个动态点对应的点云运动分割结果。当确定的点云运动分割结果为静态点时,则计算机设备将该点云运动分割结果更新为动态点,从而提高了点云运动分割结果中动态点的识别准确性,进而提高动态目标的检测准确性。Since the accuracy of the dynamic points obtained through the occlusion analysis is high, the computer device can update the point cloud motion segmentation result according to the dynamic point cloud data corresponding to the dynamic three-dimensional bounding box. Specifically, the computer device extracts dynamic point cloud data corresponding to the dynamic three-dimensional bounding box, and the dynamic point cloud data includes a plurality of dynamic points. The computer device thus determines the point cloud motion segmentation result corresponding to each dynamic point in the point cloud motion segmentation result. When the determined point cloud motion segmentation result is a static point, the computer equipment updates the point cloud motion segmentation result to a dynamic point, thereby improving the recognition accuracy of the dynamic point in the point cloud motion segmentation result, thereby improving the detection of dynamic targets. accuracy.
在其中一个实施例中,对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据包括:将各帧点云数据对应的点云区域划分为多个栅格;根据预设平面方程计算各栅格中的点云数据对应的地面;计算各栅格的点云数据中各点与相应的地面之间的距离值;将距离值小于第一阈值的点进行过滤,得到多帧非地面点云数据。In one embodiment, performing ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data includes: dividing the point cloud area corresponding to each frame of point cloud data into multiple grids; The equation calculates the ground corresponding to the point cloud data in each grid; calculates the distance value between each point in the point cloud data of each grid and the corresponding ground; filters the points whose distance value is less than the first threshold to obtain multiple frames Non-ground point cloud data.
点云区域是指各帧点云数据所在的数据空间。计算机设备可以将各帧点云数据对应的点云区域进行栅格划分,得到多个栅格。栅格划分是指将点云区域进行x轴方向以及y轴方向的划分,即对点云区域进行xy水平面的划分。The point cloud area refers to the data space where the point cloud data of each frame is located. The computer equipment may divide the point cloud area corresponding to each frame of point cloud data into grids to obtain multiple grids. Grid division refers to dividing the point cloud area in the x-axis direction and the y-axis direction, that is, dividing the point cloud area on the xy level.
具体的,计算机设备可以根据预设参数将提取的点云数据对应的数据区域进行x轴方向以及y轴方向的划分。预设参数可以是对提取的点云数据所在的数据区域进行栅格划分的参数。例如,预设参数可以是长*宽,表明栅格划分后得到的每个栅格的长度和宽度。长和宽可以是相同的,也可以是不同的。预设参数还可以是均等划分。多个栅格的高度是相同的。对各帧点云数据对应的点云区域进行栅格划分时,x轴方向以及y轴方向划分的顺序不作限定。例如,计算机设备可以先根据预设参数对提取的点云数据对应的点云区域进行x轴方向的划分,再根据预设参数将提取的点云数据对应的点云区域进行y轴方向的划分。也可以先根据预设参数对提取的点云数据对应的点云区域进行y轴方向的划分,再根据预设参数将提取的点云数据对应的点云区域进行x轴方向的划分。Specifically, the computer device may divide the data area corresponding to the extracted point cloud data in the x-axis direction and the y-axis direction according to preset parameters. The preset parameter may be a parameter for grid division of the data region where the extracted point cloud data is located. For example, the preset parameter may be length*width, indicating the length and width of each grid obtained after grid division. The length and width can be the same or different. The preset parameter may also be equal division. The height of multiple grids is the same. When dividing the point cloud region corresponding to each frame of point cloud data into a grid, the order of division in the x-axis direction and the y-axis direction is not limited. For example, the computer device may first divide the point cloud area corresponding to the extracted point cloud data in the x-axis direction according to preset parameters, and then divide the point cloud area corresponding to the extracted point cloud data in the y-axis direction according to the preset parameters. . The point cloud area corresponding to the extracted point cloud data may also be firstly divided in the y-axis direction according to preset parameters, and then the point cloud area corresponding to the extracted point cloud data may be divided in the x-axis direction according to the preset parameters.
计算机设备获取预设平面方程,根据预设平面方程并采用最小二乘法计算各栅格中的点云数据对应的地面,从而得到每个栅格对应的地面。每个栅格对应的地面是以三元一次方程的形式体现的。计算机设备在地面对应的方程中遍历输入相应栅格中各点的点坐标,计算各 点与相应的地面之间的距离值。计算机设备中预先存储有用于判断点的类别的第一阈值。点的类别可以包括地面点以及非地面点。计算机设备将距离值与第一阈值进行比较,当距离值小于第一阈值时,表明该点为地面点。当距离值大于或者等于第一阈值时,表明该点为非地面点。计算机设备将距离值小于第一阈值的点进行过滤,剩余的点则组成非地面点云数据。The computer device obtains the preset plane equation, and calculates the ground corresponding to the point cloud data in each grid according to the preset plane equation and the least square method, so as to obtain the ground corresponding to each grid. The ground corresponding to each grid is embodied in the form of a ternary linear equation. The computer equipment traverses and inputs the point coordinates of each point in the corresponding grid in the equation corresponding to the ground, and calculates the distance value between each point and the corresponding ground. A first threshold for judging the type of the point is pre-stored in the computer device. Classes of points can include ground points as well as non-ground points. The computer device compares the distance value with the first threshold value, and when the distance value is smaller than the first threshold value, it indicates that the point is a ground point. When the distance value is greater than or equal to the first threshold, it indicates that the point is a non-ground point. The computer equipment filters the points whose distance value is less than the first threshold, and the remaining points constitute non-ground point cloud data.
在本实施例中,将各帧点云数据对应的点云区域划分为多个栅格,从而计算各栅格中点云数据对应的地面,通过计算各点与相应的地面之间的距离,从而将地面点过滤。由于栅格划分只需要对点云数据对应的数据区域进行x轴方向以及y轴方向的划分,因此,能够在无人驾驶模式下,计算机设备的计算资源有限且实时性要求高时,快速进行地面过滤处理。In this embodiment, the point cloud area corresponding to each frame of point cloud data is divided into multiple grids, so as to calculate the ground corresponding to the point cloud data in each grid, and by calculating the distance between each point and the corresponding ground, Thereby filtering the ground points. Since the grid division only needs to divide the data area corresponding to the point cloud data in the x-axis direction and the y-axis direction, it can be quickly performed in the unmanned mode, when the computing resources of the computer equipment are limited and the real-time requirements are high. Ground filtration treatment.
在其中一个实施例中,根据预设平面方程计算各栅格中的点云数据对应的地面包括:在各栅格对应的点云数据中选取高度值最小的点;计算各栅格对应的点云数据中各点与高度值最小的点之间的高度差值;提取高度差值小于第二阈值的点,根据预设平面方程对选取的点进行平面拟合,得到各栅格中的点云数据对应的地面。In one embodiment, calculating the ground corresponding to the point cloud data in each grid according to the preset plane equation includes: selecting the point with the smallest height value in the point cloud data corresponding to each grid; calculating the point corresponding to each grid The height difference between each point in the cloud data and the point with the smallest height value; extract the points whose height difference is less than the second threshold, and perform plane fitting on the selected points according to the preset plane equation to obtain the points in each grid The ground corresponding to the cloud data.
计算机设备在对各帧点云数据对应的点云区域进行栅格划分,得到多个栅格后,可以在每个栅格对应的点云数据中选取高度值最小的点,并计算相应栅格的点云数据中各点与高度值最小的点之间的高度差值。计算机设备中预先存储有用于判断是否为平面拟合点的第二阈值。当高度差值小于第二阈值时,表明该高度差值对应的点为平面拟合点。计算机设备将高度差值与第二阈值进行比较,选取高度差值小于第二阈值的点,进行计算机设备根据预设平面方程对选取的点进行平面拟合,得到各栅格中的点云数据对应的地面。After the computer equipment divides the point cloud area corresponding to each frame of point cloud data, and obtains multiple grids, it can select the point with the smallest height value in the point cloud data corresponding to each grid, and calculate the corresponding grid. The height difference between each point in the point cloud data and the point with the smallest height value. A second threshold for judging whether it is a plane fitting point is pre-stored in the computer device. When the height difference is less than the second threshold, it indicates that the point corresponding to the height difference is a plane fitting point. The computer equipment compares the height difference with the second threshold, selects points whose height difference is less than the second threshold, and performs plane fitting on the selected points according to the preset plane equation by the computer equipment to obtain the point cloud data in each grid. corresponding ground.
在本实施例中,计算机设备通过计算各栅格对应的点云数据中各点与高度值最小的点之间的高度差值,将高度差值与第二阈值进行比较,来选取平面拟合点,由于高度值最小的点是地面点的概率是最大的,通过计算各点与该高度值最小的点的高度差值,能够更为准确地确定平面拟合点,提高地面估计效率,进而提高地面过滤效率。In this embodiment, the computer device selects the plane fitting by calculating the height difference between each point in the point cloud data corresponding to each grid and the point with the smallest height value, and comparing the height difference with the second threshold. Because the probability of the point with the smallest height value being the ground point is the largest, by calculating the height difference between each point and the point with the smallest height value, the plane fitting point can be determined more accurately, and the ground estimation efficiency can be improved, and then Improve ground filtration efficiency.
在其中一个实施例中,如图4所示,提供了一种点云数据运动分割装置,包括:通信模块402、点云运动分割模块404、地面过滤模块406、聚类分析模块408、遮挡分析模块410和更新模块412,其中:In one embodiment, as shown in FIG. 4 , a motion segmentation device for point cloud data is provided, including: a communication module 402 , a point cloud motion segmentation module 404 , a ground filtering module 406 , a cluster analysis module 408 , and an occlusion analysis module. module 410 and update module 412, where:
通信模块402,用于获取多帧点云数据。The communication module 402 is used for acquiring multi-frame point cloud data.
点云运动分割模块404,用于对点云数据进行点云运动分割,得到点云运动分割结果。The point cloud motion segmentation module 404 is configured to perform point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result.
地面过滤模块406,用于对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据。The ground filtering module 406 is configured to perform ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data.
聚类分析模块408,用于对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框。The cluster analysis module 408 is configured to perform cluster analysis on multiple frames of non-ground point cloud data to obtain a three-dimensional bounding box corresponding to each frame of non-ground point cloud data.
遮挡分析模块410,用于对三维包围框进行遮挡分析,确定三维包围框对应的点云运动 状态。The occlusion analysis module 410 is configured to perform occlusion analysis on the three-dimensional bounding box, and determine the motion state of the point cloud corresponding to the three-dimensional bounding box.
更新模块412,用于当点云运动状态为动态时,根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到目标点云运动分割结果。The updating module 412 is configured to update the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box when the motion state of the point cloud is dynamic, so as to obtain the target point cloud motion segmentation result.
在其中一个实施例中,遮挡分析模块410,还用于在三维包围框中确定当前帧非地面点云数据对应的当前三维包围框以及历史帧非地面点云数据对应的历史三维包围框;对当前三维包围框以及历史三维包围框进行遮挡分析,识别当前三维包围框对应的点云运动状态。In one embodiment, the occlusion analysis module 410 is further configured to determine, in the three-dimensional bounding box, the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the historical three-dimensional bounding box corresponding to the non-ground point cloud data of the historical frame; The current 3D bounding box and the historical 3D bounding box are subjected to occlusion analysis to identify the motion state of the point cloud corresponding to the current 3D bounding box.
在其中一个实施例中,遮挡分析模块410,还用于获取各历史三维包围框对应的点云扫描线;识别当前三维包围框与点云扫描线之间的位置关系;根据位置关系识别当前包围框对应的点云运动状态。In one embodiment, the occlusion analysis module 410 is further configured to obtain the point cloud scan line corresponding to each historical 3D bounding box; identify the positional relationship between the current 3D bounding box and the point cloud scan line; identify the current bounding box according to the positional relationship The motion state of the point cloud corresponding to the box.
在其中一个实施例中,更新模块412,还用于提取三维包围框对应的动态点云数据;在点云运动分割结果中确定动态点云数据中各动态点对应的点云运动分割结果;当确定的点云运动分割结果为静态点时,将确定的点云运动分割结果更换为动态点。In one embodiment, the update module 412 is further configured to extract the dynamic point cloud data corresponding to the three-dimensional bounding box; determine the point cloud motion segmentation result corresponding to each dynamic point in the dynamic point cloud data in the point cloud motion segmentation result; when When the determined point cloud motion segmentation result is a static point, replace the determined point cloud motion segmentation result with a dynamic point.
在其中一个实施例中,地面过滤模块406,还用于将各帧点云数据对应的点云区域划分为多个栅格;根据预设平面方程计算各栅格中的点云数据对应的地面;计算各栅格的点云数据中各点与相应的地面之间的距离值;将距离值小于第一阈值的点进行过滤,得到多帧非地面点云数据。In one embodiment, the ground filtering module 406 is further configured to divide the point cloud area corresponding to each frame of point cloud data into multiple grids; calculate the ground corresponding to the point cloud data in each grid according to a preset plane equation ; Calculate the distance value between each point in the point cloud data of each grid and the corresponding ground; filter the points whose distance value is less than the first threshold to obtain multiple frames of non-ground point cloud data.
在其中一个实施例中,地面过滤模块406,还用于在各栅格对应的点云数据中选取高度值最小的点;计算各栅格对应的点云数据中各点与高度值最小的点之间的高度差值;提取高度差值小于第二阈值的点,根据预设平面方程对选取的点进行平面拟合,得到各栅格中的点云数据对应的地面。In one embodiment, the ground filtering module 406 is further configured to select the point with the smallest height value in the point cloud data corresponding to each grid; calculate the point with the smallest height value in the point cloud data corresponding to each grid The height difference between the two points is extracted; the points whose height difference is less than the second threshold are extracted, and the selected points are fitted according to the preset plane equation to obtain the ground corresponding to the point cloud data in each grid.
在其中一个实施例中,点云运动分割模块404,还用于调用预先训练的点云运动分割模型,将点云数据输入至点云运动分割模型中;通过点云运动分割模型对点云数据进行分类,输出点云数据中各点对应的运动状态,生成点云运动分割结果。In one embodiment, the point cloud motion segmentation module 404 is further configured to call a pre-trained point cloud motion segmentation model, and input the point cloud data into the point cloud motion segmentation model; Perform classification, output the motion state corresponding to each point in the point cloud data, and generate a point cloud motion segmentation result.
关于点云数据运动分割装置的具体限定可以参见上文中对于轨迹预测方法的限定,在此不再赘述。上述点云数据运动分割装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。For the specific limitation of the point cloud data motion segmentation device, please refer to the limitation on the trajectory prediction method above, which will not be repeated here. Each module in the above-mentioned point cloud data motion segmentation device can be implemented in whole or in part by software, hardware and combinations thereof. The above modules can be embedded in or independent of the processor in the computer device in the form of hardware, or stored in the memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.
在其中一个实施例中,提供了一种计算机设备,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机可读指令和数据库。该内存储器为非易失 性存储介质中的操作系统和计算机可读指令的运行提供环境。该计算机设备的数据库用于存储点云运动分割结果、目标点云运动分割结果等。该计算机设备的通信接口用于与车载传感器连接通信。该计算机可读指令被处理器执行时以实现一种点云数据运动分割方法。In one of the embodiments, a computer device is provided, the internal structure of which can be shown in FIG. 5 . The computer device includes a processor, memory, a communication interface, and a database connected by a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium, an internal memory. The non-volatile storage medium stores an operating system, computer readable instructions and a database. The internal memory provides an environment for the execution of the operating system and computer-readable instructions in the non-volatile storage medium. The database of the computer device is used to store the point cloud motion segmentation results, the target point cloud motion segmentation results, and the like. The communication interface of the computer device is used to connect and communicate with the vehicle sensor. The computer readable instructions, when executed by a processor, implement a method for motion segmentation of point cloud data.
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。Those skilled in the art can understand that the structure shown in FIG. 5 is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer equipment to which the solution of the present application is applied. Include more or fewer components than shown in the figures, or combine certain components, or have a different arrangement of components.
一种计算机设备,包括存储器及一个或多个处理器,存储器中储存有计算机可读指令,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:A computer device includes a memory and one or more processors, the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the one or more processors, causes the one or more processors to perform the following steps:
获取多帧点云数据;Obtain multi-frame point cloud data;
对点云数据进行点云运动分割,得到点云运动分割结果;Perform point cloud motion segmentation on the point cloud data to obtain the point cloud motion segmentation result;
对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;Perform ground filtering on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;Perform cluster analysis on multiple frames of non-ground point cloud data, and obtain the three-dimensional bounding box corresponding to each frame of non-ground point cloud data;
对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态;Perform occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box;
当点云运动状态为动态时,根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到目标点云运动分割结果。When the motion state of the point cloud is dynamic, the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
在其中一个实施例中,处理器执行计算机可读指令时还实现以下步骤:在三维包围框中确定当前帧非地面点云数据对应的当前三维包围框以及历史帧非地面点云数据对应的历史三维包围框;对当前三维包围框以及历史三维包围框进行遮挡分析,识别当前三维包围框对应的点云运动状态。In one embodiment, the processor further implements the following steps when executing the computer-readable instructions: determining, in the three-dimensional bounding box, the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the historical frame corresponding to the non-ground point cloud data of the historical frame 3D bounding box: Perform occlusion analysis on the current 3D bounding box and historical 3D bounding box, and identify the point cloud motion state corresponding to the current 3D bounding box.
在其中一个实施例中,处理器执行计算机可读指令时还实现以下步骤:获取各历史三维包围框对应的点云扫描线;识别当前三维包围框与点云扫描线之间的位置关系;根据位置关系识别当前包围框对应的点云运动状态。In one embodiment, when the processor executes the computer-readable instructions, it further implements the following steps: acquiring point cloud scan lines corresponding to each historical three-dimensional bounding box; identifying the positional relationship between the current three-dimensional bounding box and the point cloud scan line; The positional relationship identifies the motion state of the point cloud corresponding to the current bounding box.
在其中一个实施例中,处理器执行计算机可读指令时还实现以下步骤:提取三维包围框对应的动态点云数据;在点云运动分割结果中确定动态点云数据中各动态点对应的点云运动分割结果;当确定的点云运动分割结果为静态点时,将确定的点云运动分割结果更换为动态点。In one embodiment, the processor further implements the following steps when executing the computer-readable instructions: extracting the dynamic point cloud data corresponding to the three-dimensional bounding box; determining the point corresponding to each dynamic point in the dynamic point cloud data in the point cloud motion segmentation result Cloud motion segmentation result; when the determined point cloud motion segmentation result is a static point, replace the determined point cloud motion segmentation result with a dynamic point.
在其中一个实施例中,处理器执行计算机可读指令时还实现以下步骤:将各帧点云数据对应的点云区域划分为多个栅格;根据预设平面方程计算各栅格中的点云数据对应的地面;计算各栅格的点云数据中各点与相应的地面之间的距离值;将距离值小于第一阈值的点进行过滤,得到多帧非地面点云数据。In one embodiment, the processor further implements the following steps when executing the computer-readable instructions: dividing the point cloud area corresponding to each frame of point cloud data into a plurality of grids; calculating the points in each grid according to a preset plane equation The ground corresponding to the cloud data; calculate the distance value between each point in the point cloud data of each grid and the corresponding ground; filter the points whose distance value is less than the first threshold to obtain multiple frames of non-ground point cloud data.
在其中一个实施例中,处理器执行计算机可读指令时还实现以下步骤:在各栅格对应的 点云数据中选取高度值最小的点;计算各栅格对应的点云数据中各点与高度值最小的点之间的高度差值;提取高度差值小于第二阈值的点,根据预设平面方程对选取的点进行平面拟合,得到各栅格中的点云数据对应的地面。In one embodiment, the processor further implements the following steps when executing the computer-readable instructions: selecting the point with the smallest height value in the point cloud data corresponding to each grid; calculating the difference between each point in the point cloud data corresponding to each grid and the The height difference between the points with the smallest height value; extract the points whose height difference is less than the second threshold, and perform plane fitting on the selected points according to the preset plane equation to obtain the ground corresponding to the point cloud data in each grid.
在其中一个实施例中,处理器执行计算机可读指令时还实现以下步骤:调用预先训练的点云运动分割模型,将点云数据输入至点云运动分割模型中;通过点云运动分割模型对点云数据进行分类,输出点云数据中各点对应的运动状态,生成点云运动分割结果。In one embodiment, the processor further implements the following steps when executing the computer-readable instructions: calling a pre-trained point cloud motion segmentation model, inputting point cloud data into the point cloud motion segmentation model; The point cloud data is classified, and the motion state corresponding to each point in the point cloud data is output to generate the point cloud motion segmentation result.
一个或多个存储有计算机可读指令的非易失性计算机可读存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:One or more non-volatile computer-readable storage media storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform the following steps:
获取多帧点云数据;Obtain multi-frame point cloud data;
对点云数据进行点云运动分割,得到点云运动分割结果;Perform point cloud motion segmentation on the point cloud data to obtain the point cloud motion segmentation result;
对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;Perform ground filtering on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
对多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;Perform cluster analysis on multiple frames of non-ground point cloud data, and obtain the three-dimensional bounding box corresponding to each frame of non-ground point cloud data;
对三维包围框进行遮挡分析,确定三维包围框对应的点云运动状态;及Perform occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box; and
当点云运动状态为动态时,根据三维包围框对应的非地面点云数据对点云运动分割结果进行更新,得到目标点云运动分割结果。When the motion state of the point cloud is dynamic, the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the 3D bounding box, and the target point cloud motion segmentation result is obtained.
在其中一个实施例中,计算机可读指令被处理器执行时还实现以下步骤:在三维包围框中确定当前帧非地面点云数据对应的当前三维包围框以及历史帧非地面点云数据对应的历史三维包围框;对当前三维包围框以及历史三维包围框进行遮挡分析,识别当前三维包围框对应的点云运动状态。In one embodiment, when the computer-readable instructions are executed by the processor, the following steps are further implemented: determining, in the three-dimensional bounding box, the current three-dimensional bounding box corresponding to the non-ground point cloud data of the current frame and the non-ground point cloud data of the historical frame corresponding to the current frame. Historical 3D bounding box: Perform occlusion analysis on the current 3D bounding box and historical 3D bounding box, and identify the point cloud motion state corresponding to the current 3D bounding box.
在其中一个实施例中,计算机可读指令被处理器执行时还实现以下步骤:获取各历史三维包围框对应的点云扫描线;识别当前三维包围框与点云扫描线之间的位置关系;根据位置关系识别当前包围框对应的点云运动状态。In one embodiment, the computer-readable instructions further implement the following steps when executed by the processor: acquiring point cloud scan lines corresponding to each historical 3D bounding box; identifying the positional relationship between the current 3D bounding box and the point cloud scan lines; Identify the motion state of the point cloud corresponding to the current bounding box according to the positional relationship.
在其中一个实施例中,计算机可读指令被处理器执行时还实现以下步骤:提取三维包围框对应的动态点云数据;在点云运动分割结果中确定动态点云数据中各动态点对应的点云运动分割结果;当确定的点云运动分割结果为静态点时,将确定的点云运动分割结果更换为动态点。In one embodiment, when the computer-readable instructions are executed by the processor, the following steps are further implemented: extracting dynamic point cloud data corresponding to a three-dimensional bounding box; Point cloud motion segmentation result; when the determined point cloud motion segmentation result is a static point, replace the determined point cloud motion segmentation result with a dynamic point.
在其中一个实施例中,计算机可读指令被处理器执行时还实现以下步骤:将各帧点云数据对应的点云区域划分为多个栅格;根据预设平面方程计算各栅格中的点云数据对应的地面;计算各栅格的点云数据中各点与相应的地面之间的距离值;将距离值小于第一阈值的点进行过滤,得到多帧非地面点云数据。In one embodiment, when the computer-readable instructions are executed by the processor, the following steps are further implemented: dividing the point cloud area corresponding to each frame of point cloud data into a plurality of grids; The ground corresponding to the point cloud data; calculate the distance value between each point in the point cloud data of each grid and the corresponding ground; filter the points whose distance value is less than the first threshold to obtain multiple frames of non-ground point cloud data.
在其中一个实施例中,计算机可读指令被处理器执行时还实现以下步骤:在各栅格对应 的点云数据中选取高度值最小的点;计算各栅格对应的点云数据中各点与高度值最小的点之间的高度差值;提取高度差值小于第二阈值的点,根据预设平面方程对选取的点进行平面拟合,得到各栅格中的点云数据对应的地面。In one embodiment, when the computer-readable instructions are executed by the processor, the following steps are further implemented: selecting the point with the smallest height value in the point cloud data corresponding to each grid; calculating each point in the point cloud data corresponding to each grid The height difference between the point with the smallest height value; extract the points whose height difference is less than the second threshold, and perform plane fitting on the selected points according to the preset plane equation to obtain the ground corresponding to the point cloud data in each grid .
在其中一个实施例中,计算机可读指令被处理器执行时还实现以下步骤:调用预先训练的点云运动分割模型,将点云数据输入至点云运动分割模型中;通过点云运动分割模型对点云数据进行分类,输出点云数据中各点对应的运动状态,生成点云运动分割结果。In one embodiment, when the computer-readable instructions are executed by the processor, the following steps are further implemented: calling a pre-trained point cloud motion segmentation model, inputting point cloud data into the point cloud motion segmentation model; Classify the point cloud data, output the motion state corresponding to each point in the point cloud data, and generate the point cloud motion segmentation result.
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be implemented by instructing relevant hardware through computer-readable instructions, and the computer-readable instructions can be stored in a non-volatile computer. In the readable storage medium, the computer-readable instructions, when executed, may include the processes of the foregoing method embodiments. Wherein, any reference to memory, storage, database or other medium used in the various embodiments provided in this application may include non-volatile and/or volatile memory. Nonvolatile memory may include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous chain Road (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。The technical features of the above embodiments can be combined arbitrarily. In order to make the description simple, all possible combinations of the technical features in the above embodiments are not described. However, as long as there is no contradiction in the combination of these technical features It is considered to be the range described in this specification.
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。The above-mentioned embodiments only represent several embodiments of the present application, and the descriptions thereof are relatively specific and detailed, but should not be construed as a limitation on the scope of the invention patent. It should be pointed out that for those skilled in the art, without departing from the concept of the present application, several modifications and improvements can be made, which all belong to the protection scope of the present application. Therefore, the scope of protection of the patent of the present application shall be subject to the appended claims.

Claims (20)

  1. 一种点云数据运动分割方法,包括:A motion segmentation method for point cloud data, comprising:
    获取多帧点云数据;Obtain multi-frame point cloud data;
    对所述点云数据进行点云运动分割,得到点云运动分割结果;Perform point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result;
    对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;Perform ground filtering on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
    对所述多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;Perform cluster analysis on the multi-frame non-ground point cloud data to obtain a three-dimensional bounding box corresponding to each frame of non-ground point cloud data;
    对所述三维包围框进行遮挡分析,确定所述三维包围框对应的点云运动状态;及performing occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box; and
    当所述点云运动状态为动态时,根据所述三维包围框对应的非地面点云数据对所述点云运动分割结果进行更新,得到目标点云运动分割结果。When the motion state of the point cloud is dynamic, the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the three-dimensional bounding box to obtain the target point cloud motion segmentation result.
  2. 根据权利要求1所述的方法,其特征在于,所述对所述三维包围框进行遮挡分析,确定所述三维包围框对应的点云运动状态包括:The method according to claim 1, wherein the performing occlusion analysis on the three-dimensional bounding box and determining the motion state of the point cloud corresponding to the three-dimensional bounding box comprises:
    在所述三维包围框中确定当前帧非地面点云数据对应的当前三维包围框以及历史帧非地面点云数据对应的历史三维包围框;及In the 3D bounding box, determine the current 3D bounding box corresponding to the non-ground point cloud data of the current frame and the historical 3D bounding box corresponding to the non-ground point cloud data of the historical frame; and
    对所述当前三维包围框以及所述历史三维包围框进行遮挡分析,识别所述当前三维包围框对应的点云运动状态。Perform occlusion analysis on the current 3D bounding box and the historical 3D bounding box, and identify the point cloud motion state corresponding to the current 3D bounding box.
  3. 根据权利要求2所述的方法,其特征在于,对所述当前三维包围框以及所述历史三维包围框进行遮挡分析,识别所述当前三维包围框对应的点云运动状态包括:The method according to claim 2, wherein performing occlusion analysis on the current 3D bounding box and the historical 3D bounding box, and identifying the point cloud motion state corresponding to the current 3D bounding box comprises:
    获取各历史三维包围框对应的点云扫描线;Obtain the point cloud scan lines corresponding to each historical 3D bounding box;
    识别所述当前三维包围框与所述点云扫描线之间的位置关系;及identifying the positional relationship between the current 3D bounding box and the point cloud scan line; and
    根据所述位置关系识别所述当前包围框对应的点云运动状态。Identify the motion state of the point cloud corresponding to the current bounding box according to the positional relationship.
  4. 根据权利要求1所述的方法,其特征在于,所述根据所述三维包围框对应的非地面点云数据对所述点云运动分割结果进行更新,得到点云数据分割结果包括:The method according to claim 1, wherein the updating the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box, and obtaining the point cloud data segmentation result comprises:
    提取所述三维包围框对应的动态点云数据;extracting dynamic point cloud data corresponding to the three-dimensional bounding box;
    在所述点云运动分割结果中确定所述动态点云数据中各动态点对应的点云运动分割结果;及determining, in the point cloud motion segmentation result, a point cloud motion segmentation result corresponding to each dynamic point in the dynamic point cloud data; and
    当所述确定的点云运动分割结果为静态点时,将所述确定的点云运动分割结果更换为动态点。When the determined point cloud motion segmentation result is a static point, the determined point cloud motion segmentation result is replaced with a dynamic point.
  5. 根据权利要求1所述的方法,其特征在于,所述对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据包括:The method according to claim 1, wherein the performing ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data comprises:
    将各帧点云数据对应的点云区域划分为多个栅格;Divide the point cloud area corresponding to each frame of point cloud data into multiple grids;
    根据预设平面方程计算各栅格中的点云数据对应的地面;Calculate the ground corresponding to the point cloud data in each grid according to the preset plane equation;
    计算各栅格的点云数据中各点与相应的地面之间的距离值;及Calculate the distance value between each point in the point cloud data of each grid and the corresponding ground; and
    将距离值小于第一阈值的点进行过滤,得到多帧非地面点云数据。Filter the points whose distance value is less than the first threshold to obtain multi-frame non-ground point cloud data.
  6. 根据权利要求5所述的方法,其特征在于,所述根据预设平面方程计算各栅格中的点云数据对应的地面包括:The method according to claim 5, wherein the calculating the ground corresponding to the point cloud data in each grid according to the preset plane equation comprises:
    在各栅格对应的点云数据中选取高度值最小的点;Select the point with the smallest height value in the point cloud data corresponding to each grid;
    计算各栅格对应的点云数据中各点与所述高度值最小的点之间的高度差值;及calculating the height difference between each point in the point cloud data corresponding to each grid and the point with the smallest height value; and
    提取高度差值小于第二阈值的点,根据预设平面方程对选取的点进行平面拟合,得到各栅格中的点云数据对应的地面。Extracting points whose height difference is less than the second threshold value, and performing plane fitting on the selected points according to a preset plane equation, to obtain the ground corresponding to the point cloud data in each grid.
  7. 根据权利要求1至6任意一项所述的方法,其特征在于,所述对所述点云数据进行点云运动分割,得到点云运动分割结果包括:The method according to any one of claims 1 to 6, wherein the performing point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result comprises:
    调用预先训练的点云运动分割模型,将所述点云数据输入至所述点云运动分割模型中;及calling a pre-trained point cloud motion segmentation model, and inputting the point cloud data into the point cloud motion segmentation model; and
    通过所述点云运动分割模型对所述点云数据进行分类,输出所述点云数据中各点对应的运动状态,生成点云运动分割结果。The point cloud data is classified by the point cloud motion segmentation model, and the motion state corresponding to each point in the point cloud data is output to generate a point cloud motion segmentation result.
  8. 一种点云数据运动分割装置,包括:A point cloud data motion segmentation device, comprising:
    通信模块,用于获取多帧点云数据;Communication module for acquiring multi-frame point cloud data;
    点云运动分割模块,用于对所述点云数据进行点云运动分割,得到点云运动分割结果;a point cloud motion segmentation module, which is used to perform point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result;
    地面过滤模块,用于对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;The ground filtering module is used to perform ground filtering processing on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
    聚类分析模块,用于对所述多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;a cluster analysis module, configured to perform cluster analysis on the multiple frames of non-ground point cloud data, and obtain a three-dimensional bounding box corresponding to each frame of non-ground point cloud data;
    遮挡分析模块,用于对所述三维包围框进行遮挡分析,确定所述三维包围框对应的点云运动状态;及an occlusion analysis module, configured to perform occlusion analysis on the three-dimensional bounding box, and determine the motion state of the point cloud corresponding to the three-dimensional bounding box; and
    更新模块,用于当所述点云运动状态为动态时,根据所述三维包围框对应的非地面点云数据对所述点云运动分割结果进行更新,得到目标点云运动分割结果。An update module, configured to update the point cloud motion segmentation result according to the non-ground point cloud data corresponding to the three-dimensional bounding box when the point cloud motion state is dynamic, to obtain the target point cloud motion segmentation result.
  9. 根据权利要求8所述的装置,其特征在于,所述遮挡分析模块还用于在所述三维包围框中确定当前帧非地面点云数据对应的当前三维包围框以及历史帧非地面点云数据对应的历史三维包围框;及对所述当前三维包围框以及所述历史三维包围框进行遮挡分析,识别所述当前三维包围框对应的点云运动状态。The device according to claim 8, wherein the occlusion analysis module is further configured to determine the current 3D bounding box corresponding to the non-ground point cloud data of the current frame and the non-ground point cloud data of the historical frame in the 3D bounding box corresponding historical 3D bounding box; and performing occlusion analysis on the current 3D bounding box and the historical 3D bounding box to identify the point cloud motion state corresponding to the current 3D bounding box.
  10. 根据权利要求9所述的装置,其特征在于,所述遮挡分析模块还用于获取各历史三维包围框对应的点云扫描线;识别所述当前三维包围框与所述点云扫描线之间的位置关系;及根据所述位置关系识别所述当前包围框对应的点云运动状态。The device according to claim 9, wherein the occlusion analysis module is further configured to obtain point cloud scan lines corresponding to each historical 3D bounding box; identify the distance between the current 3D bounding box and the point cloud scan line and identify the motion state of the point cloud corresponding to the current bounding box according to the positional relationship.
  11. 一种计算机设备,包括存储器及一个或多个处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行以下步骤:A computer device comprising a memory and one or more processors, the memory having computer-readable instructions stored in the memory that, when executed by the one or more processors, cause the one or more processors to Each processor performs the following steps:
    获取多帧点云数据;Obtain multi-frame point cloud data;
    对所述点云数据进行点云运动分割,得到点云运动分割结果;Perform point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result;
    对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;Perform ground filtering on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
    对所述多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;Perform cluster analysis on the multi-frame non-ground point cloud data to obtain a three-dimensional bounding box corresponding to each frame of non-ground point cloud data;
    对所述三维包围框进行遮挡分析,确定所述三维包围框对应的点云运动状态;及performing occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box; and
    当所述点云运动状态为动态时,根据所述三维包围框对应的非地面点云数据对所述点云运动分割结果进行更新,得到目标点云运动分割结果。When the motion state of the point cloud is dynamic, the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the three-dimensional bounding box to obtain the target point cloud motion segmentation result.
  12. 根据权利要求11所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还执行以下步骤:在所述三维包围框中确定当前帧非地面点云数据对应的当前三维包围框以及历史帧非地面点云数据对应的历史三维包围框;及对所述当前三维包围框以及所述历史三维包围框进行遮挡分析,识别所述当前三维包围框对应的点云运动状态。The computer device according to claim 11, wherein, when the processor executes the computer-readable instructions, the processor further executes the following step: determining, in the three-dimensional bounding box, a current three-dimensional image corresponding to the non-ground point cloud data of the current frame The bounding box and the historical 3D bounding box corresponding to the non-ground point cloud data of the historical frame; and performing occlusion analysis on the current 3D bounding box and the historical 3D bounding box to identify the point cloud motion state corresponding to the current 3D bounding box.
  13. 根据权利要求12所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还执行以下步骤:获取各历史三维包围框对应的点云扫描线;识别所述当前三维包围框与所述点云扫描线之间的位置关系;及根据所述位置关系识别所述当前包围框对应的点云运动状态。The computer device according to claim 12, wherein the processor further executes the following steps when executing the computer-readable instructions: acquiring point cloud scan lines corresponding to each historical three-dimensional bounding box; identifying the current three-dimensional bounding box The positional relationship between the frame and the point cloud scan line; and the point cloud motion state corresponding to the current bounding frame is identified according to the positional relationship.
  14. 根据权利要求11所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还执行以下步骤:提取所述三维包围框对应的动态点云数据;在所述点云运动分割结果中确定所述动态点云数据中各动态点对应的点云运动分割结果;及当所述确定的点云运动分割结果为静态点时,将所述确定的点云运动分割结果更换为动态点。The computer device according to claim 11, wherein when the processor executes the computer-readable instructions, the processor further executes the following steps: extracting dynamic point cloud data corresponding to the three-dimensional bounding box; In the segmentation result, determine the point cloud motion segmentation result corresponding to each dynamic point in the dynamic point cloud data; and when the determined point cloud motion segmentation result is a static point, replace the determined point cloud motion segmentation result with dynamic point.
  15. 根据权利要求11所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还执行以下步骤:将各帧点云数据对应的点云区域划分为多个栅格;根据预设平面方程计算各栅格中的点云数据对应的地面;计算各栅格的点云数据中各点与相应的地面之间的距离值;及将距离值小于第一阈值的点进行过滤,得到多帧非地面点云数据。The computer device according to claim 11, wherein the processor further executes the following steps when executing the computer-readable instructions: dividing the point cloud area corresponding to each frame of point cloud data into a plurality of grids; The preset plane equation calculates the ground corresponding to the point cloud data in each grid; calculates the distance value between each point in the point cloud data of each grid and the corresponding ground; and filters the points whose distance value is less than the first threshold , to obtain multi-frame non-ground point cloud data.
  16. 一个或多个存储有计算机可读指令的非易失性计算机可读存储介质,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行以下步骤:One or more non-volatile computer-readable storage media storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform the following steps:
    获取多帧点云数据;Obtain multi-frame point cloud data;
    对所述点云数据进行点云运动分割,得到点云运动分割结果;Perform point cloud motion segmentation on the point cloud data to obtain a point cloud motion segmentation result;
    对各帧点云数据进行地面过滤处理,得到多帧非地面点云数据;Perform ground filtering on each frame of point cloud data to obtain multiple frames of non-ground point cloud data;
    对所述多帧非地面点云数据进行聚类分析,得到各帧非地面点云数据对应的三维包围框;Perform cluster analysis on the multi-frame non-ground point cloud data to obtain a three-dimensional bounding box corresponding to each frame of non-ground point cloud data;
    对所述三维包围框进行遮挡分析,确定所述三维包围框对应的点云运动状态;及performing occlusion analysis on the 3D bounding box to determine the motion state of the point cloud corresponding to the 3D bounding box; and
    当所述点云运动状态为动态时,根据所述三维包围框对应的非地面点云数据对所述点云运动分割结果进行更新,得到目标点云运动分割结果。When the motion state of the point cloud is dynamic, the point cloud motion segmentation result is updated according to the non-ground point cloud data corresponding to the three-dimensional bounding box to obtain the target point cloud motion segmentation result.
  17. 根据权利要求16所述的存储介质,其特征在于,所述计算机可读指令被所述处理器执行时还执行以下步骤:在所述三维包围框中确定当前帧非地面点云数据对应的当前三维包围框以及历史帧非地面点云数据对应的历史三维包围框;及对所述当前三维包围框以及所述历史三维包围框进行遮挡分析,识别所述当前三维包围框对应的点云运动状态。The storage medium according to claim 16, wherein when the computer-readable instructions are executed by the processor, the following step is further performed: determining the current frame corresponding to the non-ground point cloud data of the current frame in the three-dimensional bounding box The 3D bounding box and the historical 3D bounding box corresponding to the non-ground point cloud data of the historical frame; and performing occlusion analysis on the current 3D bounding box and the historical 3D bounding box to identify the point cloud motion state corresponding to the current 3D bounding box .
  18. 根据权利要求17所述的存储介质,其特征在于,所述计算机可读指令被所述处理器执行时还执行以下步骤:获取各历史三维包围框对应的点云扫描线;识别所述当前三维包围框与所述点云扫描线之间的位置关系;及根据所述位置关系识别所述当前包围框对应的点云运动状态。The storage medium according to claim 17, wherein the computer-readable instructions further perform the following steps when executed by the processor: acquiring point cloud scan lines corresponding to each historical three-dimensional bounding box; identifying the current three-dimensional the positional relationship between the bounding box and the point cloud scan line; and identifying the point cloud motion state corresponding to the current bounding box according to the positional relationship.
  19. 根据权利要求16所述的存储介质,其特征在于,所述计算机可读指令被所述处理器执行时还执行以下步骤:提取所述三维包围框对应的动态点云数据;在所述点云运动分割结果中确定所述动态点云数据中各动态点对应的点云运动分割结果;及当所述确定的点云运动分割结果为静态点时,将所述确定的点云运动分割结果更换为动态点。The storage medium according to claim 16, wherein when the computer-readable instructions are executed by the processor, the following steps are further performed: extracting dynamic point cloud data corresponding to the three-dimensional bounding box; In the motion segmentation result, determine the point cloud motion segmentation result corresponding to each dynamic point in the dynamic point cloud data; and when the determined point cloud motion segmentation result is a static point, replace the determined point cloud motion segmentation result is a dynamic point.
  20. 根据权利要求16所述的存储介质,其特征在于,所述计算机可读指令被所述处理器执行时还执行以下步骤:将各帧点云数据对应的点云区域划分为多个栅格;根据预设平面方程计算各栅格中的点云数据对应的地面;计算各栅格的点云数据中各点与相应的地面之间的距离值;及将距离值小于第一阈值的点进行过滤,得到多帧非地面点云数据。The storage medium according to claim 16, wherein the computer-readable instruction further performs the following steps when executed by the processor: dividing the point cloud area corresponding to each frame of point cloud data into a plurality of grids; Calculate the ground corresponding to the point cloud data in each grid according to the preset plane equation; calculate the distance value between each point in the point cloud data of each grid and the corresponding ground; Filter to get multi-frame non-ground point cloud data.
PCT/CN2020/128264 2020-11-12 2020-11-12 Motion segmentation method and apparatus for point cloud data, computer device and storage medium WO2022099530A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202080092973.6A CN115066708A (en) 2020-11-12 2020-11-12 Point cloud data motion segmentation method and device, computer equipment and storage medium
PCT/CN2020/128264 WO2022099530A1 (en) 2020-11-12 2020-11-12 Motion segmentation method and apparatus for point cloud data, computer device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/128264 WO2022099530A1 (en) 2020-11-12 2020-11-12 Motion segmentation method and apparatus for point cloud data, computer device and storage medium

Publications (1)

Publication Number Publication Date
WO2022099530A1 true WO2022099530A1 (en) 2022-05-19

Family

ID=81601955

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/128264 WO2022099530A1 (en) 2020-11-12 2020-11-12 Motion segmentation method and apparatus for point cloud data, computer device and storage medium

Country Status (2)

Country Link
CN (1) CN115066708A (en)
WO (1) WO2022099530A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114782438A (en) * 2022-06-20 2022-07-22 深圳市信润富联数字科技有限公司 Object point cloud correction method and device, electronic equipment and storage medium
CN115187713A (en) * 2022-09-08 2022-10-14 山东信通电子股份有限公司 Method, device and medium for accelerating point cloud point selection operation
CN115719354A (en) * 2022-11-17 2023-02-28 同济大学 Method and device for extracting vertical rod based on laser point cloud
CN116402956A (en) * 2023-06-02 2023-07-07 深圳大学 Intelligent driven three-dimensional object interactive reconstruction method, device, equipment and medium
CN116797704A (en) * 2023-08-24 2023-09-22 山东云海国创云计算装备产业创新中心有限公司 Point cloud data processing method, system, device, electronic equipment and storage medium
CN117968682A (en) * 2024-04-01 2024-05-03 山东大学 Dynamic point cloud removing method based on multi-line laser radar and inertial measurement unit

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115311457B (en) * 2022-10-09 2023-03-24 广东汇天航空航天科技有限公司 Point cloud data processing method, computing equipment, flight device and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150254499A1 (en) * 2014-03-07 2015-09-10 Chevron U.S.A. Inc. Multi-view 3d object recognition from a point cloud and change detection
CN110275153A (en) * 2019-07-05 2019-09-24 上海大学 A kind of waterborne target detection and tracking based on laser radar
CN111260683A (en) * 2020-01-09 2020-06-09 合肥工业大学 Target detection and tracking method and device for three-dimensional point cloud data
CN111461245A (en) * 2020-04-09 2020-07-28 武汉大学 Wheeled robot semantic mapping method and system fusing point cloud and image

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150254499A1 (en) * 2014-03-07 2015-09-10 Chevron U.S.A. Inc. Multi-view 3d object recognition from a point cloud and change detection
CN110275153A (en) * 2019-07-05 2019-09-24 上海大学 A kind of waterborne target detection and tracking based on laser radar
CN111260683A (en) * 2020-01-09 2020-06-09 合肥工业大学 Target detection and tracking method and device for three-dimensional point cloud data
CN111461245A (en) * 2020-04-09 2020-07-28 武汉大学 Wheeled robot semantic mapping method and system fusing point cloud and image

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114782438A (en) * 2022-06-20 2022-07-22 深圳市信润富联数字科技有限公司 Object point cloud correction method and device, electronic equipment and storage medium
CN114782438B (en) * 2022-06-20 2022-09-16 深圳市信润富联数字科技有限公司 Object point cloud correction method and device, electronic equipment and storage medium
CN115187713A (en) * 2022-09-08 2022-10-14 山东信通电子股份有限公司 Method, device and medium for accelerating point cloud point selection operation
CN115719354A (en) * 2022-11-17 2023-02-28 同济大学 Method and device for extracting vertical rod based on laser point cloud
CN115719354B (en) * 2022-11-17 2024-03-22 同济大学 Method and device for extracting vertical rod based on laser point cloud
CN116402956A (en) * 2023-06-02 2023-07-07 深圳大学 Intelligent driven three-dimensional object interactive reconstruction method, device, equipment and medium
CN116402956B (en) * 2023-06-02 2023-09-22 深圳大学 Intelligent driven three-dimensional object interactive reconstruction method, device, equipment and medium
CN116797704A (en) * 2023-08-24 2023-09-22 山东云海国创云计算装备产业创新中心有限公司 Point cloud data processing method, system, device, electronic equipment and storage medium
CN116797704B (en) * 2023-08-24 2024-01-23 山东云海国创云计算装备产业创新中心有限公司 Point cloud data processing method, system, device, electronic equipment and storage medium
CN117968682A (en) * 2024-04-01 2024-05-03 山东大学 Dynamic point cloud removing method based on multi-line laser radar and inertial measurement unit

Also Published As

Publication number Publication date
CN115066708A (en) 2022-09-16

Similar Documents

Publication Publication Date Title
WO2022099530A1 (en) Motion segmentation method and apparatus for point cloud data, computer device and storage medium
CN111160302B (en) Obstacle information identification method and device based on automatic driving environment
CN110458854B (en) Road edge detection method and device
WO2022099511A1 (en) Method and apparatus for ground segmentation based on point cloud data, and computer device
JP2021523443A (en) Association of lidar data and image data
WO2021134296A1 (en) Obstacle detection method and apparatus, and computer device and storage medium
CN110286389B (en) Grid management method for obstacle identification
JP5822255B2 (en) Object identification device and program
WO2022188663A1 (en) Target detection method and apparatus
JP2007527569A (en) Imminent collision detection based on stereoscopic vision
JP7091686B2 (en) 3D object recognition device, image pickup device and vehicle
CN110674705A (en) Small-sized obstacle detection method and device based on multi-line laser radar
WO2021134285A1 (en) Image tracking processing method and apparatus, and computer device and storage medium
WO2022099528A1 (en) Method and apparatus for calculating normal vector of point cloud, computer device, and storage medium
WO2022133770A1 (en) Method for generating point cloud normal vector, apparatus, computer device, and storage medium
CN113008296B (en) Method for detecting the environment of a vehicle by fusing sensor data on a point cloud plane and vehicle control unit
CN111553946A (en) Method and device for removing ground point cloud and obstacle detection method and device
WO2022226831A1 (en) Method and apparatus for detecting category-undefined obstacle, and computer device
CN116109601A (en) Real-time target detection method based on three-dimensional laser radar point cloud
US20220171975A1 (en) Method for Determining a Semantic Free Space
Sakic et al. Camera-LIDAR object detection and distance estimation with application in collision avoidance system
US11415698B2 (en) Point group data processing device, point group data processing method, point group data processing program, vehicle control device, and vehicle
CN114241448A (en) Method and device for obtaining heading angle of obstacle, electronic equipment and vehicle
Giosan et al. Superpixel-based obstacle segmentation from dense stereo urban traffic scenarios using intensity, depth and optical flow information
US11884303B2 (en) Apparatus and method for determining lane change of surrounding objects

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20961087

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20961087

Country of ref document: EP

Kind code of ref document: A1