Map reconstruction method and apparatus, and storage medium and electronic device
Through the optimization of time-of-flight sensors and TSDF values, the problem of the sweeping robot's inability to accurately reconstruct three-dimensional maps was solved, efficient and accurate three-dimensional map construction was achieved, and the cleaning ability of the cleaning robot was improved.
Patent Information
- Application Number
- PCT/CN2025/081978
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-03-12
- Filing Date
- 2025-03-12
- Publication Date
- 2025-09-18
AI Technical Summary
Existing sweeping robots are unable to accurately reconstruct three-dimensional maps, resulting in insufficient cleaning efficiency and accuracy.
The observation data is acquired by a time-of-flight sensor. Through voxel resolution downsampling, conversion processing and obstacle type determination, combined with TSDF value optimization, a three-dimensional voxel map is constructed, and two-dimensional or three-dimensional conversion is performed to obtain an accurate three-dimensional map.
The sweeping robot can accurately reconstruct a three-dimensional map of the environment, improve cleaning efficiency and accuracy, and enhance path planning and obstacle avoidance capabilities.
Smart Images

Figure CN2025081978_18092025_PF_FP_ABST
Abstract
Description
Map reconstruction method, device, storage medium and electronic device
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on March 12, 2024, with application number 202410282522.9 and application name “A map reconstruction method, device, storage medium and electronic device”, the entire contents of which are incorporated by reference into the application. Technical Field
[0003] The present application relates to the field of data processing technology, and in particular to a map reconstruction method, device, storage medium and electronic device. Background Art
[0004] With the continuous development of science and technology, the popularity of sweeping robots has gradually increased. Using sweeping robots to remove dust and foreign objects has made people's lives more convenient and comfortable.
[0005] Before using a sweeping robot for the first time, a cleaning map is usually constructed. However, existing cleaning maps are usually constructed in a two-dimensional manner and cannot accurately reconstruct a three-dimensional map. Summary of the Invention
[0006] The present application provides a map construction method, apparatus, medium and equipment.
[0007] This application provides a map construction method, including:
[0008] Obtaining some current observation data collected by the time-of-flight sensor at the current viewpoint;
[0009] Based on each of the current observation data, determining a current voxel of each of the current observation data in a map coordinate system;
[0010] Determining a number of current non-obstruction voxels based on each of the current voxels and the current viewpoint;
[0011] On the basis of the historical 3D voxel map reconstructed based on the previous viewpoint, the current 3D voxel map is constructed based on each of the current non-obstacle object pixels to obtain the current 3D voxel map, until the construction of the 3D voxel map under each viewpoint is completed to obtain the target 3D voxel map.
[0012] Optionally, determining a current voxel of each current observation data in a map coordinate system based on each current observation data specifically includes:
[0013] For each of the current observation data, downsampling is performed according to the voxel resolution to obtain processed observation data;
[0014] Based on the sensor extrinsic parameters of the time-of-flight sensor and the position information of the time-of-flight sensor in the map coordinate system, converting each of the processed observation data to obtain target observation data in the map coordinate system;
[0015] Voxel processing is performed on each of the target observation data to obtain voxel coordinates to determine the current voxel corresponding to each target observation data.
[0016] Optionally, before constructing the current three-dimensional voxel map, the method further includes: determining the obstacle type of each current voxel, specifically including:
[0017] Determining, based on the historical observation data of the previous viewpoint, a historical normal vector corresponding to each of the historical observation data;
[0018] Based on each current observation data under the current viewpoint, determine the current normal vector corresponding to each current observation data;
[0019] Based on the current normal vector of each current observation data and the historical normal vector of the historical observation data of the previous viewpoint, it is determined whether the obstacle type of the current voxel corresponding to each current observation data is a boundary obstacle or a non-boundary obstacle.
[0020] Optionally, the constructing of the current 3D voxel map based on the historical 3D voxel map reconstructed based on the previous viewpoint and based on each of the current non-obstruction pixels includes:
[0021] On the basis of the historical three-dimensional voxel map reconstructed based on the previous viewpoint, the current three-dimensional voxel map is constructed based on the current non-obstacle voxels and the obstacle type of the current voxels.
[0022] Optionally, determining a number of current non-obstruction pixels based on each current voxel and the current viewpoint includes:
[0023] constructing a current line segment corresponding to each current voxel based on the voxel coordinates of each current voxel and the viewpoint coordinates of the current viewpoint;
[0024] Determining that the voxel passed by each current line segment is the first non-obstacle voxel;
[0025] A predetermined number of voxels along the extending direction of each line segment that are not observed by the current viewpoint are determined as second non-obstacle voxels.
[0026] The plurality of current non-obstacle pixels are obtained based on each of the first non-obstacle pixels and each of the second non-obstacle pixels.
[0027] Optionally, before constructing the current three-dimensional voxel map, the method further includes:
[0028] Based on each current voxel, determining each initial truncated signed distance function (TSDF) value of each historical obstacle pixel under each current obstacle pixel; the historical obstacle pixel is the obstacle pixel determined when reconstructing the historical 3D voxel map;
[0029] For each initial TSDF value based on the same historical obstacle pixel, a target TSDF value corresponding to each historical obstacle pixel and used for reconstructing the current three-dimensional voxel map is determined.
[0030] Optionally, after obtaining the target three-dimensional voxel map, the method further includes:
[0031] Performing a two-dimensional conversion on the three-dimensional voxel map to obtain a two-dimensional grid map;
[0032] Alternatively, the three-dimensional voxel map is subjected to a patch conversion to obtain a three-dimensional patch map.
[0033] This application provides a map construction device, comprising:
[0034] An acquisition module is used to acquire a number of current observation data collected by the time-of-flight sensor at the current viewpoint;
[0035] A first determining module is configured to determine a current voxel of each current observation data in a map coordinate system based on each current observation data;
[0036] A second determination module is configured to determine a number of current non-obstruction pixels based on each of the current voxels and the current viewpoint;
[0037] The construction module is used to construct the current 3D voxel map based on the historical 3D voxel map reconstructed based on the previous viewpoint and based on each of the current non-obstacle object pixels, thereby obtaining the current 3D voxel map, until the construction of the 3D voxel map under each viewpoint is completed and the target 3D voxel map is obtained.
[0038] The present application provides a storage medium storing a computer program, which implements the steps of any one of the above-mentioned map construction methods when executed by a processor.
[0039] The present application provides an electronic device, comprising at least a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of any one of the above-mentioned map construction methods when executing the computer program on the memory.
[0040] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] Various other advantages and benefits will become apparent to those skilled in the art upon reading the detailed description of the preferred embodiment below. The accompanying drawings are for illustration purposes only and are not to be considered as limiting the present application. The same reference symbols are used throughout the drawings to represent the same components. In the drawings:
[0042] FIG1 is a flow chart of a map construction method according to an embodiment of the present application;
[0043] FIG2 is a structural block diagram of a map construction device according to another embodiment of the present application;
[0044] FIG3 is a structural block diagram of an electronic device according to another embodiment of the present application. DETAILED DESCRIPTION
[0045] Various aspects and features of the present application are described herein with reference to the accompanying drawings.
[0046] It should be understood that various modifications may be made to the embodiments of the present application. Therefore, the above description should not be considered as limiting, but merely as an example of an embodiment. Other modifications within the scope and spirit of the present application will occur to those skilled in the art.
[0047] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the present application and, together with the general description of the present application given above and the detailed description of the embodiments given below, serve to explain the principles of the present application.
[0048] These and other characteristics of the present application will become apparent from the following description of a preferred form of embodiment given as a non-limiting example with reference to the accompanying drawings.
[0049] It should also be understood that although the present application has been described with reference to certain specific examples, those skilled in the art will readily be able to implement many other equivalent forms of the present application.
[0050] The above and other aspects, features and advantages of the present application will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings.
[0051] Specific embodiments of the present application will be described hereinafter with reference to the accompanying drawings; however, it should be understood that the embodiments described are merely examples of the present application and may be implemented in a variety of ways. Familiar and / or repetitive functions and structures are not described in detail to avoid obscuring the present application with unnecessary or redundant details. Therefore, the specific structural and functional details described herein are not intended to be limiting, but rather serve merely as a basis and representative basis for the claims to teach those skilled in the art to variously utilize the present application with substantially any suitable detailed structure.
[0052] This specification may use the phrases "in one embodiment," "in another embodiment," "in yet another embodiment," or "in other embodiments," which may all refer to one or more of the same or different embodiments according to the present application.
[0053] The present application provides a map construction method, which can be applied to electronic devices such as cleaning robots. As shown in FIG1 , the method in this embodiment includes the following steps:
[0054] Step S101, obtaining a number of current observation data collected by the time-of-flight sensor at the current viewpoint;
[0055] In this step, the current viewpoint refers to the location in the scene where the TOF sensor is currently located and where map reconstruction is required. The current observation data refers to the depth estimation data, that is, the TOF data collected by the TOF sensor at the current viewpoint. It can also be understood that at the current viewpoint, when the TOF sensor detects an obstacle, the time difference between the light emission time and the light reception time after reflection from the obstacle can be determined to obtain the time of flight data.
[0056] Step S102, determining a current voxel of each current observation data in a map coordinate system based on each current observation data;
[0057] In this step, after obtaining the current observation data, the current observation data can be converted to convert the coordinates of the observation data into the map coordinate system, thereby obtaining the current voxel in the map coordinate system based on the converted observation data, that is, obtaining the TOF point corresponding to each observation data.
[0058] Step S103, determining a number of current non-obstruction voxels based on each current voxel and the current viewpoint;
[0059] In this step, after determining each current voxel, since the current voxel / TOF point refers to the data point of obstacle detection feedback, there is no obstacle on the line segment formed by the TOF point and the current viewpoint, thereby determining several current non-obstacle pixels.
[0060] Step S104, based on the historical 3D voxel map reconstructed based on the previous viewpoint, the current 3D voxel map is constructed based on each of the current non-obstacle pixels to obtain the current 3D voxel map, until the construction of the 3D voxel map under each viewpoint is completed to obtain the target 3D voxel map.
[0061] In this step, after obtaining a number of current non-obstruction pixels, the previously reconstructed historical 3D voxel map is further reconstructed based on the coordinates of each current non-obstruction pixel, thereby obtaining the current 3D voxel map. This process continues until the cleaning robot has traversed all reachable areas, meaning that the TOF sensor has traversed all viewpoints. The 3D voxel map is then reconstructed based on each viewpoint, gradually completing the reconstruction process to obtain the target 3D voxel map.
[0062] The method in the present application is to provide a cleaning robot with a time-of-flight TOF sensor. By utilizing the time-of-flight sensor to collect observation data at various viewpoints, the observation data can be voxelized and a number of current non-obstacle object pixels can be obtained. Subsequently, the data can be accumulated into the historical three-dimensional voxel map reconstructed by the previous viewpoint, thereby completing the construction of the current three-dimensional voxel map. After the cleaning robot traverses all reachable areas, that is, the TOF sensor traverses all viewpoints, the reconstruction of the three-dimensional voxel map is gradually completed based on each viewpoint in turn, thereby accurately reconstructing the three-dimensional map.
[0063] Another embodiment of the present application provides a map construction method. In this embodiment, when determining the current voxel corresponding to each observation data, the following method can be used:
[0064] Each of the current observation data can be downsampled according to the voxel resolution to obtain the processed observation data; then, based on the sensor extrinsic parameters of the time-of-flight sensor and the position information of the time-of-flight sensor in the map coordinate system, each of the processed observation data is converted to obtain the target observation data in the map coordinate system; finally, each of the target observation data is voxelized to obtain voxel coordinates to determine the current voxel corresponding to each target observation data. In this embodiment, if another sensor simultaneously provides red, green, and blue (RGB) data of the TOF point / current voxel, the RGB data can also be associated with each current voxel, thereby making the color of the subsequently reconstructed three-dimensional voxel map more consistent with the actual color of the scene area, making the visualization effect more intuitive.
[0065] Another embodiment of the present application provides a map construction method. In this embodiment, before constructing the current three-dimensional voxel map, the method further includes: determining the obstacle type of each current voxel, specifically including: determining the historical normal vector corresponding to each historical observation data based on the historical observation data of the previous viewpoint; determining the current normal vector corresponding to each current observation data based on the current observation data of the current viewpoint; and determining the obstacle type of the current voxel corresponding to each current observation data as a boundary obstacle or a non-boundary obstacle based on the current normal vector of each current observation data and the historical normal vector of the historical observation data of the previous viewpoint. That is, if the TOF point normal vector of the current voxel is opposite to the normal vector obtained at the previous moment, the probability of the current voxel being a boundary obstacle voxel is not increased, that is, the current voxel type is determined to be a non-boundary obstacle voxel type. Conversely, if the TOF point normal vector of the current voxel is the same as the normal vector obtained at the previous moment, the probability of the current voxel being a boundary voxel is increased, that is, the current voxel is determined to be a boundary obstacle voxel of the wall type. This allows the subsequent construction of a 3D voxel map based on the obstacle type of each current voxel and each current non-obstacle voxel. That is, based on the historical 3D voxel map reconstructed from the previous viewpoint, the current 3D voxel map is constructed based on the obstacle type of each current non-obstacle voxel and each current voxel. In this embodiment, by determining the obstacle type of the current voxel based on the normal vector of the observation data / TOF data, the obstacle type determination result can be made more reasonable and accurate, laying the foundation for the subsequent reconstruction of a 3D voxel map based on the obstacle type of the current voxel.
[0066] Another embodiment of the application provides a map construction method. In this embodiment, when determining a number of current non-obstruction pixels based on each current voxel and the current viewpoint, the following method can be used: constructing a current line segment corresponding to each current voxel based on the voxel coordinates of each current voxel and the viewpoint coordinates of the current viewpoint; determining the voxels passed by each current line segment as first non-obstruction pixels; and determining a predetermined number of voxels along the extension direction of each line segment that are not observed by the current viewpoint as second non-obstruction pixels. The number of current non-obstruction pixels is obtained based on each of the first non-obstruction pixels and each of the second non-obstruction pixels.
[0067] In this embodiment, a line segment is formed by connecting the current voxel where each TOF point is located with the current viewpoint, with the end of the line segment being the TOF point / current voxel. This increases the probability that the end voxel is a map boundary or obstacle, thereby determining whether the end voxel is a boundary obstacle or a non-boundary obstacle. Simultaneously, the probability that the voxel where the line segment passes through is an obstacle voxel is reduced, thereby determining whether the voxel the line segment passes through is a non-obstacle voxel. Furthermore, the probability that a predetermined number of voxels not observed by the current viewpoint are boundaries can be further reduced along the line segment. The predetermined number of voxels can be 3-7 voxels and can be adjusted based on actual needs. For example, the probability that three voxels not observed by the current viewpoint are boundaries can be reduced along the line segment, or the probability that five voxels not observed by the current viewpoint are boundaries can be reduced along the line segment, or the probability that seven voxels not observed by the current viewpoint are boundaries can be reduced along the line segment.
[0068] Another embodiment of the present application provides a map construction method. In this embodiment, due to errors in the TOF sensor's observation and positioning during observation, the boundaries of the voxel map, i.e., walls, may appear multi-layered. Therefore, the truncated signed distance function (TSDF) value of the voxel can be further determined. This can be combined with the voxel's TSDF value for map reconstruction, resulting in a more accurate and reasonable three-dimensional voxel map. The process for determining the voxel TSDF value in this embodiment is as follows: based on each current voxel, initial truncated signed distance function (TSDF) values are determined for each historical obstacle voxel at the current obstacle voxel; the historical obstacle voxels are obstacle voxels determined during historical three-dimensional voxel map reconstruction; and based on each initial TSDF value for the same historical obstacle voxel, target TSDF values corresponding to each historical obstacle voxel are determined for use in the current three-dimensional voxel map reconstruction. Specifically, this can be shown in Table 1 below. Voxel A represents the current voxel obtained based on current observation data, and voxels A1-A6 represent historical obstacle voxels near voxel A obtained based on historical observation data. "0" indicates that the distance between the current voxel A and the actual obstacle plane is zero. Since historical obstacle voxels A1-A6 are not observed from the current viewpoint, the distance value (TSDF value) must be increased according to the formula. For example, the TSDF value for A1 is increased by +1, for A2 by +1, and for A3 by +0.5. For example, the TSDF value for A4 is increased by -0.5, for A5 by -1, and for A6 by -1. A positive sign "+" indicates that the voxel is located before the object surface, and a negative sign "-" indicates that the voxel is located after the object surface. "0" indicates that the voxel is on the object surface.
[0069] Table 1:
[0070] In this embodiment, the first distance between the historical obstacle pixel and the current voxel can be determined, and then the first distance is divided by a predetermined cutoff distance. The initial TSDF value corresponding to the historical obstacle pixel is obtained based on the division result. For example, if the division result is less than the predetermined distance value, the division result is directly used as the initial TSDF value. Conversely, if the division result is greater than or equal to the predetermined distance value, "1" is used as the initial TSDF value. It can be understood that the smaller the division value, the closer it is to the plane, and after exceeding a certain distance, it is truncated to 1. In this embodiment, since there may be multiple current voxels under the same viewpoint, each historical obstacle pixel will correspond to an initial TSDF value for different current voxels. Therefore, the same obstacle pixel will correspond to multiple initial TSDF values. Therefore, these initial TSDF values can be averaged to obtain the target TSDF value corresponding to the historical obstacle pixel.
[0071] In this embodiment, after obtaining the target TSDF value of each historical obstacle pixel, the current three-dimensional voxel map can be constructed based on the target TSDF value of each historical obstacle pixel, laying the foundation for the subsequent accurate construction of the target three-dimensional voxel map, making the constructed target three-dimensional voxel map more reasonable and accurate.
[0072] In this embodiment, after constructing the target 3D voxel map, the method further includes converting the 3D voxel map into a 2D grid map. In this embodiment, in ground robot navigation, path planning and obstacle avoidance can be accomplished with only a 2D grid map. Therefore, the target 3D voxel map can be converted into a 2D grid map. Specifically, after map construction is completed, the 3D voxel map can be sliced according to the robot's height to reduce the dimensionality and obtain a 2D grid map.
[0073] In this embodiment, the 3D voxel map can also be transformed into a patchwork to obtain a 3D patch map. Specifically, a matching cube can be used to perform the patchwork transformation. In this embodiment, in map visualization, the presentation of a patch map is more intuitive than voxels and more consistent with human cognition. Therefore, transforming the 3D voxel map into a patchwork can improve the visualization effect.
[0074] Another embodiment of the present application provides a map construction device, as shown in FIG2 , comprising:
[0075] An acquisition module 11 is used to acquire a number of current observation data collected by the time-of-flight sensor at the current viewpoint;
[0076] A first determining module 12 is configured to determine a current voxel of each current observation data in a map coordinate system based on each current observation data;
[0077] A second determining module 13 is configured to determine a number of current non-obstruction pixels based on each of the current voxels and the current viewpoint;
[0078] The construction module 14 is used to construct the current 3D voxel map based on the historical 3D voxel map reconstructed based on the previous viewpoint and based on each of the current non-obstacle object pixels, thereby obtaining the current 3D voxel map, until the construction of the 3D voxel map under each viewpoint is completed to obtain the target 3D voxel map.
[0079] During the specific implementation of this embodiment, the first determination module is specifically used to: for each of the current observation data, downsample it according to the voxel resolution to obtain the processed observation data; based on the sensor extrinsic parameters of the time-of-flight sensor and the position information of the time-of-flight sensor in the map coordinate system, convert each of the processed observation data to obtain the target observation data in the map coordinate system; voxelize each of the target observation data to obtain voxel coordinates to determine the current voxel corresponding to each target observation data.
[0080] During the specific implementation of this embodiment, the map construction device also includes an obstacle type determination module, which is used to: determine the obstacle type of each current voxel before constructing the current three-dimensional voxel map, and is specifically used to: determine the historical normal vector corresponding to each historical observation data based on the historical observation data of the previous viewpoint; determine the current normal vector corresponding to each current observation data based on the current observation data under the current viewpoint; and determine whether the obstacle type of the current voxel corresponding to each current observation data is a boundary obstacle or a non-boundary obstacle based on the current normal vector of each current observation data and the historical normal vector of the historical observation data of the previous viewpoint.
[0081] In the specific implementation process of this embodiment, the construction module is specifically used to: construct the current three-dimensional voxel map based on the historical three-dimensional voxel map reconstructed based on the previous viewpoint, based on each of the current non-obstacle voxels and the obstacle type of each of the current voxels.
[0082] In a specific implementation of this embodiment, the second determination module is specifically configured to: construct a current line segment corresponding to each current voxel based on the voxel coordinates of each current voxel and the viewpoint coordinates of the current viewpoint; determine the voxels passed by each current line segment as first non-obstruction pixels; determine a predetermined number of voxels along the extension direction of each line segment that are not observed by the current viewpoint as second non-obstruction pixels; and obtain the plurality of current non-obstruction pixels based on each of the first non-obstruction pixels and each of the second non-obstruction pixels.
[0083] During the specific implementation of this embodiment, the map construction device further includes a third determination module, which is configured to: before constructing the current three-dimensional voxel map, the method further includes: determining, based on each current voxel, each initial truncated signed distance function (TSDF) value of each historical obstacle pixel under each current obstacle pixel; the historical obstacle pixel is an obstacle pixel determined when reconstructing the historical three-dimensional voxel map; and determining, for each initial TSDF value based on the same historical obstacle pixel, a target TSDF value corresponding to each historical obstacle pixel for use in reconstructing the current three-dimensional voxel map.
[0084] In the specific implementation process of this embodiment, the map construction device also includes a conversion module, which is used to: after obtaining the target three-dimensional voxel map, perform a two-dimensional conversion on the three-dimensional voxel map to obtain a two-dimensional grid map; or perform a patch conversion on the three-dimensional voxel map to obtain a three-dimensional patch map.
[0085] The device in this embodiment uses a time-of-flight sensor to collect observation data at various viewpoints, thereby voxelizing the observation data and obtaining a number of current non-obstacle object pixels, which can then be accumulated into the historical three-dimensional voxel map reconstructed by the previous viewpoint, thereby completing the construction of the current three-dimensional voxel map. After the cleaning robot traverses all reachable areas, that is, the TOF sensor traverses all viewpoints, the reconstruction of the three-dimensional voxel map is gradually completed based on each viewpoint in turn, thereby accurately reconstructing the three-dimensional map.
[0086] Another embodiment of the present application provides a storage medium storing a computer program. When the computer program is executed by a processor, the following method steps are implemented:
[0087] Step 1: Obtain a number of current observation data collected by the time-of-flight sensor at the current viewpoint;
[0088] Step 2: Based on each of the current observation data, determine the current voxel of each of the current observation data in the map coordinate system;
[0089] Step 3: determining a number of current non-obstruction voxels based on each of the current voxels and the current viewpoint;
[0090] Step 4: Based on the historical 3D voxel map reconstructed based on the previous viewpoint, the current 3D voxel map is constructed based on each of the current non-obstacle object pixels to obtain the current 3D voxel map, until the construction of the 3D voxel map under each viewpoint is completed to obtain the target 3D voxel map.
[0091] The specific implementation process of the above method steps can be found in the embodiments of any of the above map construction methods, and will not be repeated in this embodiment.
[0092] The storage medium in this application uses a time-of-flight sensor to collect observation data at various viewpoints, so that the observation data can be voxelized and a number of current non-obstacle object pixels can be obtained. Subsequently, they can be accumulated into the historical three-dimensional voxel map reconstructed by the previous viewpoint, thereby completing the construction of the current three-dimensional voxel map. After the cleaning robot traverses all reachable areas, that is, the TOF sensor traverses all viewpoints, the reconstruction of the three-dimensional voxel map is gradually completed based on each viewpoint in turn, thereby accurately reconstructing the three-dimensional map.
[0093] Another embodiment of the present application provides an electronic device, as shown in FIG3 , including at least a memory 1 and a processor 2. The memory 1 stores a computer program, and the processor 2 implements the following method steps when executing the computer program in the memory 1:
[0094] Step 1: Obtain a number of current observation data collected by the time-of-flight sensor at the current viewpoint;
[0095] Step 2: Based on each of the current observation data, determine the current voxel of each of the current observation data in the map coordinate system;
[0096] Step 3: determining a number of current non-obstruction voxels based on each of the current voxels and the current viewpoint;
[0097] Step 4: Based on the historical 3D voxel map reconstructed based on the previous viewpoint, the current 3D voxel map is constructed based on each of the current non-obstacle object pixels to obtain the current 3D voxel map, until the construction of the 3D voxel map under each viewpoint is completed to obtain the target 3D voxel map.
[0098] The specific implementation process of the above method steps can be found in the embodiments of any of the above map construction methods, and will not be repeated in this embodiment.
[0099] The storage medium in this application uses a time-of-flight sensor to collect observation data at various viewpoints, so that the observation data can be voxelized and a number of current non-obstacle object pixels can be obtained. Subsequently, they can be accumulated into the historical three-dimensional voxel map reconstructed by the previous viewpoint, thereby completing the construction of the current three-dimensional voxel map. After the cleaning robot traverses all reachable areas, that is, the TOF sensor traverses all viewpoints, the reconstruction of the three-dimensional voxel map is gradually completed based on each viewpoint in turn, thereby accurately reconstructing the three-dimensional map.
[0100] The above embodiments are merely exemplary embodiments of the present application and are not intended to limit the scope of the present application. The scope of protection of the present application is defined by the claims. Those skilled in the art may make various modifications or equivalent substitutions to the present application within the essence and scope of protection of the present application, and such modifications or equivalent substitutions shall also be deemed to fall within the scope of protection of the present application.
Claims
1. A map construction method, wherein: include: Obtaining some current observation data collected by the time-of-flight sensor at the current viewpoint; Based on each of the current observation data, determining a current voxel of each of the current observation data in a map coordinate system; Determining a number of current non-obstruction voxels based on each of the current voxels and the current viewpoint; On the basis of the historical 3D voxel map reconstructed based on the previous viewpoint, the current 3D voxel map is constructed based on each of the current non-obstacle object pixels to obtain the current 3D voxel map, until the construction of the 3D voxel map under each viewpoint is completed to obtain the target 3D voxel map.
2. The method according to claim 1, wherein The determining, based on each of the current observation data, a current voxel of each of the current observation data in a map coordinate system includes: For each of the current observation data, downsampling is performed according to the voxel resolution to obtain processed observation data; Based on the sensor extrinsic parameters of the time-of-flight sensor and the position information of the time-of-flight sensor in the map coordinate system, converting each of the processed observation data to obtain target observation data in the map coordinate system; Voxel processing is performed on each of the target observation data to obtain voxel coordinates to determine the current voxel corresponding to each target observation data.
3. The method according to claim 1, wherein Before constructing the current three-dimensional voxel map, the method further includes: determining the obstacle type of each current voxel, including: Determining, based on the historical observation data of the previous viewpoint, a historical normal vector corresponding to each of the historical observation data; Based on each current observation data under the current viewpoint, determine the current normal vector corresponding to each current observation data; Based on the current normal vector of each current observation data and the historical normal vector of the historical observation data of the previous viewpoint, it is determined whether the obstacle type of the current voxel corresponding to each current observation data is a boundary obstacle type or a non-boundary obstacle type.
4. The method according to claim 3, wherein: The constructing of the current 3D voxel map based on the historical 3D voxel map reconstructed based on the previous viewpoint and based on each of the current non-obstruction pixels includes: On the basis of the historical three-dimensional voxel map reconstructed based on the previous viewpoint, the current three-dimensional voxel map is constructed based on the current non-obstacle voxels and the obstacle type of the current voxels.
5. The method according to claim 1, wherein The determining of a number of current non-obstruction pixels based on each current voxel and the current viewpoint includes: constructing a current line segment corresponding to each current voxel based on the voxel coordinates of each current voxel and the viewpoint coordinates of the current viewpoint; Determining that the voxel passed by each current line segment is the first non-obstacle voxel; determining a predetermined number of voxels along the extension direction of each line segment that are not observed by the current viewpoint as second non-obstacle voxels; The plurality of current non-obstacle pixels are obtained based on each of the first non-obstacle pixels and each of the second non-obstacle pixels.
6. The method according to claim 3, wherein: Before constructing the current three-dimensional voxel map, the method further includes: Based on each current voxel, determining each initial truncated signed distance function (TSDF) value of each historical obstacle pixel under each current obstacle pixel; the historical obstacle pixel is the obstacle pixel determined when reconstructing the historical 3D voxel map; For each initial TSDF value based on the same historical obstacle pixel, a target TSDF value corresponding to each historical obstacle pixel and used for reconstructing the current three-dimensional voxel map is determined.
7. The method of claim 1, wherein: After obtaining the target three-dimensional voxel map, the method further includes: Performing a two-dimensional conversion on the three-dimensional voxel map to obtain a two-dimensional grid map; Alternatively, the three-dimensional voxel map is subjected to a patch conversion to obtain a three-dimensional patch map.
8. A map construction device, wherein: include: An acquisition module is used to acquire a number of current observation data collected by the time-of-flight sensor at the current viewpoint; A first determining module is configured to determine a current voxel of each current observation data in a map coordinate system based on each current observation data; A second determination module is configured to determine a number of current non-obstruction pixels based on each of the current voxels and the current viewpoint; The construction module is used to construct the current 3D voxel map based on the historical 3D voxel map reconstructed based on the previous viewpoint and based on each of the current non-obstacle object pixels, thereby obtaining the current 3D voxel map, until the construction of the 3D voxel map under each viewpoint is completed and the target 3D voxel map is obtained.
9. The device according to claim 8, wherein The first determining module is used for: For each of the current observation data, downsampling is performed according to the voxel resolution to obtain processed observation data; Based on the sensor extrinsic parameters of the time-of-flight sensor and the position information of the time-of-flight sensor in the map coordinate system, converting each of the processed observation data to obtain target observation data in the map coordinate system; Voxel processing is performed on each of the target observation data to obtain voxel coordinates to determine the current voxel corresponding to each target observation data.
10. The device according to claim 8, wherein The map construction device further includes an obstacle type determination module; the obstacle type determination module is configured to: Determining, based on the historical observation data of the previous viewpoint, a historical normal vector corresponding to each of the historical observation data; Based on each current observation data under the current viewpoint, determine the current normal vector corresponding to each current observation data; Based on the current normal vector of each current observation data and the historical normal vector of the historical observation data of the previous viewpoint, it is determined whether the obstacle type of the current voxel corresponding to each current observation data is a boundary obstacle or a non-boundary obstacle.
11. The device according to claim 10, wherein The building blocks are used to: On the basis of the historical three-dimensional voxel map reconstructed based on the previous viewpoint, the current three-dimensional voxel map is constructed based on the current non-obstacle voxels and the obstacle type of the current voxels.
12. The apparatus of claim 8, wherein: The second determining module is used for: constructing a current line segment corresponding to each current voxel based on the voxel coordinates of each current voxel and the viewpoint coordinates of the current viewpoint; Determining that the voxel passed by each current line segment is the first non-obstacle voxel; determining a predetermined number of voxels along the extension direction of each line segment that are not observed by the current viewpoint as second non-obstacle voxels; The plurality of current non-obstacle pixels are obtained based on each of the first non-obstacle pixels and each of the second non-obstacle pixels.
13. The device according to claim 10, wherein The map construction device further includes a third determining module, wherein the third determining module is configured to: Based on each current voxel, determining each initial truncated signed distance function (TSDF) value of each historical obstacle pixel under each current obstacle pixel; the historical obstacle pixel is the obstacle pixel determined when reconstructing the historical 3D voxel map; For each initial TSDF value based on the same historical obstacle pixel, a target TSDF value corresponding to each historical obstacle pixel and used for reconstructing the current three-dimensional voxel map is determined.
14. The apparatus of claim 8, wherein: The map construction device further includes a conversion module, which is configured to: Performing a two-dimensional conversion on the three-dimensional voxel map to obtain a two-dimensional grid map; Alternatively, the three-dimensional voxel map is subjected to a patch conversion to obtain a three-dimensional patch map.
15. A storage medium, wherein: The storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the map construction method according to any one of claims 1 to 7 are implemented.
16. An electronic device, wherein: The system comprises at least a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the map construction method according to any one of claims 1 to 7 when executing the computer program on the memory.
Citation Information
Patent Citations
Grid map updating method and device, robot and storage medium
CN112526993A
Dynamic grid map updating method based on three-dimensional obstacle pixel object mapping
CN112859859A
Mapping method and system based on trinocular vision sensor
CN115342800A
Obstacle detection method and device and electronic equipment
CN116934648A
Map construction method, electronic equipment and automatic walking equipment
CN116954208A