A mapping optimization method and device, a robot and a storage medium

By optimizing the mapping process, selectively establishing constraints between nodes and point cloud subgraphs, and deleting point cloud subgraphs, the problem of excessive hardware resource consumption in large-area mapping is solved, and real-time performance and cost-effectiveness are improved.

CN115482337BActive Publication Date: 2025-11-25CHONGQING LEISHEN INTELLIGENT SYSTEM TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211208740.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-30
Publication Date
2025-11-25
Estimated Expiration
2042-09-30

AI Technical Summary

Technical Problem

Existing technologies consume excessive hardware resources during large-scale mapping, leading to increased consumption of processor and memory resources, affecting the real-time performance of mapping, and increasing the cost of hardware selection.

Method used

By optimizing the mapping process, reducing unnecessary graph algorithms, selectively establishing constraints between nodes and point cloud subgraphs, periodically deleting point cloud subgraphs that meet the conditions, constructing an initial map and performing global optimization, the consumption of CPU and memory resources is reduced.

Benefits of technology

While meeting the mapping requirements, the consumption of hardware resources was reduced, the real-time performance of mapping was improved, the range of processors that could be selected was expanded, and the cost was reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115482337B_ABST
    Figure CN115482337B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of mapping, in particular to a mapping optimization method and device, a robot and a storage medium. The method comprises the following steps: acquiring current frame point cloud data, and generating a new node according to the current frame point cloud data; updating a point cloud subgraph at a current time according to the point cloud subgraph at the current time and the current frame point cloud data; establishing a constraint between the new node and a first number of point cloud subgraphs, and when a new point cloud subgraph is generated, a constraint between the new point cloud subgraph and a second number of nodes is also established; periodically deleting point cloud subgraphs that meet a preset condition to obtain reserved point cloud subgraphs; constructing an initial map based on the reserved point cloud subgraphs, and globally optimizing the initial map based on the reserved point cloud subgraphs, the nodes, the constraints between the point cloud subgraphs and the nodes and the constraints between the nodes and each other. The application can reduce the load of the memory and improve the real-time efficiency of mapping.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of automatic mapping technology, and more particularly to an optimization method, apparatus, robot, and storage medium for mapping. Background Technology

[0002] During the mapping process, the robot matches each pose with all sub-maps, adds all poses that meet the requirements to the constraints, and optimizes the map based on these constraints. For large-area mapping needs, this operation can consume significant hardware resources.

[0003] Therefore, optimizing the robot's mapping process and reducing hardware resource consumption has become an urgent problem to be solved. Summary of the Invention

[0004] In view of the above problems, this application proposes an optimization method, apparatus, robot and storage medium for mapping.

[0005] This application proposes an optimization method for mapping, including:

[0006] Acquire the current frame point cloud data and generate new nodes based on the current frame point cloud data;

[0007] Update the point cloud sub-graph at the current moment based on the point cloud sub-graph at the current moment and the point cloud data of the current frame;

[0008] Establish constraints between the new node and a first number of point cloud subgraphs, and when a new point cloud subgraph is generated, also establish constraints between the new point cloud subgraph and a second number of nodes;

[0009] Periodically delete point cloud sub-images that meet preset conditions to obtain retained point cloud sub-images;

[0010] An initial map is constructed based on the retained point cloud subgraphs, and the initial map is globally optimized based on the retained point cloud subgraphs, the nodes, and the constraints between the point cloud subgraphs and the nodes.

[0011] Furthermore, in the above-described optimization method for graph construction, the constraints for establishing the new node and the first number of point cloud subgraphs include:

[0012] Find the M point cloud subgraphs that are closest to the new node, and establish constraints between the new node and the M nearest point cloud subgraphs, where M is a positive integer not greater than 3.

[0013] Furthermore, in the above-mentioned optimization method for mapping, the formula for calculating the point cloud subgraph that is closest to the new node is:

[0014] Norm1 = Mp1 * Np1;

[0015] Where Mp1 is the inverse pose solution of any point cloud subgraph, Np1 is the pose value of the new node, and when Norm1 is the smallest, it means that the new node is closest to the corresponding point cloud subgraph.

[0016] Furthermore, in the above-described optimization method for graph construction, the constraints between the new point cloud subgraph and the second number of nodes include:

