Point cloud segmentation method, device and equipment in non-flat road surface environment and medium

By using voxelization and translation of voxel clouds, terrain point clouds are generated to distinguish between passable areas and obstacle areas, solving the problem of missegmentation in traditional methods and improving the point cloud segmentation accuracy and navigation accuracy in non-flat road environments.

CN122312657APending Publication Date: 2026-06-30SHENZHEN INST OF ADVANCED TECH CHINESE ACAD OF SCI
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SHENZHEN INST OF ADVANCED TECH CHINESE ACAD OF SCI
Filing Date
2024-12-27
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

Traditional point cloud segmentation methods for uneven road surfaces are prone to missegmentation in complex terrains, failing to accurately distinguish information such as roads, obstacles, and slopes, thus affecting the accuracy of autonomous driving and robot navigation.

Method used

Voxelization is performed on acquired point cloud data to generate a voxel cloud. Under preset conditions, the voxel cloud is translated to be located in the central area of ​​the device. After updating the voxel cloud, the height value of the target point is added to the array of the target voxel to generate a terrain point cloud to distinguish between passable areas and obstacle areas, and to identify obstacles of the step type.

Benefits of technology

It significantly improves the point cloud segmentation accuracy in uneven road environments, provides more accurate map base data, and enhances the adaptability and task completion efficiency of autonomous driving and robot navigation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122312657A_ABST
    Figure CN122312657A_ABST
Patent Text Reader

Abstract

This application relates to the field of point cloud segmentation technology, disclosing a method, apparatus, device, and medium for point cloud segmentation in non-flat road environments. The method includes: acquiring point cloud data and obtaining a voxel cloud based on voxelization of the point cloud data; when a preset update condition is met, translating the voxel cloud so that the voxel cloud is located in the central region of the target device, and updating the translated voxel cloud; adding the height value of the target point to the array corresponding to each target voxel of the target point; generating a terrain point cloud based on each array and the updated voxel cloud; generating a traversable area contour based on the traversable area, and identifying step-type obstacles based on the traversable area contour. This invention can segment terrain point clouds of traversable areas and obstacle areas using point cloud data, and identify step-type obstacles, thereby significantly improving the point cloud segmentation accuracy in complex, non-flat road environments.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of point cloud segmentation technology, and in particular to a point cloud segmentation method, apparatus, equipment and medium for non-flat road surface environments. Background Technology

[0002] With the continuous development of autonomous vehicles, robots, and surveying technologies, more and more equipment is being applied to complex terrain scenarios, such as uneven roads, mountains, and potholes. However, due to the dramatic changes in terrain elevation in these scenarios, traditional point cloud segmentation methods based on global elevation information are prone to missegmentation in uneven terrain, failing to accurately distinguish information such as roads, obstacles, and slopes. Therefore, efficient and accurate map segmentation in complex terrain has become a significant challenge in point cloud processing technology.

[0003] Currently, traditional point cloud segmentation methods for uneven road environments typically rely on the flatness assumption, assuming the ground is level and using height thresholds to distinguish between ground and non-ground points. However, this method's effectiveness drops significantly when encountering uneven terrain, failing to effectively handle scenarios where height varies with terrain. In uneven road environments, the complexity and diversity of terrain render traditional absolute height-based segmentation methods ineffective, often leading to misjudgments of obstacles and terrain features, thus impacting subsequent navigation and path planning. Summary of the Invention

[0004] Based on this, it is necessary to address the poor performance of existing point cloud segmentation for obstacle recognition, and propose a point cloud segmentation method, device, equipment, and medium for non-flat road environments.

[0005] Firstly, a point cloud segmentation method is provided for non-flat road surface environments, the method comprising:

[0006] Point cloud data is acquired, and voxelization is performed on the point cloud data to obtain a voxel cloud, wherein the point cloud data is collected by the target device from the surrounding environment;

[0007] When the preset update conditions are met, the voxel cloud is shifted so that it is located in the central area of ​​the target device, and the shifted voxel cloud is updated.

