CN110109142B - Point cloud filtering method and device, computer equipment and storage medium - Google Patents

Point cloud filtering method and device, computer equipment and storage medium Download PDF

Info

Publication number
CN110109142B
CN110109142B CN201910270650.0A CN201910270650A CN110109142B CN 110109142 B CN110109142 B CN 110109142B CN 201910270650 A CN201910270650 A CN 201910270650A CN 110109142 B CN110109142 B CN 110109142B
Authority
CN
China
Prior art keywords
point
data
points
point cloud
current data
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201910270650.0A
Other languages
Chinese (zh)
Other versions
CN110109142A (en
Inventor
刘志洋
张宝先
沈霄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suteng Innovation Technology Co Ltd
Original Assignee
Suteng Innovation Technology Co Ltd
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 Suteng Innovation Technology Co Ltd filed Critical Suteng Innovation Technology Co Ltd
Priority to CN201910270650.0A priority Critical patent/CN110109142B/en
Publication of CN110109142A publication Critical patent/CN110109142A/en
Application granted granted Critical
Publication of CN110109142B publication Critical patent/CN110109142B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/08Systems determining position data of a target for measuring distance only
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00

Abstract

The application relates to a point cloud filtering method, a point cloud filtering device, a computer device and a storage medium. The method comprises the following steps: acquiring point cloud data; the point cloud data is a set of data points obtained by scanning a road environment; determining a neighborhood of a current data point in the point cloud data; when the first number of the data points in the neighborhood of the current data point is smaller than a preset threshold value, determining the current data point as a candidate noise point; taking the candidate noise points as seed points to carry out region growth to obtain a target growth region; and when the second number of the data points in the target growth area is smaller than the preset threshold value, filtering the candidate noise points serving as noise points from the point cloud data. By adopting the method, the noise point is initially positioned, and then the noise point is determined and filtered through region growing, so that a data point formed by a distant object and a sparse data point in point cloud data are protected, and the accuracy of point cloud filtering is improved.

Description

Point cloud filtering method and device, computer equipment and storage medium
Technical Field
The present application relates to the field of automatic driving technologies, and in particular, to a point cloud filtering method, apparatus, computer device, and storage medium.
Background
With the development of artificial intelligence technology, the automatic driving mode of the motor vehicle is more and more concerned by users, and the users can safely drive without manually operating the motor vehicle. The automatic driving mainly depends on an intelligent driver in the motor vehicle to realize unmanned driving, in the automatic driving process, the motor vehicle collects point cloud data about road environment through a radar, and the collected point cloud data is filtered to remove noise point cloud, so that the road environment in the driving process is sensed, the intelligent driver can automatically drive according to the sensed road environment, and the safety of the automatic driving is guaranteed.
However, when the conventional point cloud filtering scheme is used to filter the point cloud data, the effective point cloud formed by a distant object and the effective point cloud existing in a sparse characteristic form may be filtered, so that the accuracy of point cloud filtering is reduced, and the safety of automatic driving is affected.
Disclosure of Invention
In view of the above, it is necessary to provide a point cloud filtering method, apparatus, computer device and storage medium capable of improving filtering accuracy.
A method of point cloud filtering, the method comprising:
acquiring point cloud data; the point cloud data is a set of data points obtained by scanning a road environment;
determining a neighborhood of a current data point in the point cloud data;
when the first number of the data points in the neighborhood of the current data point is smaller than a preset threshold value, determining the current data point as a candidate noise point;
taking the candidate noise points as seed points to carry out region growth to obtain a target growth region;
and when the second number of the data points in the target growth area is smaller than the preset threshold value, filtering the candidate noise points serving as noise points from the point cloud data.
In one embodiment, before acquiring the point cloud data, the method further includes:
acquiring weather environment data;
inquiring an environment state identification corresponding to the weather environment data in a preset list;
and extracting a preset threshold corresponding to the inquired environment state identification from the preset list.
In one embodiment, determining a neighborhood of a current data point in the point cloud data comprises:
acquiring the distance from the current data point to a radar for transmitting laser;
when the distance is within a preset filtering distance interval, acquiring the horizontal angle resolution of the radar;
calculating a proximity radius of the current data point according to the horizontal angular resolution and the distance;
and determining the neighborhood of the current data point according to the adjacent radius.
In one embodiment, the method further comprises:
acquiring point cloud attributes of the point cloud data;
determining a candidate noise point statistical mode corresponding to the acquired point cloud attribute;
and counting the first number of the data points in the neighborhood of the current data point according to the candidate noise point statistical mode.
In one embodiment, statistically counting the first number of data points in the neighborhood of the current data point according to the candidate noise point statistical method includes:
when each data point in the point cloud data is determined to be an ordered data point according to the point cloud attributes, acquiring a data point sequence number of the current data point;
inquiring adjacent data points adjacent to the data point serial number of the current data point;
a first number of adjacent data points located within a neighborhood of the current data point is counted.
In one embodiment, statistically counting the first number of data points in the neighborhood of the current data point according to the candidate noise point statistical method includes:
when each data point in the point cloud data is determined to be a disordered data point according to the point cloud attributes, performing voxel division on a point cloud space corresponding to the point cloud data to obtain a plurality of voxels;
taking the data points in the voxel where the current data point is located and the adjacent voxels as the adjacent data points of the current data point;
a first number of adjacent data points located within a neighborhood of the current data point is counted.
In one embodiment, performing region growing by using the candidate noise point as a seed point, and obtaining a target growing region includes:
taking the candidate noise point as a seed point;
inquiring each adjacent data point corresponding to the seed point according to the point cloud attribute of the point cloud data;
calculating the curvature between the seed point and each corresponding adjacent data point;
when the curvature is smaller than a preset curvature threshold value, determining the adjacent data points as growable data points;
and taking the data points capable of growing as seed points to continue the region growing until the region growing is stopped to obtain a target growing region.
A point cloud filtering device, the device comprising:
the point cloud acquisition module is used for acquiring point cloud data; the point cloud data is a set of data points obtained by scanning a road environment;
the neighborhood determining module is used for determining the neighborhood of the current data point in the point cloud data;
the candidate determining module is used for determining the current data point as a candidate noise point when the first number of the data points in the neighborhood of the current data point is smaller than a preset threshold value;
the region growing module is used for performing region growing by taking the candidate noise points as seed points to obtain a target growing region;
and the noise filtering module is used for filtering the candidate noise point serving as a noise point from the point cloud data when the second number of the data points in the target growth area is smaller than the preset threshold value.
In one embodiment, the neighborhood determination module is further configured to:
acquiring the distance from the current data point to a radar for transmitting laser;
when the distance is within a preset filtering distance interval, acquiring the horizontal angle resolution of the radar;
calculating a proximity radius of the current data point according to the horizontal angular resolution and the distance;
and determining the neighborhood of the current data point according to the adjacent radius.
A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the following steps when executing the computer program:
acquiring point cloud data; the point cloud data is a set of data points obtained by scanning a road environment;
determining a neighborhood of a current data point in the point cloud data;
when the first number of the data points in the neighborhood of the current data point is smaller than a preset threshold value, determining the current data point as a candidate noise point;
taking the candidate noise points as seed points to carry out region growth to obtain a target growth region;
and when the second number of the data points in the target growth area is smaller than the preset threshold value, filtering the candidate noise points serving as noise points from the point cloud data.
A computer-readable storage medium, on which a computer program is stored which, when executed by a processor, carries out the steps of:
acquiring point cloud data; the point cloud data is a set of data points obtained by scanning a road environment;
determining a neighborhood of a current data point in the point cloud data;
when the first number of the data points in the neighborhood of the current data point is smaller than a preset threshold value, determining the current data point as a candidate noise point;
taking the candidate noise points as seed points to carry out region growth to obtain a target growth region;
and when the second number of the data points in the target growth area is smaller than the preset threshold value, filtering the candidate noise points serving as noise points from the point cloud data.
According to the point cloud filtering method, the point cloud filtering device, the computer equipment and the storage medium, the neighborhood of the current data point is determined after the point cloud data is obtained, the number of all data points in the neighborhood is counted by taking the current data point as the center, when the number is smaller than the preset threshold value, the current data point of the center position is the candidate noise point, the neighborhood is determined for the current data point when the noise point is preliminarily positioned, the data point formed by a distant object is prevented from being used as the noise point, and the accuracy of noise point judgment is improved. The candidate noise points are used as seed points to carry out region growth, all data points in the target growth region are obtained through the region growth, and the candidate noise points are used as noise points to be filtered only when the number of the data points is smaller than a preset threshold value, so that the situation that the data points existing in a sparse characteristic form in the point cloud data are filtered as the noise points is avoided, the accuracy of point cloud filtering is improved, and the safety of automatic driving is further improved.
Drawings
FIG. 1 is a diagram of an application environment of a point cloud filtering method according to an embodiment;
FIG. 2 is a schematic flow chart of a point cloud filtering method according to an embodiment;
FIG. 3 is a flowchart illustrating the steps of extracting a predetermined threshold in one embodiment;
FIG. 4 is a flowchart illustrating the steps of determining a neighborhood in one embodiment;
FIG. 5 is a flow diagram illustrating the steps of counting the first number in one embodiment;
FIG. 6 is a flow chart illustrating a first number of steps by ordering in one embodiment;
FIG. 7 is a schematic flow chart of the step of counting the first number by voxels in one embodiment;
FIG. 8 is a schematic flow chart illustrating the steps for obtaining a target growth area in one embodiment;
FIG. 9 is a block diagram of a point cloud filtering apparatus according to an embodiment;
FIG. 10 is a diagram showing an internal structure of a computer device according to an embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
The point cloud filtering method provided by the application can be applied to the application environment shown in fig. 1. In which a computer device in an autonomous vehicle is equipped with an operating system. The computer device may be, but is not limited to, various industrial computers, personal computers, and notebook computers. The computer device may further comprise a measuring means, which may be a radar, for collecting data points to obtain point cloud data.
In one embodiment, as shown in fig. 2, a point cloud filtering method is provided, which is illustrated by way of example as the method applied to a computer device, which may be an intelligent driver, in the autonomous vehicle of fig. 1. The method specifically comprises the following steps:
step 202, point cloud data is obtained; the point cloud data is a collection of data points obtained by scanning a road environment.
The data points may be points obtained by the measuring device scanning the road environment, and each data point corresponds to an object in the road environment, such as a vehicle, a pedestrian, a road, a street lamp, a telegraph pole, a tree, guardrails on both sides of the road, and the like in front.
Specifically, a computer device in an autonomous vehicle scans a road environment through a measuring device, which has a depth perception function; when an obstacle is scanned, data points are obtained, and the collection of all the data points constitutes point cloud data.
In one embodiment, the measuring device includes, but is not limited to, various radars and binocular cameras, and may be other sensors with depth perception function.
In one embodiment, the data points may be laser-formed points that are reflected onto the measuring device after the measuring device has emitted laser light into the roadway environment.
In one embodiment, when the measuring device is a Radar (Radar), the Radar may be a LiDAR (Light Detection and Ranging), i.e. a Radar system that detects characteristic quantities of a position, a speed, etc. of a target with a transmitted laser beam. And the radar acquires data points according to a certain acquisition frequency to obtain point cloud data. For example, the radar has a frequency of acquisition of 10zAnd then the computer equipment acquires one frame of point cloud data by radar every 0.1 second.
Step 204, determining the neighborhood of the current data point in the point cloud data.
Wherein the current data point may be a data point currently being processed by the computer device. The neighborhood may be a spatial region centered at the current data point.
Specifically, the point cloud data includes the distance of each data point to the radar. The computer equipment obtains the distance from the current data point to the radar and the horizontal angle resolution of the radar, and calculates the distance and the horizontal angle resolution according to a preset calculation mode to obtain the adjacent radius of the current data point. The computer device determines a sphere space in a rectangular spatial coordinate system by taking the current data point as a center, wherein the radius of the sphere space can be the adjacent radius of the current data point, and a neighborhood of the current data point is obtained.
And step 206, when the first quantity of the data points in the neighborhood of the current data point is smaller than a preset threshold value, determining the current data point as a candidate noise point.
Wherein the first number may be the number of data points in the neighborhood of the current data point; the preset threshold value can be a preset number value of data points; the candidate noise points are data points in the point cloud data that are likely to be noise points.
Specifically, the computer device counts the number of data points in a neighborhood of the current data point to obtain a first number. The computer equipment acquires a stored preset threshold value and compares the first quantity with the preset threshold value; and when the first number is smaller than a preset threshold value, determining the current data point as a candidate noise point.
In one embodiment, objects closer to the radar reflect laser light with denser data points, and objects further from the radar reflect laser light with sparser data points. If all data points in the point cloud data adopt the same approach radius, when the first quantity is counted, data points formed by objects (such as vehicles, pedestrians and the like) far away from the radar are sparse, and are easy to judge as candidate noise points. Therefore, for different data points, respective adjacent radii are calculated, and data points formed by radar distant objects are protected, namely distant features are protected in filtering.
And step 208, performing region growing by taking the candidate noise points as seed points to obtain a target growing region.
Wherein, the seed point is an initial data point required for region growing; the region growing is a process of searching more data points from the seed points according to a preset condition; and the target growth area is a space area formed by all searched data points after the area growth is finished.
Specifically, after the computer obtains the candidate noise points in the point cloud data, the candidate noise points are used as seed points, data points are searched around the seed points according to preset conditions, the searched data points are used as new seed points to continue region growing, and when the data points meeting the preset conditions cannot be searched, the region growing is stopped. And the computer equipment obtains the target growth area according to all the searched data points.
And step 210, when the second number of the data points in the target growth area is smaller than a preset threshold value, filtering the candidate noise points serving as noise points from the point cloud data.
Wherein the second number is the number of data points within the target growth area.
Specifically, the computer device counts the number of data points in the target growth area to obtain a second number. And the computer equipment acquires a preset threshold value, compares the preset threshold value with the second number, determines the candidate noise points as noise points if the second number is still smaller than the preset threshold value, and filters the noise points from the point cloud data. And after the computer equipment judges all the candidate noise points, obtaining filtered point cloud data.
In one embodiment, the computer device counts a second number of data points in the target growing region in real time during the region growing, and determines the candidate noise point as a valid point and stops the region growing when the second number is greater than a preset threshold.
In one embodiment, after the candidate noise point is used as the seed point, if the seed point cannot perform region growing, that is, a data point meeting a preset condition cannot be found, the candidate noise point is used as the noise point to be filtered from the point cloud data.
In one embodiment, when the computer device counts that the first number of data points in the neighborhood of the current data point is greater than or equal to a preset threshold value, the current data point is kept as a valid data point; and when the second number of the data points in the target growth area is counted to be greater than or equal to a preset threshold value, the candidate noise points are reserved as effective data points. And after the filtering of the computer equipment is finished, obtaining road environment information according to the effective data points, and controlling the automatic driving automobile to run according to the road environment information.
In the embodiment, after point cloud data is acquired, the neighborhood of the current data point is determined, the number of all data points in the neighborhood is counted by taking the current data point as a center, when the number is smaller than a preset threshold, the current data point at the center position is a candidate noise point, the neighborhood is determined for the current data point during the primary positioning of the noise point, the data point formed by a distant object is prevented from being taken as the noise point, and the accuracy of noise point judgment is improved. The candidate noise points are used as seed points to carry out region growth, all data points in the target growth region are obtained through the region growth, and the candidate noise points are used as noise points to be filtered only when the number of the data points is smaller than a preset threshold value, so that the situation that the data points existing in a sparse characteristic form in the point cloud data are filtered as the noise points is avoided, the accuracy of point cloud filtering is improved, and the safety of automatic driving is further improved.
As shown in fig. 3, in an embodiment, step 202 further includes a step of extracting a preset threshold, where the step specifically includes the following steps:
step 302, weather environment data is obtained.
Wherein the weather environment data may be data characterizing the weather environment.
Specifically, after the automatic driving automobile is started, the computer equipment can automatically acquire weather environment data through a network. The weather environment data may be current weather conditions such as sunny days, cloudy days, rainy days, snowy days, foggy days, etc. The weather environment data may also include temperature and current time, etc.
In one embodiment, the weather environment data may be manually entered after the user initiates the autonomous vehicle; in addition, the computer device calls a positioning system to position the current position of the automatic driving automobile, and then obtains weather environment data of the current position from the network through an internet device on the automatic driving automobile.
Step 304, querying an environment state identifier corresponding to the weather environment data in a preset list.
The preset list may be a list storing all preset thresholds; the environmental status identification may be an identification of the current weather environment.
Specifically, different weather environment data correspond to different environment status identifiers, and different weather environments correspond to different preset thresholds, for example, the preset threshold in a snowy weather environment is higher than the preset threshold in a sunny weather environment. After the computer equipment acquires the weather environment data, reading a preset list storing preset threshold values under different weather environments, and inquiring an environment state identifier corresponding to the weather environment data in the preset list.
Step 306, extracting a preset threshold corresponding to the queried environment state identifier from the preset list.
Specifically, after querying an environment state identifier corresponding to the weather environment data in the preset list, the server extracts a preset threshold corresponding to the queried environment state identifier, and uses the extracted preset threshold as a preset threshold adopted during filtering.
In the embodiment, weather environment data is obtained, and the weather environment data represents the weather environment during driving; inquiring an environment state identification corresponding to the weather environment data in a preset list, and extracting a preset threshold corresponding to the inquired environment state identification; the extracted preset threshold corresponds to the current weather environment, so that the computer equipment can effectively filter according to the weather, and the accuracy of filtering is improved.
As shown in fig. 4, in an embodiment, step 204 further includes a step of determining a neighborhood, which includes the following steps:
step 402, the distance from the current data point to the radar used for emitting laser is acquired.
Specifically, the computer device may emit laser light through a radar and obtain point cloud data. When the current data point is detected by the radar, the radar calculates the distance from the current data point to the radar, the distance represents the distance from the obstacle point which reflects the laser to the radar, and the distance and the current data point are correspondingly stored. And when the computer equipment carries out filtering, acquiring the distance from the current data point to the radar for transmitting the laser.
In one embodiment, the distance acquired by the computer device represents the distance from the obstacle point reflecting the laser to the radar center point, i.e., the radar center.
And step 404, when the distance is within the preset filtering distance interval, acquiring the horizontal angular resolution of the radar.
The preset filtering distance interval may be an interval representing a filtering distance range. The horizontal angular resolution is a parameter of the radar.
Specifically, the computer device only filters data points within a preset distance range. The computer device obtains a preset filtering distance interval, wherein a left end point of the preset filtering distance interval can be a minimum filtering distance, and a right end point of the preset filtering distance interval can be a maximum filtering distance. And when the distance from the current data point to the radar is within a preset filtering distance interval, the computer equipment acquires the stored horizontal angular resolution of the radar.
In one embodiment, when the distance from the current data point to the radar is not within the preset filtering distance interval, the current data point is filtered out of the point cloud data.
In one embodiment, the preset filtering distance interval may be determined by weather environment data, may be set by a user, and may be determined by an attribute of the radar.
At step 406, the adjacent radius of the current data point is calculated based on the horizontal angular resolution and the distance.
Where the proximity radius may be the radius of the neighborhood of the current data point.
Specifically, after the computer device obtains the horizontal angular resolution of the radar and the distance from the data point to the radar, a preset radius calculation formula is obtained, and the adjacent radius of the current data point is calculated according to the obtained radius calculation formula, the horizontal angular resolution and the distance from the current data point to the radar.
In one embodiment, adjacent to radius Rd=EhX (3.14. pi.) x d, wherein RdIs the adjacent radius of the current data point; ehIs the horizontal angular resolution of the radar; d is the distance of the current data point to the radar.
And step 408, determining the neighborhood of the current data point according to the adjacent radius.
Specifically, the computer device determines a spherical region in the spatial rectangular coordinate system by taking the current data point as the center of sphere and the calculated adjacent radius as the radius of the sphere, wherein the spherical region is the neighborhood of the current data point.
In the embodiment, the distance from the current data point to a radar for emitting laser is obtained, and the distance represents the distance from the current data point to the radar; when the distance is within the preset filtering distance interval, the current data point is within a reasonable distance range, filtering value exists, the horizontal and angular resolution of the radar is obtained, the adjacent radius of the current data point is calculated according to the horizontal and angular resolution and the distance, the neighborhood of the current data point is determined according to the adjacent radius, so that the current data point within the preset filtering distance interval is filtered, and the accuracy of filtering is improved.
As shown in fig. 5, in an embodiment, step 206 further includes a step of counting the first number, and the step specifically includes the following steps:
step 502, point cloud attributes of the point cloud data are obtained.
Wherein the point cloud attributes are used to characterize properties of the point cloud data.
Specifically, after the computer device acquires the point cloud data, the point cloud attribute of the point cloud data is acquired. The point cloud attributes are inherent attributes of the point cloud data, including orderliness and disordering. The point cloud attributes may depend on the type of radar. The computer device may obtain the point cloud attributes through an attribute function.
Step 504, a candidate noise point statistical mode corresponding to the acquired point cloud attributes is determined.
The candidate noise point statistic manner may be a manner of counting a first number of data points in a neighborhood of the current data point.
In particular, the point cloud attributes may include orderliness and disordering. The point cloud data with different attributes correspond to different candidate noise point statistical modes. After the point cloud attributes are obtained by the computer equipment, the candidate noise point statistical mode of the point cloud data is determined according to the point cloud attributes.
Step 506, the first number of data points in the neighborhood of the current data point is counted according to the statistical mode of the candidate noise points.
Specifically, after the computer device determines the candidate noise point statistical manner, the first number of data points in the neighborhood of the current data point is counted according to the determined candidate noise point statistical manner.
In the embodiment, the point cloud attributes of the point cloud data are obtained, the point cloud data with different point cloud attributes have different characteristics, the candidate noise point statistical mode is determined according to the point cloud attributes, the first number of the data points in the adjacent radius of the current data point is counted according to the determined candidate noise point statistical mode, namely, the first number statistical mode is reasonably selected according to the characteristics of the point cloud data, and the statistical efficiency is improved.
As shown in fig. 6, in an embodiment, step 506 further includes a step of counting the first number by order, and the step includes the following steps:
step 602, when each data point in the point cloud data is determined to be an ordered data point according to the point cloud attribute, a data point sequence number of the current data point is obtained.
Wherein, the ordered data points can be data points which are regularly and related with each other; the data point sequence number may be a sequence number of an ordered data point, an identifier of an ordered data point, and may be a character string combined by letters, numbers, special symbols, and the like.
Specifically, if the point cloud attributes are ordered, the radar adds a data point serial number to each data point after obtaining the data point. And when the computer equipment determines that the point cloud data is ordered according to the point cloud attributes, determining each data point in the point cloud data as an ordered data point, and acquiring the data point serial number of the current data point.
At step 604, the adjacent data points adjacent to the data point number of the current data point are queried.
Wherein the neighboring data points are data points within a certain spatial range from the current data point.
Specifically, the data point numbers of ordered data points within a certain spatial range are adjacent. After the computer equipment acquires the data point serial number of the current data point, the adjacent data point of the current data point is inquired according to the data point serial number.
At step 606, a first number of neighboring data points located in a neighborhood of the current data point is counted.
Specifically, the computer device obtains the spatial coordinates of the current data point and each adjacent data point, respectively calculates the spatial distance between the current data point and each adjacent data point, compares the calculated spatial distance with the adjacent radius of the current data point, and when the spatial distance is smaller than the adjacent radius, the adjacent data point is located in the neighborhood of the current data point. The computer device counts the number of adjacent data points located in the neighborhood of the current data point to obtain a first number.
In this embodiment, when each data point in the point cloud data is determined to be an ordered data point according to the point cloud attribute, the data point number of the current data point is obtained, and since the ordered data point has the data point number and the number of adjacent data points is adjacent, adjacent data points can be quickly found according to the data point number, thereby improving the speed of counting the first number.
As shown in fig. 7, in another embodiment, step 506 further includes a step of counting the first number by voxels, and the step includes the following steps:
step 702, when each data point in the point cloud data is determined to be a disordered data point according to the point cloud attributes, performing voxel division on a point cloud space corresponding to the point cloud data to obtain a plurality of voxels.
Wherein, the ordinal data points can be data points without rules and connection among each other; the point cloud data are constructed in a three-dimensional coordinate system, and the space determined by the three-dimensional coordinate system is a point cloud space; the voxel division is to divide the point cloud space into a plurality of volume spaces, and each volume space is a voxel; a voxel is an abbreviation of Volume element (Volume Pixel), which is the smallest unit when a three-dimensional space is divided.
Specifically, when the computer device determines that the point cloud data is unordered according to the point cloud orderliness, each data point in the point cloud data is determined to be an unnecessary data point. The computer equipment calculates the voxel size according to a preset voxel calculation mode, and performs voxel division on a point cloud space corresponding to the point cloud data according to the voxel size to obtain a plurality of voxels.
In one embodiment, the voxel may be a cube. The computer calculates the size of the voxel according to the maximum adjacent radius in the adjacent radii of each data point; the computer device may take half of the largest adjacent radius as the edge length of the voxel.
Step 704, using the voxel where the current data point is located and the data points in the adjacent voxels as the adjacent data points of the current data point.
Specifically, when the computer device divides the voxels in the point cloud space, a voxel serial number is added to each voxel, that is, a data point serial number is added to the ordered data points similarly to a radar, and the data points in the point cloud space where the voxels are located are stored. The computer equipment acquires the voxel serial number of the voxel where the current data point is located, inquires each voxel adjacent to the voxel where the current data point is located according to the voxel serial number, and takes the voxel where the current data point is located and the data points in each adjacent voxel as the adjacent data points of the current data point.
At step 706, a first number of neighboring data points located in a neighborhood of the current data point is counted.
Specifically, after obtaining the voxel where the current data point is located and the adjacent data points in each adjacent voxel, the computer device obtains the coordinates of the current data point and each adjacent data point, searches for the adjacent data points located in the neighborhood of the current data point according to the coordinates of the current data point and the adjacent data points, and counts the first number of each adjacent data point located in the adjacent radius of the current data point.
In this embodiment, when each data point in the point cloud data is determined to be a disordered data point according to the point cloud attribute, a point cloud space corresponding to the point cloud data is subjected to voxel division to obtain a plurality of voxels, only the voxel where the current data point is located and the data point in each adjacent voxel are used as adjacent data points of the current data point, when the first number is counted, only part of the data points need to be calculated, all the data points in the point cloud data do not need to be calculated, the calculation amount is reduced, and the speed of counting the first number is improved.
As shown in fig. 8, in another embodiment, the step 208 further includes a step of obtaining a target growth area, and the step includes the following steps:
step 802, using the candidate noise point as a seed point.
Specifically, after the computer device obtains the candidate noise points, it needs to determine the noise points from the candidate noise points. The computer device sets the candidate noise points as seed points and prepares for region growing.
And step 804, inquiring each adjacent data point corresponding to the seed point according to the point cloud attribute of the point cloud data.
Specifically, after determining the seed points, the computer device queries adjacent data points corresponding to the seed points according to point cloud attributes of the point cloud data; when the point cloud attributes are ordered, the computer equipment acquires the data point serial numbers of the seed points and inquires each adjacent data point according to the data point serial numbers; and when the point cloud attribute is disordered, taking the voxel where the seed point is located and the data points in the adjacent voxels as adjacent data points.
At step 806, a curvature between the seed point and each of the corresponding adjacent data points is calculated.
Specifically, after obtaining each adjacent data point corresponding to the seed point, the computer device respectively fits a fitting curve between the seed point and each adjacent data point, and then calculates the curvature according to the fitting curve. Wherein the formula for calculating the curvature may beWhere y is the slope of the tangent to the fitted curve at the adjacent data points.
And 808, when the curvature is smaller than a preset curvature threshold value, determining the adjacent data points as the data points which can be grown.
The preset curvature threshold is a preset curvature value and is used for judging whether an adjacent data point is a data point which can be grown; the growable data points are data points that can be used as seed points for region growing.
Specifically, after the computer device calculates the curvature between the seed point and the adjacent data point, a preset curvature threshold value is obtained, the calculated curvature is compared with the preset curvature threshold value, and when the curvature is smaller than the preset curvature threshold value, the adjacent data point is determined as a data point capable of growing.
And step 810, continuing the region growing by taking the data points which can be grown as seed points until the region growing is stopped to obtain a target growing region.
Specifically, the computer device sets the determined growable data point as a new seed point, queries each adjacent data point corresponding to the new seed point, and continues to perform region growth on the basis of the new seed point until the growable data point cannot be found, and stops the region growth. And the computer equipment obtains a target growth area according to the searched space areas where all the data points capable of growing are located.
In one embodiment, the obstacles in the road environment are rod-shaped objects, including but not limited to telegraph poles, trunks, signal lamps, and the like, data points generated from the rod-shaped objects are sparse and have long and narrow linear distribution, and if the judgment is performed only by counting the first number of data points in the adjacent radius of the current data point, the current data point is filtered out as a noise point with a high probability, so that the accuracy of point cloud filtering is reduced. The curvatures of the data points generated by the rod-shaped object are consistent, the data points generated by the rod-shaped object can be found through region growing, rod-shaped obstacles can be identified, and accuracy of point cloud filtering is improved.
In the embodiment, the candidate noise points are used as seed points, and each adjacent data point corresponding to the seed points is inquired according to the point cloud attributes of the point cloud data, so that the speed of inquiring the adjacent data points is improved; calculating the curvature between the seed point and each adjacent data point, wherein if the curvature is smaller than a preset curvature threshold, the seed point and the adjacent data points are from the same object; and continuously performing region growth by taking the adjacent data points as seed points until the region growth is stopped to obtain a target growth region, wherein the data points in the target growth region are from the same object, and the problem that the data points existing in the form of sparse features in the point cloud data are filtered out as noise points through the region growth is avoided, so that the accuracy of point cloud filtering is improved.
It should be understood that although the various steps in the flow charts of fig. 2-8 are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least some of the steps in fig. 2-8 may include multiple sub-steps or multiple stages that are not necessarily performed at the same time, but may be performed at different times, and the order of performance of the sub-steps or stages is not necessarily sequential, but may be performed in turn or alternating with other steps or at least some of the sub-steps or stages of other steps.
In one embodiment, as shown in fig. 9, there is provided a point cloud filtering apparatus 900, including: a point cloud acquisition module 902, a neighborhood determination module 904, a candidate determination module 906, a region growing module 908, and a noise filtering module 910, wherein:
a point cloud obtaining module 902, configured to obtain point cloud data; the point cloud data is a collection of data points obtained by scanning a road environment.
And a neighborhood determining module 904, configured to determine a neighborhood of the current data point in the point cloud data.
And a candidate determining module 906, configured to determine the current data point as a candidate noise point when it is counted that the first number of data points in the neighborhood of the current data point is smaller than a preset threshold.
And a region growing module 908, configured to perform region growing on the candidate noise points as seed points to obtain a target growing region.
And the noise filtering module 910 is configured to filter the candidate noise point from the point cloud data as a noise point when it is counted that the second number of data points in the target growth area is smaller than a preset threshold.
In the embodiment, after point cloud data is acquired, the neighborhood of the current data point is determined, the number of all data points in the neighborhood is counted by taking the current data point as a center, when the number is smaller than a preset threshold, the current data point at the center position is a candidate noise point, the neighborhood is determined for the current data point during the primary positioning of the noise point, the data point formed by a distant object is prevented from being taken as the noise point, and the accuracy of noise point judgment is improved. The candidate noise points are used as seed points to carry out region growth, all data points in the target growth region are obtained through the region growth, and the candidate noise points are used as noise points to be filtered only when the number of the data points is smaller than a preset threshold value, so that the situation that the data points existing in a sparse characteristic form in the point cloud data are filtered as the noise points is avoided, the accuracy of point cloud filtering is improved, and the safety of automatic driving is further improved.
In one embodiment, the point cloud filtering apparatus 900 further includes: the device comprises a data acquisition module, an identification query module and a threshold extraction module, wherein:
and the data acquisition module is used for acquiring the weather environment data.
And the identification query module is used for querying the environment state identification corresponding to the weather environment data in the preset list.
And the threshold extraction module is used for extracting a preset threshold corresponding to the inquired environment state identifier from the preset list.
In the embodiment, weather environment data is obtained, and the weather environment data represents the weather environment during driving; inquiring an environment state identification corresponding to the weather environment data in a preset list, and extracting a preset threshold corresponding to the inquired environment state identification; the extracted preset threshold corresponds to the current weather environment, so that the computer equipment can effectively filter according to the weather, and the accuracy of filtering is improved.
In one embodiment, neighborhood determination module 904 is further configured to obtain a distance from the current data point to a radar configured to emit laser light; when the distance is within a preset filtering distance interval, acquiring the horizontal angle resolution of the radar; calculating the adjacent radius of the current data point according to the horizontal angular resolution and the distance; and determining the neighborhood of the current data point according to the adjacent radius.
In the embodiment, the distance from the current data point to a radar for emitting laser is obtained, and the distance represents the distance from the current data point to the radar; when the distance is within the preset filtering distance interval, the current data point is within a reasonable distance range, filtering value exists, the horizontal and angular resolution of the radar is obtained, the adjacent radius of the current data point is calculated according to the horizontal and angular resolution and the distance, the neighborhood of the current data point is determined according to the adjacent radius, so that the current data point within the preset filtering distance interval is filtered, and the accuracy of filtering is improved.
In one embodiment, the point cloud filtering apparatus 900 further includes: the device comprises an attribute acquisition module, a mode determination module and a first statistic module, wherein:
and the attribute acquisition module is used for acquiring the point cloud attributes of the point cloud data.
And the mode determining module is used for determining a candidate noise point statistical mode corresponding to the acquired point cloud attribute.
And the first statistical module is used for counting the first number of the data points in the neighborhood of the current data point according to the candidate noise point statistical mode.
In the embodiment, the point cloud attributes of the point cloud data are obtained, the point cloud data with different point cloud attributes have different characteristics, the candidate noise point statistical mode is determined according to the point cloud attributes, the first number of the data points in the adjacent radius of the current data point is counted according to the determined candidate noise point statistical mode, namely, the first number statistical mode is reasonably selected according to the characteristics of the point cloud data, and the statistical efficiency is improved.
In one embodiment, the first statistical module is further configured to obtain a data point sequence number of a current data point when each data point in the point cloud data is determined to be an ordered data point according to the point cloud attribute; inquiring adjacent data points adjacent to the data point serial number of the current data point; a first number of adjacent data points located within a neighborhood of the current data point is counted.
In this embodiment, when each data point in the point cloud data is determined to be an ordered data point according to the point cloud attribute, the data point number of the current data point is obtained, and since the ordered data point has the data point number and the number of adjacent data points is adjacent, adjacent data points can be quickly found according to the data point number, thereby improving the speed of counting the first number.
In one embodiment, the first statistical module is further configured to perform voxel division on a point cloud space corresponding to the point cloud data to obtain a plurality of voxels when each data point in the point cloud data is determined to be a disordered data point according to the point cloud attribute; taking the voxel where the current data point is located and the data points in the adjacent voxels as the adjacent data points of the current data point; a first number of adjacent data points located within a neighborhood of the current data point is counted.
In this embodiment, when each data point in the point cloud data is determined to be a disordered data point according to the point cloud attribute, a point cloud space corresponding to the point cloud data is subjected to voxel division to obtain a plurality of voxels, only the voxel where the current data point is located and the data point in each adjacent voxel are used as adjacent data points of the current data point, when the first number is counted, only part of the data points need to be calculated, all the data points in the point cloud data do not need to be calculated, the calculation amount is reduced, and the speed of counting the first number is improved.
In one embodiment, the region growing module 908 is further configured to take the candidate noise point as a seed point; inquiring each adjacent data point corresponding to the seed point according to the point cloud attribute of the point cloud data; calculating the curvature between the seed point and each corresponding adjacent data point; when the curvature is smaller than a preset curvature threshold value, determining adjacent data points as growable data points; and taking the data points capable of growing as seed points to continue the region growing until the region growing is stopped to obtain a target growing region.
In the embodiment, the candidate noise points are used as seed points, and each adjacent data point corresponding to the seed points is inquired according to the point cloud attributes of the point cloud data, so that the speed of inquiring the adjacent data points is improved; calculating the curvature between the seed point and each adjacent data point, wherein if the curvature is smaller than a preset curvature threshold, the seed point and the adjacent data points are from the same object; and continuously performing region growth by taking the adjacent data points as seed points until the region growth is stopped to obtain a target growth region, wherein the data points in the target growth region are from the same object, and the problem that the data points existing in the form of sparse features in the point cloud data are filtered out as noise points through the region growth is avoided, so that the accuracy of point cloud filtering is improved.
For specific limitations of the point cloud filtering apparatus, reference may be made to the above limitations of the point cloud filtering method, which are not described herein again. All or part of the modules in the point cloud filtering device can be realized by software, hardware and a combination thereof. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
In one embodiment, a computer device is provided, which may be a smart driver in an autonomous automobile, the internal structure of which may be as shown in fig. 10. The computer device comprises a processor, a memory, a network interface, a display screen, an input device and a measuring device which are connected through a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement a point cloud filtering method. The display screen of the computer equipment can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer equipment can be a touch layer covered on the display screen, a key, a track ball or a touch pad arranged on the shell of the computer equipment, an external keyboard, a touch pad or a mouse and the like. The measuring device is used for emitting laser to the road environment and obtaining point cloud data according to the data points, and the measuring device can be a radar.
Those skilled in the art will appreciate that the architecture shown in fig. 10 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the following steps when executing the computer program: acquiring point cloud data; the point cloud data is a set of data points obtained by scanning a road environment; determining the neighborhood of a current data point in the point cloud data; when the first number of the data points in the neighborhood of the current data point is smaller than a preset threshold value in a statistical manner, determining the current data point as a candidate noise point; performing region growth by taking the candidate noise points as seed points to obtain a target growth region; and when the second number of the data points in the target growing area is smaller than a preset threshold value through statistics, filtering the candidate noise points serving as noise points from the point cloud data.
In one embodiment, the processor, when executing the computer program, further performs the steps of: acquiring weather environment data; inquiring an environment state identifier corresponding to the weather environment data in a preset list; and extracting a preset threshold corresponding to the inquired environment state identification from the preset list.
In one embodiment, the processor, when executing the computer program, further performs the steps of: acquiring the distance from the current data point to a radar for emitting laser; when the distance is within a preset filtering distance interval, acquiring the horizontal angle resolution of the radar; calculating the adjacent radius of the current data point according to the horizontal angular resolution and the distance; and determining the neighborhood of the current data point according to the adjacent radius.
In one embodiment, the processor, when executing the computer program, further performs the steps of: acquiring point cloud attributes of the point cloud data; determining a candidate noise point statistical mode corresponding to the acquired point cloud attribute; and counting the first number of data points in the neighborhood of the current data point according to the statistical mode of the candidate noise points.
In one embodiment, the processor, when executing the computer program, further performs the steps of: when each data point in the point cloud data is determined to be an ordered data point according to the point cloud attributes, acquiring a data point sequence number of the current data point; inquiring adjacent data points adjacent to the data point serial number of the current data point; a first number of adjacent data points located within a neighborhood of the current data point is counted.
In one embodiment, the processor, when executing the computer program, further performs the steps of: when each data point in the point cloud data is determined to be a disordered data point according to the point cloud attributes, performing voxel division on a point cloud space corresponding to the point cloud data to obtain a plurality of voxels; taking the voxel where the current data point is located and the data points in the adjacent voxels as the adjacent data points of the current data point; a first number of adjacent data points located within a neighborhood of the current data point is counted.
In one embodiment, the processor, when executing the computer program, further performs the steps of: taking the candidate noise points as seed points; inquiring each adjacent data point corresponding to the seed point according to the point cloud attribute of the point cloud data; calculating the curvature between the seed point and each corresponding adjacent data point; when the curvature is smaller than a preset curvature threshold value, determining adjacent data points as growable data points; and taking the data points capable of growing as seed points to continue the region growing until the region growing is stopped to obtain a target growing region.
In one embodiment, a computer-readable storage medium is provided, having a computer program stored thereon, which when executed by a processor, performs the steps of: acquiring point cloud data; the point cloud data is a set of data points obtained by scanning a road environment; determining the neighborhood of a current data point in the point cloud data; when the first number of the data points in the neighborhood of the current data point is smaller than a preset threshold value in a statistical manner, determining the current data point as a candidate noise point; performing region growth by taking the candidate noise points as seed points to obtain a target growth region; and when the second number of the data points in the target growing area is smaller than a preset threshold value through statistics, filtering the candidate noise points serving as noise points from the point cloud data.
In one embodiment, the computer program when executed by the processor further performs the steps of: acquiring weather environment data; inquiring an environment state identifier corresponding to the weather environment data in a preset list; and extracting a preset threshold corresponding to the inquired environment state identification from the preset list.
In one embodiment, the computer program when executed by the processor further performs the steps of: acquiring the distance from the current data point to a radar for emitting laser; when the distance is within a preset filtering distance interval, acquiring the horizontal angle resolution of the radar; calculating the adjacent radius of the current data point according to the horizontal angular resolution and the distance; and determining the neighborhood of the current data point according to the adjacent radius.
In one embodiment, the computer program when executed by the processor further performs the steps of: acquiring point cloud attributes of the point cloud data; determining a candidate noise point statistical mode corresponding to the acquired point cloud attribute; and counting the first number of data points in the neighborhood of the current data point according to the statistical mode of the candidate noise points.
In one embodiment, the computer program when executed by the processor further performs the steps of: when each data point in the point cloud data is determined to be an ordered data point according to the point cloud attributes, acquiring a data point sequence number of the current data point; inquiring adjacent data points adjacent to the data point serial number of the current data point; a first number of adjacent data points located within a neighborhood of the current data point is counted.
In one embodiment, the computer program when executed by the processor further performs the steps of: when each data point in the point cloud data is determined to be a disordered data point according to the point cloud attributes, performing voxel division on a point cloud space corresponding to the point cloud data to obtain a plurality of voxels; taking the voxel where the current data point is located and the data points in the adjacent voxels as the adjacent data points of the current data point; a first number of adjacent data points located within a neighborhood of the current data point is counted.
In one embodiment, the computer program when executed by the processor further performs the steps of: taking the candidate noise points as seed points; inquiring each adjacent data point corresponding to the seed point according to the point cloud attribute of the point cloud data; calculating the curvature between the seed point and each corresponding adjacent data point; when the curvature is smaller than a preset curvature threshold value, determining adjacent data points as growable data points; and taking the data points capable of growing as seed points to continue the region growing until the region growing is stopped to obtain a target growing region.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by hardware instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium used in the embodiments provided herein may include non-volatile and/or volatile memory, among others. Non-volatile memory can include read-only memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), Rambus Direct RAM (RDRAM), direct bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (10)