[0017] Find the N nodes that are closest to the new point cloud subgraph, and establish constraints between the new point cloud subgraph and the N closest nodes, where N is a positive integer not greater than 3.

[0018] Furthermore, in the above-described optimization method for mapping, the formula for finding the node closest to the new point cloud subgraph is as follows:

[0019] Norm2 = Mp2 * Np2;

[0020] Where Mp2 is the inverse pose value of the new point cloud subgraph, and Np2 is the pose value of any node. When Norm2 is minimized, it means that the new point cloud subgraph is closest to the corresponding node.

[0021] Furthermore, in the above-mentioned optimization method for mapping, the step of reducing point cloud sub-maps that meet preset conditions includes:

[0022] If the area overlap between the raster image corresponding to the new point cloud sub-image and the raster image corresponding to the existing point cloud sub-image exceeds a preset threshold, then the point cloud sub-image corresponding to the raster image with the smaller area is deleted.

[0023] Furthermore, in the above-mentioned optimization method for mapping, updating the point cloud sub-map at the current moment based on the point cloud sub-map at the current moment and the point cloud data of the current frame includes:

[0024] The current frame point cloud data is matched with the point cloud sub-image at the current time to determine the target point cloud sub-image with the highest matching degree to the current frame point cloud data;

[0025] The target point cloud sub-image is updated based on the current frame point cloud data.

[0026] Another embodiment of this application provides an apparatus for a mapping method, the apparatus comprising:

[0027] The acquisition unit is used to acquire the current frame point cloud data and generate new nodes based on the current frame point cloud data;

[0028] The construction unit is used to update the point cloud sub-graph at the current moment based on the point cloud sub-graph at the current moment and the point cloud data of the current frame;

[0029] The constraint unit is used to establish constraints between the new node and a first number of point cloud subgraphs, and when a new point cloud subgraph is generated, it also establishes constraints between the new point cloud subgraph and a second number of nodes.

[0030] The deletion unit is used to periodically delete point cloud sub-images that meet preset conditions to obtain retained point cloud sub-images.

[0031] An optimization unit is used to construct an initial map based on the retained point cloud subgraphs, and to perform global optimization on the initial map based on the retained point cloud subgraphs, the nodes, and the constraints between the point cloud subgraphs and the nodes.

[0032] Another embodiment of this application proposes a robot including a lidar, a storage unit, and a processing unit. The lidar is used to collect point cloud data, the storage unit stores a computer program, and the processing unit executes the steps of the mapping optimization method described above by calling the computer program stored in the storage unit.

[0033] Another embodiment of this application provides a computer-readable storage medium storing a computer program adapted for loading by a processor to perform the steps of the mapping optimization method described above.

[0034] The embodiments of this application have the following beneficial effects:

[0035] This application proposes an optimization method for mapping. This method reduces unnecessary graph and other algorithms, thereby reducing the consumption of CPU and memory resources while meeting the mapping effect required by the product. This reduces the memory load, achieves real-time mapping, and expands the range of processors that can be selected, thus reducing the high costs caused by a small selection range. Attached Figure Description

[0036] To more clearly illustrate the technical solutions of this application, the accompanying drawings used in the embodiments will be briefly described below. It should be understood that the following drawings only show some embodiments of this application and should not be considered as a limitation on the scope of protection of this application. In the various drawings, similar components are numbered similarly.

[0037] Figure 1 A flowchart illustrating an optimization method for drawing in some embodiments of this application is shown;

[0038] Figure 2 The diagram illustrates an application scenario of the optimized mapping method for some embodiments of this application.

[0039] Figure 3 A raster map overlay diagram is shown for the optimization method of mapping according to some embodiments of this application;

[0040] Figure 4 A structural diagram of an apparatus for optimizing a mapping method according to some embodiments of this application is shown. Detailed Implementation

[0041] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.

[0042] The components of the embodiments of this application described and illustrated in the accompanying drawings can be arranged and designed in a variety of different configurations. Therefore, the following detailed description of the embodiments of this application provided in the drawings is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of the application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.