[0008] The height value of the target point is added to the array corresponding to each target voxel of the target point. The target point refers to the point in the updated voxel cloud that meets the preset height value range. The target voxel includes the voxel where the target point is located and the voxels corresponding to the left front, front, right front, left, right, left rear, rear, and right rear of the voxel where the target point is located.

[0009] Based on each of the arrays and the updated voxel cloud, a terrain point cloud is generated, wherein the terrain point cloud includes passable areas and obstacle areas.

[0010] Based on the passable area, a passable area outline is generated, and step-type obstacles are identified based on the passable area outline.

[0011] Secondly, a point cloud segmentation device is provided for non-flat road surface environments, the device comprising:

[0012] An acquisition module is used to acquire point cloud data and, based on the voxelization of the point cloud data, obtain a voxel cloud, wherein the point cloud data is collected by the target device from the surrounding environment;

[0013] The update module is used to translate the voxel cloud when the preset update conditions are met, so that the voxel cloud is located in the central area of ​​the target device, and update the translated voxel cloud.

[0014] The array module is used to add the height value of the target point to the array corresponding to each target voxel of the target point. The target point refers to the point in the updated voxel cloud that meets the preset height value range. The target voxel includes the voxel where the target point is located and the voxels corresponding to the left front, front, right front, left, right, left rear, rear, and right rear of the voxel where the target point is located.

[0015] A generation module is used to generate a terrain point cloud based on each of the arrays and the updated voxel cloud, wherein the terrain point cloud includes passable areas and obstacle areas.

[0016] The identification module is used to generate a passable area outline based on the passable area, and to identify step-type obstacles based on the passable area outline.

[0017] Thirdly, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the point cloud segmentation method described above for non-flat road environments.

[0018] Fourthly, a computer-readable storage medium is provided, the computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the point cloud segmentation method described above for non-flat road environments.

[0019] The point cloud segmentation method proposed in this invention for non-flat road environments acquires point cloud data and voxelizes it to obtain a voxel cloud. The point cloud data is collected by the target device from its surrounding environment. Then, when a preset update condition is met, the voxel cloud is translated so that it is located in the central region of the target device, and the translated voxel cloud is updated. Next, the height value of the target point is added to the array corresponding to each target voxel. The target point refers to a point in the updated voxel cloud that meets the preset height value range. The target voxels include the voxel containing the target point and the voxels corresponding to its left front, front, right front, left, right, left rear, rear, and right rear sides. Based on the arrays and the updated voxel cloud, a terrain point cloud is generated, including passable areas and obstacle areas. Finally, a passable area contour is generated based on the passable area contour, and step-type obstacles are identified based on this contour. This invention can segment terrain point clouds into passable areas and obstacle areas using point cloud data, and identify obstacles of the step type, thereby significantly improving the point cloud segmentation accuracy in complex and uneven road environments. It also provides more accurate map base data for applications such as autonomous driving, surveying and mapping, and robot navigation. Through this segmentation strategy, more accurate data support can be provided for subsequent path planning and decision-making, thereby improving adaptability in complex environments and task completion efficiency. Attached Figure Description

[0020] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0021] in:

[0022] Figure 1 This is an application environment diagram of a point cloud segmentation method in a non-flat road environment in one embodiment;

[0023] Figure 2 This is a flowchart of a point cloud segmentation method in a non-flat road environment in one embodiment;

[0024] Figure 3 This is a structural block diagram of a point cloud segmentation device in a non-flat road environment in one embodiment.

[0025] Figure 4 This is a structural block diagram of a computer device in one embodiment;

[0026] Figure 5 This is a structural block diagram of a computer device in another embodiment. Detailed Implementation

[0027] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the terminology used herein in the specification of the application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application; the terms "comprising" and "having," and any variations thereof, in the specification, claims, and foregoing drawings of this application, are intended to cover non-exclusive inclusion. The terms "first," "second," etc., in the specification, claims, or foregoing drawings of this application are used to distinguish different objects, not to describe a particular order.

