Method and system for constructing 2D map against slope influence by 3D laser point cloud
By acquiring point cloud data and calculating local neighborhood features for ground segmentation and height compensation, the problem of 2D map distortion on terrain with large slopes is solved, enabling more accurate and reliable map construction and improving the accuracy and safety of path planning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHANGZHOU JIANGSU UNIV ENG TECH RES INST
- Filing Date
- 2024-11-10
- Publication Date
- 2026-04-24
AI Technical Summary
Existing 2D map building methods ignore height information when dealing with terrain with large slopes, resulting in map distortion and affecting the accuracy and safety of path planning, especially in complex terrain conditions such as mountains, hills, construction sites and mines.
By acquiring point cloud data, calculating local neighborhood features, performing ground segmentation and height compensation, and constructing a 2D map, the effects of slope and unevenness are eliminated, thereby improving the accuracy and reliability of the map.
It effectively avoids the impact of slope and unevenness on map construction, improves the accuracy and reliability of the map, and ensures the precision and safety of route planning.
Smart Images

Figure CN119533445B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of autonomous driving and robot navigation technology, specifically relating to a method and system for constructing 2D maps that are protected from the influence of slope using 3D laser point clouds. Background Technology
[0002] With the development of autonomous driving technology and robot navigation, high-precision maps have become the foundation for safe and reliable navigation. Current map building methods are typically based on 3D LiDAR point cloud data. Point cloud processing algorithms project information from three-dimensional space onto a two-dimensional plane to form a map that can be used for path planning. This method performs well on flat terrain, but in practical applications, because roads may have certain slopes or unevenness, the constructed 2D map cannot accurately reflect the actual terrain, thus affecting the accuracy of path planning.
[0003] In the field of autonomous driving, high-precision maps are not only the foundation for vehicle positioning and navigation, but also crucial for ensuring driving safety. While traditional 2D map building methods can provide good navigation support on relatively flat terrain, they often suffer from map distortion due to the loss of altitude information when encountering steep slopes or uneven surfaces. This distortion not only affects the vehicle's positioning accuracy but also leads to deviations in path planning and can even cause safety hazards. For example, in mountainous or hilly areas, vehicles need to accurately identify changes in road gradient during driving; otherwise, misjudgments may occur, impacting driving safety.
[0004] Similarly, high-precision maps are crucial in the field of robot navigation. In industrial automation, logistics, and other areas, robots need to navigate autonomously in complex environments, requiring maps that accurately reflect terrain features. However, existing point cloud processing algorithms often ignore the influence of height information when dealing with terrains with significant slope variations, leading to maps that do not match the actual terrain and affecting the robot's path planning and obstacle avoidance capabilities. For example, inside warehouses or factories, the ground may have varying degrees of incline or undulation; if the 2D map fails to accurately represent these terrain features, the robot's navigation performance will be significantly reduced.
[0005] Especially in complex terrain conditions, such as construction sites, mines, or forests, the slope and unevenness of the terrain are more pronounced. In these environments, traditional 2D map building methods often fail to provide reliable navigation support. For example, on construction sites, construction vehicles need precise positioning and route planning based on terrain features; in mines, transport vehicles also need to avoid dangerous areas. If 2D maps cannot accurately reflect these terrain features, it will seriously affect operational efficiency and safety.
[0006] Therefore, due to the technical problem that 2D maps cannot accurately reflect the terrain features in the construction of ancient cities, it is necessary to design a new method and system for constructing 2D maps that are not affected by slope using 3D laser point clouds.
[0007] It should be noted that the information disclosed in this background section is only for understanding the background technology of the present application concept, and therefore, the above description is not considered to constitute prior art information. Summary of the Invention
[0008] This disclosure provides at least one method and system for constructing 2D maps that are protected from the influence of slope using 3D laser point clouds.
[0009] In a first aspect, embodiments of this disclosure provide a method for constructing a 2D map that is resistant to the effects of slope using 3D laser point clouds, including:
[0010] Acquire point cloud data;
[0011] Process point cloud data;
[0012] Ground segmentation is performed based on the processed point cloud data;
[0013] Height compensation is performed after ground segmentation;
[0014] A 2D map is constructed after height compensation.
[0015] In one optional implementation, the method for acquiring point cloud data includes:
[0016] Point cloud data of the environment is acquired using 3D LiDAR.
[0017] In one optional implementation, the method for processing point cloud data includes:
[0018] For each point in the point cloud, calculate its local neighborhood features;
[0019] The local neighborhood features include: height and curvature;
[0020] Neighborhood computation:
[0021] ;
[0022] in, Indicates reference point P i Other points P j The distance between them It is the i-th reference point P i The coordinates; It is the j-th point P j The coordinates are selected such that the distance is less than the radius R. p When the point is taken as the neighborhood, At time, point Pj Let P be the reference point. i The neighborhood points; the radius R is determined based on the density of the point cloud and the scene. p The value is generally between 0.1 meters and 0.3 meters;
[0023] Mean height: Calculate the neighborhood point P j The mean of the coordinates, z j Where n is the height of the neighboring points, and n is the number of neighboring points:
[0024] ;
[0025] Height variance calculation: Calculate the variance of the coordinates of neighboring points.
[0026] ;
[0027] Curvature calculation:
[0028] The covariance matrix C, where It is the mean vector of the neighborhood points, based on the reference point P. i coordinates The coordinate vector p is obtained. i for , It represents the coordinate vector of the j-th neighboring point minus the mean vector. Indicates transpose:
[0029] ;
[0030] Eigenvalues: Calculate the eigenvalues of the covariance matrix. ;
[0031] Curvature is the ratio of the largest eigenvalue to the smallest eigenvalue.
[0032] .
[0033] In one optional implementation, the method for ground segmentation based on the processed point cloud data includes:
[0034] Based on the calculated local neighborhood features, ground points are distinguished from other non-ground points, where This represents the height threshold, typically ranging from 0.05 meters to 0.1 meters. The curvature threshold is typically set between 0.05 and 0.1, z j This represents the height of the j-th point on the z-axis. This represents the average height within the neighborhood.
[0035] .
[0036] In one optional implementation, the method for height compensation after ground segmentation includes:
[0037] For the segmented ground points, a height compensation value is calculated based on their local neighborhood characteristics to eliminate errors caused by road slope and / or unevenness;
[0038] Calculate the new height of neighboring points, and after filtering out ground points, denote the remaining points as follows: The new average height of the neighborhood is calculated. :
[0039] ;
[0040] Calculation of the new curvature:
[0041] Similarly, calculate the covariance matrix. ,in It is the mean vector of the neighborhood points. It is the coordinate of the j-th new neighboring point, such as its coordinates are ,but Let its coordinate vector be denoted as . , It represents the coordinate vector of the j-th neighboring point minus the mean vector. Indicates transpose:
[0042] ;
[0043] The covariance matrix is calculated. New eigenvalues Its eigenvector is denoted as The plane normal vector n is chosen as the eigenvector corresponding to the smallest eigenvalue. , recorded as
[0044] Use reference points Let the plane reference equation be:
[0045] The calculation yields the following results: ,
[0046] Compensation amount calculation: For each new neighboring point Calculate its perpendicular distance d to the fitted plane. j This refers to the compensation amount on the z-axis:
[0047] ;
[0048] For each remaining point Adjusted height :
[0049] ;
[0050] The new coordinates of the processed point cloud are as follows .
[0051] In one alternative implementation, the method for constructing a 2D map after height compensation includes:
[0052] Set the first received GPS point as the origin, construct a global coordinate system, and denot the robot's position as follows: Used for translation;
[0053] Obtain the quaternion q(x, y, z, w) from the sensor;
[0054] A quaternion q is represented as q = (w, x, y, z), where w is the real part and (x, y, z) is the imaginary part.
[0055] The rotation matrix R is a 3x3 matrix:
[0056] ;
[0057] The matrix elements are:
[0058] m 00 =1-2(y 2 +z 2 ) ;
[0059] m 01 =2(xy-wz);
[0060] m 02 =2(xz+wy);
[0061] m 10 =2(xy+wz);
[0062] m 11 =1-2(x 2 +z 2 ) ;
[0063] m 12 =2(yz-wx);
[0064] m 20 =2(xz-wy);
[0065] m 21 =2(yz+wx);
[0066] m 22 =1-2(x2 +y 2 ) ;
[0067] A point in a point cloud Transform it to a new coordinate system by first constructing a homogeneous coordinate form. Then, by applying the rotation matrix R and the translation vector T=(x0,y0,z0) from the robot's position, a new point is obtained. :
[0068] ;
[0069] ;
[0070] A point obtained from the transformed point cloud is denoted as . Define map parameters, where the value of Minh changes dynamically based on the location of the point, with the value increasing as the distance increases, used to eliminate the impact of uneven roads on map construction: Gw: grid width; Gh: grid height; Re: grid resolution, the smaller the value, the higher the map accuracy; Minh: minimum detection height; Maxh: maximum detection height; Ro: obstacle inflation value;
[0071] Input the size of the global map, such as width w=40m and height h=40m. Define the grid resolution as Re =0.1, meaning one grid represents 0.1m in width and length. The resulting map grid size is 400*400, and the actual map size is 40m*40m.
[0072] ;
[0073] ;
[0074] Points in the point cloud with Minh < z < Maxh are filtered out, and unsegmented ground points are removed again. The positions of the point cloud on the grid map are initially estimated, and the center of the grid map is defined as the robot's starting position. The position (0, 0) on the grid map is (Gw / 2, Gh / 2) and (200, 200). For example, the value of point (x, y, z) is (2.1, 3.1, 4.1).
[0075] ;
[0076] Get this point The location on the grid map is (221, 331), so marking the grid at row 221 and column 331 indicates that there is an obstacle;
[0077] Map obstacle layer calibration: Ro is denoted as the obstacle expansion value, typically between 2 and 3, indicating an expansion of the obstacle outline by 0.2 to 0.3 meters. The positions of all grid points with a radius smaller than Ro are iteratively obtained and added to the obstacle point set obs, denoted as... M represents the total number of obstacle points in the set:
[0078] ;
[0079] Using the points (221, 331) obtained above as obstacles, and taking Ro=2, we can expand the obstacles to obtain other obstacle points (222, 331), (223, 331), (221, 332), (221, 333), (220, 331), (219, 331), (221, 330), (221, 329), (222, 332), (222, 330), (220, 332), (220, 330). Then, we put all the points into the set obs.
[0080] Reset all data in the map grid to -1, indicating an unknown state:
[0081] ;
[0082] The location is obtained from OBS, and the corresponding point is marked as 100, which is recorded as an obstacle, thus obtaining the final map.
[0083] Secondly, this disclosure also provides a method for constructing a 2D map that is resistant to the effects of slope on 3D laser point clouds, comprising:
[0084] The acquisition module is configured to acquire point cloud data;
[0085] The processing module is configured to process point cloud data;
[0086] The segmentation module is configured to segment the ground based on the processed point cloud data;
[0087] The compensation module is configured to perform height compensation after ground segmentation;
[0088] The map module is configured to build a 2D map after height compensation.
[0089] Thirdly, embodiments of this disclosure also provide a computer device including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the above-described method for constructing a 2D map with anti-slope effects from 3D laser point clouds.
[0090] Fourthly, embodiments of this disclosure also provide a computer-readable storage medium storing a computer program / instructions thereon, which, when executed by a processor, implements the steps of the above-described method for constructing a 2D map against the influence of slope using 3D laser point clouds.
[0091] Fifthly, embodiments of this disclosure also provide a computer program product, including a computer program / instructions, which, when executed by a processor, implement the steps of the above-described method for constructing a 2D map against the influence of slope using 3D laser point clouds.
[0092] The beneficial effects of this invention are that the method for constructing a 2D map using 3D laser point cloud data to prevent the impact of slope on the map includes: acquiring point cloud data; processing the point cloud data; segmenting the ground based on the processed point cloud data; performing height compensation after ground segmentation; and constructing a 2D map after height compensation. This effectively avoids the impact of road slope and unevenness on map construction during the 2D map construction process through ground segmentation and height compensation, thereby improving the accuracy and reliability of the map.
[0093] Other features and advantages of the invention will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the invention. The objects and other advantages of the invention are realized and obtained in accordance with the structures particularly pointed out in the description, claims and drawings.
[0094] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, preferred embodiments are described in detail below with reference to the accompanying drawings. Attached Figure Description
[0095] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0096] Figure 1 A flowchart illustrating a method for constructing a 2D map with slope resistance from 3D laser point cloud data, provided in this embodiment of the disclosure;
[0097] Figure 2 A schematic diagram of a simulated three-dimensional and two-dimensional point cloud fusion map provided in this embodiment of the disclosure;
[0098] Figure 3 A schematic diagram of a simulated two-dimensional map provided in this embodiment of the present disclosure;
[0099] Figure 4This is a schematic diagram of a simulated two-dimensional map saving result provided in an embodiment of this disclosure;
[0100] Figure 5 This disclosure provides an actual unprocessed 3D point cloud map as an embodiment of the present invention.
[0101] Figure 6 This disclosure provides a 2D map after actual segmentation of ground points;
[0102] Figure 7 This disclosure provides a 2D and 3D fusion map after actual ground point segmentation. Detailed Implementation
[0103] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. 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.
[0104] In this document, when it is mentioned that a first component is located on a second component, this can mean that the first component can be directly formed on the second component, or that a third component can be inserted between the first and second components. Furthermore, in the accompanying drawings, the thickness of the components may be exaggerated or reduced for the purpose of effectively describing the technical content.
[0105] As used herein, the phrases “in one embodiment,” “according to one embodiment,” “in some embodiments,” etc., generally refer to the fact that a particular feature, structure, or characteristic following the phrase can be included in at least one embodiment of this disclosure. Therefore, a particular feature, structure, or characteristic can be included in more than one embodiment of this disclosure, such that these phrases do not necessarily refer to the same embodiment. As used herein, the terms “example,” “exemplary,” etc., are used to “serve as an example, instance, or illustration.” Any implementation, aspect, or design described herein as “example” or “exemplary” is not necessarily to be construed as preferred or superior to other implementations, aspects, or designs. Rather, the use of the terms “example,” “exemplary,” etc., is intended to present concepts in a specific manner.
[0106] The following detailed description of some embodiments of the present invention is provided in conjunction with the accompanying drawings. Unless otherwise specified, the following embodiments and features can be combined with each other.
[0107] like Figures 1 to 7As shown, at least one disclosed embodiment provides a method for constructing a 2D map from 3D laser point clouds to prevent the influence of slope, including: acquiring point cloud data; processing the point cloud data; performing ground segmentation based on the processed point cloud data; performing height compensation after ground segmentation; and constructing a 2D map after height compensation. This method effectively avoids the influence of road slope and unevenness on map construction during the 2D map construction process through ground segmentation and height compensation, improving the accuracy and reliability of the map. It can effectively process 3D laser point cloud data and fully consider the slope and unevenness of the terrain when constructing the 2D map to ensure the accuracy and reliability of the map. By processing 3D point cloud data with advanced algorithms, extracting key height information, and integrating it into the 2D map, the 2D map becomes closer to the actual terrain, improving the accuracy and reliability of path planning.
[0108] In one optional implementation, the method for acquiring point cloud data includes: acquiring point cloud data in the environment using a 3D LiDAR; the LiDAR uses Unitree Robotics' Unitree 4D LiDAR L1 to receive point cloud data from the 3D LiDAR.
[0109] In one optional implementation, the method for processing point cloud data includes: for each point cloud point, calculating its local neighborhood features; the local neighborhood features include: height and curvature; neighborhood calculation:
[0110] ;
[0111] in, Indicates reference point P i Other points P j The distance between them It is the i-th reference point P i The coordinates; It is the j-th point P j The coordinates are selected such that the distance is less than the radius R. p When the point is taken as the neighborhood, At time, point P j Let P be the reference point. i The neighborhood points; the radius R is determined based on the density of the point cloud and the scene. p The value is generally between 0.1 meters and 0.3 meters;
[0112] Mean height: Calculate the neighborhood point P j The mean of the coordinates, z j Where n is the height of the neighboring points, and n is the number of neighboring points:
[0113] ;
[0114] Height variance calculation: Calculate the variance of the z-coordinates of neighboring points:
[0115] ;
[0116] Curvature calculation: covariance matrix C, where It is the mean vector of the neighborhood points, based on the reference point P. i coordinates The coordinate vector p is obtained. i for , It represents the coordinate vector of the j-th neighboring point minus the mean vector. Indicates transpose:
[0117] ;
[0118] Eigenvalues: Calculate the eigenvalues of the covariance matrix. Curvature is the ratio of the largest eigenvalue to the smallest eigenvalue.
[0119] .
[0120] In one optional implementation, the method for ground segmentation based on the processed point cloud data includes: distinguishing ground points from other non-ground points based on calculated local neighborhood features; and further distinguishing ground points from other non-ground points based on calculated local neighborhood features, wherein... This represents the height threshold, typically ranging from 0.05 meters to 0.1 meters. The curvature threshold is typically set between 0.05 and 0.1, z j This represents the height of the j-th point on the z-axis. This represents the average height within the neighborhood.
[0121] ;
[0122] A plane fitting algorithm is used to find the best fitting plane through multiple iterations, and points close to this plane are regarded as ground points.
[0123] In one optional implementation, the method for height compensation after ground segmentation includes: for each segmented ground point, calculating a height compensation value based on its local neighborhood characteristics to eliminate errors caused by road slope and / or unevenness; calculating the new height of neighboring points; and after filtering out ground points, recording the remaining points as follows: The new average height of the neighborhood is calculated. :
[0124] ;
[0125] The calculation of the new curvature, i.e. the curvature calculation after screening:
[0126] Similarly, calculate the covariance matrix. ,in It is the mean vector of the neighborhood points. It is the coordinate of the j-th new neighboring point, such as its coordinates are ,but Let its coordinate vector be denoted as . , It represents the coordinate vector of the j-th neighboring point minus the mean vector. Indicates transpose:
[0127] ;
[0128] The covariance matrix is calculated. New eigenvalues Its eigenvector is denoted as The plane normal vector n is chosen as the eigenvector corresponding to the smallest eigenvalue. , recorded as ;
[0129] Use reference points Let the plane reference equation be: ;
[0130] The calculation yields the following results: ;
[0131] Compensation amount calculation: For each new neighboring point Calculate its perpendicular distance d to the fitted plane. j This refers to the compensation amount on the z-axis:
[0132] ;
[0133] For each remaining point Adjusted height :
[0134] ;
[0135] Obtain the new coordinates of the processed point cloud .
[0136] In one optional implementation, the method for constructing a 2D map after height compensation includes: using a Tiangong-980 with a single antenna as a fixed base station, transmitting differential information to a cloud server MQTT via a Hanfeng DTU module; and using a Tiangong-982 dual-antenna mobile station to obtain differential information from MQTT via Wi-Fi and publish precise positioning information. The first received value is set as the origin to construct a global coordinate system, obtaining the robot's position x0, y0, z0 for translation. The IMU is a WT901C485 from Witt Intelligent, obtaining quaternions q(x, y, z, w) from the sensor IMU.
[0137] The quaternion q is represented as q = (w, x, y, z), where w is the real part and (x, y, z) is the imaginary part; the rotation matrix R is a 3x3 matrix.
[0138] ;
[0139] The matrix elements are:
[0140] m 00 =1-2(y 2 +z 2 ) ;
[0141] m 01 =2(xy-wz);
[0142] m 02 =2(xz+wy);
[0143] m 10 =2(xy+wz);
[0144] m 11 =1-2(x 2 +z 2 ) ;
[0145] m 12 =2(yz-wx);
[0146] m 20 =2(xz-wy);
[0147] m 21 =2(yz+wx);
[0148] m 22 =1-2(x 2 +y 2 ) ;
[0149] A point in a point cloud Transform it to a new coordinate system by first constructing a homogeneous coordinate form. Then, by applying the rotation matrix R and the translation vector T=(x0,y0,z0) from the robot's position, a new point is obtained. :
[0150] ;
[0151] ;
[0152] Obtain a point from the transformed point cloud. Define map parameters, where the value of Minh dynamically changes based on the location of points, increasing with distance to eliminate the impact of uneven roads on map construction: Gw: Grid width (unit: pixels); Gh: Grid height (unit: pixels); Re: Grid resolution (unit: meters / pixel); Minh: Minimum detection height (unit: meters); Maxh: Maximum detection height (unit: meters); Ro: Obstacle inflation value; Input the size of the global map, for example, to construct a 40m x 40m map, e.g., w = 40m, h = 40m, resolution defined as Re = 0.1, indicating that one grid represents 0.1m in width and length, resulting in a map grid size of 400*400, and an actual map size of 40m*40m.
[0153] ;
[0154] ;
[0155] Points in the point cloud with Minh < z < Maxh are filtered out, and ground points that may not have been segmented are removed again. The position of the point cloud on the map is initially estimated. The center position of the grid map is defined as the robot's starting position. The position (0, 0) on the grid map is (Gw / 2, Gh / 2) and (200, 200). For example, the value of point (x, y, z) is (2.1, 3.1, 4.1).
[0156] ;
[0157] Get this point The location on the grid map is (221, 331), so marking the grid at row 221 and column 331 indicates that there is an obstacle;
[0158] Map obstacle layer calibration: Ro is denoted as the obstacle expansion value, typically between 2 and 3, indicating an expansion of the obstacle outline by 0.2 to 0.3 meters. The positions of all grid points with a radius smaller than Ro are iteratively obtained and added to the obstacle point set obs, denoted as... M represents the total number of obstacle points in the set:
[0159] ;
[0160] Using the points (221, 331) obtained above as obstacles, and taking Ro=2, we can expand the obstacles to obtain other obstacle points (222, 331), (223, 331), (221, 332), (221, 333), (220, 331), (219, 331), (221, 330), (221, 329), (222, 332), (222, 330), (220, 332), (220, 330). Then, we put all the points into the set obs.
[0161] Reset all data in the map grid to -1, indicating an unknown state:
[0162] ;
[0163] The position is obtained from the OBS, and the position of Gd is marked as 100, which is recorded as an obstacle, thus obtaining the final map.
[0164] In at least one other disclosed embodiment, a method for constructing a 2D map resistant to slope effects from 3D laser point clouds is also provided, comprising: an acquisition module configured to acquire point cloud data; a processing module configured to process the point cloud data; a segmentation module configured to segment the ground based on the processed point cloud data; a compensation module configured to perform height compensation after ground segmentation; and a map module configured to construct a 2D map after height compensation.
[0165] In at least one other disclosed embodiment, a computer device is also provided, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the above-described method for constructing a 2D map with anti-slope effects from a 3D laser point cloud.
[0166] In at least one other disclosed embodiment, a computer-readable storage medium is also provided, having stored thereon a computer program / instructions that, when executed by a processor, implement the steps of the method for constructing a 2D map against the influence of slope using 3D laser point clouds.
[0167] In at least one other disclosed embodiment, a computer program product is also provided, including a computer program / instructions that, when executed by a processor, implement the steps of the method described above for constructing a 2D map against the influence of slope using 3D laser point clouds.
[0168] In summary, this method for constructing 2D maps using 3D laser point clouds to prevent the impact of slope includes: acquiring point cloud data; processing the point cloud data; segmenting the ground based on the processed point cloud data; performing height compensation after ground segmentation; and constructing a 2D map after height compensation. This method effectively avoids the impact of road slope and unevenness on map construction during the 2D map construction process through ground segmentation and height compensation, thereby improving the accuracy and reliability of the map.
[0169] Based on the above-described preferred embodiments of the present invention, and through the foregoing description, those skilled in the art can make various changes and modifications without departing from the inventive concept. The technical scope of this invention is not limited to the contents of the specification, but must be determined according to the scope of the claims.
Claims
1. A method for constructing a 2D map resistant to the influence of slope using 3D laser point clouds, characterized in that, include: Acquire point cloud data; Process point cloud data; Ground segmentation is performed based on the processed point cloud data; Height compensation is performed after ground segmentation; 2D map is constructed after height compensation; The method for acquiring point cloud data includes: Acquire point cloud data of the environment using 3D LiDAR; The method for processing point cloud data includes: For each point in the point cloud, calculate its local neighborhood features; The local neighborhood features include: height and curvature; Neighborhood computation: ; in, Indicates reference point P i Other points P j The distance between them It is the i-th reference point P i The coordinates; It is the j-th point P j The coordinates are selected such that the distance is less than the radius R. p When the point is taken as the neighborhood, At time, point P j Let P be the reference point. i , neighborhood points; Mean height: Calculate the neighborhood point P j The mean of the coordinates, z j Where n is the height of the neighboring points, and n is the number of neighboring points: ; Height variance calculation: Calculate the variance of the coordinates of neighboring points. ; Curvature calculation: The covariance matrix C, where It is the mean vector of the neighborhood points, based on the reference point P. i coordinates The coordinate vector p is obtained. i for , It represents the coordinate vector of the j-th neighboring point minus the mean vector. Indicates transpose: ; Eigenvalues: Calculate the eigenvalues of the covariance matrix. ; Curvature is the ratio of the largest eigenvalue to the smallest eigenvalue. ; The method for ground segmentation based on the processed point cloud data includes: Based on the calculated local neighborhood features, ground points are distinguished from other non-ground points, where Indicates the height threshold. For the curvature threshold, z j This represents the height of the j-th point on the z-axis. This represents the average height within the neighborhood. ; The method for height compensation after ground segmentation includes: For the segmented ground points, new neighboring points are determined based on their local neighborhood features, and a plane is fitted based on the new neighboring points; For each new neighboring point Calculate its vertical distance d from the fitted plane. j and the vertical distance d j This serves as the compensation amount for that point in the z-axis direction; The height value of the corresponding point is adjusted according to the compensation amount to eliminate the error caused by road slope and / or unevenness, and the new coordinates of the point cloud after compensation are obtained. Calculate the new height of neighboring points, and after filtering out ground points, denote the remaining points as follows: The new average height of the neighborhood is calculated. : ; Calculation of the new curvature: Calculate the covariance matrix ,in It is the mean vector of the neighborhood points. It is the coordinate of the j-th new neighboring point, such as its coordinates are ,but Let its coordinate vector be denoted as . , It represents the coordinate vector of the j-th neighboring point minus the mean vector. Indicates transpose: ; The covariance matrix is calculated. New eigenvalues Its eigenvector is denoted as The plane normal vector n is chosen as the eigenvector corresponding to the smallest eigenvalue. , recorded as ; Use reference points Let the plane reference equation be: ; The calculation yields the following results: ; ; For each remaining point Adjusted height : ; The new coordinates of the processed point cloud are as follows .
2. The method for constructing a 2D map against the influence of slope using 3D laser point clouds as described in claim 1, characterized in that: The method for constructing a 2D map after height compensation includes: Set the first received GPS point as the origin, construct a global coordinate system, and denot the robot's position as follows: Used for translation; Obtain the quaternion q(x, y, z, w) from the sensor; A quaternion q is represented as q = (w, x, y, z), where w is the real part and (x, y, z) is the imaginary part. The rotation matrix R is a 3x3 matrix: ; The matrix elements are: m 00 =1-2(y 2 +z 2 ) ; m 01 =2(xy-wz) ; m 02 =2(xz+wy) ; m 10 =2(xy+wz) ; m 11 =1-2(x 2 +z 2 ) ; m 12 =2(yz-wx) ; m 20 =2(xz-wy) ; m 21 =2(yz+wx) ; m 22 =1-2(x 2 +y 2 ) ; A point in a point cloud Transform it to a new coordinate system by first constructing a homogeneous coordinate form. Then, by applying the rotation matrix R and the translation vector T=(x0,y0,z0) from the robot's position, a new point is obtained. : ; ; A point obtained from the transformed point cloud is denoted as . Define map parameters, where the value of Minh changes dynamically based on the location of the points: Gw: grid width; Gh: grid height; Re: grid resolution, the smaller the value, the greater the map accuracy; Minh: minimum detection height; Maxh: maximum detection height; Ro: obstacle inflation value; Filter the points in the point cloud where Minh < z < Maxh, remove the unsegmented ground points again, and make a preliminary estimate of the position of the point cloud on the grid map. Define the center position of the grid map as the robot's starting position, and record the position (0, 0) on the grid map as (Gw / 2, Gh / 2). ; Get this point On a grid map, this grid represents an obstacle. Map obstacle layer calibration: Ro is denoted as the obstacle expansion value. The positions of all grid points with a radius smaller than Ro are obtained iteratively and added to the obstacle point set obs, denoted as... M represents the total number of obstacle points in the set: ; Using the points obtained above as obstacles, we can expand the obstacles according to Ro to obtain other obstacle points, and then put all the points into the set obs; Reset all data in the map grid to -1, indicating an unknown state: ; The location is obtained from OBS, and the corresponding point is marked as 100, which is recorded as an obstacle, thus obtaining the final map.
3. A computer device comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the steps of the method for constructing a 2D map against the influence of slope using 3D laser point clouds as described in claim 1.
4. A computer-readable storage medium having a computer program / instructions stored thereon, characterized in that, When the computer program / instruction is executed by the processor, it implements the steps of the method for constructing a 2D map against the influence of slope using 3D laser point clouds as described in claim 1.
5. A computer program product, comprising a computer program / instructions, characterized in that, When the computer program / instruction is executed by the processor, it implements the steps of the method for constructing a 2D map against the influence of slope using 3D laser point clouds as described in claim 1.
Citation Information
Patent Citations
Point cloud segmentation method, computer equipment, storage medium and program product
CN118052987A