[0043] In the following, the terms “comprising,” “having,” and their cognates, which may be used in various embodiments of this application, are intended only to indicate a particular feature, number, step, operation, element, component, or combination thereof, and should not be construed as excluding, firstly, the presence of one or more other features, numbers, steps, operations, elements, components, or combinations thereof, or adding the possibility of one or more features, numbers, steps, operations, elements, components, or combinations thereof.

[0044] Furthermore, the terms "first," "second," etc., are used only to distinguish descriptions and should not be interpreted as indicating or implying relative importance.

[0045] Unless otherwise specified, all terms used herein (including technical and scientific terms) shall have the same meaning as commonly understood by one of ordinary skill in the art to which the various embodiments of this application pertain. Terms (such as those defined in commonly used dictionaries) shall be interpreted as having the same meaning as in their contextual meaning in the relevant technical field and shall not be construed as having an idealized or overly formal meaning, unless clearly defined in the various embodiments of this application.

[0046] The following detailed description of some embodiments of this application is provided in conjunction with the accompanying drawings. Unless otherwise specified, the following embodiments and features can be combined with each other.

[0047] As described in the background section, the purpose of the technical solution provided in this application is to optimize the mapping process of a robot and reduce the consumption of hardware resources.

[0048] First, to facilitate understanding, we will take the Cartographer algorithm as an example to give a brief introduction to the existing robot mapping process.

[0049] The Cartographer algorithm matches each pose with all subgraphs and adds all poses that meet the requirements to the constraints. During global optimization after mapping, it matches all subgraphs and nodes to perform loop closure detection. This approach has significant drawbacks when dealing with large-area mapping needs, especially when the mapping terminal is a robot with relatively limited hardware resources (such as a cleaning robot). With limited embedded processor resources, large-area mapping and long-term operation significantly increase processor and memory consumption and data processing time, impacting real-time mapping performance. Increasing hardware configuration leads to limitations in component selection and increases costs. Therefore, this application proposes an optimized mapping method to address these issues.

[0050] Please refer to Figure 1 This is a flowchart of an optimized mapping method proposed in an embodiment of this application.

[0051] In some implementations, the mapping optimization method includes steps S101 to S501:

[0052] S101, acquire the current frame point cloud data, and generate new nodes based on the current frame point cloud data.

[0053] Specifically, such as Figure 2 The lidar system emits and receives lasers at a fixed frequency, generating corresponding laser data, including obstacle angles and distances. This data is transmitted to the computing platform via a communication interface. Simultaneously, the inertial measurement unit (IMU) and odometry transmit their measured real-time position data to the computing platform. The platform then uses the acquired laser and real-time position data to derive the current frame's point cloud data and compiles this data into a set, which becomes the new node for that frame. For example, if the lidar emits n laser points in one rotation, the n point cloud data points for one frame are compiled into a set, which is then used as the node for that frame.

[0054] S201, Update the point cloud sub-graph at the current moment based on the point cloud sub-graph at the current moment and the point cloud data of the current frame.

[0055] Specifically, each point cloud sub-image is constructed from an initial pose and multiple frames of point cloud data. The current frame's point cloud data is matched with the raster image corresponding to the current point cloud sub-image. The current frame's point cloud data is then inserted into the raster image corresponding to the current point cloud sub-image with the highest matching degree. The point cloud sub-image corresponding to the inserted raster image becomes the new point cloud sub-image. The matching degree is the probability that the current frame's point cloud data, after being projected onto the raster image, will be occupied on the raster image corresponding to the point cloud sub-image.

[0056] Furthermore, if the number of point cloud subgraphs with the highest matching degree at the current time is greater than 1, then one of them can be randomly selected for construction.

[0057] S301, establish constraints between the new nodes and the first number of point cloud subgraphs, and when a new point cloud subgraph is generated, also establish constraints between the new point cloud subgraph and the second number of nodes.

[0058] Specifically, when a new node is generated, constraints are established between the new node and a first number of point cloud subgraphs; and when a new point cloud subgraph is generated, constraints are established between the new point cloud subgraph and a second number of nodes. Optionally, constraints are established between the new node and two point cloud subgraphs, and between the new point cloud subgraph and two nodes. The first and second numbers are not limited and can be any number. It can be understood that traditional solutions establish constraints between each point cloud subgraph and all nodes, and between each node and all point cloud subgraphs. In this embodiment, by selecting a subset of point cloud subgraphs and nodes for constraint establishment, resource consumption can be significantly reduced when resources are limited.