[0028] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0029] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0030] The point cloud segmentation method for non-flat road environments provided in this invention can be applied to, for example... Figure 1In the application environment, client 110 communicates with server 120 via the network. Server 120 can receive point cloud data through client 110 and perform voxelization on the point cloud data to obtain a voxel cloud. The point cloud data is collected by the target device from the surrounding environment. When a preset update condition is met, the voxel cloud is translated so that it is located in the central area of ​​the target device, and the translated voxel cloud is updated. Then, the height value of the target point is added to the array corresponding to each target voxel of the target point. The target point refers to the point in the updated voxel cloud that meets the preset height value range. The target voxel includes the voxel where the target point is located and the voxels corresponding to the left front, front, right front, left, right, left rear, rear, and right rear of the target point voxel. Based on the arrays and the updated voxel cloud, a terrain point cloud is generated. The terrain point cloud includes passable areas and obstacle areas. Finally, based on the passable areas, a passable area outline is generated, and step-type obstacles are identified based on the passable area outline. This invention can segment terrain point clouds into passable and obstacle areas using point cloud data, and identify step-type obstacles, thereby significantly improving the point cloud segmentation accuracy in complex, uneven environments with uneven road surfaces. This provides more accurate map data for applications such as autonomous driving, surveying, and robot navigation. This segmentation strategy provides more precise data support for subsequent path planning and decision-making, thus improving adaptability in complex environments and task completion efficiency. The client 110 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, and portable wearable devices. The server 120 can be implemented using a standalone server or a server cluster consisting of multiple servers. The invention will be described in detail below through specific embodiments.

[0031] Please see Figure 2 As shown, Figure 2 A schematic flowchart of a point cloud segmentation method for non-flat road environments provided by an embodiment of the present invention includes the following steps:

[0032] Step S101: Acquire point cloud data and voxelize the point cloud data to obtain a voxel cloud, wherein the point cloud data is collected by the target device from the surrounding environment;

[0033] The target device can be a smart vehicle, a smart robot, or other similar equipment.

[0034] In this embodiment, all point cloud data around the vehicle or robot are collected in real time using LiDAR and processed as the basis for point cloud data.

[0035] As an example, the validity and expiration of point cloud data are determined by its arrival time and retention time. If the arriving point cloud data is verified to be valid and newly arrived, further processing and analysis are performed on the acquired point cloud data.

[0036] First, due to the massive size of the original point cloud data, it is necessary to transform the dense point cloud data into a more concise 3D mesh data, making subsequent processing more efficient and manageable. Therefore, a 3D mesh structure is generated based on the point cloud data through voxelization. The voxelization operation is implemented using the VoxelGrid filter in the PCL library. Specifically, the number of small cubic voxel grids into which the point cloud data is divided during voxelization is set, and the size of each voxel is determined by the set parameters. In the implementation, a default size of 0.05 meters is used as the voxel size, which is the downsampling resolution of the point cloud. After voxelization, each point in the point cloud is mapped to the nearest voxel grid. If multiple points fall within the same voxel, these points are merged into a representative point of that voxel. In this way, multiple points are merged into one point, thereby reducing the number of points in the point cloud. The set voxel size determines the "coarseness" of the downsampled point cloud; the larger the voxel size, the sparser the downsampled point cloud, and vice versa.

[0037] Step S102: When the preset update conditions are met, translate the voxel cloud so that the voxel cloud is located in the central area of ​​the target device, and update the translated voxel cloud;

[0038] In one embodiment, step S102 includes:

[0039] Step S1021: Based on the coordinates of the target device and the coordinates of the voxel cloud center, determine whether the voxel cloud has deviated. If it has deviated, the preset update conditions are met.

[0040] In this embodiment, the target device is adapted to the movement of the voxel cloud by translation, ensuring that the effective terrain data is always within the range that the vehicle can perceive, so that the surrounding terrain data rolls with the movement of the vehicle and keeps updated in real time.

[0041] Step S1022: Translate the voxel cloud so that it is located in the central region of the target device, and update the translated voxel cloud, wherein each point of the updated voxel cloud can be mapped to its corresponding voxel mesh.

[0042] For example, if the x-coordinate of the target device is greater than the x-coordinate of the terrain voxel center, it is considered to be to the left of the voxel cloud. The x-axis voxel offset in the voxel cloud is then updated, adding voxels from the right edge to the voxel cloud surrounding the target device, and removing some voxels from the left edge. This ensures that the target device is always at the exact center of the voxel cloud being processed.

