Travelable area generation method, movable platform, and storage medium
By convolving and filtering the initial drivable region, accurate candidate drivable regions are generated, solving the problem of inaccurate drivable region generation in the prior art and improving the safety of the mobile platform.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SZ ZHUOYU TECH CO LTD
- Filing Date
- 2021-07-21
- Publication Date
- 2026-07-24
AI Technical Summary
Existing methods for generating drivable areas are not effective at filtering boundary noise in drivable areas, resulting in low accuracy of the generated drivable areas. This affects the safe operation of mobile platforms and may even cause safety accidents.
By convolving and filtering the grid in the initial drivable area, unreasonable areas are eliminated, candidate drivable areas are generated, and the target drivable area is generated based on the target curb point and the candidate drivable areas.
This greatly improves the accuracy of the drivable area, ensuring that there are no unreasonable areas within the target drivable area, and enhances the safe operation capability of the mobile platform.
Smart Images

Figure CN117677976B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of environmental perception, and in particular to a method for generating drivable areas, a mobile platform, and a storage medium. Background Technology
[0002] Free space refers to the area in the environment in which a mobile platform can safely explore and reach. Especially in unstructured or partially unstructured scenarios, free space can effectively guide the subsequent actions of the mobile platform, preventing accidents and ensuring its safe operation. However, existing free space generation methods are not effective at filtering boundary noise, resulting in low accuracy and potentially affecting the safe operation of the mobile platform, even causing accidents. Summary of the Invention
[0003] Based on this, embodiments of this application provide a method for generating drivable areas, a mobile platform, and a storage medium, aiming to improve the accuracy of drivable areas.
[0004] In a first aspect, embodiments of this application provide a method for generating a drivable area, including:
[0005] Acquire point cloud data and generate an initial drivable area based on the point cloud data;
[0006] Convolution is performed on the grid in the initial drivable area to obtain the convolution result;
[0007] Based on the convolution result, the grid in the initial drivable area is filtered to obtain candidate drivable areas;
[0008] Multiple target road edge points are identified in the point cloud data, and a target drivable area is generated based on the multiple target road edge points and the candidate drivable area.
[0009] Secondly, embodiments of this application also provide a mobile platform, which includes a radar device, a memory, and a processor;
[0010] The radar device is used to collect point cloud data;
[0011] The memory is used to store computer programs;
[0012] The processor is configured to execute the computer program and, when executing the computer program, perform the following steps:
[0013] Acquire point cloud data and generate an initial drivable area based on the point cloud data;
[0014] Convolution is performed on the grid in the initial drivable area to obtain the convolution result;
[0015] Based on the convolution result, the grid in the initial drivable area is filtered to obtain candidate drivable areas;
[0016] Multiple target road edge points are identified in the point cloud data, and a target drivable area is generated based on the multiple target road edge points and the candidate drivable area.
[0017] Thirdly, embodiments of this application also provide a computer-readable storage medium storing a computer program that, when executed by a processor, causes the processor to implement the steps of the drivable area generation method as described above.
[0018] This application provides a method for generating a drivable area, a mobile platform, and a storage medium. The method involves convolving the grid in an initial drivable area to obtain a convolution result, then filtering the grid in the initial drivable area based on the convolution result to eliminate unreasonable areas within the initial drivable area and obtain accurate candidate drivable areas. Finally, multiple target road edge points in the point cloud data are determined, and a target drivable area is generated based on the multiple target road edge points and the candidate drivable area, ensuring that there are no unreasonable areas within the target drivable area and greatly improving the accuracy of the drivable area.
[0019] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description
[0020] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0021] Figure 1 This is a schematic diagram of a scenario in which the drivable area generation method provided in the embodiments of this application is implemented;
[0022] Figure 2 This is a schematic flowchart illustrating the steps of a method for generating a drivable area provided in an embodiment of this application;
[0023] Figure 3 This is a schematic diagram of the initial drivable area in an embodiment of this application;
[0024] Figure 4 This is a schematic diagram of a candidate drivable area in an embodiment of this application;
[0025] Figure 5 This is a schematic diagram of a point cloud segment in an embodiment of this application;
[0026] Figure 6 This is another schematic diagram of a point cloud segment in an embodiment of this application;
[0027] Figure 7 This is another schematic diagram of a point cloud segment in an embodiment of this application;
[0028] Figure 8 This is a schematic diagram of the target drivable area in an embodiment of this application;
[0029] Figure 9 This is a schematic block diagram of the structure of a movable platform provided in an embodiment of this application. Detailed Implementation
[0030] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0031] The flowchart shown in the attached diagram is for illustrative purposes only and does not necessarily include all content and operations / steps, nor does it necessarily have to be performed in the order described. For example, some operations / steps can be broken down, combined, or partially merged, so the actual execution order may change depending on the actual situation.
[0032] The following detailed description of some embodiments of this application is provided in conjunction with the accompanying drawings. Unless otherwise specified, the following embodiments and features can be combined with each other.
[0033] Free space refers to the area in the environment in which a mobile platform can safely explore and reach. Especially in unstructured or partially unstructured scenarios, free space can effectively guide the subsequent actions of the mobile platform, preventing accidents and ensuring its safe operation. However, existing free space generation methods are not effective at filtering boundary noise, resulting in low accuracy and potentially affecting the safe operation of the mobile platform, even causing accidents.
[0034] To address the aforementioned issues, this application provides a method for generating drivable areas, a mobile platform, and a storage medium. This method involves convolving a grid within an initial drivable area to obtain a convolution result, then filtering the grid within the initial drivable area based on this convolution result. This eliminates unreasonable areas within the initial drivable area, yielding accurate candidate drivable areas. Finally, multiple target roadside points in the point cloud data are determined, and a target drivable area is generated based on these target roadside points and the candidate drivable area. This ensures that no unreasonable areas exist within the target drivable area, significantly improving the accuracy of the drivable area.
[0035] The drivable area generation method provided in this application can be applied to mobile platforms, control terminals, servers, etc. Mobile platforms may include, but are not limited to, drones, mobile robots, and autonomous vehicles. Mobile robots may include robotic vacuum cleaners, food delivery robots, and unmanned vehicles. Please refer to... Figure 1 , Figure 1 This is a schematic diagram of a scenario implementing the drivable area generation method provided in the embodiments of this application. For example... Figure 1 As shown, the autonomous vehicle 100 includes a vehicle body 110, a power system 120, and a radar device 130. The power system 120 and the radar device 130 are mounted on the vehicle body 110. The power system 120 is used to provide mobility for the autonomous vehicle 100, and the radar device 130 is used to collect point cloud data of the environment in which the autonomous vehicle 100 is located.
[0036] The radar device 130 may include lidar or millimeter-wave radar. Optionally, the autonomous vehicle 100 may include one or more radar devices 130. Taking lidar as an example, lidar can detect the position, velocity, and other information of objects in an environment by emitting a laser beam, thereby obtaining a laser point cloud. Lidar can emit a detection signal into the environment including the target object, and then receive the reflected signal reflected back from the target object. Based on the reflected detection signal, the received reflected signal, and data parameters such as the transmission and reception interval, a laser point cloud is obtained. The laser point cloud may include N points, and each point may include x, y, z coordinates and parameters such as intensity (reflectivity).
[0037] In one embodiment, the autonomous vehicle 100 further includes a driving control system ( Figure 1(Not shown), the driving control system may include one or more processors and a sensing system. The sensing system is used to measure the pose information, motion information and surrounding environment information of the autonomous vehicle 100. The one or more processors are used to acquire point cloud data and generate an initial drivable area based on the point cloud data; convolve the grids in the initial drivable area to obtain the convolution result; filter the grids in the initial drivable area based on the convolution result to obtain candidate drivable areas; determine multiple target road edge points in the point cloud data, and generate a target drivable area based on the multiple target road edge points and the candidate drivable areas.
[0038] The following will combine Figure 1 The following scenario provides a detailed description of the drivable area generation method provided by the embodiments of this application. It should be noted that... Figure 1 The scenarios described are only used to explain the drivable area generation method provided in the embodiments of this application, but do not constitute a limitation on the application scenarios of the drivable area generation method provided in the embodiments of this application.
[0039] Please see Figure 2 , Figure 2 This is a schematic flowchart illustrating the steps of a method for generating a drivable area according to an embodiment of this application. This method can be applied to a mobile platform to generate drivable areas.
[0040] like Figure 2 As shown, the method for generating a drivable area may include steps S101 to S104.
[0041] Step S101: Obtain point cloud data and generate an initial drivable area based on the point cloud data.
[0042] This involves acquiring point cloud data collected by a radar device within a mobile platform. This radar device may include lidar or millimeter-wave radar, and the mobile platform may include one or more radar devices.
[0043] In one embodiment, obstacle point cloud data is extracted from point cloud data; the angle and distance between each obstacle point in the obstacle point cloud data and the movable platform are determined; and an initial drivable area is generated based on the angle and distance between each obstacle point and the movable platform.
[0044] The angles and distances between each obstacle point in the obstacle point cloud data and the movable platform can be determined using the ray casting method. This involves determining the current position of the movable platform in the obstacle point cloud data, using the current position of the movable platform as the origin, and casting rays at a preset angular resolution. The rays terminate at any obstacle point in the path. The set of ray angles θ and termination distances d can then be obtained as: FS = {θ...} i ,d iLet i = 1, 2, ..., n. Then, project the set of ray angles θ and cutoff distances d into a raster image, and mark the raster within the cutoff distance in each direction as True to obtain the initial dable area. Taking a horizontal ray as an example, the initial dable area generated with an angular resolution of 1° can be as follows: Figure 3 As shown, Figure 3 Each vertex of the polygon represents the endpoint of each ray.
[0045] For example, the method for extracting obstacle point cloud data from point cloud data can be as follows: The point cloud data is rasterized to obtain a raster map, and the height of the lowest point in the raster map is determined as the target height; points in the raster map whose height is less than or equal to the target height are determined as candidate ground points; a plane fitting is performed based on multiple candidate ground points to obtain a fitted plane, and the distance between each candidate ground point and the fitted plane is determined; obstacle point cloud data is extracted from the point cloud data based on the distance between each candidate ground point and the fitted plane. The plane fitting algorithm can be used to perform plane fitting through multiple candidate ground points to obtain the fitted plane. The plane fitting algorithm can include the Ransac algorithm and the least squares method.
[0046] For example, the method for extracting obstacle point cloud data from point cloud data based on the distance between each candidate ground point and the fitting plane can be as follows: Mark target ground points in the point cloud data according to the distance between each candidate ground point and the fitting plane, and then remove each target ground point from the point cloud data, thereby obtaining obstacle point cloud data. The marked target ground points include candidate ground points whose distance to the fitting plane is less than or equal to a preset distance threshold. The preset distance threshold can be set based on actual conditions, and this embodiment does not specifically limit it.
[0047] It is understood that, in addition to using a planar fitting method, the ground point cloud and obstacle point cloud can also be segmented by using the height difference of the point clouds, or by using a semantic segmentation model based on deep learning. Of course, other methods can also be used to segment the ground point cloud and obstacle point cloud, and this application does not specifically limit these methods.
[0048] Step S102: Convolve the grid in the initial drivable area to obtain the convolution result.
[0049] For example, a target convolution operator is obtained, which is determined based on a first dimension of the movable platform and a second dimension of the grid in the initial drivable area. The grid in the initial drivable area is convolved according to the target convolution operator to obtain the convolution result. For example, if the length and width of the movable platform are L and W, and the size of the grid in the initial drivable area is x, then the length and width of the target convolution operator can be expressed as: l = L / x, w = W / x. It should be noted that, to reduce computational complexity, the elements at each edge position of the target convolution operator can be set to 1, while the elements at all other positions (excluding the edge positions) can be set to 0.
[0050] Step S103: Based on the convolution result, filter the grid in the initial drivable area to obtain candidate drivable areas.
[0051] For example, in the initial drivable region, grids whose convolution results do not meet preset conditions are deleted, while grids whose convolution results meet the preset conditions are retained to obtain candidate drivable regions. The preset conditions are determined based on the number of edge positions in the target convolution operator. For instance, if the target convolution operator includes K edge positions, and each edge position has an element of 1, while the elements at the remaining positions are all 0, then the preset conditions include that the difference between the convolution result and K is less than or equal to a preset difference threshold.
[0052] It should be noted that by convolving the grid cells in the initial drivable area to obtain the convolution result, and then filtering the grid cells in the initial drivable area based on the convolution result, unreasonable grid cells in the initial drivable area can be eliminated. For applications based on... Figure 3 After convolution and filtering of the initial drivable region obtained from the ray diagram shown, the following can be obtained: Figure 4 The candidate drivable area 10 is shown.
[0053] Step S104: Determine multiple target road edge points in the point cloud data, and generate a target drivable area based on the multiple target road edge points and candidate drivable areas.
[0054] In one embodiment, multiple consecutive point cloud segments are selected in the point cloud data along the scanning path of the radar device in the mobile platform; the point cloud distance ratio, point cloud height difference, and point cloud angle of the point cloud segments are determined, wherein the point cloud angle includes the angle between the first side line segment and the second side line segment passing through the center point of the point cloud segment; and multiple target roadside points are determined from the multiple point cloud segments based on the point cloud distance ratio, point cloud height difference, and point cloud angle.
[0055] For example, selecting multiple consecutive point cloud segments in point cloud data along the scanning path of the radar device in the mobile platform can be achieved by setting multiple sliding windows of different widths; for each sliding window, moving the sliding window along the scanning path of the radar device in the mobile platform within the point cloud data, and selecting point cloud segments by the sliding window, thus obtaining multiple consecutive point cloud segments. For instance, if sliding window A has a width of 7 points and sliding window B has a width of 9 points, multiple consecutive point cloud segments containing 7 points can be selected using sliding window A, and multiple consecutive point cloud segments containing 9 points can be selected using sliding window B.
[0056] Because radar devices with irregular scanning paths may have turns or reversals, and the point cloud data collected by radar devices often shows significant depth differences at the target edge, using only the point cloud height difference and point cloud angle of point cloud segments to determine the target road edge point will result in many erroneous road edge points, failing to guarantee the accuracy of the road edge points. However, by comprehensively considering the point cloud distance ratio, point cloud height difference, and point cloud angle of point cloud segments to determine the target road edge point, the above problems can be solved, thereby improving the accuracy of the road edge points and facilitating the accurate generation of drivable areas in the subsequent process.
[0057] For example, the point cloud height difference includes the maximum height difference between the center point of a point cloud segment and the remaining points within the segment, the first side line segment passes through the center point and a side point within the point cloud segment located in a first direction from the center point, and the second side line segment passes through the center point and a side point within the point cloud segment located in a second direction from the center point. Figure 5 As shown, the point cloud segment selected by the sliding window 20 includes 7 points. The maximum height difference between the center point 21 and the other points in the point cloud segment is h. The point cloud angle is the angle β between the first side line segment 22 and the second side line segment 23.
[0058] For example, a first side point adjacent to the center point of a point cloud segment and a second side point adjacent to the center point are determined, and a first distance between the first side point and the second side point is determined; a first boundary point and a second boundary point of the point cloud segment are determined, and a second distance between the first boundary point and the second boundary point is determined; based on the first distance and the second distance, the point cloud distance ratio of the point cloud segment is determined. Wherein, let the first distance be d1 and the second distance be d2, then the point cloud distance ratio of the point cloud segment is:
[0059]
[0060] For example, when the point cloud is at the edge of an object, the point cloud distance ratio r will increase due to the abrupt change in point cloud depth, such as... Figure 6As shown, the point cloud segment selected by the sliding window 30 includes 7 points. The distance d1 between the first side point 32 and the second measuring point 33 adjacent to the center point 31 is the first distance, and the distance d2 between the first boundary point 34 and the second boundary point 35 is the second distance. Therefore, the point cloud distance ratio r is d2 / d1.
[0061] For example, at points where the scan path turns or bends, the point cloud distance ratio r will be close to 1, and both the numerator and denominator will be small, such as... Figure 7 As shown, the point cloud segment selected by the sliding window 40 includes 7 points. The distance d1 between the first side point 42 and the second measuring point 43 adjacent to the center point 41 is the first distance, and the distance d2 between the first boundary point 44 and the second boundary point 45 is the second distance. Therefore, the point cloud distance ratio r is d2 / d1.
[0062] In one embodiment, a point cloud segment whose point cloud distance ratio, point cloud height difference, and point cloud angle satisfy preset curb point conditions is selected from multiple point cloud segments as a target point cloud segment; multiple target curb points are determined based on the multiple target point cloud segments. The preset curb point conditions include a point cloud distance ratio within a preset ratio range, a point cloud height difference within a preset height difference range, and a point cloud angle within a preset angle range. The preset ratio range, preset height difference range, and preset angle range can be set based on actual conditions, and this embodiment does not impose specific limitations on them.
[0063] For example, the method of determining multiple target curb points based on multiple target point cloud segments can be as follows: the center point within each target point cloud segment is determined as the first candidate curb point, and the angle between each first candidate curb point and the movable platform is determined; based on the angle between each first candidate curb point and the movable platform, the multiple first candidate curb points are divided into curb point groups corresponding to each of the preset multiple angle intervals; the candidate curb point closest to the movable platform in the curb point group is determined as the target curb point, thereby obtaining multiple target curb points.
[0064] Since curbs are generally symmetrically distributed on both sides of the road, that is, when there are no obstacles on the road surface, the curb should be the "protrusion" that is closest to the radar device (movable platform) connecting to the ground plane. Therefore, the solution in this embodiment can eliminate most of the false curb points outside the road surface, ensuring the accuracy of the curb points and facilitating the accurate generation of the drivable area in the future.
[0065] The preset angle ranges can be set based on actual conditions, and this embodiment does not impose specific limitations on them. For example, the first candidate curb points are curb point A, curb point B, curb point C, curb point D, curb point E, and curb point F. The preset angle intervals include angle interval a: 0°-120°, angle interval b: 121°-240°, and angle interval c: 241°-360°. The angles between curb points A, B, C, D, E, and F and the movable platform are 33°, 129°, 50°, 220°, 300°, and 270°, respectively. Therefore, curb points A and C are divided into the first curb point group corresponding to angle interval a: 0°-120°, curb points B and D are divided into the second curb point group corresponding to angle interval b: 121°-240°, and curb points E and F are divided into the third curb point group corresponding to angle interval c: 241°-360°.
[0066] In one embodiment, the candidate curb point closest to the movable platform in the curb point group is determined as the second candidate curb point. Based on multiple second candidate curb points, a preset probability occupancy grid map is updated, where the grid occupancy probability in the probability occupancy grid map represents the probability that the corresponding point is a curb point. Points in the updated probability occupancy grid map whose grid occupancy probability is greater than a preset probability threshold are determined as target curb points. The preset probability threshold can be set based on actual conditions, and this embodiment does not specifically limit it. Updating the probability occupancy grid map using highly accurate second candidate curb points, and then determining the points in the updated probability occupancy grid map whose grid occupancy probability is greater than the preset probability threshold as target curb points, can further improve the accuracy of curb point determination.
[0067] For example, the preset probability occupancy grid map can be updated based on multiple second candidate road edge points by: determining a first position in the probability occupancy grid map where a second candidate road edge point exists and a second position where no second candidate road edge point exists; for a point at the first position, increasing the grid occupancy probability of that point, and for a point at the second position, decreasing the grid occupancy probability of that point.
[0068] In one embodiment, a target roadside trajectory is generated based on multiple target roadside points; a target drivable area is generated based on the target roadside trajectory and candidate drivable areas. Figure 8 As shown, the target roadside trajectories generated based on multiple target roadside points are roadside trajectory 52 and roadside trajectory 53, and the target drivable area 51 is located between roadside trajectory 52 and roadside trajectory 53.
[0069] For example, curve fitting is performed on multiple target roadside points to obtain candidate roadside trajectories, and the first parameter of the curve equation of the candidate roadside trajectory is determined. The second parameter of the curve equation of historical roadside trajectories is obtained, where the historical roadside trajectories are determined based on roadside points in the previous frame of point cloud data. Based on the second and first parameters, parameter adjustment values are determined, and the candidate roadside trajectories are adjusted according to these adjustment values to obtain the target roadside trajectory. The roadside trajectory fitting algorithm can include RANSAC, least squares, and Hough transform algorithms, etc. By combining the parameters of the curve equations of historical and candidate roadside trajectories to adjust the candidate roadside trajectories, the stability and continuity of the roadside trajectories can be guaranteed, improving their accuracy.
[0070] The drivable area generation method provided in the above embodiments convolves the grids in the initial drivable area to obtain the convolution result, and then filters the grids in the initial drivable area based on the convolution result. This can eliminate unreasonable areas in the initial drivable area and obtain accurate candidate drivable areas. Finally, multiple target road edge points in the point cloud data are determined, and a target drivable area is generated based on the multiple target road edge points and the candidate drivable area. This ensures that there are no unreasonable areas in the target drivable area and greatly improves the accuracy of the drivable area.
[0071] Please see Figure 9 , Figure 9 This is a schematic block diagram of the structure of a movable platform provided in an embodiment of this application.
[0072] like Figure 9 As shown, the mobile platform 300 includes a radar device 310, a processor 320, and a memory 330. The radar device 310, the processor 320, and the memory 330 are connected via a bus 340, such as an I2C (Inter-integrated Circuit) bus.
[0073] Specifically, the radar device 310 can be a lidar or a millimeter-wave radar, etc., and the radar device 310 is used to collect point cloud data.
[0074] Specifically, the processor 320 can be a microcontroller unit (MCU), a central processing unit (CPU), or a digital signal processor (DSP), etc.
[0075] Specifically, the memory 330 can be a Flash chip, a read-only memory (ROM) disk, an optical disk, a USB flash drive, or a portable hard drive, etc.
[0076] The processor 320 is used to run a computer program stored in the memory 330, and performs the following steps when executing the computer program:
[0077] Acquire point cloud data and generate an initial drivable area based on the point cloud data;
[0078] Convolution is performed on the grid in the initial drivable area to obtain the convolution result;
[0079] Based on the convolution result, the grid in the initial drivable area is filtered to obtain candidate drivable areas;
[0080] Multiple target road edge points are identified in the point cloud data, and a target drivable area is generated based on the multiple target road edge points and the candidate drivable area.
[0081] Optionally, when the processor performs convolution on the grid in the initial drivable area to obtain the convolution result, it is configured to:
[0082] Obtain a target convolution operator, wherein the target convolution operator is determined based on a first dimension of the movable platform and a second dimension of the grid;
[0083] The grid in the initial drivable area is convolved according to the target convolution operator to obtain the convolution result.
[0084] Optionally, when the processor filters the grid in the initial drivable region based on the convolution result to obtain candidate drivable regions, it is configured to:
[0085] Delete the grids in the initial drivable area whose convolution results do not meet the preset conditions, and retain the grids whose convolution results meet the preset conditions to obtain candidate drivable areas.
[0086] Optionally, when determining multiple target road edge points in the point cloud data, the processor is configured to:
[0087] Multiple consecutive point cloud segments are selected in the point cloud data along the scanning path of the radar device;
[0088] Determine the point cloud distance ratio, point cloud height difference, and point cloud angle of the point cloud segment, wherein the point cloud angle includes the angle between the first side line segment and the second side line segment passing through the center point of the point cloud segment;
[0089] Based on the point cloud distance ratio, point cloud height difference, and point cloud angle, multiple target roadside points are determined from multiple point cloud segments.
[0090] Optionally, when determining the point cloud distance ratio of the point cloud segment, the processor is configured to:
[0091] Determine a first side point adjacent to the center point of the point cloud segment and a second side point adjacent to the center point, and determine a first distance between the first side point and the second side point;
[0092] Determine the first boundary point and the second boundary point of the point cloud segment, and determine the second distance between the first boundary point and the second boundary point;
[0093] The point cloud distance ratio of the point cloud segment is determined based on the first distance and the second distance.
[0094] Optionally, the point cloud height difference includes the maximum height difference between the center point of the point cloud segment and the remaining points within the point cloud segment.
[0095] Optionally, the first side line segment passes through the center point and a side point in the point cloud segment located in a first direction from the center point, and the second side line segment passes through the center point and a side point in the point cloud segment located in a second direction from the center point.
[0096] Optionally, when the processor determines multiple target roadside points from multiple point cloud segments based on the point cloud distance ratio, point cloud height difference, and point cloud angle, it is configured to:
[0097] Select a point cloud segment from among the multiple point cloud segments whose point cloud distance ratio, point cloud height difference and point cloud included angle satisfy the preset roadside point conditions as the target point cloud segment;
[0098] Multiple target roadside points are determined based on multiple target point cloud segments.
[0099] Optionally, the preset curb point conditions include the point cloud distance ratio being within a preset ratio range, the point cloud height difference being within a preset height difference range, and the point cloud angle being within a preset angle range.
[0100] Optionally, when the processor determines multiple target roadside points based on multiple target point cloud segments, it is configured to:
[0101] The center point within each target point cloud segment is determined as the first candidate road edge point, and the angle between each first candidate road edge point and the movable platform is determined.
[0102] Based on the angle, the multiple first candidate curb points are divided into curb point groups corresponding to each of the preset multiple angle intervals;
[0103] The candidate curb point closest to the movable platform in the curb point group is determined as the target curb point.
[0104] Optionally, the processor is further configured to implement the following steps:
[0105] The candidate curb point closest to the movable platform in the curb point group is determined as the second candidate curb point;
[0106] Based on multiple second candidate roadside points, update the preset probability occupancy grid map, wherein the grid occupancy probability in the probability occupancy grid map is used to represent the probability that the corresponding point is a roadside point;
[0107] Points in the updated probability-occupied grid map whose grid occupancy probability is greater than a preset probability threshold are identified as target roadside points.
[0108] Optionally, when generating a target drivable area based on the plurality of target curb points and the candidate drivable areas, the processor is configured to:
[0109] Generate a target roadside trajectory based on multiple target roadside points;
[0110] A target drivable area is generated based on the target roadside trajectory and the candidate drivable areas.
[0111] Optionally, when the processor generates a target road edge trajectory based on the plurality of target road edge points, it is configured to:
[0112] Curve fitting is performed on multiple target roadside points to obtain candidate roadside trajectories, and the first parameter of the curve equation of the candidate roadside trajectory is determined.
[0113] Obtain the second parameter of the curve equation of the historical road edge trajectory, wherein the historical road edge trajectory is determined based on the road edge points in the previous frame of point cloud data;
[0114] Based on the second parameter and the first parameter, a parameter adjustment value is determined, and the candidate roadside trajectory is adjusted according to the parameter adjustment value to obtain the target roadside trajectory.
[0115] Optionally, when generating the initial drivable area based on the point cloud data, the processor is configured to:
[0116] Extract obstacle point cloud data from the point cloud data;
[0117] Determine the angle and distance between each obstacle point in the obstacle point cloud data and the movable platform;
[0118] An initial drivable area is generated based on the angle and distance between each obstacle point and the movable platform.
[0119] Optionally, when the processor extracts obstacle point cloud data from the point cloud data, it is configured to:
[0120] The point cloud data is rasterized to obtain a raster map, and the height of the lowest point in the raster map is determined as the target height.
[0121] Points in the grid map whose height is less than or equal to the target height are identified as candidate ground points;
[0122] A plane fitting is performed based on multiple candidate ground points to obtain a fitted plane, and the distance between each candidate ground point and the fitted plane is determined.
[0123] Obstacle point cloud data is extracted from the point cloud data based on the distance between each candidate ground point and the fitted plane.
[0124] It should be noted that those skilled in the art will understand that, for the sake of convenience and brevity, the specific working process of the mobile platform described above can be referred to the corresponding process in the aforementioned embodiments of the drivable area generation method, and will not be repeated here.
[0125] This application also provides a computer-readable storage medium storing a computer program, the computer program including program instructions, and a processor executing the program instructions to implement the steps of the drivable area generation method provided in the above embodiments.
[0126] The computer-readable storage medium can be an internal storage unit of the portable platform described in any of the foregoing embodiments, such as the hard disk or memory of the portable platform. The computer-readable storage medium can also be an external storage device of the portable platform, such as a plug-in hard disk, SmartMedia Card (SMC), Secure Digital (SD) card, or Flash Card equipped on the portable platform.
[0127] It should be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of the application. As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms unless the context clearly indicates otherwise.
[0128] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.
[0129] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A method for generating a drivable area, characterized in that, include: Acquire point cloud data and generate an initial drivable area based on the point cloud data; Convolution is performed on the grid in the initial drivable area to obtain the convolution result; Based on the convolution result, the grid in the initial drivable area is filtered to obtain candidate drivable areas; Multiple target road edge points are identified in the point cloud data, and a target drivable area is generated based on the multiple target road edge points and the candidate drivable area.
2. The method for generating a drivable area according to claim 1, characterized in that, The step of convolving the grid in the initial drivable area to obtain the convolution result includes: Obtain a target convolution operator, wherein the target convolution operator is determined based on a first dimension of the movable platform and a second dimension of the grid; The grid in the initial drivable area is convolved according to the target convolution operator to obtain the convolution result.
3. The method for generating a drivable area according to claim 1, characterized in that, The step of filtering the grid in the initial drivable region based on the convolution result to obtain candidate drivable regions includes: Delete the grids in the initial drivable area whose convolution results do not meet the preset conditions, and retain the grids whose convolution results meet the preset conditions to obtain candidate drivable areas.
4. The method for generating a drivable area according to claim 1, characterized in that, The determination of multiple target road edge points in the point cloud data includes: Multiple consecutive point cloud segments are selected in the point cloud data along the scanning path of the radar device in the mobile platform. The method involves determining the point cloud distance ratio, point cloud height difference, and point cloud angle of a point cloud segment, wherein the point cloud angle includes the angle between a first side line segment and a second side line segment passing through the center point of the point cloud segment; determining the point cloud distance ratio of the point cloud segment includes: determining a first side point adjacent to the center point of the point cloud segment and a second side point adjacent to the center point, and determining a first distance between the first side point and the second side point; determining a first boundary point and a second boundary point of the point cloud segment, and determining a second distance between the first boundary point and the second boundary point; determining the point cloud distance ratio of the point cloud segment based on the first distance and the second distance; the point cloud height difference includes the maximum height difference between the center point of the point cloud segment and the remaining points within the point cloud segment; the first side line segment passes through the center point and a side point within the point cloud segment located in a first direction from the center point, and the second side line segment passes through the center point and a side point within the point cloud segment located in a second direction from the center point; Based on the point cloud distance ratio, point cloud height difference, and point cloud angle, multiple target roadside points are determined from multiple point cloud segments.
5. The method for generating a drivable area according to claim 4, characterized in that, The step of determining multiple target roadside points from multiple point cloud segments based on the point cloud distance ratio, point cloud height difference, and point cloud angle includes: Select a point cloud segment from among the multiple point cloud segments whose point cloud distance ratio, point cloud height difference and point cloud included angle satisfy the preset roadside point conditions as the target point cloud segment; Multiple target roadside points are determined based on multiple target point cloud segments.
6. The method for generating a drivable area according to claim 5, characterized in that, The preset curb point conditions include the point cloud distance ratio being within a preset ratio range, the point cloud height difference being within a preset height difference range, and the point cloud angle being within a preset angle range.
7. The method for generating a drivable area according to claim 5, characterized in that, The step of determining multiple target roadside points based on multiple target point cloud segments includes: The center point within each target point cloud segment is determined as the first candidate road edge point, and the angle between each first candidate road edge point and the movable platform is determined. Based on the angle, the multiple first candidate curb points are divided into curb point groups corresponding to each of the preset multiple angle intervals; The candidate curb point closest to the movable platform in the curb point group is determined as the target curb point.
8. The method for generating a drivable area according to claim 7, characterized in that, The method further includes: The candidate curb point closest to the movable platform in the curb point group is determined as the second candidate curb point; Based on multiple second candidate roadside points, update the preset probability occupancy grid map, wherein the grid occupancy probability in the probability occupancy grid map is used to represent the probability that the corresponding point is a roadside point; Points in the updated probability-occupied grid map whose grid occupancy probability is greater than a preset probability threshold are identified as target roadside points.
9. The method for generating a drivable area according to any one of claims 1-8, characterized in that, The step of generating a target drivable area based on multiple target curb points and candidate drivable areas includes: Generate a target roadside trajectory based on multiple target roadside points; A target drivable area is generated based on the target roadside trajectory and the candidate drivable areas.
10. The method for generating a drivable area according to claim 9, characterized in that, The step of generating a target road edge trajectory based on multiple target road edge points includes: Curve fitting is performed on multiple target roadside points to obtain candidate roadside trajectories, and the first parameter of the curve equation of the candidate roadside trajectory is determined. Obtain the second parameter of the curve equation of the historical road edge trajectory, wherein the historical road edge trajectory is determined based on the road edge points in the previous frame of point cloud data; Based on the second parameter and the first parameter, a parameter adjustment value is determined, and the candidate roadside trajectory is adjusted according to the parameter adjustment value to obtain the target roadside trajectory.
11. The method for generating a drivable area according to any one of claims 1-8, characterized in that, The step of generating an initial drivable area based on the point cloud data includes: Extract obstacle point cloud data from the point cloud data; Determine the angle and distance between each obstacle point in the obstacle point cloud data and the movable platform; An initial drivable area is generated based on the angle and distance between each obstacle point and the movable platform.
12. The method for generating a drivable area according to claim 11, characterized in that, The step of extracting obstacle point cloud data from the point cloud data includes: The point cloud data is rasterized to obtain a raster map, and the height of the lowest point in the raster map is determined as the target height. Points in the grid map whose height is less than or equal to the target height are identified as candidate ground points; A plane fitting is performed based on multiple candidate ground points to obtain a fitted plane, and the distance between each candidate ground point and the fitted plane is determined. Obstacle point cloud data is extracted from the point cloud data based on the distance between each candidate ground point and the fitted plane.
13. A mobile platform, characterized in that, The mobile platform includes a radar device, a memory, and a processor; The radar device is used to collect point cloud data; The memory is used to store computer programs; The processor is configured to execute the computer program and, when executing the computer program, perform the following steps: Acquire point cloud data and generate an initial drivable area based on the point cloud data; Convolution is performed on the grid in the initial drivable area to obtain the convolution result; Based on the convolution result, the grid in the initial drivable area is filtered to obtain candidate drivable areas; Multiple target road edge points are identified in the point cloud data, and a target drivable area is generated based on the multiple target road edge points and the candidate drivable area.
14. The mobile platform according to claim 13, characterized in that, When the processor performs convolution on the grid in the initial drivable area to obtain the convolution result, it is used to implement: Obtain a target convolution operator, wherein the target convolution operator is determined based on a first dimension of the movable platform and a second dimension of the grid; The grid in the initial drivable area is convolved according to the target convolution operator to obtain the convolution result.
15. The mobile platform according to claim 13, characterized in that, When the processor filters the grid in the initial drivable region based on the convolution result to obtain candidate drivable regions, it is configured to: Delete the grids in the initial drivable area whose convolution results do not meet the preset conditions, and retain the grids whose convolution results meet the preset conditions to obtain candidate drivable areas.
16. The mobile platform according to claim 13, characterized in that, When determining multiple target road edge points in the point cloud data, the processor is used to: Multiple consecutive point cloud segments are selected in the point cloud data along the scanning path of the radar device; The method involves determining the point cloud distance ratio, point cloud height difference, and point cloud angle of a point cloud segment, wherein the point cloud angle includes the angle between a first side line segment and a second side line segment passing through the center point of the point cloud segment; determining the point cloud distance ratio of the point cloud segment includes: determining a first side point adjacent to the center point of the point cloud segment and a second side point adjacent to the center point, and determining a first distance between the first side point and the second side point; determining a first boundary point and a second boundary point of the point cloud segment, and determining a second distance between the first boundary point and the second boundary point; determining the point cloud distance ratio of the point cloud segment based on the first distance and the second distance; the point cloud height difference includes the maximum height difference between the center point of the point cloud segment and the remaining points within the point cloud segment; the first side line segment passes through the center point and a side point within the point cloud segment located in a first direction from the center point, and the second side line segment passes through the center point and a side point within the point cloud segment located in a second direction from the center point; Based on the point cloud distance ratio, point cloud height difference, and point cloud angle, multiple target roadside points are determined from multiple point cloud segments.
17. The mobile platform according to claim 16, characterized in that, When the processor determines multiple target roadside points from multiple point cloud segments based on the point cloud distance ratio, point cloud height difference, and point cloud angle, it is configured to: Select a point cloud segment from among the multiple point cloud segments whose point cloud distance ratio, point cloud height difference and point cloud included angle satisfy the preset roadside point conditions as the target point cloud segment; Multiple target roadside points are determined based on multiple target point cloud segments.
18. The mobile platform according to claim 17, characterized in that, The preset curb point conditions include the point cloud distance ratio being within a preset ratio range, the point cloud height difference being within a preset height difference range, and the point cloud angle being within a preset angle range.
19. The mobile platform according to claim 17, characterized in that, When the processor determines multiple target roadside points based on multiple target point cloud segments, it is used to: The center point within each target point cloud segment is determined as the first candidate road edge point, and the angle between each first candidate road edge point and the movable platform is determined. Based on the angle, the multiple first candidate curb points are divided into curb point groups corresponding to each of the preset multiple angle intervals; The candidate curb point closest to the movable platform in the curb point group is determined as the target curb point.
20. The mobile platform according to claim 19, characterized in that, The processor is also used to perform the following steps: The candidate curb point closest to the movable platform in the curb point group is determined as the second candidate curb point; Based on multiple second candidate roadside points, update the preset probability occupancy grid map, wherein the grid occupancy probability in the probability occupancy grid map is used to represent the probability that the corresponding point is a roadside point; Points in the updated probability-occupied grid map whose grid occupancy probability is greater than a preset probability threshold are identified as target roadside points.
21. The mobile platform according to any one of claims 13-20, characterized in that, When the processor generates a target drivable area based on multiple target curb points and candidate drivable areas, it is configured to: Generate a target roadside trajectory based on multiple target roadside points; A target drivable area is generated based on the target roadside trajectory and the candidate drivable areas.
22. The mobile platform according to claim 21, characterized in that, When the processor generates a target road edge trajectory based on multiple target road edge points, it is used to: Curve fitting is performed on multiple target roadside points to obtain candidate roadside trajectories, and the first parameter of the curve equation of the candidate roadside trajectory is determined. Obtain the second parameter of the curve equation of the historical road edge trajectory, wherein the historical road edge trajectory is determined based on the road edge points in the previous frame of point cloud data; Based on the second parameter and the first parameter, a parameter adjustment value is determined, and the candidate roadside trajectory is adjusted according to the parameter adjustment value to obtain the target roadside trajectory.
23. The mobile platform according to any one of claims 13-20, characterized in that, When the processor generates an initial drivable area based on the point cloud data, it is used to: Extract obstacle point cloud data from the point cloud data; Determine the angle and distance between each obstacle point in the obstacle point cloud data and the movable platform; An initial drivable area is generated based on the angle and distance between each obstacle point and the movable platform.
24. The mobile platform according to claim 23, characterized in that, When the processor extracts obstacle point cloud data from the point cloud data, it is used to: The point cloud data is rasterized to obtain a raster map, and the height of the lowest point in the raster map is determined as the target height. Points in the grid map whose height is less than or equal to the target height are identified as candidate ground points; A plane fitting is performed based on multiple candidate ground points to obtain a fitted plane, and the distance between each candidate ground point and the fitted plane is determined. Obstacle point cloud data is extracted from the point cloud data based on the distance between each candidate ground point and the fitted plane.
25. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, causes the processor to implement the drivable area generation method according to any one of claims 1-12.