[0059] In one implementation, constraints can be established between the new node and the M nearest point cloud subgraphs by finding the M nearest point cloud subgraphs.

[0060] Specifically, when a new node is generated, the M nearest point cloud subgraphs to the newly generated node are searched. Optionally, M can be any positive integer from 1 to 10, preferably a positive integer not greater than 3. Of course, it can also be any other number, which is not limited here.

[0061] Similarly, in one implementation, constraints can be established between the new point cloud subgraph and the N nearest nodes by finding the N nearest nodes to the new point cloud subgraph.

[0062] Specifically, when generating a new point cloud subgraph, the N nodes closest to the newly generated point cloud subgraph are found. Optionally, N can be any positive integer from 1 to 10, preferably a positive integer not greater than 3. Of course, it can also be any other number, which is not limited here.

[0063] In some implementations, the formula for finding the point cloud subgraph closest to the new node is:

[0064] Norm1 = Mp1 * Np1;

[0065] Where Mp1 is the inverse pose solution of any point cloud subgraph, Np1 is the pose value of the new node, and when Norm1 is the smallest, it means that the new node is closest to the corresponding point cloud subgraph.

[0066] Specifically, Norm1 represents the distance between the point cloud subgraph and the new node. Since each point cloud subgraph corresponds to a set of pose matrices, and each set of pose matrices includes data such as the pose of the points in the corresponding point cloud subgraph, the pose matrix set is inverted to obtain a matrix set composed of inverse pose values. Then, the matrix set composed of multiple inverse pose values ​​is multiplied by the pose value of the current node to obtain a matrix set composed of the distances between the corresponding point cloud subgraph and the new node. Each distance is the distance between the corresponding point cloud subgraph and the new node.

[0067] For example, a certain point cloud subgraph has a matrix set consisting of four point cloud poses A, B, C, and D. After inversion, it becomes a matrix set consisting of four pose inverse values ​​A1, B1, C1, and D1. Multiplying this matrix set of four pose inverse values ​​with the current new node pose value yields a matrix set consisting of four relative distances A2, B2, C2, and D2, where each distance is the distance between the corresponding point cloud subgraph and the new node.

[0068] In some implementations, the formula for finding the node closest to the new point cloud subgraph is:

[0069] Norm2 = Mp2 * Np2;

[0070] Where Mp2 is the inverse pose value of the new point cloud subgraph, and Np2 is the pose value of any node. When Norm2 is minimized, it means that the new point cloud subgraph is closest to the corresponding node.

[0071] Specifically, Norm2 represents the distance between the point cloud subgraph and the new node. Since the new point cloud subgraph corresponds to a set of pose matrices, which includes the pose data of each point cloud, the pose matrix set corresponding to the new point cloud subgraph is inverted to obtain a matrix set composed of inverse pose values. Then, the matrix set composed of these inverse pose values ​​is multiplied by the pose value of any current node to obtain a matrix set composed of the relative distance between the new point cloud subgraph and the corresponding node.

[0072] S401, periodically delete point cloud sub-images that meet preset conditions to obtain retained point cloud sub-images.

[0073] Specifically, when a new point cloud sub-image is generated, point cloud sub-images that meet preset conditions are periodically deleted to obtain the retained point cloud sub-images. The period can be set arbitrarily according to the actual situation and is not limited here.

[0074] In some implementations, such as Figure 3 The process of removing point cloud sub-images that meet preset conditions includes:

[0075] If the overlap between the area of ​​the raster corresponding to the new point cloud sub-image and the area of ​​the raster corresponding to the non-new point cloud sub-image exceeds a preset threshold, then the point cloud sub-image corresponding to the raster with the smaller area is deleted.

[0076] Specifically, each point cloud sub-image is mapped onto a raster image. When a new point cloud sub-image is generated, the raster image corresponding to the newly generated point cloud sub-image is compared with the raster image corresponding to each non-newly generated point cloud sub-image to see if there is an overlap. If there is an overlap, it is determined whether the area of ​​the overlap exceeds a preset threshold. If it exceeds the preset threshold, the area of ​​the two raster images is compared. If the areas are different, the one with the smaller area is deleted. If the areas are the same, either one is deleted.