[0043] After initial processing, the translated voxel cloud undergoes secondary processing based on the target device's location. First, the voxel index of each point in the translated voxel cloud is calculated in the target device's coordinate system, using the target device's X and Y positions as a reference. This ensures that each point in the translated voxel cloud is correctly mapped to the voxel mesh, especially when the point's coordinate offset is less than zero. Fine-tuning the voxel index ensures that all points in the translated voxel cloud can find their corresponding voxels within the valid voxel range.

[0044] Its index is calculated based on the following formula:

[0045]

[0046] Where intX and intY represent the voxel indices, pointx and pointy are the X and Y coordinates of the point cloud, vehiclex and vehicley are the positions of the target device, and terrainVoxelSize is the voxel size. The voxel grid position of the point cloud point is calculated by aligning the point cloud coordinates with the target device coordinates. pointx - vehiclex + terrainVoxelSize / 2 calculates the offset of the point relative to the target device in the X-axis direction. Adding terrainVoxelSize / 2 ensures that the voxel index calculation does not result in a negative value, as the voxel grid coordinate system starts from 0. This correction ensures that all point cloud data is correctly mapped to the voxel grid, preventing point cloud loss or incorrect mapping due to offset issues.

[0047] In one embodiment, when a preset update condition is met, the steps of translating the voxel cloud so that it is located in the central region of the target device and updating the translated voxel cloud include:

[0048] Step S1023: When the preset time is reached or the number of times the points in the voxel cloud are updated meets the preset number of times, the voxel cloud is translated so that the voxel cloud is located in the central area of ​​the target device, and the translated voxel cloud is updated.

[0049] In this embodiment, since the target device may not be constantly in motion, this step also processes data such as the number of point cloud updates and the preset time to avoid frequent processing of outdated voxels. For the number of updates, a threshold is set; a voxel is only processed when the number of point cloud updates within it reaches this threshold. This aims to improve processing efficiency and reduce unnecessary computation. Regarding the preset time, considering that point cloud data is gradually updated over time in practical applications, and the voxel's point cloud information changes as the sensor scan progresses, the processing of point cloud data needs to be controlled periodically by a preset time to prevent outdated data from affecting the results. This ensures that only the latest point cloud data is processed. If a voxel's data has not been updated for a long time, even if the number of points has not reached the update threshold, the voxel will still be processed after the preset time. This is to prevent the accumulation of outdated point cloud information and ensure that the system processes the latest valid data. The purpose of this step is to control the number of voxel updates and the timeout, processing only important or updatable voxel data and reducing unnecessary computation.

[0050] Step S103: Add the height value of the target point to the array corresponding to each target voxel of the target point. The target point refers to the point in the updated voxel cloud that meets the preset height value range. The target voxel includes the voxel where the target point is located and the voxels corresponding to the left front, front, right front, left, right, left rear, rear, and right rear of the voxel where the target point is located.

[0051] In this embodiment, the distance and positional relationship between each point in the updated voxel cloud and the vehicle are calculated to check whether the point meets the Z-axis range, i.e., whether the Z-value of the point is within a suitable range, to prevent invalid data that is too high or too low from affecting the calculation time. Points that meet the conditions are then used as target points for further calculation.

[0052] If the conditions are met, update the height value of the voxel containing the target point, and iterate through the nine voxels surrounding the target point: left front, front, right front, left, center, right, left rear, rear, and right rear. The height value of the target point is added to the corresponding voxel. An array stores the height information of each voxel. This step calculates the height of each target point by iterating through all point clouds and voxels, and adds it to the corresponding voxel data, providing a foundation for subsequent ground estimation.

[0053] Step S104: Generate a terrain point cloud based on each of the arrays and the updated voxel cloud, wherein the terrain point cloud includes passable areas and obstacle areas;

[0054] In one embodiment, the step of generating a terrain point cloud based on each of the arrays and the updated voxel cloud, wherein the terrain point cloud includes passable areas and obstacle areas, includes:

[0055] Step S1041: Determine the lowest height value within each voxel based on the array corresponding to each voxel in the updated voxel cloud, and use it as the ground height of the voxel.

