A map generation method based on laser radar point cloud density analysis
By using a map generation method based on lidar point cloud density analysis, the problem of insufficient spatial information representation in unstructured environments is solved, thereby improving the navigation and path planning efficiency of intelligent mobile platforms.
Patent Information
- Application Number
- CN202411850295.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-16
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2044-12-16
AI Technical Summary
Existing technologies cannot fully represent spatial information in unstructured environments, which limits the navigation performance and efficiency of ground-based intelligent mobile platforms.
By establishing a map generation method based on lidar point cloud density analysis, a map model containing terrain geometry information and spatial density information is constructed. The model is stored using a three-dimensional voxel grid and the density normalization coefficient of the voxel grid is calculated by ray tracing. Combined with point cloud data processing, an elevation-like map is generated.
It improves the path planning capabilities and safety performance of intelligent mobile platforms in complex environments, and optimizes the accuracy of traffic area identification.
Smart Images

Figure CN119850854B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of positioning and navigation of ground intelligent mobile platforms, and specifically relates to a map generation method based on lidar point cloud density analysis. Background Technology
[0002] Real-time mapping is a key technology in ground-based intelligent mobile platform systems. Complete representation of spatial information helps improve the navigation performance and efficiency of intelligent mobile platforms. LiDAR, as a primary environmental perception sensor, plays a crucial role in real-time positioning and mapping methods within intelligent mobile platforms. In unstructured environments, the terrain is complex and varied, containing numerous obstacles and impassable areas. Maps designed for structured scenarios cannot fully represent the spatial information of unstructured environments. Therefore, a new solution—an efficient and accurate map creation method—is needed to improve the autonomous navigation and exploration performance of ground-based intelligent mobile platforms in unstructured environments.
[0003] Chinese patent application CN202210930007.8, entitled "A Method for Constructing a Navigation Cost Map for Unmanned Vehicles in Complex and Unknown Environments," discloses a method for constructing a navigation cost map for unmanned vehicles in complex and unknown environments. However, this method does not analyze spatial object density information, resulting in an incomplete environmental representation.
[0004] Chinese patent application CN202211523195.9, entitled "Method for Constructing Local Semantic Accessibility Probability Raster Map for Autonomous Mobile Robots," discloses a method for generating local semantic accessibility probability raster maps based on semantic segmentation and LiDAR. However, this method only constructs accessibility probability maps based on semantic segmentation and LiDAR, lacking spatial density analysis. Summary of the Invention
[0005] This invention aims to solve the problems of the prior art mentioned above. It proposes a map generation method based on lidar point cloud density analysis. The technical solution of this invention is as follows:
[0006] A map generation method based on lidar point cloud density analysis includes a modeling stage and a mapping stage, wherein...
[0007] The modeling phase is used to establish a map model and a radar density model. The map model contains the geometric and spatial density information of the terrain and is composed of a three-dimensional voxel mesh. Each voxel mesh contains attributes including coordinate information, voxel density, step height, terrain slope, and roughness. The radar density model is used to characterize the spatial density normalization coefficient of the point cloud. By setting the horizontal and vertical resolution of the lidar, the emission direction of each laser beam is calculated. Voxelization is performed with the radar coordinate origin, and the beam flux of each voxel mesh is calculated through ray tracing. The reciprocal of the beam flux is used as the voxel density normalization coefficient of that voxel mesh.
[0008] During the mapping phase, environmental data is collected in real time using LiDAR. The collected point cloud is preprocessed, and point clouds of the region of interest are obtained by using pass-through filtering and radius filtering. The point cloud data is then voxelized and mapped to the corresponding voxel grid. Map attributes are then calculated for each voxel grid to obtain attributes including voxel density, terrain slope, and roughness. Based on the above information, an elevation-like map is constructed.
[0009] Furthermore, the map model is as follows:
[0010] Map G is stored in a three-dimensional voxel grid, G = {T(i,j,k)|i∈[-N]} x N x ],j∈[-N y N y ], z∈[-H z H z ]}, T(i,j,k)=[i,j,k,roughness,step_height,density,slope]; where N x N y H z The x, y, and z axes represent the boundary range of the map, respectively. T represents the voxel grid, where i, j, and k represent the coordinate positions of the 3D voxel grid. Roughness is the roughness, step_height is the step height, density is the normalized density, and slope is the terrain slope.
[0011] Furthermore, the establishment of the radar density model specifically includes the following steps:
[0012] The radar density model is stored using a three-dimensional voxel grid.
[0013] G = {T(i,j,k)|i∈[-N]} x N x ],j∈[-N y N y ],k∈[-H z Hz ]}, T(i,j,k)=[i,j,k,ρ];
[0014] Where ρ is the voxel density normalization coefficient;
[0015] 3.1 First, set the beam distribution mode, with a set of different angles representing the perpendicular angle between each beam and the center line of the lidar: Vertical distribution angle It is derived from a set of preset values {θ1,θ2,...,θ i The fixed angle value selected in} represents the perpendicular angle between each laser beam and the center line, where i represents the number of laser beams; and the horizontal distribution angle θ k Then through θ k =k*Δθ, where k is the index of the horizontal angle, and its value ranges from 0 to 1. Δθ represents the angular interval between adjacent scan points in the horizontal direction, and then the beam direction is calculated.
[0016]
[0017] 3.2 The origin of the lidar coordinate system is at a point outside space (o) x ,o y ,o z ), and the direction of the light ray is determined by the vector d = (d x ,d y ,d z ) is given; any point (x) on the ray. t ,y t ,z t ) can be represented as
[0018]
[0019] Where t≥0 is the side length of the voxel mesh;
[0020] For each laser beam, starting from the lidar position, calculate the voxels passed along the beam direction sequentially, and record the number of times each voxel is traversed; voxel index (i t ,j t ,k t The formula for calculating ) is
[0021]
[0022] The voxel grid beam flux is T(i,j,k):
[0023]
[0024] Where δ is an indicator function, which is 1 when the condition is true and 0 otherwise; This is the density normalization coefficient. ray represents each laser beam, derived from the preceding d... k,i The direction of the beam is determined.
[0025] Furthermore, the construction of the elevation-like map includes the following steps:
[0026] 4.1 Use lidar equipment to collect point cloud data in the environment, and preprocess the data using pass-through filtering and radius filtering to retain the point cloud data of the region of interest;
[0027] 4.2 Perform voxelization processing, map the point cloud of the region of interest to the corresponding voxel grid, calculate the number of points in each voxel grid, multiply it by the density normalization coefficient of the corresponding voxel grid in the radar density model, and obtain the normalized density of the voxel.
[0028] 4.3 Using the origin of the lidar coordinate system, the voxel columns on the xoy plane are subdivided to obtain the step height between adjacent voxel columns;
[0029] 4.4 Classify each voxel into ground points and non-ground points, and then divide the entire map into multiple L×L local regions; perform plane fitting on each local region, the normal vector of the plane fitting represents the slope of the region, and the residual after fitting represents the roughness of the terrain.
[0030] 4.5 The calculated voxel normalized density, step height, terrain slope and roughness are combined to generate an elevation-like map.
[0031] Furthermore, step 4.2, the calculation of the normalized density of the voxel mesh, includes the following steps:
[0032] 5.1 Calculation of Actual Voxel Occupied Density
[0033] The process of voxelizing a point cloud involves mapping the acquired point cloud data onto a discrete voxel grid; point cloud (x i ,y i ,z i The formula for calculating the voxel index (i,j,k) and voxel size v is:
[0034]
[0035] Define a set of voxels V, where each voxel contains O(i,j,k) points.
[0036]
[0037] Where P represents the point cloud dataset, and δ is an indicator function. When the condition is true, the value of δ is 1, otherwise it is 0.
[0038] 5.2 Density Normalization
[0039] The normalized density D(i,j,k) is the actual occupied density O(i,j,k) of voxels (i,j,k) and the density normalization coefficient. The product;
[0040]
[0041] Furthermore, step 4.4 classifies each voxel into ground points and non-ground points, and then divides the entire map into multiple L×L local regions; plane fitting is performed on each local region, where the normal vector of the plane fitting represents the slope of the region, and the residual after fitting represents the roughness of the terrain. Specifically, this includes the following steps:
[0042] 6.1 Ground point selection
[0043] In map G, for a voxel column P(i,j) = {T(i,j,k)|k∈[-H]} z H z When the voxel mesh density is below the threshold: when density(T(i,j,k)) < ρ low T(i,j,k) represents a non-ground point; when the voxel height exceeds the threshold: Then P(i,j) is marked as a non-ground point, and the remaining voxels are marked as ground points; where ρ low Hth is the density threshold, Hth is the height threshold, density(T) represents the normalized density of voxel T, and z(T) represents the height value of voxel T; Hth z This indicates the elevation region of the map.
[0044] 6.2 Local Topographic Grid Division
[0045] The basic unit of the terrain grid is B. p,q B p,q ={T(i,j,k)∈G∣i∈[pL,(p+1)L],j∈[qL,(q+1)L]}, where Indicates the grid index in the x-direction. Indicates the grid index in the y-direction;
[0046] 6.3 Ground point drop sampling
[0047] Downsampling operation on local terrain mesh: B′ p,q =S(B p,q ,Δs), where Δs is the downsampling interval, in B p,q Select the set of downsampling points: B′ p,q ={T(i,j,k)∈B p,q |i=pL+mΔs,j=qL+nΔs}, where For row sampling index, For column sampling index; B′ p,q This indicates the local terrain after sampling.
[0048] 6.4 Plane Fitting
[0049] For each terrain grid B′ p,q set of ground points Let the equation of the plane be:
[0050] ax+by+cz+d=0#(7)
[0051] The least squares method is used to perform plane fitting, and the plane coefficients a, b, and d are obtained.
[0052] 6.5 Residual Calculation
[0053] The above calculations yield the plane coefficients a, b, and d; then the fitted residual R′ p,q That is
[0054]
[0055] It indicates the roughness of the ground surface.
[0056] An electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the program, implements the map generation method based on lidar point cloud density analysis as described in any one of claims 1 to 6.
[0057] A non-transitory computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements a map generation method based on lidar point cloud density analysis as described in any one of the claims.
[0058] A computer program product includes a computer program that, when executed by a processor, implements a map generation method based on lidar point cloud density analysis as described in any one of the claims.
[0059] The advantages and beneficial effects of this invention are as follows:
[0060] This invention proposes a map generation method based on lidar point cloud density analysis, aiming to overcome the limitations of existing maps in representing spatial information in complex environments and improve the effective path planning capabilities of ground-based intelligent mobile platforms. The core innovation of this invention lies in the accurate representation of spatial density information, achieved through establishing a lidar sensing model and density normalization processing. The specific implementation process includes: first, constructing a lidar sensing model by parametrically modeling the beam configuration, horizontal and vertical resolution; second, spatially discretizing the point cloud data using a voxelization method, and calculating the beam flux of each voxel grid using a ray tracing algorithm to establish a lidar density model; then, mapping the real-time acquired point cloud data to the corresponding voxels, calculating the voxel occupancy density and multiplying it by the normalized density coefficient to obtain a standardized spatial density representation. The map model of this invention not only includes normalized density information but also integrates key terrain attributes such as elevation difference, slope, and roughness. This method improves the path planning efficiency and safety performance of intelligent mobile platforms in complex environments, and optimizes the accuracy of traffic area identification through accurate spatial density information representation. Attached Figure Description
[0061] Figure 1 This is a general architecture diagram of a map generation method based on lidar point cloud density analysis, provided by a preferred embodiment of the present invention;
[0062] Figure 2 This is a schematic diagram of map voxel grid division;
[0063] Figure 3 This is a flowchart of the voxel density normalization calculation described in this invention;
[0064] Figure 4 This is a schematic diagram of a local terrain grid.
[0065] Figure 5 It is a local terrain grid B p,q A schematic diagram of downsampling at mid-ground points. Detailed Implementation
[0066] The technical solutions of the embodiments of the present invention will be clearly and thoroughly described below with reference to the accompanying drawings. The described embodiments are merely some embodiments of the present invention.
[0067] The technical solution of the present invention to solve the above-mentioned technical problems is:
[0068] A map generation method based on lidar point cloud density analysis is proposed. First, a map model and a lidar density model are established, and then the attributes representing spatial information are calculated in real time.
[0069] Figure 1The diagram illustrates a specific implementation flow of a map generation method based on lidar point cloud density analysis, which includes the following steps:
[0070] (1) Map Model
[0071] Map G is stored in a three-dimensional voxel grid, G = {T(i,j,k)|i∈[-N]} x N x ],j∈[-N y N y ], z∈[-H z H z ]}, T(i,j,k)=[i,j,k,roughness,step_height,density,slope]; where N x N y H z These represent the boundary ranges of the x, y, and z axes of the map, respectively. T represents the voxel grid, where i, j, and k represent the coordinate positions of the 3D voxel grid, roughness is the roughness, step_height is the step height, density is the normalized density, and slope is the terrain slope.
[0072] (2) Radar density model
[0073] The horizontal resolution of the lidar is Δθ, and the vertical resolution is... The direction of the laser beams from the lidar can be calculated, thus representing lidar with arbitrary beams. Centered on the origin of the lidar coordinate system, the point cloud data is voxelized, and the density normalization coefficient of each voxel mesh is calculated using ray tracing methods.
[0074] (2.1) Beam distribution mode setting
[0075] The vertical resolution is a set of different angles, representing the perpendicular angle of each line beam to the center line of the lidar:
[0076]
[0077] The horizontal resolution Δθ represents the horizontal angle increment for each step. k = k*Δθ, where k is the index of the horizontal angle, and its value range is...
[0078] (2.2) Calculation of beam direction:
[0079]
[0080] in Right now
[0081]
[0082] The above method can be used to represent lidar with arbitrary line beams and resolutions.
[0083] (2.3) Theoretical density calculation
[0084] Assume the origin of the lidar coordinate system is at a point (o) outside space. x ,o y ,o z ), and the direction of the light ray is determined by the vector d = (d x ,d y ,d z The given information is an arbitrary point (x) on the ray. t ,t t ,z t ) can be represented as
[0085]
[0086] Where t≥0 is the side length of the voxel mesh.
[0087] For each ray, starting from the lidar position, calculate the voxels it passes through sequentially along the ray direction, and record the number of times each voxel is traversed. Voxel index (i t ,j t ,k t The formula for calculating ) is
[0088]
[0089] The voxel grid beam flux is T(i,j,k):
[0090]
[0091] Here, δ is an indicator function; when the condition is true, δ is 1, otherwise it is 0. This is the density normalization coefficient.
[0092] (3) Data preprocessing: Point cloud data in the environment is collected using a lidar device. The acquired raw point cloud data is subjected to pass-through filtering to retain the point cloud data of the region of interest. Centered on the lidar, its space is divided into N×N×H voxels, and the collected point cloud data is mapped to the corresponding voxel grid, while empty voxels without point clouds are filtered out.
[0093] (4) Map attribute calculation: The preprocessed point cloud data is analyzed by counting the number of points in each voxel grid to obtain the actual occupied density. The actual occupied density is multiplied by the corresponding voxel grid density normalization coefficient to obtain the voxel normalized density. At the same time, the height difference between adjacent voxel columns is calculated to obtain the step height; the slope and roughness of the local terrain are calculated by plane fitting.
[0094] (4.1) Calculate the voxel normalized density
[0095] First, the point cloud data from the LiDAR is mapped to the corresponding voxels. A point (x) in the point cloud data... i ,y i ,z i The formula for calculating the voxel index (i,j,k) and voxel size v is:
[0096]
[0097] Define a set of voxels V, where each voxel contains O(i,j,k) points.
[0098]
[0099] Where P represents the point cloud dataset, δ is an indicator function (1 when the condition is true, 0 otherwise), and O(i,j,k) represents the actual density of the voxel mesh. Then, the corresponding density normalization coefficients are obtained from the radar density model. The normalized density of voxels is then used express.
[0100] (4.2) Calculate the step height of the voxel mesh
[0101] Within each column of voxel cylinders on the xy-plane, the height difference between the voxel mesh and its adjacent voxel cylinders is calculated. For each voxel mesh that may contain multiple point clouds, its height is defined as the mean of the z-values of all point clouds within that mesh. Specifically, for each voxel mesh's point cloud set V... e Its grid height is for:
[0102]
[0103] Where n is the number of point clouds in the voxel mesh. The height of the mesh is represented by the average z-coordinate of the point clouds. For each voxel cylinder, the height difference attribute Δh between it and its adjacent voxel cylinders is defined:
[0104] Δh=z(T)-z(T)′
[0105] Where z(T) and z(T)′ represent the heights of the current voxel column and the adjacent voxel column, respectively. If Δh>0, it indicates that the height difference is upward; if Δh<0, it indicates that the height difference is downward.
[0106] (4.3) Calculate local terrain roughness and slope
[0107] First, ground points need to be selected. In map G, for the voxel column P(i,j)={T(i,j,k)|k∈[-H z H z When the voxel mesh density is below the threshold: when density(T(i,j,k)) < ρ low T(i,j,k) represents a non-ground point. When the voxel height exceeds the threshold:
[0108] Then P(i,j) is marked as a non-ground point, and the remaining voxels are marked as ground points. Where ρ low Here, density(T) represents the density threshold, Hth represents the height threshold, density(T) represents the normalized density of voxel T, and z(T) represents the height value of voxel T. Then, local terrain meshing is performed, with B as the basic unit of the terrain mesh. p,q B p,q ={T(i,j,k)∈G∣i∈[pL,(p+1)L],j∈[qL,(q+1)L]}, where Indicates the grid index in the x-direction. This represents the grid index in the y-direction. Then, ground point downsampling is performed, applying downsampling to the local terrain grid: B′ p,q =S(B p,q ,Δs), where Δs is the downsampling interval, in B p,q Select the set of downsampling points: B′ p,q ={T(i,j,k)∈B p,q |i=pL+mΔs,j=qL+nΔs}, where For row sampling index, The column sampling index is used. Finally, a plane fitting is performed for each local terrain, for each terrain grid B′. p,q set of ground points Let the equation of the plane be:
[0109] ax+by+cz+d=0#(7)
[0110] Plane fitting is performed using the least squares method to obtain the plane coefficients a, b, and d. The plane coefficients a, b, and d are calculated above. The fitting residual R′ is then... p,q That is
[0111]
[0112] It indicates the roughness of the ground surface.
[0113] (5) Generating a similar elevation map: The calculated terrain attributes and spatial density features are merged and filled into the map model, and the filled map is sent to the downstream module.
[0114] Figure 2 This is a schematic diagram of the map voxel grid division described in this invention. The diagram shows the xoz plane projection of the map with the lidar as the center. Under this map model, the light flux T(i,j,k) passing through each grid is calculated by the ray tracing method of equations (1) and (2), and the normalized density coefficient is obtained.
[0115] Figure 3 This is a schematic diagram of the normalized voxel density method described in this invention. First, the lidar point cloud data is segmented, filtered, and voxelized to calculate the actual density of each voxel. Then, the actual density is compared with the normalized density coefficient in the lidar density model. Multiplying these values yields the density value of the normalized density of the voxel mesh.
[0116] (1) Point cloud data filtering
[0117] The point cloud data acquired by the lidar needs to be filtered. First, a pass-through filter is used to retain points within a certain coordinate axis range; the pass-through filter is as follows: [Image of point cloud set] Each point p i In three-dimensional space there are coordinates (x, y). i ,y i ,z i Use a pass-through filter to preserve the point cloud within the x-axis range.
[0118] P filtered ={p i ∈P|x min ≤x i ≤x max}
[0119] That is, only those within the range [x] are retained. min x max Point p] i The formulas are similar for the y and z axes. Then, a radius filter is used to remove outliers, which determines whether to keep a point by checking the number of its neighbors within a certain radius r. Suppose that for a point p... i We define the radius r and the neighbor number threshold k. For each point p i ∈P, its neighbor set is defined as
[0120] N i ={pj ∈P|||p i -p j ||≤r}
[0121] Where ||p i -p j || represents p i With p j The Euclidean distance between them. If |N i If the value is less than the threshold k, then p is considered to be... i These are outliers, so they are removed. Therefore, the filtered result is...
[0122] P filtered ={p i ∈P||N i |≥k}
[0123] (2) Voxel density calculation
[0124] First, the point cloud data from the LiDAR is mapped to the corresponding voxels, where a point in the point cloud data...
[0125] (x i ,y i ,z i The formula for calculating the voxel index (i,j,k) and voxel size v is:
[0126]
[0127] Define a set of voxels V, where each voxel contains O(i,j,k) points.
[0128]
[0129] Where P represents the point cloud dataset, δ is an indicator function (1 when the condition is true, 0 otherwise), and O(i,j,k) represents the actual occupied density of the voxel mesh. Then, the corresponding density normalization coefficient T(i,j,k) is obtained from the radar density model, and the normalized density of the voxels is then calculated using... express.
[0130] Figure 4 This diagram illustrates the local terrain mesh partitioning of a map model G. The diagram shows the local terrain mesh partitioning in the 3D voxel mesh structure G = {T(i,j,k)|i∈[-N]}. x N x ],j∈[-N y N y ], z∈[-H z H z In the diagram, the meshing of the xy-plane is implemented. The xy-plane is divided into multiple local terrain meshes B at equal intervals of L×L. p,q, where p and q represent the grid indices in the x and y directions, respectively. Each local grid cell B p,q It contains all the original voxel data T(i,j,k) and their attribute information for the region, including roughness, step height, normalized density, and slope.
[0131] Figure 5 For local terrain grid B p,q A schematic diagram of ground point downsampling. The left figure shows the distribution of ground points in the original voxel grid, with a high spatial sampling density; the right figure shows the result after applying an equal-interval downsampling strategy, where the sampling interval Δs ensures that the representativeness of terrain features is maintained while reducing the amount of data. Downsampled point set B p,q The key features of the original terrain were preserved, providing a data foundation for subsequent plane fitting and roughness calculation. This downsampling method effectively reduced data redundancy and improved processing efficiency.
[0132] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions.
[0133] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0134] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0135] The above embodiments should be understood as illustrative only and not as limiting the scope of protection of the present invention. After reading the description of the present invention, those skilled in the art can make various alterations or modifications to the present invention, and these equivalent changes and modifications also fall within the scope defined by the claims of the present invention.
Claims
1. A map generation method based on lidar point cloud density analysis, characterized in that, This includes the modeling stage and the mapping stage, among which, The modeling phase is used to establish a map model and a radar density model. The map model contains the geometric and spatial density information of the terrain and is composed of a three-dimensional voxel mesh. Each voxel mesh contains attributes including coordinate information, voxel density, step height, terrain slope, and roughness. The radar density model is used to characterize the spatial density normalization coefficient of the point cloud. By setting the horizontal and vertical resolution of the lidar, the emission direction of each laser beam is calculated. Voxelization is performed with the radar coordinate origin, and the beam flux of each voxel mesh is calculated through ray tracing. The reciprocal of the beam flux is used as the voxel density normalization coefficient of that voxel mesh. During the mapping phase, environmental data is collected in real time using LiDAR. The collected point cloud is preprocessed, and point clouds of the region of interest are obtained by using pass-through filtering and radius filtering. The point cloud data is then voxelized and mapped to the corresponding voxel grid. Map attributes are then calculated for each voxel grid to obtain attributes including voxel density, terrain slope, and roughness, thus constructing an elevation-like map. The map model is: Map G is stored in a three-dimensional voxel grid, G = {T(i,j,k)|i∈[-N]} x N x ],j∈[-N y N y ], z∈[-H z H z ]}, T(i,j,k)=[i,j,k,roughness,step_height,density,slope]; where N x N y H z The x, y, and z axes represent the boundary ranges of the map, respectively. T represents the voxel grid, where i, j, and k represent the coordinate positions of the 3D voxel grid. Roughness is the surface roughness, step_height is the step height, density is the normalized density, and slope is the terrain slope. Establishing the radar density model specifically includes the following steps: The radar density model is stored using a three-dimensional voxel grid. G = {T(i,j,k)|i∈[-N]} x N x ],j∈[-N y N y ],k∈[-H z H z ]}, T(i,j,k)=[i,j,k,ρ]; where ρ is the voxel density normalization coefficient; 3.1 First, set the beam distribution mode, with a set of different angles representing the perpendicular angle between each beam and the center line of the lidar: Vertical distribution angle It is derived from a set of preset values {θ1,θ2,...,θ i The fixed angle value selected in} represents the perpendicular angle between each laser beam and the center line, where i represents the number of laser beams; and the horizontal distribution angle θ k Then through θ k =k*Δθ, where k is the index of the horizontal angle, and its value ranges from 0 to 1. Δθ represents the angular interval between adjacent scan points in the horizontal direction, and then the beam direction is calculated. 3.2 The origin of the lidar coordinate system is at a point outside space (o) x ,o y ,o z ), and the direction of the light ray is determined by the vector d = (d x ,d y ,d z ) is given; any point (x) on the ray. t ,y t ,z t ) can be represented as Where t≥0 is the side length of the voxel mesh; For each laser beam, starting from the lidar position, calculate the voxels passed along the beam direction sequentially, and record the number of times each voxel is traversed; voxel index (i t ,j t ,k t The formula for calculating ) is The voxel grid beam flux is T(i,j,k): v represents the voxel size; Where δ is an indicator function, the value of δ is 1 when the condition is true, and 0 otherwise; is the density normalization coefficient; ray represents each laser beam, derived from the preceding d. k,i The direction of the beam is determined.
2. The map generation method based on lidar point cloud density analysis according to claim 1, characterized in that, The aforementioned construction produces an elevation-like map. Includes the following steps: 4.1 Use lidar equipment to collect point cloud data in the environment, and preprocess the data using pass-through filtering and radius filtering to retain the point cloud data of the region of interest; 4.2 Perform voxelization processing, map the point cloud of the region of interest to the corresponding voxel grid, calculate the number of points in each voxel grid, multiply it by the density normalization coefficient of the corresponding voxel grid in the radar density model, and obtain the normalized density of the voxel. 4.3 Using the origin of the lidar coordinate system, the voxel columns on the xoy plane are subdivided to obtain the step height between adjacent voxel columns; 4.4 Classify each voxel into ground points and non-ground points, and then divide the entire map into multiple L×L local regions; L represents the basic unit B of the terrain grid. p,q The length and width of the region; perform plane fitting on each local region, the normal vector of the plane fitting represents the slope of the region, and the residual after fitting represents the roughness of the terrain; 4.5 The calculated voxel normalized density, step height, terrain slope and roughness are combined to generate an elevation-like map.
3. The map generation method based on lidar point cloud density analysis according to claim 2, characterized in that, Step 4.2, the calculation of the normalized density of the voxel mesh, includes the following steps: 5.1 Calculation of Actual Voxel Occupied Density The process of voxelizing a point cloud involves mapping the acquired point cloud data onto a discrete voxel grid; point cloud (x i ,y i ,z i The formula for calculating the voxel index (i,j,k) and voxel size v is: Define a set of voxels V, where each voxel contains O(i,j,k) points. Where P represents the point cloud dataset, and δ is an indicator function. When the condition is true, the value of δ is 1, otherwise it is 0. 5.2 Density Normalization The normalized density D(i,j,k) is the actual occupied density O(i,j,k) of voxels (i,j,k) and the density normalization coefficient. The product; 4. The map generation method based on lidar point cloud density analysis according to claim 2, characterized in that, Step 4.4 classifies each voxel into ground points and non-ground points, and then divides the entire map into multiple L×L local regions; plane fitting is performed on each local region, the normal vector of the plane fitting represents the slope of the region, and the residual after fitting represents the roughness of the terrain. Specifically, it includes the following steps: 6.1 Ground point selection In map G, for a voxel column P(i,j) = {T(i,j,k)|k∈[-H]} z H z When the voxel mesh density is below the threshold: when density(T(i,j,k)) < ρ low T(i,j,k) represents a non-ground point; when the voxel height exceeds the threshold: Then P(i,j) is marked as a non-ground point, and the remaining voxels are marked as ground points; where ρ low Hth is the density threshold, Hth is the height threshold, density(T) represents the normalized density of voxel T, and z(T) represents the height value of voxel T; Hth z Indicates the elevation region of the map; 6.2 Local Topographic Grid Division The basic unit of the terrain grid is B. p,q B p,q ={T(i,j,k)∈G∣i∈[pL,(p+1)L],j∈[qL,(q+1)L]}, where Indicates the grid index in the x-direction. L represents the grid index in the y-direction; B represents the basic unit of the terrain grid. p,q Length and width; 6.3 Ground point drop sampling Downsampling operation on local terrain mesh: B′ p,q =S(B p,q ,Δs), where Δs is the downsampling interval, in B p,q Select the set of downsampling points: B′ p,q ={T(i,j,k)∈B p,q |i=pL+mΔs,j=qL+nΔs}, where For row sampling index, For column sampling index; B′ p,q This indicates the local terrain after sampling; 6.4 Plane Fitting For each terrain grid B′ p,q set of ground points Let the equation of the plane be: αx+by+cz+d=0#(7) The least squares method is used to perform plane fitting, and the plane coefficients a, b, and d are obtained. 6.5 Residual Calculation The above calculations yield the plane coefficients a, b, and d; then the fitted residual R′ p,q That is It indicates the roughness of the ground surface.
5. An electronic 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 program, it implements the map generation method based on lidar point cloud density analysis as described in any one of claims 1 to 4.
6. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the map generation method based on lidar point cloud density analysis as described in any one of claims 1 to 4.
7. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the map generation method based on lidar point cloud density analysis as described in any one of claims 1 to 4.
Citation Information
Patent Citations
A method for constructing navigation cost map for unmanned vehicles in complex and unknown environments
CN115342821B
Method for constructing local semantic passable probability grid map of autonomous mobile robot
CN116105749A