[0077] Optionally, when a new point cloud sub-image is generated, the area of ​​the raster corresponding to the new point cloud sub-image is compared with the area of ​​the raster corresponding to other point cloud sub-images. If the areas are different, it is determined whether they overlap. If they overlap, it is determined whether the area of ​​the overlapping part is greater than a preset threshold. If it is greater than the preset threshold, the point cloud sub-image corresponding to the raster with the smaller area is deleted.

[0078] As one might expect, when a point cloud subgraph is deleted, all constraints associated with that point cloud subgraph will also be deleted.

[0079] S501: Construct an initial map based on the preserved point cloud subgraphs, and perform global optimization on the initial map based on the preserved point cloud subgraphs, nodes, and the constraints between the point cloud subgraphs and nodes.

[0080] The constraints between point cloud subgraphs and nodes include the constraints between the newly obtained point cloud subgraphs and the second number of nodes, and the constraints between the new nodes and the second number of point cloud subgraphs. Understandably, due to sensor errors, although the errors are small in a localized area, the mapping process is incremental, and the errors from each previous pose accumulate in the latest pose. Therefore, the raster map corresponding to the point cloud subgraph built based on the robot's own pose is less accurate. Thus, it is necessary to perform loop closure detection using the retained point cloud subgraphs, nodes, and all constraints between point cloud subgraphs and nodes, optimizing all point cloud data to eliminate accumulated errors and ensure consistency in their relative poses. The specific process can be referenced in the existing Cartographer algorithm.

[0081] Compared to the traditional Cartographer mapping method, the optimized mapping method in this embodiment can reduce the consumption of CPU and memory resources while meeting the mapping effect required by the product, thereby reducing the memory load and achieving real-time mapping. It can also expand the range of processors to reduce the high costs caused by a small selection range.

[0082] like Figure 4 As shown, another embodiment of this application proposes an apparatus 600 for an optimization method of mapping, the apparatus 600 comprising:

[0083] The acquisition unit 601 is used to acquire the current frame point cloud data and generate new nodes based on the current frame point cloud data.

[0084] The construction unit 602 is used to update the point cloud subgraph at the current time based on the point cloud subgraph at the current time and the point cloud data of the current frame.

[0085] The constraint unit 603 is used to establish constraints between new nodes and a first number of point cloud subgraphs, and when a new point cloud subgraph is generated, it also establishes constraints between the new point cloud subgraph and a second number of nodes.

[0086] The deletion unit 604 is used to periodically delete point cloud sub-images that meet preset conditions to obtain retained point cloud sub-images.

[0087] The optimization unit 605 is used to construct an initial map based on the retained point cloud subgraphs and to perform global optimization on the initial map based on the retained point cloud subgraphs, nodes, and the constraints between the point cloud subgraphs and nodes.

[0088] It is understood that the method steps in this embodiment correspond to the mapping optimization method in the above embodiments. The options of the above mapping optimization method are also applicable to this embodiment, and will not be described again here.

[0089] Another embodiment of this application proposes a robot, including a lidar, a storage unit, and a processing unit. The lidar is used to collect lidar point cloud data, the storage unit stores a computer program, and the processing unit executes the steps of the mapping optimization method described above by calling the computer program stored in the storage unit.

[0090] Another embodiment of this application provides a computer-readable storage medium storing a computer program adapted for loading by a processor to perform the steps of the above-described mapping optimization method.

[0091] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can also be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings show the architecture, functionality, and operation of possible implementations of apparatus, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that, in alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagram and / or flowchart, and combinations of blocks in the block diagram and / or flowchart, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0092] In addition, the functional modules or units in the various embodiments of this application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0093] If the aforementioned functions are implemented as software functional modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, essentially, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a smartphone, personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0094] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application.

Claims