[0056] In this embodiment, the minimum height value within each voxel is determined as the ground height of that voxel using its corresponding array. In fact, each voxel's array stores the height values ​​of all point cloud data within the surrounding nine voxel grids, with the lowest point selected as the ground height. In this step, due to limitations in the accuracy of the LiDAR, some noise points located below the ground may occasionally be detected during the scanning of the surrounding terrain. For these noise points, a sorting method is used to replace the lowest value; for example, a tenth of a percentile is selected as the lowest ground point, and a maximum rise height is limited to prevent misjudgment of obstacles.

[0057] Step S1042: Determine the point whose height difference within the voxel satisfies the preset generation conditions, and take it as the first point. Generate a terrain point cloud based on the height value of the first point and the preset obstacle threshold and passable area threshold. Here, the height difference refers to the difference between the height value of the point within the voxel and the ground height.

[0058] In this embodiment, after determining the ground height of each voxel, a final terrain point cloud is generated based on the height of each point and the calculated ground height, and the height difference of each point is recorded. Specifically, if the height difference of a point meets a set condition, such as not exceeding the vehicle height, then the point is designated as the first point, and the height difference of the first point is recorded. When the height difference of the first point is greater than a preset obstacle threshold, the first point is determined to be an obstacle, and it is marked and output as an obstacle. If the height difference of the first point is less than a passable area threshold, it is marked and output as a passable area. If the height difference of the first point is between the obstacle threshold and the passable area threshold, the distance from the obstacle point to the first point is calculated using a pre-stored array of obstacle points. If the distance is greater than a set threshold, the point is determined to be an outlier and is deleted.

[0059] Step S105: Based on the passable area, generate a passable area outline, and identify step-type obstacles based on the passable area outline.

[0060] In this embodiment, the identification and fall prevention of stairs and steps are crucial for small robots or vehicles. Compared to low obstacles, stairs and steps represent significant height differences, and a fall could cause substantial damage to the robot or vehicle. However, this is also challenging. Firstly, if identification is performed from bottom to top, the LiDAR will recognize it as an obstacle similar to a wall, making it relatively easy to identify. However, if identification is performed from top to bottom, the LiDAR's angle may cause gaps, resulting in two planes in the final point cloud data. This could lead to both planes being incorrectly identified as walkable sections, causing an accidental fall. Currently, fall prevention for steps is mostly applied to robotic vacuum cleaners. However, small robots and vehicles move much faster than robotic vacuum cleaners, and their overall shape is more like a flat circle, sometimes even partially suspended, making fall prevention easier. Robotic vacuum cleaners often use vertically downward LiDAR to determine if there is a height difference in front of them. If this method is directly applied, by the time the robot can detect the height difference, its speed may already be too fast to prevent a fall.

[0061] In one embodiment, the step of generating a passable area outline based on the passable area, and identifying step-type obstacles based on the passable area outline, includes:

[0062] Step S1051: Project the accessible area to obtain the outline of the accessible area;

[0063] First, for the passable area obtained in the previous step, edge extraction is performed. In this step, each point in the passable area is projected onto a two-dimensional plane to obtain projected points P. For each point P, all surrounding points are selected and iterated through, recording the maximum angle between two consecutive points. After iteration, the maximum angle is selected. Compared to the center point, the maximum angle of an edge point will be higher because there will be no points on one side of it. That is, if the angle is greater than the set angle threshold, the point can be identified as an edge point. This point is added to the contour set. After iterating through all points, the contour of the passable area can be obtained.

[0064] Step S1052: When the outline of the passable area presents two discontinuous passable planes, select the area where the obstacle is located based on the outline of the passable area, and determine whether there are point cloud features of the obstacle.

[0065] In this embodiment, in the area where the target device's lidar can scan the steps, there are two situations. One is that there are two discontinuous passable planes. In this case, the area where the obstacle is located is selected according to the outline of the passable area. It is determined whether there is an obstacle at the edge of the scanned passable area. If there is an obstacle, no further judgment is needed because the target device itself will also avoid it.