1. A method of point cloud filtering, the method comprising:
acquiring point cloud data; the point cloud data is a set of data points obtained by scanning a road environment;
determining a neighborhood of a current data point in the point cloud data;
when the first number of the data points in the neighborhood of the current data point is smaller than a preset threshold value, determining the current data point as a candidate noise point;
taking the candidate noise points as seed points to carry out region growth to obtain a target growth region;
and when the second number of the data points in the target growth area is smaller than the preset threshold value, filtering the candidate noise points serving as noise points from the point cloud data.
2. The method of claim 1, wherein prior to the acquiring point cloud data, further comprising:
acquiring weather environment data;
inquiring an environment state identification corresponding to the weather environment data in a preset list;
and extracting a preset threshold corresponding to the inquired environment state identification from the preset list.
3. The method of claim 1, wherein the determining the neighborhood of the current data point in the point cloud data comprises:
acquiring the distance from the current data point to a radar for transmitting laser;
when the distance is within a preset filtering distance interval, acquiring the horizontal angle resolution of the radar;
calculating the adjacent radius of the current data point according to the horizontal angle resolution, the distance and a preset radius calculation formula, wherein the preset radius calculation formula is Rd=Eh×(3.14÷π)×d,RdIs the adjacent radius of the current data point; ehIs the horizontal angular resolution of the radar; d is the distance from the current data point to the radar;
and determining the neighborhood of the current data point according to the adjacent radius.
4. The method of claim 1, further comprising:
acquiring point cloud attributes of the point cloud data;
determining a candidate noise point statistical mode corresponding to the acquired point cloud attribute;
and counting the first number of the data points in the neighborhood of the current data point according to the candidate noise point statistical mode.
5. The method of claim 4, wherein statistically counting the first number of data points in the neighborhood of the current data point according to the candidate noise point comprises:
when each data point in the point cloud data is determined to be an ordered data point according to the point cloud attributes, acquiring a data point sequence number of the current data point;
inquiring adjacent data points adjacent to the data point serial number of the current data point;
a first number of adjacent data points located within a neighborhood of the current data point is counted.
6. The method of claim 4, wherein statistically counting the first number of data points in the neighborhood of the current data point according to the candidate noise point comprises:
when each data point in the point cloud data is determined to be a disordered data point according to the point cloud attributes, performing voxel division on a point cloud space corresponding to the point cloud data to obtain a plurality of voxels;
taking the data points in the voxel where the current data point is located and the adjacent voxels as the adjacent data points of the current data point;
a first number of adjacent data points located within a neighborhood of the current data point is counted.
7. The method according to any one of claims 1 to 6, wherein performing region growing by using the candidate noise points as seed points to obtain a target growing region comprises:
taking the candidate noise point as a seed point;
inquiring each adjacent data point corresponding to the seed point according to the point cloud attribute of the point cloud data;
calculating the curvature between the seed point and each corresponding adjacent data point;
when the curvature is smaller than a preset curvature threshold value, determining the adjacent data points as growable data points;
and taking the data points capable of growing as seed points to continue the region growing until the region growing is stopped to obtain a target growing region.
8. A point cloud filtering apparatus, the apparatus comprising:
the point cloud acquisition module is used for acquiring point cloud data; the point cloud data is a set of data points obtained by scanning a road environment;
the neighborhood determining module is used for determining the neighborhood of the current data point in the point cloud data;
the candidate determining module is used for determining the current data point as a candidate noise point when the first number of the data points in the neighborhood of the current data point is smaller than a preset threshold value;
the region growing module is used for performing region growing by taking the candidate noise points as seed points to obtain a target growing region;
and the noise filtering module is used for filtering the candidate noise point serving as a noise point from the point cloud data when the second number of the data points in the target growth area is smaller than the preset threshold value.
9. The apparatus of claim 8, wherein the neighborhood determination module is further configured to:
acquiring the distance from the current data point to a radar for transmitting laser;
when the distance is within a preset filtering distance interval, acquiring the horizontal angle resolution of the radar;
calculating the adjacent radius of the current data point according to the horizontal angle resolution, the distance and a preset radius calculation formula, wherein the preset radius calculation formula is Rd=Eh×(3.14÷π)×d,RdIs the adjacent radius of the current data point; ehIs the horizontal angular resolution of the radar; d is the distance from the current data point to the radar;
and determining the neighborhood of the current data point according to the adjacent radius.
10. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the steps of the method of any of claims 1 to 7 are implemented when the computer program is executed by the processor.
CN201910270650.0A 2019-04-04 2019-04-04 Point cloud filtering method and device, computer equipment and storage medium Active CN110109142B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910270650.0A CN110109142B (en) 2019-04-04 2019-04-04 Point cloud filtering method and device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910270650.0A CN110109142B (en) 2019-04-04 2019-04-04 Point cloud filtering method and device, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN110109142A CN110109142A (en) 2019-08-09
CN110109142B true CN110109142B (en) 2021-04-02