1. An optimization method for map construction, characterized in that, The method includes: Acquire the current frame point cloud data and generate new nodes based on the current frame point cloud data; Update the point cloud sub-graph at the current moment based on the point cloud sub-graph at the current moment and the point cloud data of the current frame; Establish constraints between the new node and a first number of point cloud subgraphs, and when a new point cloud subgraph is generated, also establish constraints between the new point cloud subgraph and a second number of nodes; Periodically delete point cloud sub-images that meet preset conditions to obtain retained point cloud sub-images; An initial map is constructed based on the retained point cloud subgraphs, and the initial map is globally optimized based on the retained point cloud subgraphs, the nodes, and the constraints between the point cloud subgraphs and the nodes. The constraints for establishing the new node and the first number of point cloud subgraphs include: Find the M nearest point cloud subgraphs to the new node, and establish constraints between the new node and the M nearest point cloud subgraphs, where M is a positive integer not greater than 3; The constraints between the new point cloud subgraph and the second number of nodes include: Find the N nodes that are closest to the new point cloud subgraph, and establish constraints between the new point cloud subgraph and the N closest nodes, where N is a positive integer not greater than 3; The step of reducing point cloud sub-images that meet preset conditions includes: If the area overlap between the raster image corresponding to the new point cloud sub-image and the raster image corresponding to the existing point cloud sub-image exceeds a preset threshold, then the point cloud sub-image corresponding to the raster image with the smaller area is deleted.

2. The mapping optimization method according to claim 1, characterized in that, The formula for finding the point cloud sub-graph that is closest to the new node is: Norm1 = Mp1 * Np1; Where Mp1 is the inverse pose solution of any point cloud subgraph, Np1 is the pose value of the new node, and when Norm1 is the smallest, it means that the new node is closest to the corresponding point cloud subgraph.

3. The mapping optimization method according to claim 1, characterized in that, The formula for finding the node closest to the new point cloud subgraph is as follows: Norm2 = Mp2 * Np2; Where Mp2 is the inverse pose solution of the new point cloud subgraph, and Np2 is the pose value of any node. When Norm2 is minimized, it means that the new point cloud subgraph is closest to the corresponding node.

4. The mapping optimization method according to claim 1, 2, or 3, characterized in that, The step of updating the point cloud sub-graph at the current moment based on the point cloud sub-graph at the current moment and the point cloud data of the current frame includes: The current frame point cloud data is matched with the point cloud sub-image at the current time to determine the target point cloud sub-image with the highest matching degree to the current frame point cloud data. The target point cloud sub-image is updated based on the current frame point cloud data.

5. An apparatus for a mapping method, characterized in that, The device includes: The acquisition unit is used to acquire the current frame point cloud data and generate new nodes based on the current frame point cloud data; The construction unit is used to update the point cloud sub-graph at the current moment based on the point cloud sub-graph at the current moment and the point cloud data of the current frame; The constraint unit is used to establish constraints between the new node and a first number of point cloud subgraphs, and when a new point cloud subgraph is generated, it also establishes constraints between the new point cloud subgraph and a second number of nodes. The constraints for establishing the new node and the first number of point cloud subgraphs include: Find the M nearest point cloud subgraphs to the new node, and establish constraints between the new node and the M nearest point cloud subgraphs, where M is a positive integer not greater than 3; The constraints between the new point cloud subgraph and the second number of nodes include: Find the N nodes that are closest to the new point cloud subgraph, and establish constraints between the new point cloud subgraph and the N closest nodes, where N is a positive integer not greater than 3; The deletion unit is used to periodically delete point cloud sub-images that meet preset conditions to obtain retained point cloud sub-images. The step of reducing point cloud sub-images that meet preset conditions includes: If the area overlap between the raster image corresponding to the new point cloud sub-image and the raster image corresponding to the existing point cloud sub-image exceeds a preset threshold, then delete the point cloud sub-image corresponding to the raster image with the smaller area. An optimization unit is used to construct an initial map based on the retained point cloud subgraphs and to perform global optimization on the initial map based on the retained point cloud subgraphs, the nodes, and the constraints between the point cloud subgraphs and the nodes.

6. A robot, characterized in that, The system includes a lidar, a storage unit, and a processing unit. The lidar is used to collect point cloud data. The storage unit stores a computer program. The processing unit executes the steps of the mapping optimization method as described in any one of claims 1 to 4 by calling the computer program stored in the storage unit.

7. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program adapted for loading by a processor to perform the steps of the mapping optimization method as described in any one of claims 1 to 4.

Citation Information

Patent Citations

  • Point-cloud noise point removal system and method

    CN104574282A

  • System and method of scanning and editing two dimensional floorplans

    US20190272655A1