[0066] Step S1053: If the outline of the passable area does not have point cloud features of obstacles, and there is a height difference between the two passable planes, and there is no point cloud data between the two planes, then reduce the travel speed of the target device.

[0067] In this embodiment, if the outline of the passable area does not have point cloud features of obstacles, and there is a height difference between two planes, and there is no point cloud data between the two planes, then it is judged as a plane where a step is suspected to appear, and the speed is quickly reduced.

[0068] Step S1054: If the target device's direction of travel is close to the edge of the first passable plane, continue scanning the ground beyond the edge. If the second plane disappears, it is confirmed that there is a step-type obstacle in the outline of the passable area.

[0069] In this embodiment, if the target device's movement direction remains close to the edge of the first plane, the ground beyond the edge is scanned. Then, one scenario is that upon approaching the edge of the first passable plane, a slope is detected, indicating a simple slope that the target device can traverse. Another scenario is that the second passable plane disappears, leaving only the edge of the passable area. This indicates an encounter with a significant drop, such as a step or edge, requiring the edge's point cloud data to be added to the obstacle's point cloud data and treated as an obstacle to prevent a fall.

[0070] Please see Figure 3 As shown, in one embodiment, a point cloud segmentation device for non-flat road environments is provided, the device comprising:

[0071] The acquisition module 10 is used to acquire point cloud data and obtain a voxel cloud based on the voxelization of the point cloud data, wherein the point cloud data is collected by the target device from the surrounding environment.

[0072] The update module 20 is used to translate the voxel cloud when the preset update conditions are met, so that the voxel cloud is located in the central area of ​​the target device, and update the translated voxel cloud.

[0073] Array module 30 is used to add the height value of the target point to the array corresponding to each target voxel of the target point. The target point refers to the point in the updated voxel cloud that meets the preset height value range. The target voxel includes the voxel where the target point is located and the voxels corresponding to the left front, front, right front, left, right, left rear, rear, and right rear of the voxel where the target point is located.

[0074] The generation module 40 is used to generate a terrain point cloud based on each of the arrays and the updated voxel cloud, wherein the terrain point cloud includes passable areas and obstacle areas.

[0075] The identification module 50 is used to generate a passable area outline based on the passable area, and to identify step-type obstacles based on the passable area outline.

[0076] In one embodiment, the update module 20 is used to: determine whether the voxel cloud has deviated based on the coordinates of the target device and the coordinates of the voxel cloud center; if it has deviated, the preset update conditions are met.

[0077] The voxel cloud is translated so that it is located in the center region of the target device, and the translated voxel cloud is updated, wherein each point of the updated voxel cloud can be mapped to its corresponding voxel mesh.

[0078] In one embodiment, the update module 20 is configured to: when a preset time is reached or the number of updates of points in the voxel cloud meets the preset number, shift the voxel cloud so that the voxel cloud is located in the central area of ​​the target device, and update the shifted voxel cloud.

[0079] In one embodiment, the generation module 40 is used to: determine the lowest height value within a voxel based on the array corresponding to each voxel in the updated voxel cloud, and use it as the ground height of the voxel.

[0080] The point whose height difference within the voxel meets the preset generation conditions is identified as the first point. Based on the height value of the first point and the preset obstacle threshold and passable area threshold, a terrain point cloud is generated. Here, the height difference refers to the difference between the height value of the point within the voxel and the ground height.

[0081] In one embodiment, the identification module 50 is used to: project based on the passable area to obtain the outline of the passable area;

[0082] When the outline of the passable area presents two discontinuous passable planes, the area where the obstacle is located is selected based on the outline of the passable area to determine the point cloud features of whether the obstacle exists.

[0083] If the outline of the passable area does not contain point cloud features of obstacles, and there is a height difference between two passable planes, and there is no point cloud data between the two planes, then reduce the travel speed of the target device.

[0084] If the target device's direction of travel approaches the edge of the first passable plane, the ground beyond the edge is scanned. If the second plane disappears, it is confirmed that there is a step-type obstacle in the outline of the passable area.

[0085] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 4 As shown, the computer device includes a processor, memory, network interface, and database connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile and / or volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The network interface is used to communicate with external clients via a network connection. When the computer program is executed by the processor, it implements the functions or steps of a point cloud segmentation method for non-flat road environments on the server side.