Family

ID=67485180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910270650.0A Active CN110109142B (en) 2019-04-04 2019-04-04 Point cloud filtering method and device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN110109142B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110515054B (en) * 2019-08-23 2021-07-23 斯坦德机器人(深圳)有限公司 Filtering method and device, electronic equipment and computer storage medium
CN112912756A (en) * 2019-09-17 2021-06-04 深圳市大疆创新科技有限公司 Point cloud noise filtering method, distance measuring device, system, storage medium and mobile platform
CN110568454A (en) * 2019-09-27 2019-12-13 驭势科技(北京)有限公司 Method and system for sensing weather conditions
CN110927742A (en) * 2019-11-19 2020-03-27 杭州飞步科技有限公司 Obstacle tracking method, device, equipment and storage medium
CN111190169A (en) * 2019-12-31 2020-05-22 智车优行科技(北京)有限公司 Radar data filtering method and device, electronic device and storage medium
CN111275810A (en) * 2020-01-17 2020-06-12 五邑大学 K nearest neighbor point cloud filtering method and device based on image processing and storage medium

Citations (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103542868A (en) * 2013-11-05 2014-01-29 武汉海达数云技术有限公司 Automatic removing method of vehicle-mounted laser point cloud noisy point based on angle and intensity
CN103559689A (en) * 2013-11-01 2014-02-05 浙江工业大学 Removal method for point cloud noise points
CN103679655A (en) * 2013-12-02 2014-03-26 河海大学 LiDAR point cloud filter method based on gradient and area growth
CN103824270A (en) * 2013-09-25 2014-05-28 浙江树人大学 Rapid disperse three-dimensional point cloud filtering method
CN103853840A (en) * 2014-03-18 2014-06-11 中国矿业大学(北京) Filter method of nonuniform unorganized-point cloud data
CN104240251A (en) * 2014-09-17 2014-12-24 中国测绘科学研究院 Multi-scale point cloud noise detection method based on density analysis
CN105719249A (en) * 2016-01-15 2016-06-29 吉林大学 Three-dimensional grid-based airborne LiDAR point cloud denoising method
CN106157309A (en) * 2016-07-04 2016-11-23 南京大学 A kind of airborne LiDAR ground point cloud filtering method based on virtual Seed Points
CN106340061A (en) * 2016-08-31 2017-01-18 中测新图(北京)遥感技术有限责任公司 Mountain area point cloud filtering method
CN106529469A (en) * 2016-11-08 2017-03-22 华北水利水电大学 Unmanned aerial vehicle airborne LiDAR point cloud filtering method based on adaptive gradient
CN106570835A (en) * 2016-11-02 2017-04-19 北京控制工程研究所 Point cloud simplifying and filtering method
CN107123164A (en) * 2017-03-14 2017-09-01 华南理工大学 Keep the three-dimensional rebuilding method and system of sharp features
CN107392875A (en) * 2017-08-01 2017-11-24 长安大学 A kind of cloud data denoising method based on the division of k neighbours domain
WO2017214595A1 (en) * 2016-06-10 2017-12-14 The Board Of Trustees Of The Leland Systems and methods for performing three-dimensional semantic parsing of indoor spaces
CN107818550A (en) * 2017-10-27 2018-03-20 广东电网有限责任公司机巡作业中心 A kind of point cloud top portion noise elimination method based on LiDAR
CN108021844A (en) * 2016-10-31 2018-05-11 高德软件有限公司 A kind of road edge recognition methods and device
CN108256577A (en) * 2018-01-18 2018-07-06 东南大学 A kind of barrier clustering method based on multi-line laser radar
CN108564525A (en) * 2018-03-31 2018-09-21 上海大学 A kind of 3D point cloud 2Dization data processing method based on multi-line laser radar
CN108876744A (en) * 2018-06-27 2018-11-23 大连理工大学 A kind of large scale point cloud noise denoising method based on region segmentation
CN109035224A (en) * 2018-07-11 2018-12-18 哈尔滨工程大学 A kind of Technique of Subsea Pipeline Inspection and three-dimensional rebuilding method based on multi-beam point cloud
CN109188459A (en) * 2018-08-29 2019-01-11 东南大学 A kind of small obstacle recognition method in ramp based on multi-line laser radar
CN109299739A (en) * 2018-09-26 2019-02-01 速度时空信息科技股份有限公司 The method that vehicle-mounted laser point cloud is filtered based on the surface fitting of normal vector
RO133214A2 (en) * 2017-07-21 2019-03-29 Universitatea Tehnică "Gheorghe Asachi" Din Iaşi Innovative method for point cloud filtration, segmentation and classification to derive digital terrain models () based on airborne laser scanner () data

Patent Citations (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103824270A (en) * 2013-09-25 2014-05-28 浙江树人大学 Rapid disperse three-dimensional point cloud filtering method
CN103559689A (en) * 2013-11-01 2014-02-05 浙江工业大学 Removal method for point cloud noise points
CN103542868A (en) * 2013-11-05 2014-01-29 武汉海达数云技术有限公司 Automatic removing method of vehicle-mounted laser point cloud noisy point based on angle and intensity
CN103679655A (en) * 2013-12-02 2014-03-26 河海大学 LiDAR point cloud filter method based on gradient and area growth
CN103853840A (en) * 2014-03-18 2014-06-11 中国矿业大学(北京) Filter method of nonuniform unorganized-point cloud data
CN104240251A (en) * 2014-09-17 2014-12-24 中国测绘科学研究院 Multi-scale point cloud noise detection method based on density analysis
CN105719249A (en) * 2016-01-15 2016-06-29 吉林大学 Three-dimensional grid-based airborne LiDAR point cloud denoising method
WO2017214595A1 (en) * 2016-06-10 2017-12-14 The Board Of Trustees Of The Leland Systems and methods for performing three-dimensional semantic parsing of indoor spaces
CN106157309A (en) * 2016-07-04 2016-11-23 南京大学 A kind of airborne LiDAR ground point cloud filtering method based on virtual Seed Points
CN106340061A (en) * 2016-08-31 2017-01-18 中测新图(北京)遥感技术有限责任公司 Mountain area point cloud filtering method
CN108021844A (en) * 2016-10-31 2018-05-11 高德软件有限公司 A kind of road edge recognition methods and device
CN106570835A (en) * 2016-11-02 2017-04-19 北京控制工程研究所 Point cloud simplifying and filtering method
CN106529469A (en) * 2016-11-08 2017-03-22 华北水利水电大学 Unmanned aerial vehicle airborne LiDAR point cloud filtering method based on adaptive gradient
CN107123164A (en) * 2017-03-14 2017-09-01 华南理工大学 Keep the three-dimensional rebuilding method and system of sharp features
RO133214A2 (en) * 2017-07-21 2019-03-29 Universitatea Tehnică "Gheorghe Asachi" Din Iaşi Innovative method for point cloud filtration, segmentation and classification to derive digital terrain models () based on airborne laser scanner () data
CN107392875A (en) * 2017-08-01 2017-11-24 长安大学 A kind of cloud data denoising method based on the division of k neighbours domain
CN107818550A (en) * 2017-10-27 2018-03-20 广东电网有限责任公司机巡作业中心 A kind of point cloud top portion noise elimination method based on LiDAR
CN108256577A (en) * 2018-01-18 2018-07-06 东南大学 A kind of barrier clustering method based on multi-line laser radar
CN108564525A (en) * 2018-03-31 2018-09-21 上海大学 A kind of 3D point cloud 2Dization data processing method based on multi-line laser radar
CN108876744A (en) * 2018-06-27 2018-11-23 大连理工大学 A kind of large scale point cloud noise denoising method based on region segmentation
CN109035224A (en) * 2018-07-11 2018-12-18 哈尔滨工程大学 A kind of Technique of Subsea Pipeline Inspection and three-dimensional rebuilding method based on multi-beam point cloud
CN109188459A (en) * 2018-08-29 2019-01-11 东南大学 A kind of small obstacle recognition method in ramp based on multi-line laser radar
CN109299739A (en) * 2018-09-26 2019-02-01 速度时空信息科技股份有限公司 The method that vehicle-mounted laser point cloud is filtered based on the surface fitting of normal vector

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Density-based Denoising of Point Cloud;Faisal Zaman, et al;《Springer》;20160217;p1-9 *
基于三角网光滑规则的LiDAR点云噪声剔除算法;韩文军等;《测绘科学》;20121130;第153-154页 *
基于区域生长的LIDAR点云数据滤波;成晓倩等;《国土资源遥感》;20081215;第6-8页 *

Also Published As

Publication number Publication date
CN110109142A (en) 2019-08-09

Similar Documents

Publication Publication Date Title
CN110109142B (en) Point cloud filtering method and device, computer equipment and storage medium
KR102062680B1 (en) Laser point cloud based urban road recognition method, device, storage medium and device
WO2018068653A1 (en) Point cloud data processing method and apparatus, and storage medium
US8487991B2 (en) Clear path detection using a vanishing point
Lee et al. Stereo vision-based vehicle detection using a road feature and disparity histogram
WO2020043041A1 (en) Method and device for point cloud data partitioning, storage medium, and electronic device
US20190340447A1 (en) Curb detection by analysis of reflection images
EP2960829A2 (en) Lane boundary estimation device and lane boundary estimation method
Ding et al. Fast lane detection based on bird’s eye view and improved random sample consensus algorithm
John et al. RVNet: Deep sensor fusion of monocular camera and radar for image-based obstacle detection in challenging environments
CN107909036B (en) Road detection method and device based on disparity map
CN111798698A (en) Method and device for determining front target vehicle and vehicle
CN107358168B (en) Method and device for detecting vehicle travelable area and vehicle-mounted electronic equipment
CN111368639A (en) Vehicle lane crossing determination method, vehicle lane crossing determination device, computer device, and storage medium
Kakegawa et al. Road surface segmentation based on vertically local disparity histogram for stereo camera
CN108416305B (en) Pose estimation method and device for continuous road segmentation object and terminal
CN111582054A (en) Point cloud data processing method and device and obstacle detection method and device
CN110110678B (en) Method and apparatus for determining road boundary, storage medium, and electronic apparatus
CN112055172A (en) Method and device for processing monitoring video and storage medium
CN111144228A (en) Obstacle identification method based on 3D point cloud data and computer equipment
CN111483463A (en) Vehicle-mounted unit and road side unit based pre-judging overtaking method and storage medium
CN110971826A (en) Video front-end monitoring device and method
CN107392209B (en) Device and method for extracting line segments
Keertheeswaran et al. Vehicle Identification Using Automotive LIDAR VLP-16 and Deep Learning
KR102283053B1 (en) Real-Time Multi-Class Multi-Object Tracking Method Using Image Based Object Detection Information

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant