A real-time global point cloud map construction method, system, device and storage medium
By building and updating a real-time global point cloud map and utilizing filtering and synchronous processing of multi-frame point cloud and pose data, the problem of vehicle positioning loss in laser SLAM and visual SLAM technologies is solved, achieving more reliable autonomous driving environment perception.
Patent Information
- Application Number
- CN202310639773.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-31
- Publication Date
- 2025-09-16
- Estimated Expiration
- 2043-05-31
AI Technical Summary
When a vehicle is driving on an open road, the existing laser SLAM and visual SLAM technologies do not show obvious feature changes between frames or the number of point clouds is sparse, resulting in loss of vehicle positioning and affecting the realization of autonomous driving.
By constructing a local point cloud map and using multi-frame point cloud and pose data to fill and update the point cloud, a real-time global point cloud map is formed. Combined with filtering, downsampling and time synchronization processing, the absolute position of the vehicle can be obtained.
Building a more reliable global point cloud map in different driving scenarios solves the problem of vehicle position loss and improves positioning accuracy and environmental perception capabilities.
Smart Images

Figure CN116539053B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of autonomous driving technology, and in particular to a real-time global point cloud map construction method, system, device and storage medium. Background Art
[0002] SLAM (Simultaneous Localization and Mapping) technology refers to the process by which a vehicle builds a global map of its current environment and uses it to navigate or infer its own position at any point in time. With the rapid development of autonomous driving technology, the demand for increasingly precise vehicle location information is increasing, and SLAM technology is gaining increasing attention. SLAM technology enables real-time positioning of autonomous vehicles, as well as real-time modeling and dynamic updating of the vehicle's surroundings, ensuring the accuracy of vehicle location data and providing data support for vehicle decision-making and control.
[0003] Currently, SLAM-based positioning and navigation technologies are mainly divided into laser SLAM technology and visual SLAM technology. However, both types of SLAM technologies use inter-frame matching and relative positioning to obtain the vehicle's real-time position information. When the vehicle is driving on an open road, the feature changes between adjacent frames are extremely subtle or the number of point clouds is too sparse, which will cause the vehicle to be unable to achieve its own positioning, resulting in position loss, which greatly hinders the vehicle from achieving autonomous driving functions. Summary of the Invention
[0004] The present invention provides a real-time global point cloud map construction method, system, device and storage medium to solve one or more technical problems existing in the prior art and at least provide a beneficial option or create conditions.
[0005] In a first aspect, a method for constructing a real-time global point cloud map is provided, the method comprising:
[0006] Step 100: Before the vehicle travels, construct a local point cloud map based on the collected multi-frame first point cloud of the vehicle's surrounding environment and the multi-frame first pose data of the vehicle;
[0007] Step 200: When the vehicle makes a circle on the predetermined experimental road, the local point cloud map is filled with point clouds based on the collected multi-frame second point cloud data of the vehicle's surrounding environment and the multi-frame second pose data of the vehicle to obtain a static global point cloud map;
[0008] Step 300: When the vehicle is traveling on any road, the static global point cloud map is updated according to the real-time collected single-frame third point cloud of the vehicle's surrounding environment and the single-frame third pose data of the vehicle to form a real-time global point cloud map.
[0009] Furthermore, the step 100 includes:
[0010] Step 110: performing filtering processing on the multiple frames of first point clouds;
[0011] Step 120: down-sample the filtered multiple frames of first point clouds to obtain multiple frames of first point clouds;
[0012] Step 130: The multi-frame first pose data includes a multi-frame first position data and a multi-frame first pose data. The multi-frame first position data is converted from a geodetic coordinate system to a UTM coordinate system. Time synchronization is then performed on the multi-frame first pose data and the plurality of frames of first point clouds to obtain a first pose data set and a first point cloud set.
[0013] Step 140: construct a point cloud map coordinate system based on the first position data of the first frame after coordinate conversion, and then use the first pose data set to convert the first point cloud set into the point cloud map coordinate system for superposition to form a local point cloud map.
[0014] Furthermore, each frame of the first point cloud after filtering contains a plurality of point cloud data, and the step 120 includes:
[0015] The three-dimensional point cloud space formed by the filtered multi-frame first point cloud is evenly divided into multiple sector-shaped areas, and then all point cloud data falling within each sector-shaped area are downsampled using a mathematical model to obtain several frames of first point cloud. The mathematical model is:
[0016]
[0017] Among them, S k is the kth sector area, p ki is the i-th point cloud data falling within the k-th sector area, which is collected by the laser radar and its position information in the laser radar coordinate system is (px ki ,py ki ,pz ki ), arctan(px ki ,py ki ) is the positive direction of the X axis and passes through the point (px ki ,py ki ) and the angle between the ray of the coordinate origin, s is the number of the multiple fan-shaped areas, P is all the point cloud data contained in the filtered multi-frame first point cloud, is the three-dimensional point cloud space.
[0018] Furthermore, in step 130, time synchronization processing is performed on the first position data of the plurality of frames after coordinate conversion, the first posture data of the plurality of frames, and the first point clouds of the plurality of frames to obtain the first posture data set and the first point cloud set, including:
[0019] Step 131: determining a plurality of frames of fourth posture data to be matched based on the plurality of frames of first position data after coordinate conversion and the plurality of frames of first posture data;
[0020] Step 132: storing the plurality of frames of fourth pose data in ascending order of timestamps into a first preset queue, and storing the plurality of frames of first point clouds in ascending order of timestamps into a second preset queue;
[0021] Step 133: read the fourth pose data of the single frame arranged at the front from the first preset queue, and read the first point cloud of the single frame arranged at the front from the second preset queue;
[0022] Step 134: Determine whether the absolute value of the difference between the timestamp of the single-frame fourth pose data and the timestamp of the single-frame first point cloud is less than or equal to a preset time threshold; if so, extract the single-frame fourth pose data from the first preset queue for storage, and extract the single-frame first point cloud from the second preset queue for storage, and then execute step 135; if not, remove the single-frame fourth pose data with a smaller timestamp from the first preset queue, or remove the single-frame first point cloud with a smaller timestamp from the second preset queue, and then execute step 135;
[0023] Step 135, determine whether at least one of the first preset queue and the second preset queue is empty; if so, form all the saved fourth pose data into a first pose data set for output, and form all the saved first point clouds into a first point cloud set for output; if not, return to step 133.
[0024] Furthermore, in step 140, using the first pose data set to convert the first point cloud set into the point cloud map coordinate system for overlaying to form a local point cloud map includes:
[0025] Acquire a single-frame first point cloud from the first point cloud set, and then acquire a single-frame fourth pose data that is time-synchronized with the single-frame first point cloud from the first pose data set;
[0026] The single-frame fourth posture data includes the single-frame first position data and the single-frame first posture data after coordinate conversion, the rotation matrix is determined according to the single-frame first posture data, and the translation matrix is determined according to the first-frame first position data after coordinate conversion and the single-frame first position data after coordinate conversion;
[0027] Convert all point cloud data contained in the single-frame first point cloud into the point cloud map coordinate system according to the rotation matrix and the translation matrix;
[0028] The above steps are executed cyclically until all point cloud data contained in all first point clouds in the first point cloud set are converted into the point cloud map coordinate system representation and then the point cloud overlay is completed to form a local point cloud map.
[0029] Furthermore, the step 200 includes:
[0030] Performing filtering processing on the multiple frames of second point clouds;
[0031] Downsampling the filtered multi-frame second point cloud to obtain several frames of second point cloud;
[0032] The multiple frames of second pose data include multiple frames of second position data and multiple frames of second posture data, converting the multiple frames of second position data from a geodetic coordinate system to a UTM coordinate system, and then combining the multiple frames of second posture data with the multiple frames of second point clouds for time synchronization processing to obtain a second pose data set and a second point cloud set;
[0033] The second point cloud set is converted into the point cloud map coordinate system where the local point cloud map is located using the second pose data set to perform point cloud filling and overlaying to obtain a static global point cloud map.
[0034] Furthermore, the single-frame third point cloud and the single-frame third pose data are in a time synchronization relationship, and step 300 includes:
[0035] Mapping the center point of the single-frame third point cloud to the point cloud map coordinate system of the static global point cloud map, and then removing all point cloud data within a predetermined radius of the center point from the static global point cloud map;
[0036] Performing filtering processing on the single-frame third point cloud;
[0037] The single-frame third pose data includes single-frame third position data and single-frame third posture data. The single-frame third position data is converted from the geodetic coordinate system to the UTM coordinate system, and then combined with the single-frame third posture data, the filtered single-frame third point cloud is converted to the point cloud map coordinate system where the updated static global point cloud map is located for point cloud filling and overlaying, and then the current static global point cloud map is output as a real-time global point cloud map.
[0038] In a second aspect, a real-time global point cloud map construction system is provided, the system comprising:
[0039] A construction module is used to construct a local point cloud map based on the collected multi-frame first point cloud of the vehicle's surrounding environment and the multi-frame first pose data of the vehicle before the vehicle drives;
[0040] a filling module, configured to fill the local point cloud map with point clouds based on the collected multi-frame second point clouds of the vehicle's surrounding environment and the multi-frame second pose data of the vehicle when the vehicle makes a circle on the predetermined experimental road, so as to obtain a static global point cloud map;
[0041] The updating module is used to update the static global point cloud map to form a real-time global point cloud map based on the single-frame third point cloud of the vehicle's surrounding environment and the single-frame third posture data of the vehicle collected in real time when the vehicle is traveling on any road.
[0042] In a third aspect, a computer device is provided, comprising a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the real-time global point cloud map construction method as described in the first aspect.
[0043] In a fourth aspect, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the real-time global point cloud map construction method as described in the first aspect is implemented.
[0044] The present invention has at least the following beneficial effects: using the vehicle's real-time pose data to convert a time-synchronized real-time point cloud of the vehicle's surroundings into a predetermined point cloud map coordinate system, the vehicle's absolute position information can be acquired in real time, facilitating the construction of a more reliable global point cloud map. Compared to existing laser SLAM and visual SLAM technologies that rely solely on point clouds for relative positioning, the real-time global point cloud map construction method provided by the present invention can be applied to various driving scenarios, is less affected by the environment, and can effectively address the problem of vehicle position loss during the mapping process. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] The accompanying drawings are used to provide a further understanding of the technical solution of the present invention and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the technical solution of the present invention and do not constitute a limitation to the technical solution of the present invention.
[0046] Figure 1 1 is a flow chart of a method for constructing a real-time global point cloud map in an embodiment of the present invention;
[0047] Figure 2 1 is a schematic diagram of the composition of a real-time global point cloud map construction system in an embodiment of the present invention;
[0048] Figure 3Schematic diagram of the hardware structure of the computer device in the embodiment of the present disclosure. DETAILED DESCRIPTION
[0049] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0050] It should be noted that, although the functional modules are divided in the system schematic diagram and the logical order is shown in the flow chart, in some cases, the steps shown or described can be performed in a different order than the module division in the system or the order in the flow chart. The terms "first", "second", "third", "fourth", etc. in the specification of this application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or precedence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units inherent to these processes, methods, products or devices that are not clearly listed.
[0051] Please refer to Figure 1 , Figure 1 1 is a flow chart of a method for constructing a real-time global point cloud map provided by an embodiment of the present invention, the method comprising the following steps:
[0052] S110, before the vehicle travels, constructing a local point cloud map based on the collected multi-frame first point cloud data of the vehicle's surrounding environment and the multi-frame first pose data of the vehicle;
[0053] S120, when the vehicle makes a circle on the predetermined experimental road, performing point cloud filling on the local point cloud map based on the collected multi-frame second point cloud data of the vehicle's surrounding environment and the multi-frame second pose data of the vehicle to obtain a static global point cloud map;
[0054] S130. When the vehicle is traveling on any road, the static global point cloud map is updated according to the single-frame third point cloud of the vehicle's surrounding environment and the single-frame third pose data of the vehicle collected in real time to form a real-time global point cloud map.
[0055] In an embodiment of the present invention, the above steps S110 to S130 are run inside the vehicle-mounted industrial computer, and the operating system adopted by the vehicle-mounted industrial computer is Linux; the first point cloud of each frame mentioned in the above step S110, the second point cloud of each frame mentioned in the above step S120, and the single-frame third point cloud mentioned in the above step S130 are all obtained by scanning and collecting the vehicle's surrounding environment at a scanning speed of 10Hz by a laser radar set on the top of the vehicle, and the laser radar can perform system timing processing on any frame of point cloud collected, and finally realize the point cloud transmission function through the wired connection relationship between it and the vehicle-mounted industrial computer.
[0056] Among them, the laser radar is less affected by environmental factors such as light, weather, and temperature, has a large detection range, and can obtain reliable, stable, and accurate road environment information, including road surface information, information about other surrounding vehicles, and environmental information on both sides of the road, etc.
[0057] In an embodiment of the present invention, the first posture data of each frame mentioned in the above step S110 is composed of the first posture data of each frame and the first position data of each frame that meet the time synchronization requirements, the second posture data of each frame mentioned in the above step S120 is composed of the second posture data of each frame and the second position data of each frame that meet the time synchronization requirements, and the third posture data of the single frame mentioned in the above step S130 is composed of the third posture data of the single frame and the third position data of the single frame that meet the time synchronization requirements; the first posture data of each frame, the second posture data of each frame and the third position data of the single frame are all collected by the vehicle-mounted inertial navigation device, and the vehicle-mounted inertial navigation device can perform system timing on any collected posture data of each frame, and then realize the serial port transmission function of the posture data through the wired connection relationship between it and the vehicle-mounted industrial computer; the first position data of each frame, the second position data of each frame and the third position data of the single frame are all collected by the vehicle-mounted GPS (Global Positioning The position data is collected by a vehicle-mounted GPS device, and the vehicle-mounted GPS device can perform system timing on any frame of collected position data, and then realize the serial port transmission function of the position data through the wired connection relationship between the vehicle-mounted GPS device and the vehicle-mounted industrial computer.
[0058] In an embodiment of the present invention, when a vehicle remains stationary for a period of time (i.e., before the vehicle travels), the laser radar is used to collect and obtain multiple frames of first point clouds of the vehicle's surrounding environment during this period of time, the on-board inertial navigation device is used to collect and obtain multiple frames of first posture data of the vehicle during this period of time, and the on-board GPS device is used to collect and obtain multiple frames of first position data of the vehicle during this period of time, and the multiple frames of first posture data correspond to the multiple frames of first position data in a time synchronization relationship. At this time, the multiple frames of first posture data and the multiple frames of first position data are bundled according to the associated timestamps to obtain multiple frames of first posture data.
[0059] On this basis, the specific implementation process of the above step S110 includes but is not limited to the following steps:
[0060] S111, using an existing StatisticalOutlierRemoval filter to perform a filtering operation on each frame of the first point cloud in the multiple frames of first point cloud;
[0061] S112, performing a downsampling operation on the filtered multiple frames of first point clouds, thereby obtaining a plurality of frames of first point clouds containing a relatively small amount of point cloud data;
[0062] S113: Considering that the multi-frame first position data is currently represented in a geodetic coordinate system, that is, the multi-frame first position data is in a latitude and longitude format and cannot be directly solved, the multi-frame first position data is converted to a UTM (Universal Transverse Mercator Grid System) coordinate system for representation, and then the multi-frame first posture data and the multi-frame first position data after coordinate conversion are bundled according to associated timestamps to obtain multi-frame fourth posture data to be matched;
[0063] S114, performing a synchronization processing operation on the plurality of frames of first point cloud data and the plurality of frames of fourth pose data in a time dimension to obtain a first point cloud set and a first pose data set;
[0064] S115. Establish a point cloud map coordinate system using the first position data of the first frame after coordinate conversion (which is obtained by performing coordinate conversion on the first position data of the single frame with the smallest timestamp among the multiple frames of first position data) as the coordinate origin, and wherein three coordinate axes in the point cloud map coordinate system that are perpendicular to each other point in the east, north, and celestial directions, respectively;
[0065] S116. Use the first pose data set to convert the first point cloud set into the point cloud map coordinate system and complete a point cloud overlay operation, thereby obtaining a local point cloud map.
[0066] In the above step S111, the KD-Tree (Euclidean clustering) algorithm is used to perform statistical analysis on all point cloud data contained in the first point cloud of each frame, and the average distance between each point cloud data and all neighboring point cloud data is calculated. When all the calculated average distances can conform to the Gaussian distribution (whose shape can be jointly determined by the mean and standard deviation), the point cloud data associated with the average distance outside the standard range (i.e., the distance threshold range determined by the mean and the standard deviation) is determined as an outlier and filtered out. This point cloud filtering operation can avoid retaining disordered interference points during the downsampling process mentioned in the above step S112, thereby affecting the final mapping effect.
[0067] In the above step S112, the filtered multi-frame first point cloud can form a three-dimensional point cloud space, wherein each filtered first point cloud frame carries a plurality of point cloud data, and the three-dimensional point cloud space is based on the laser radar as the center reference. Considering that the distribution of the filtered multi-frame first point cloud in the three-dimensional point cloud space is extremely uneven and there is a lot of redundant information, it will result in poor visualization effect after the final mapping and increase the operating burden of the on-board industrial computer. Therefore, the present invention introduces a regional downsampling strategy to perform a downsampling operation on the filtered multi-frame first point cloud on the basis of ensuring the integrity of the point cloud information. The specific performance is as follows:
[0068] First, the three-dimensional point cloud space is evenly divided into a plurality of sector-shaped areas according to a preset number, and the only intersection point between the plurality of sector-shaped areas is the center point of the three-dimensional point cloud space;
[0069] Secondly, a pre-built mathematical model is used to perform downsampling operations on all point cloud data within each sector area to achieve the purpose of reducing the amount of point cloud data in each sector area;
[0070] Finally, all remaining point cloud data within the plurality of sector-shaped areas are classified and divided based on the same timestamp to form a plurality of frames of first point clouds;
[0071] Wherein, the mathematical model is:
[0072]
[0073] Where S k Refers to the kth sector area, p ki Refers to the kth sector area S k The position information of the i-th point cloud data in the laser radar coordinate system is (px ki ,py ki ,pz ki), get the coordinate origin and point (px) of the laser radar coordinate system ki ,py ki ) between the rays, arctan(px ki ,py ki ) refers to the angle between the ray and the positive direction of the X-axis of the laser radar coordinate system, and arctan(py i ,px i )∈(-π,π), s is the preset number (i.e., the specific number of the multiple sector areas), k is the kth sector area S k The index value of , P refers to all point cloud data carried by the filtered multi-frame first point cloud, ∈ is the mathematical symbol belonging to, refers to the three-dimensional point cloud space, For mathematical symbols contained in .
[0074] It should be noted that since the downsampling task executed in each sector area is completely independent in algorithm logic, it can be executed simultaneously with the help of multiple GPU (Graphic Processing Unit) devices, thereby achieving the purpose of reducing computing power requirements and speeding up the running speed; in addition, the first point clouds of the several frames can be uniformly distributed in the three-dimensional point cloud space, and the feature expression capability of each point cloud data they carry is relatively strong.
[0075] In the embodiment of the present invention, the specific implementation process of the above step S114 includes the following steps:
[0076] S114.1. Pre-create a first preset queue and a second preset queue, each of length 10. The first preset queue and the second preset queue are both special linear lists that follow the first-in-first-out principle.
[0077] S114.2. Store the multiple frames of fourth pose data frame by frame into the first preset queue in ascending order of timestamps, and store the multiple frames of first point cloud data frame by frame into the second preset queue;
[0078] S114.3. Read the fourth pose data of the single frame currently arranged at the front (i.e., with the smallest timestamp) in the first preset queue, and read the first point cloud of the single frame currently arranged at the front (i.e., with the smallest timestamp) in the second preset queue;
[0079] S114.4. Obtain the timestamp associated with the single frame fourth posture data and record it as T GPS1 , and obtain the timestamp associated with the first point cloud of the single frame and record it as T lidar1 , then judge |T GPS1 -T lidar1|≤T set Is it true, where T set The preset time threshold is a non-zero value set in advance by the technician. If it is true, it means that the time synchronization requirement between the single-frame fourth pose data and the single-frame first point cloud is met, and the execution continues to step S114.5. If it is not true, it means that the time synchronization requirement between the single-frame fourth pose data and the single-frame first point cloud is not met, and the execution jumps to step S114.6.
[0080] S114.5. Directly extract the single-frame fourth pose data from the first preset queue and save it separately, and directly extract the single-frame first point cloud from the second preset queue and save it separately, then jump to step S114.7;
[0081] S114.6. According to the timestamp T GPS1 With timestamp T lidar1 The data update operation is completed by selecting one of the first preset queue and the second preset queue, and then continuing to execute step S114.7; wherein, the data update operation process is: when T GPS1 <T lidar1 When T GPS1 >T lidar1 When the first point cloud of the single frame is directly removed from the second preset queue;
[0082] S114.7. Determine whether at least one of the first preset queue and the second preset queue is in an empty data state; if so, directly end the current time synchronization processing operation, and then integrate all the fourth pose data originally saved into the first pose data set output, and integrate all the first point clouds originally saved into the first point cloud set output; if not, return to execute the above step S114.3.
[0083] In the embodiment of the present invention, the specific implementation process of the above step S116 includes the following steps:
[0084] S116.1. Extracting the first point cloud of the i-th frame from the first point cloud set, and extracting the fourth pose data of the i-th frame from the first pose data set; wherein the i-th frame first point cloud and the i-th frame fourth pose data meet a time synchronization requirement, and as can be seen from step S113 above, the i-th frame fourth pose data actually includes the i-th frame first pose data and the i-th frame first position data after coordinate conversion;
[0085] S116.2. Using the first pose data of the i-th frame, calculate the rotation matrix associated with the first point cloud of the i-th frame:
[0086]
[0087] Where R 1i is the rotation matrix associated with the first point cloud of the i-th frame, α 1i is the yaw angle recorded in the first attitude data of the i-th frame, β 1i is the roll angle recorded in the first posture data of the i-th frame, γ 1i is the pitch angle recorded in the first posture data of the i-th frame;
[0088] S116.3. Using the first position data of the i-th frame after coordinate transformation and the first position data of the first frame after coordinate transformation mentioned in step S115 above, calculate the translation matrix associated with the first point cloud of the i-th frame as follows:
[0089]
[0090] Where, T 1i is the translation matrix associated with the first point cloud of the i-th frame, (X 1i ,Y 1i ,Z 1i ) is the first position data of the i-th frame after coordinate conversion, and (X0, Y0, Z0) is the first position data of the first frame after coordinate conversion;
[0091] S116.4. Utilize the rotation matrix associated with the first point cloud of the i-th frame and the translation matrix associated with the first point cloud of the i-th frame to sequentially convert all point cloud data carried by the first point cloud of the i-th frame into the point cloud map coordinate system for representation; wherein the conversion formula for any point cloud data is as follows:
[0092]
[0093] In the formula, (x 1ij ,y 1ij ,z 1ij ) is the position information of the j-th point cloud data carried by the first point cloud of the i-th frame, The position information of the j-th point cloud data carried by the first point cloud of the i-th frame when converted to the point cloud map coordinate system;
[0094] S116.5. Determine whether i < N1, where N1 is the number of frames of all first point clouds included in the first point cloud set. If so, directly overlay all first point clouds in the point cloud map coordinate system to obtain a local point cloud map with richer features and a wider range. If not, assign i a value of i + 1, and return to step S116.1.
[0095] It should be noted that the above step S116.1 is executed starting from i=1.
[0096] In an embodiment of the present invention, after the vehicle travels around a predetermined experimental road, the laser radar is used to collect and obtain multiple frames of second point clouds of the vehicle's surrounding environment during the entire driving process, the on-board inertial navigation device is used to collect and obtain multiple frames of second posture data of the vehicle during the entire driving process, and the on-board GPS device is used to collect and obtain multiple frames of second position data of the vehicle during the entire driving process, and the multiple frames of second posture data correspond to the multiple frames of second position data in a time synchronization relationship. At this time, the multiple frames of second posture data and the multiple frames of second position data are bundled according to the associated timestamps to obtain multiple frames of second posture data.
[0097] On this basis, the specific implementation process of the above step S120 includes but is not limited to the following steps:
[0098] S121, using an existing StatisticalOutlierRemoval filter to perform a filtering operation on each frame of the second point cloud in the multiple frames of the second point cloud;
[0099] S122, performing a downsampling operation on the filtered multiple frames of second point cloud, thereby obtaining a plurality of frames of second point cloud containing a relatively small amount of point cloud data;
[0100] S123: Considering that the multi-frame second position data is currently represented in a geodetic coordinate system, that is, the multi-frame second position data is in a latitude and longitude high format and cannot be directly solved, the multi-frame second position data is converted to a UTM coordinate system for representation, and the multi-frame second posture data and the multi-frame second position data after coordinate conversion are bundled according to associated timestamps to obtain multi-frame fifth posture data to be matched;
[0101] S124, performing a synchronization operation on the plurality of frames of second point cloud data and the plurality of frames of fifth pose data in a time dimension to obtain a second point cloud set and a second pose data set;
[0102] S125. Use the second pose data set to further convert the second point cloud set into the point cloud map coordinate system to complete the point cloud filling operation and the point cloud overlay operation, and then update the local point cloud map to a static global point cloud map.
[0103] In the above step S121, the KD-Tree algorithm is used to perform statistical analysis on all point cloud data contained in the second point cloud of each frame, and the average distance between each point cloud data and all neighboring point cloud data is calculated. When all the calculated average distances can conform to the Gaussian distribution (whose shape can be jointly determined by the mean and standard deviation), the point cloud data associated with the average distance outside the standard range (i.e., the distance threshold range determined by the mean and the standard deviation) is determined as an outlier and filtered out. This point cloud filtering operation can avoid retaining disordered interference points during the downsampling process mentioned in the above step S122, thereby affecting the final mapping effect.
[0104] In the above step S122, the filtered multi-frame second point cloud can form a three-dimensional point cloud space (hereinafter referred to as the first three-dimensional point cloud space), wherein each frame of the filtered second point cloud carries a plurality of point cloud data, and the first three-dimensional point cloud space is also based on the laser radar as the center reference. Considering that the distribution of the filtered multi-frame second point cloud in the first three-dimensional point cloud space is extremely uneven and there is a lot of redundant information, it will result in poor visualization effect after the final mapping and increase the operating burden of the on-board industrial computer. Therefore, on the basis of ensuring the integrity of the point cloud information, the present invention introduces a regional downsampling strategy to perform a downsampling operation on the filtered multi-frame second point cloud, which is specifically manifested as follows:
[0105] First, the first three-dimensional point cloud space is evenly divided according to a first preset number to obtain a plurality of first sector-shaped areas, and a unique intersection point between the plurality of first sector-shaped areas is a center point of the first three-dimensional point cloud space;
[0106] Secondly, a pre-built first mathematical model is used to perform a downsampling operation on all point cloud data within each first sector area, so as to achieve the purpose of reducing the amount of point cloud data within each first sector area;
[0107] Finally, all remaining point cloud data within the plurality of first sector-shaped regions are classified and divided based on the same timestamp to form a plurality of frames of second point clouds;
[0108] Wherein, the first mathematical model is:
[0109]
[0110] Where S p Refers to the pth first sector area, p pq Refers to the first sector area S that falls in the pth p The position information of the qth point cloud data in the laser radar coordinate system is (px pq ,py pq ,pzpq ), get the coordinate origin and point (px) of the laser radar coordinate system pq ,py pq ) between the rays, arctan(px pq ,py pq ) refers to the angle between the ray and the positive direction of the X-axis of the laser radar coordinate system, and arctan(px pq ,py pq )∈(-π,π), s1 is the first preset number (ie, the specific number of the plurality of first sector-shaped areas), p is the pth first sector-shaped area S p The index value of , P1 refers to all point cloud data carried by the filtered multi-frame second point cloud, ∈ is the mathematical symbol belonging to, refers to the first three-dimensional point cloud space, For mathematical symbols contained in .
[0111] In the embodiment of the present invention, the specific implementation process of the above step S124 includes the following steps:
[0112] S124.1. Pre-create a third preset queue and a fourth preset queue, each of length 10. The third preset queue and the fourth preset queue are both special linear lists that follow the first-in-first-out principle.
[0113] S124.2. Store the multiple frames of fifth pose data frame by frame into the third preset queue in ascending order of timestamps, and store the multiple frames of second point cloud data frame by frame into the fourth preset queue;
[0114] S124.3. Read the fifth pose data of the single frame currently arranged at the front (i.e., with the smallest timestamp) in the third preset queue, and read the second point cloud of the single frame currently arranged at the front (i.e., with the smallest timestamp) in the fourth preset queue;
[0115] S124.4. Obtain the timestamp associated with the single frame fifth posture data and record it as T GPS2 , and obtain the timestamp associated with the second point cloud of the single frame and record it as T lidar2 , then judge |T GPS2 -T lidar2 |≤T set Is it true? If so, it means that the time synchronization requirement between the single-frame fifth pose data and the single-frame second point cloud is met, and step S124.5 is continued; if not, it means that the time synchronization requirement between the single-frame fifth pose data and the single-frame second point cloud is not met, and step S124.6 is skipped.
[0116] S124.5. Directly extract the single-frame fifth pose data from the third preset queue and save it separately, and directly extract the single-frame second point cloud from the fourth preset queue and save it separately, then jump to step S124.7;
[0117] S124.6. According to the timestamp T GPS2 With timestamp T lidar2 The data update operation is completed by selecting one of the third preset queue and the fourth preset queue, and then continuing to execute step S124.7; wherein, the data update operation process is: when T GPS2 <T lidar2 When T GPS2 >T lidar2 , directly removing the single-frame second point cloud from the fourth preset queue;
[0118] S124.7. Determine whether at least one of the third preset queue and the fourth preset queue is in an empty data state; if so, directly end the current time synchronization processing operation, and then integrate all the fifth posture data originally saved into the second posture data set output, and integrate all the second point clouds originally saved into the second point cloud set output; if not, return to execute the above step S124.3.
[0119] It should be noted that the present invention may also not execute the above-mentioned step S124.1. After executing the above-mentioned step S114.7, the first preset queue and the second preset queue are directly readjusted to the empty data state, and the first preset queue is defined as the third preset queue, and the second preset queue is defined as the fourth preset queue, and then the above-mentioned step S124.2 is started.
[0120] In the embodiment of the present invention, the specific implementation process of the above step S125 includes the following steps:
[0121] S125.1. Extracting the second point cloud of the i-th frame from the second point cloud set, and extracting the fifth pose data of the i-th frame from the second pose data set; wherein the second point cloud of the i-th frame and the fifth pose data of the i-th frame meet time synchronization requirements, and as can be seen from step S123 above, the fifth pose data of the i-th frame actually includes the second pose data of the i-th frame and the second position data of the i-th frame after coordinate conversion;
[0122] S125.2. Using the second pose data of the i-th frame, calculate the rotation matrix associated with the second point cloud of the i-th frame:
[0123]
[0124] Where R 2i is the rotation matrix associated with the second point cloud in the i-th frame, α 2i is the yaw angle recorded in the second posture data of the i-th frame, β 2i is the roll angle recorded in the second posture data of the i-th frame, γ 2i is the pitch angle recorded in the second posture data of the i-th frame;
[0125] S125.3. Using the coordinate-converted second position data of the i-th frame and the coordinate-converted first position data of the first frame mentioned in step S115 above, calculate the translation matrix associated with the second point cloud of the i-th frame as follows:
[0126]
[0127] Where, T 2i is the translation matrix associated with the second point cloud of the i-th frame, (X 2i ,Y 2i ,Z 2i ) is the second position data of the i-th frame after coordinate conversion;
[0128] S125.4. Utilize the rotation matrix associated with the second point cloud of the i-th frame and the translation matrix associated with the second point cloud of the i-th frame to sequentially convert all point cloud data carried by the second point cloud of the i-th frame into the point cloud map coordinate system for representation; wherein the conversion formula for any point cloud data is as follows:
[0129]
[0130] In the formula, (x 2ij ,y 2ij ,z 2ij ) is the position information of the j-th point cloud data carried by the second point cloud of the i-th frame, The position information of the j-th point cloud data carried by the second point cloud of the i-th frame when converted to the point cloud map coordinate system;
[0131] S125.5. Determine whether i < N2, where N2 is the number of frames of all second point clouds contained in the second point cloud set. If so, complete the point cloud filling operation for the point cloud map coordinate system, and then directly overlay all point clouds in the point cloud map coordinate system to update the local point cloud map to a static global point cloud map. If not, assign i + 1 to i, and return to step S125.1.
[0132] It should be noted that the above step S125.1 is executed starting from i=1.
[0133] In an embodiment of the present invention, when a vehicle is currently traveling on any road, the laser radar is used to collect and obtain the third point cloud of the current frame of the vehicle's surrounding environment during this driving process in real time, the on-board inertial navigation device is used to collect and obtain the third posture data of the current frame of the vehicle during this driving process in real time, and the on-board GPS device is used to collect and obtain the third position data of the current frame of the vehicle during this driving process in real time, and the third posture data of the current frame corresponds to the third position data of the current frame and has a time synchronization relationship. At this time, the third posture data of the current frame and the third position data of the current frame are bundled according to the associated timestamp to obtain the third posture data of the current frame.
[0134] On this basis, the specific implementation process of the above step S130 includes but is not limited to the following steps:
[0135] S131, obtain the timestamp associated with the third posture data of the current frame and record it as T GPS3 , and obtain the timestamp associated with the third point cloud of the current frame and record it as T lidar3 , then judge |T GPS3 -T lidar3 |≤T set Is it established? If so, it means that the third pose data of the current frame and the third point cloud of the current frame meet the time synchronization requirement. At this time, the third pose data of the current frame is defined as the third pose data of a single frame, and the third point cloud of the current frame is defined as the third point cloud of a single frame, and then the process jumps to step S133. If not, it means that the third pose data of the current frame and the third point cloud of the current frame cannot meet the time synchronization requirement. At this time, the process continues to step S132.
[0136] S132, according to the timestamp T GPS3 With timestamp T lidar3 The size relationship between them is selected from the third pose data of the current frame and the third point cloud of the current frame to complete the data update operation, and then return to execute the above step S131; wherein, the data update operation process is: when T GPS3 <T lidar3 When T GPS3 >T lidar3 When , get the third point cloud of the next frame and use it as the new third point cloud of the current frame;
[0137] S133. Map the center point of the third point cloud of the single frame to the point cloud map coordinate system of the static global point cloud map. At this time, a screening range is constructed on the static global point cloud map based on the center point and a predetermined radius (preferably 10 meters in the present invention). Then, all point cloud data in the static global point cloud map that falls within the screening range is removed. The screening range is actually a cylinder that just passes through the static global point cloud map, and the cylinder is perpendicular to the plane containing the east coordinate axis and the north coordinate axis in the point cloud map coordinate system.
[0138] S134, using an existing StatisticalOutlierRemoval filter to perform a filtering operation on the single-frame third point cloud;
[0139] S135: The single-frame third posture data is composed of the single-frame third position data and the single-frame third posture data. Considering that the single-frame third position data is currently represented in the geodetic coordinate system, that is, the single-frame third position data is in the latitude and longitude high format and cannot be directly solved, the single-frame third position data is converted to the UTM coordinate system for representation, and the single-frame third posture data and the single-frame third position data after coordinate conversion are bundled according to the associated timestamp to obtain the single-frame sixth posture data;
[0140] S136. Use the single-frame sixth pose data to further convert the filtered single-frame third point cloud to the point cloud map coordinate system of the static global point cloud map updated in step S133 to complete the point cloud filling operation and the point cloud overlay operation, and then output the final static global point cloud map as a real-time global point cloud map.
[0141] In the above step S134, the KD-Tree algorithm is used to perform statistical analysis on all point cloud data carried by the single-frame third point cloud, and the average distance between each point cloud data and all adjacent point cloud data is calculated. When all the calculated average distances can conform to the Gaussian distribution (whose shape can be jointly determined by the mean and the standard deviation), the point cloud data associated with the average distance outside the standard range (i.e., the distance threshold range determined by the mean and the standard deviation) is determined as an outlier and filtered out.
[0142] In the embodiment of the present invention, the specific implementation process of the above step S136 includes the following steps:
[0143] S136.1. Using the single-frame third posture data, calculate the rotation matrix associated with the filtered single-frame third point cloud:
[0144]
[0145] Wherein, R3 is the rotation matrix associated with the filtered single-frame third point cloud, α3 is the yaw angle recorded in the single-frame third posture data, β3 is the roll angle recorded in the single-frame third posture data, and γ3 is the pitch angle recorded in the single-frame third posture data;
[0146] S136.2. Using the coordinate-converted third position data of the single frame and the coordinate-converted first position data of the first frame mentioned in step S115 above, calculate the translation matrix associated with the filtered third point cloud of the single frame:
[0147]
[0148] Where T3 is the translation matrix associated with the filtered third point cloud of the single frame, and (X3, Y3, Z3) is the third position data of the single frame after coordinate transformation;
[0149] S136.3. Utilizing the rotation matrix associated with the filtered single-frame third point cloud and the translation matrix associated with the filtered single-frame third point cloud, all point cloud data carried by the filtered single-frame third point cloud are sequentially converted to the point cloud map coordinate system of the static global point cloud map updated in step S133 above, thereby completing the point cloud filling operation in the point cloud map coordinate system. The conversion formula for any point cloud data is as follows:
[0150]
[0151] In the formula, (x 3j ,y 3j ,z 3j ) is the position information of the j-th point cloud data carried by the third point cloud of the filtered single frame, The position information of the j-th point cloud data carried by the filtered single-frame third point cloud when converted to the point cloud map coordinate system;
[0152] S136.4. Directly overlay all point clouds in the current point cloud map coordinate system processed in step S136.3 above, and then output the resulting static global point cloud map as a real-time global point cloud map.
[0153] It should be noted that the above step S136.1 is executed starting from i=1.
[0154] In an embodiment of the present invention, when the vehicle is currently traveling on any road and has not yet stopped and turned off the engine, the above-mentioned step S130 should be run in real time, and the static global point cloud map constructed by the above-mentioned step S120 should be continuously updated, and each update will be output as a real-time global point cloud map; in addition, based on the wireless connection relationship between the on-board industrial computer and the background server, after each execution of the above-mentioned step S130, the on-board industrial computer calls the existing point cloud visualization and streaming tool to push the currently output real-time global point cloud map to the background server for visual presentation on the web page, and the background server will save the currently pushed real-time global point cloud map once every hour for researchers to remotely access and view through the local area network, wherein the point cloud visualization and streaming tool is composed of ros3djs, roslibjs and rosbridge_server.
[0155] In an embodiment of the present invention, the real-time point cloud of the vehicle's surroundings, which is time-synchronized, is converted into a predetermined point cloud map coordinate system using the vehicle's real-time pose data. This allows for real-time acquisition of the vehicle's absolute position information, contributing to the construction of a more reliable global point cloud map. Compared to existing laser SLAM and visual SLAM technologies that rely solely on point clouds for relative positioning, the real-time global point cloud map construction method provided by the present invention can be applied to various driving scenarios, is less affected by the environment, and can effectively address the problem of vehicle position loss during the mapping process.
[0156] Please refer to Figure 2 , Figure 2 : is a schematic diagram of the composition of a real-time global point cloud map construction system provided by an embodiment of the present invention, the system comprising:
[0157] A construction module 210 is configured to construct a local point cloud map based on multiple frames of first pose data of the vehicle and multiple frames of first point clouds of the vehicle's surroundings collected during the stationary time before the vehicle travels (i.e., when the vehicle remains stationary);
[0158] A filling module 220 is configured to perform a point cloud filling operation on the local point cloud map after the vehicle drives around a predetermined experimental road, based on multiple frames of second pose data of the vehicle and multiple frames of second point clouds of the vehicle's surrounding environment collected during the driving process, thereby obtaining a static global point cloud map;
[0159] The update module 230 is used to perform an update operation on the static global point cloud map when the vehicle is traveling on any road based on the single-frame third pose data of the vehicle and the single-frame third point cloud of the vehicle's surrounding environment collected in real time, thereby forming a real-time global point cloud map.
[0160] The contents of the above method embodiments are all applicable to the present system embodiments. The functions implemented by the present system embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are the same as those of the above method embodiments, which will not be repeated here.
[0161] In addition, an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the real-time global point cloud map construction method of the above embodiment is implemented. The computer-readable storage medium includes, but is not limited to, any type of disk (including floppy disks, hard disks, optical disks, CD-ROMs, and magneto-optical disks), ROM (Read-Only Memory), RAM (Random Access Memory), EPROM (Erasable Programmable Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), flash memory, magnetic card, or optical card. In other words, the storage device includes any medium that stores or transmits information in a readable form by a device (such as a computer, mobile phone, etc.), which can be a read-only memory, a disk, or an optical disk, etc.
[0162] also, Figure 3 3 is a schematic diagram of the hardware structure of a computer device provided in an embodiment of the present invention, wherein the computer device includes a processor 320, a memory 330, an input unit 340, a display unit 350 and other components. It can be understood by those skilled in the art that Figure 3 The device structure components shown do not constitute a limitation on all devices, and may include more or fewer components than shown, or combine certain components. The memory 330 can be used to store the computer program 310 and various functional modules, and the processor 320 runs the computer program 310 stored in the memory 330, thereby executing various functional applications and data processing of the device. The memory can be an internal memory or an external memory, or include an internal memory and an external memory. The internal memory may include a read-only memory (ROM), a programmable ROM (PROM), an electrically programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), a flash memory, or a random access memory. The external memory may include a hard disk, a floppy disk, a ZIP disk, a USB flash drive, a magnetic tape, etc. The memory 330 disclosed in the embodiment of the present invention includes but is not limited to the above-mentioned types of memory. The memory 330 disclosed in the embodiment of the present invention is only an example and not a limitation.
[0163] The input unit 340 is used to receive input signals and keywords entered by the user. The input unit 340 may include a touch panel and other input devices. The touch panel can detect user touch operations on or near it (e.g., operations performed by a user using a finger, stylus, or any other suitable object or accessory on or near the touch panel) and drive corresponding connected devices according to pre-set programs. Other input devices may include, but are not limited to, one or more of a physical keyboard, function keys (e.g., playback control keys, on / off keys, etc.), a trackball, a mouse, a joystick, etc. The display unit 350 can be used to display information entered by the user or provided to the user, as well as various menus of the terminal device. The display unit 350 may take the form of a liquid crystal display, an organic light-emitting diode, etc. The processor 320 is the control center of the terminal device, connecting the various components of the entire device using various interfaces and circuits. It performs various functions and processes data by running or executing software programs and / or modules stored in the memory 320 and accessing data stored in the memory.
[0164] As an embodiment, the computer device includes a processor 320, a memory 330 and a computer program 310, wherein the computer program 310 is stored in the memory 330 and is configured to be executed by the processor 320, and the computer program 310 is configured to execute the real-time global point cloud map construction method in the above embodiment.
[0165] Although the description of the present application has been quite detailed and specifically describes several embodiments, it is not intended to be limited to any of these details or embodiments or any particular embodiment, but should be considered to provide a broad possible interpretation of these claims by reference to the appended claims, taking into account the prior art, so as to effectively cover the intended scope of the present application. In addition, the above description of the present application is based on the embodiments foreseen by the inventors, which is intended to provide a useful description, and those non-substantial changes to the present application that have not yet been foreseen may still represent equivalent changes to the present application.
Claims
1. A real-time global point cloud map construction method, characterized in that: The method comprises: Step 100: Before the vehicle travels, construct a local point cloud map based on the collected multi-frame first point cloud of the vehicle's surrounding environment and the multi-frame first pose data of the vehicle; Step 200: When the vehicle makes a circle on the predetermined experimental road, the local point cloud map is filled with point clouds based on the collected multi-frame second point cloud data of the vehicle's surrounding environment and the multi-frame second pose data of the vehicle to obtain a static global point cloud map; Step 300: When the vehicle is traveling on any road, the static global point cloud map is updated based on the real-time collected single-frame third point cloud of the vehicle's surrounding environment and the single-frame third pose data of the vehicle to form a real-time global point cloud map; Wherein, the step 100 includes: Step 110: performing filtering processing on the multiple frames of first point clouds; Step 120: down-sample the filtered multiple frames of first point clouds to obtain multiple frames of first point clouds; Step 130: The multi-frame first pose data includes a multi-frame first position data and a multi-frame first pose data. The multi-frame first position data is converted from a geodetic coordinate system to a UTM coordinate system. Time synchronization is then performed on the multi-frame first pose data and the plurality of frames of first point clouds to obtain a first pose data set and a first point cloud set. Step 140: construct a point cloud map coordinate system based on the first position data of the first frame after coordinate conversion, and then use the first pose data set to convert the first point cloud set into the point cloud map coordinate system for superposition to form a local point cloud map; Wherein, each frame of the first point cloud after filtering contains a plurality of point cloud data, and the step 120 includes: The three-dimensional point cloud space formed by the filtered multi-frame first point cloud is evenly divided into multiple sector-shaped areas, and then all point cloud data falling within each sector-shaped area are downsampled using a mathematical model to obtain several frames of first point cloud. The mathematical model is: Where, is the kth sector area, is the i-th point cloud data falling within the k-th sector area, which is collected by the lidar and its position information in the lidar coordinate system is , The positive direction of the X axis passes through the point The angle between the ray and the origin of the coordinate system, is the number of the plurality of sector-shaped areas, is all the point cloud data contained in the first point cloud of the filtered multi-frame, is the three-dimensional point cloud space.
2. The real-time global point cloud map construction method according to claim 1, characterized in that: In step 130, the first position data of the plurality of frames after coordinate conversion, the plurality of frames of first posture data and the plurality of frames of first point clouds are subjected to time synchronization processing to obtain the first pose data set and the first point cloud set, including: Step 131: determining a plurality of frames of fourth posture data to be matched based on the plurality of frames of first position data after coordinate conversion and the plurality of frames of first posture data; Step 132: storing the plurality of frames of fourth pose data in ascending order of timestamps into a first preset queue, and storing the plurality of frames of first point clouds in ascending order of timestamps into a second preset queue; Step 133: read the fourth pose data of the single frame arranged at the front from the first preset queue, and read the first point cloud of the single frame arranged at the front from the second preset queue; Step 134: Determine whether the absolute value of the difference between the timestamp of the single-frame fourth pose data and the timestamp of the single-frame first point cloud is less than or equal to a preset time threshold; if so, extract the single-frame fourth pose data from the first preset queue for storage, and extract the single-frame first point cloud from the second preset queue for storage, and then execute step 135; if not, remove the single-frame fourth pose data with a smaller timestamp from the first preset queue, or remove the single-frame first point cloud with a smaller timestamp from the second preset queue, and then execute step 135; Step 135, determine whether at least one of the first preset queue and the second preset queue is empty; if so, form all the saved fourth pose data into a first pose data set for output, and form all the saved first point clouds into a first point cloud set for output; if not, return to step 133.
3. The real-time global point cloud map construction method according to claim 2, characterized in that: In step 140, using the first pose data set to convert the first point cloud set into the point cloud map coordinate system for overlaying to form a local point cloud map includes: Acquire a single-frame first point cloud from the first point cloud set, and then acquire a single-frame fourth pose data that is time-synchronized with the single-frame first point cloud from the first pose data set; The single-frame fourth posture data includes the single-frame first position data and the single-frame first posture data after coordinate conversion, the rotation matrix is determined according to the single-frame first posture data, and the translation matrix is determined according to the first-frame first position data after coordinate conversion and the single-frame first position data after coordinate conversion; Convert all point cloud data contained in the single-frame first point cloud into the point cloud map coordinate system according to the rotation matrix and the translation matrix; The above steps are executed cyclically until all point cloud data contained in all first point clouds in the first point cloud set are converted into the point cloud map coordinate system representation and then the point cloud overlay is completed to form a local point cloud map.
4. The real-time global point cloud map construction method according to claim 1, characterized in that: The step 200 includes: Performing filtering processing on the multiple frames of second point clouds; Downsampling the filtered multi-frame second point cloud to obtain several frames of second point cloud; The multiple frames of second pose data include multiple frames of second position data and multiple frames of second posture data, converting the multiple frames of second position data from a geodetic coordinate system to a UTM coordinate system, and then combining the multiple frames of second posture data with the multiple frames of second point clouds for time synchronization processing to obtain a second pose data set and a second point cloud set; The second point cloud set is converted into the point cloud map coordinate system where the local point cloud map is located using the second pose data set to perform point cloud filling and overlaying to obtain a static global point cloud map.
5. The real-time global point cloud map construction method according to claim 1, characterized in that: The single-frame third point cloud and the single-frame third pose data are in a time synchronization relationship, and step 300 includes: Mapping the center point of the single-frame third point cloud to the point cloud map coordinate system of the static global point cloud map, and then removing all point cloud data within a predetermined radius of the center point from the static global point cloud map; Performing filtering processing on the single-frame third point cloud; The single-frame third pose data includes single-frame third position data and single-frame third posture data. The single-frame third position data is converted from the geodetic coordinate system to the UTM coordinate system, and then combined with the single-frame third posture data, the filtered single-frame third point cloud is converted to the point cloud map coordinate system where the updated static global point cloud map is located for point cloud filling and overlaying, and then the current static global point cloud map is output as a real-time global point cloud map.
6. A real-time global point cloud map construction system, characterized in that: The system comprises: A construction module is used to construct a local point cloud map based on the collected multi-frame first point cloud of the vehicle's surrounding environment and the multi-frame first pose data of the vehicle before the vehicle drives; a filling module, configured to fill the local point cloud map with point clouds based on the collected multi-frame second point clouds of the vehicle's surrounding environment and the multi-frame second pose data of the vehicle when the vehicle makes a circle on the predetermined experimental road, so as to obtain a static global point cloud map; An updating module is configured to update the static global point cloud map to form a real-time global point cloud map based on the single-frame third point cloud of the vehicle's surrounding environment and the single-frame third pose data of the vehicle collected in real time when the vehicle is traveling on any road; The step of constructing a local point cloud map based on the collected multi-frame first point cloud data of the vehicle's surrounding environment and the multi-frame first pose data of the vehicle before the vehicle travels includes: Performing filtering processing on the multiple frames of first point clouds; Downsampling the filtered multi-frame first point clouds to obtain several frames of first point clouds; The multi-frame first pose data includes a multi-frame first position data and a multi-frame first pose data, converting the multi-frame first position data from a geodetic coordinate system to a UTM coordinate system, and then combining the multi-frame first pose data and the plurality of frames of first point clouds for time synchronization processing to obtain a first pose data set and a first point cloud set; Constructing a point cloud map coordinate system based on the first position data of the first frame after coordinate conversion, and then using the first pose data set to convert the first point cloud set into the point cloud map coordinate system for superposition to form a local point cloud map; Each frame of the filtered first point cloud contains a plurality of point cloud data, and the downsampling process is performed on the filtered multiple frames of the first point cloud to obtain the plurality of frames of the first point cloud. The downsampling process includes: The three-dimensional point cloud space formed by the filtered multi-frame first point cloud is evenly divided into multiple sector-shaped areas, and then all point cloud data falling within each sector-shaped area are downsampled using a mathematical model to obtain several frames of first point cloud. The mathematical model is: Where, is the kth sector area, is the i-th point cloud data falling within the k-th sector area, which is collected by the lidar and its position information in the lidar coordinate system is , The positive direction of the X axis passes through the point The angle between the ray and the origin of the coordinate system, is the number of the plurality of sector-shaped areas, is all the point cloud data contained in the first point cloud of the filtered multi-frame, is the three-dimensional point cloud space.
7. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: The processor executes the computer program to implement the real-time global point cloud map construction method according to any one of claims 1 to 5.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the real-time global point cloud map construction method according to any one of claims 1 to 5 is implemented.
Citation Information
Patent Citations
Positioning method and device based on three-dimensional point cloud, equipment and storage medium
CN113538699A
Indoor real-time three-dimensional reconstruction method based on depth camera
CN114782628A