[0086] In one embodiment, a computer device is provided, which may be a client, and its internal structure diagram may be as follows: Figure 5 As shown, the computer device includes a processor, memory, network interface, display screen, and input devices connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The network interface is used to communicate with an external server via a network connection. When executed by the processor, the computer program implements client-side functions or steps of a point cloud segmentation method for non-flat road environments.

[0087] In one embodiment, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, performs the following steps:

[0088] Acquire point cloud data;

[0089] Based on the voxelization of the point cloud data, a voxel cloud is obtained, wherein the point cloud data is collected by the target device from the surrounding environment;

[0090] When the preset update conditions are met, the voxel cloud is shifted so that it is located in the central area of ​​the target device, and the shifted voxel cloud is updated.

[0091] The height value of the target point is added to the array corresponding to each target voxel of the target point. The target point refers to the point in the updated voxel cloud that meets the preset height value range. The target voxel includes the voxel where the target point is located and the voxels corresponding to the left front, front, right front, left, right, left rear, rear, and right rear of the voxel where the target point is located. Based on the arrays and the updated voxel cloud, a terrain point cloud is generated. The terrain point cloud includes passable areas and obstacle areas.

[0092] Based on the passable area, a passable area outline is generated, and step-type obstacles are identified based on the passable area outline.

[0093] This invention can segment terrain point clouds into passable areas and obstacle areas using point cloud data, and identify obstacles of the step type, thereby significantly improving the point cloud segmentation accuracy in complex and uneven road environments. It also provides more accurate map base data for applications such as autonomous driving, surveying and mapping, and robot navigation. Through this segmentation strategy, more accurate data support can be provided for subsequent path planning and decision-making, thereby improving adaptability in complex environments and task completion efficiency.

[0094] In one embodiment, a computer-readable storage medium is provided that stores a computer program, which, when executed by a processor, performs the following steps:

[0095] Acquire point cloud data;

[0096] Based on the voxelization of the point cloud data, a voxel cloud is obtained, wherein the point cloud data is collected by the target device from the surrounding environment;

[0097] When the preset update conditions are met, the voxel cloud is shifted so that it is located in the central area of ​​the target device, and the shifted voxel cloud is updated.

[0098] The height value of the target point is added to the array corresponding to each target voxel of the target point. The target point refers to the point in the updated voxel cloud that meets the preset height value range. The target voxel includes the voxel where the target point is located and the voxels corresponding to the left front, front, right front, left, right, left rear, rear, and right rear of the voxel where the target point is located. Based on the arrays and the updated voxel cloud, a terrain point cloud is generated. The terrain point cloud includes passable areas and obstacle areas.

[0099] Based on the passable area, a passable area outline is generated, and step-type obstacles are identified based on the passable area outline.

[0100] This invention can segment terrain point clouds into passable areas and obstacle areas using point cloud data, and identify obstacles of the step type, thereby significantly improving the point cloud segmentation accuracy in complex and uneven road environments. It also provides more accurate map base data for applications such as autonomous driving, surveying and mapping, and robot navigation. Through this segmentation strategy, more accurate data support can be provided for subsequent path planning and decision-making, thereby improving adaptability in complex environments and task completion efficiency.

[0101] It should be noted that the functions or steps that can be implemented by the computer-readable storage medium or computer device described above can be referred to the relevant descriptions on the server side and client side in the foregoing method embodiments. To avoid repetition, they will not be described one by one here.

[0102] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAM bus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0103] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is used as an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above.

[0104] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.

Claims

1. A method for point cloud segmentation in a non-flat road surface environment, characterized in that, The point cloud segmentation method for non-flat road surface environments includes: Point cloud data is acquired, and voxelization is performed on the point cloud data to obtain a voxel cloud, wherein the point cloud data is collected by the target device from the surrounding environment; When the preset update conditions are met, the voxel cloud is shifted so that it is located in the central area of ​​the target device, and the shifted voxel cloud is updated. The height value of the target point is added to the array corresponding to each target voxel of the target point. The target point refers to the point in the updated voxel cloud that meets the preset height value range. The target voxel includes the voxel where the target point is located and the voxels corresponding to the left front, front, right front, left, right, left rear, rear, and right rear of the voxel where the target point is located. Based on each of the arrays and the updated voxel cloud, a terrain point cloud is generated, wherein the terrain point cloud includes passable areas and obstacle areas. Based on the passable area, a passable area outline is generated, and step-type obstacles are identified based on the passable area outline.

2. The point cloud segmentation method in a non-flat road surface environment according to claim 1, characterized in that, When preset update conditions are met, the steps of translating the voxel cloud to place it in the center region of the target device and updating the translated voxel cloud include: Based on the coordinates of the target device and the coordinates of the voxel cloud center, determine whether the voxel cloud has deviated. If it has deviated, the preset update conditions are met. The voxel cloud is translated so that it is located in the center region of the target device, and the translated voxel cloud is updated, wherein each point of the updated voxel cloud can be mapped to its corresponding voxel mesh.

3. The point cloud segmentation method in a non-flat road surface environment according to claim 2, characterized in that, When preset update conditions are met, the steps of translating the voxel cloud to place it in the center region of the target device and updating the translated voxel cloud include: When the preset time is reached or the number of times the points in the voxel cloud are updated meets the preset number of times, the voxel cloud is shifted so that it is located in the central area of ​​the target device, and the shifted voxel cloud is updated.

4. The point cloud segmentation method in a non-flat road surface environment according to claim 3, characterized in that, The step of generating a terrain point cloud based on each of the arrays and the updated voxel cloud, wherein the terrain point cloud includes passable areas and obstacle areas, includes: Based on the array corresponding to each voxel in the updated voxel cloud, determine the lowest height value within the voxel, which is used as the ground height of the voxel. The point whose height difference within the voxel meets the preset generation conditions is identified as the first point. Based on the height value of the first point and the preset obstacle threshold and passable area threshold, a terrain point cloud is generated. Here, the height difference refers to the difference between the height value of the point within the voxel and the ground height.

5. The point cloud segmentation method in a non-flat road surface environment according to claim 4, characterized in that, The steps of generating a passable area outline based on the passable area and identifying step-type obstacles based on the passable area outline include: Projecting the accessible area yields the outline of the accessible area. When the outline of the passable area presents two discontinuous passable planes, the area where the obstacle is located is selected based on the outline of the passable area to determine the point cloud features of whether the obstacle exists. If the outline of the passable area does not contain point cloud features of obstacles, and there is a height difference between two passable planes, and there is no point cloud data between the two planes, then reduce the travel speed of the target device. If the target device's direction of travel approaches the edge of the first passable plane, the ground beyond the edge is scanned. If the second plane disappears, it is confirmed that there is a step-type obstacle in the outline of the passable area. 6.A point cloud segmentation device in a non-flat road surface environment, characterized by, The point cloud segmentation device for non-flat road environments includes: An acquisition module is used to acquire point cloud data and, based on the voxelization of the point cloud data, obtain a voxel cloud, wherein the point cloud data is collected by the target device from the surrounding environment; The update module is used to translate the voxel cloud when the preset update conditions are met, so that the voxel cloud is located in the central area of ​​the target device, and update the translated voxel cloud. The array module is used to add the height value of the target point to the array corresponding to each target voxel of the target point. The target point refers to the point in the updated voxel cloud that meets the preset height value range. The target voxel includes the voxel where the target point is located and the voxels corresponding to the left front, front, right front, left, right, left rear, rear, and right rear of the voxel where the target point is located. A generation module is used to generate a terrain point cloud based on each of the arrays and the updated voxel cloud, wherein the terrain point cloud includes passable areas and obstacle areas. The identification module is used to generate a passable area outline based on the passable area, and to identify step-type obstacles based on the passable area outline.

7. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the point cloud segmentation method in a non-flat road environment as described in any one of claims 1 to 5.

8. A computer-readable storage medium storing a computer program, the computer-readable storage medium comprising: When the computer program is executed by the processor, it implements the steps of the point cloud segmentation method in a non-flat road environment as described in any one of claims 1 to 5.