A robot, a map splicing method
By setting markers and calculating the position transformation matrix in the robot, the problem of difficult to maintain the consistency of important positions when the robot builds a map is solved, and positioning accuracy and map accuracy are improved.
Patent Information
- Application Number
- CN202011496162.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-12-17
- Publication Date
- 2025-06-17
- Estimated Expiration
- 2040-12-17
AI Technical Summary
During the process of robot building multiple maps, it is difficult to maintain consistency in important locations such as workstations and charging stations, resulting in a decrease in positioning accuracy.
By setting markers in the robot, obtaining the observation images of the map construction space, determining the position information of the robot under different coordinate systems, calculating the position transformation matrix, and realizing the splicing of the map and the conversion of position coordinates.
Ensure the consistency of important locations in different maps, improving the accuracy of robot positioning and map accuracy.
Smart Images

Figure CN114648596B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field of robot navigation and positioning, and in particular, to a robot and a map splicing method. Background Art
[0002] With the development of robot technology, commonly used application maps in robot positioning and navigation include grid maps, point cloud maps, topological maps, etc. Based on these maps, map information that conforms to the actual environment is provided for the robot, which plays an important role in the subsequent precise positioning of the robot.
[0003] Currently, in the process of constructing a map by the robot's actual application of simultaneous localization and mapping (SLAM), positions that are crucial for the robot to perform tasks, such as workstations and charging stations, are generally determined during the first map construction process, and it is ensured that their corresponding positions remain unchanged during subsequent map construction. However, in terms of current technology, it is difficult to keep the positions of workstations and charging stations obtained during subsequent robot map construction consistent with the positions determined during the first map construction. Therefore, how to ensure that crucial positions such as workstations and charging stations remain unchanged during robot map construction is an urgent problem to be solved in the technical field of robot navigation and positioning. Summary of the Invention
[0004] The embodiments of the present disclosure at least provide a robot and a map splicing method.
[0005] In a first aspect, an embodiment of the present disclosure provides a robot, including: a motion component, a detection component, and a main controller; wherein:
[0006] The motion component is used to drive the robot to move;
[0007] The detection component is used to obtain an observation image of the mapping space and send it to the main controller, and the observation image contains markers;
[0008] The main controller is used to determine the first pose information of the robot in the first world coordinate system when the robot detects the marker for the observation image containing the marker at the first moment, where the first world coordinate system is the world coordinate system at the time of the previous mapping; for the observation image containing the same marker at the second moment, determine the second pose information of the robot in the second world coordinate system when the robot detects the marker, where the second world coordinate system is the world coordinate system at the time of the current mapping; according to the first pose information and the second pose information, determine the first pose transformation matrix of the second world coordinate system relative to the first world coordinate system; use the first pose transformation matrix to convert the second position coordinates of each target object included in the second map obtained from the current mapping into the first position coordinates in the first world coordinate system, and complete the splicing of the first map and the second map, where the first map is the map obtained from the previous mapping.
[0009] In an optional implementation, the main controller is used to determine the first coordinate transformation matrix from the robot space coordinate system to the first world coordinate system according to the first pose information; determine the second coordinate transformation matrix from the robot space coordinate system to the second world coordinate system according to the second pose information; and determine the first pose transformation matrix of the second world coordinate system relative to the first world coordinate system according to the first coordinate transformation matrix and the second coordinate transformation matrix.
[0010] In an optional implementation, the main controller is further used to determine the third pose information of the marker in the robot space coordinate system during the mapping process; determine the error of the first pose transformation matrix according to the third pose information, the first coordinate transformation matrix, and the second coordinate transformation matrix; determine the second pose transformation matrix according to the error; and update the first position coordinates of each target object in the first world coordinate system according to the second pose transformation matrix to complete the splicing of the first map and the second map.
[0011] In an optional implementation, the main controller is used to superimpose the errors corresponding to the observation images in which the marker is detected, and determine the second pose transformation matrix according to the errors using the least squares algorithm.
[0012] In a second aspect, an embodiment of the present disclosure provides a map splicing method, including:
[0013] During the mapping process, obtain the observation image of the mapping space, where the observation image contains a marker;
[0014] For the observed image containing the marker at the first moment, determine the first pose information of the robot in the first world coordinate system when the robot detects the marker, where the first world coordinate system is the world coordinate system at the time of the previous mapping.
[0015] For the observed image containing the same marker at the second moment, determine the second pose information of the robot in the second world coordinate system when the robot detects the marker, where the second world coordinate system is the world coordinate system at the time of the current mapping.
[0016] According to the first pose information and the second pose information, determine the first pose transformation matrix of the second world coordinate system relative to the first world coordinate system.
[0017] Using the first pose transformation matrix, convert the second position coordinates of each target object included in the second map obtained from the current mapping into the first position coordinates in the first world coordinate system, and complete the splicing of the first map and the second map, where the first map is the map obtained from the previous mapping.
[0018] In an optional implementation manner, the determining the first pose transformation matrix of the second world coordinate system relative to the first world coordinate system according to the first pose information and the second pose information includes:
[0019] According to the first pose information, determine the first coordinate transformation matrix from the robot space coordinate system to the first world coordinate system.
[0020] According to the second pose information, determine the second coordinate transformation matrix from the robot space coordinate system to the second world coordinate system.
[0021] According to the first coordinate transformation matrix and the second coordinate transformation matrix, determine the first pose transformation matrix from the second world coordinate to the first world coordinate.
[0022] In an optional implementation manner, it further includes:
[0023] During the mapping process, determine the third pose information of the marker in the robot space coordinate system.
[0024] According to the third pose information, the first coordinate transformation matrix, and the second coordinate transformation matrix, determine the error of the first pose transformation matrix.
[0025] Determine the second pose transformation matrix according to the error.
[0026] According to the second pose transformation matrix, update the first position coordinates of each target object in the first world coordinate system, and complete the splicing of the first map and the second map.
[0027] In an alternative embodiment, determining the second pose transformation matrix according to the error includes: superimposing the errors corresponding to the observed images of the detected markers, and using the least squares algorithm according to the errors to determine the second pose transformation matrix.
[0028] For the effect description of the above map stitching method, refer to the description of the above robot, which will not be elaborated here.
[0029] A robot and a map stitching method provided by an embodiment of the present disclosure, in the process of constructing a map, obtain an observed image including a marker at a first moment, and accordingly determine the first pose information of the robot in the first world coordinate system when the marker is detected in the previous map construction process, and for the observed image including the same marker at a second moment, determine the second pose information of the robot in the second world coordinate system when the marker is detected in the current map construction process. Combine the first pose information and the second pose information to determine the first pose transformation matrix of the second world coordinate system in the current constructed map relative to the first world coordinate system in the previous map. Convert the second position coordinates of each target object included in the second map obtained in the current map construction into the first position coordinates in the first world coordinate system to complete the stitching of the first map and the second map. In the above process, by setting the marker and according to the position information of the marker in the observed images of the previous and current times, convert the position coordinates in the map obtained in the current map construction into the position coordinates in the map obtained in the previous map construction, so as to ensure that the same coordinate system is used in the two map constructions, reduce the map stitching error, and improve the accuracy of the map.
[0030] Further, a robot and a map stitching method provided by an embodiment of the present disclosure can also determine the third pose information of the marker in the robot space coordinate system during the map construction process; determine the error of the first pose transformation matrix according to the third pose information, the first coordinate transformation matrix, and the second coordinate transformation matrix; adjust the second pose transformation matrix according to the error to reduce the error generated during the map construction process, further optimize the pose transformation matrix, and ensure that the stitched map has accurate position information.
[0031] To make the above objects, features, and advantages of the present disclosure more obvious and understandable, the following specific preferred embodiments are given in conjunction with the accompanying drawings and are described in detail as follows. BRIEF DESCRIPTION OF THE DRAWINGS
[0032] To more clearly illustrate the technical solutions of the embodiments of the present disclosure, the accompanying drawings required for the embodiments will be briefly introduced below. These accompanying drawings are incorporated into the specification and form a part of this specification. These accompanying drawings illustrate the embodiments consistent with the present disclosure and, together with the specification, are used to explain the technical solutions of the present disclosure. It should be understood that the following accompanying drawings only illustrate some embodiments of the present disclosure and should not be regarded as limiting the scope. For those of ordinary skill in the art, without creative efforts, other related accompanying drawings can also be obtained based on these accompanying drawings.
[0033] Figure 1 Shows a schematic diagram of a robot provided by an embodiment of the present disclosure;
[0034] Figure 2 Shows a schematic diagram of the detection component of the robot provided by an embodiment of the present disclosure detecting a marker and the surrounding environment feedback information;
[0035] Figure 3 Shows a schematic flowchart of the main controller for the map stitching process provided by an embodiment of the present disclosure;
[0036] Figure 4 Shows a flowchart of optimizing the first pose transformation matrix provided by an embodiment of the present disclosure. Detailed implementation manners
[0037] To make the objectives, technical solutions, and advantages of the embodiments of the present disclosure clearer, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only some, rather than all, of the embodiments of the present disclosure. The components of the embodiments of the present disclosure usually described and illustrated in the accompanying drawings here can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present disclosure provided in the accompanying drawings is not intended to limit the scope of the claimed present disclosure, but merely represents the selected embodiments of the present disclosure. Based on the embodiments of the present disclosure, all other embodiments obtained by those skilled in the art without creative efforts fall within the scope of protection of the present disclosure.
[0038] In addition, the terms "first", "second", etc. in the specification, claims, and the above accompanying drawings of the embodiments of the present disclosure are used to distinguish similar objects and do not necessarily need to be used to describe a specific order or sequence. It should be understood that such used data can be interchanged under appropriate circumstances so that the embodiments described here can be implemented in an order different from that shown or described here.
[0039] As used herein, "multiple" or "a number of" means two or more. "And / or" describes the relationship between associated objects and indicates that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally indicates an "or" relationship between the associated objects before and after.
[0040] It has been found through research that during the process of a robot constructing a map, positions crucial for the robot to perform tasks, such as workstations and charging stations, it is difficult to ensure that the positions of key elements in the previous map are consistent with their corresponding positions in the current map during subsequent map construction.
[0041] Based on the above research, the present disclosure provides a robot and a map stitching method. By constructing a map and obtaining an observation image of the mapping space, for the observation image containing a marker at the first moment, the first pose information of the robot in the first world coordinate system when the marker is detected is determined. For the observation image containing the same marker at the second moment, the second pose information of the robot in the second world coordinate system when the marker is detected is determined. Combining the first pose information and the second pose information, the first pose transformation matrix of the second world coordinate system in the current constructed map relative to the first world coordinate system in the previous map is determined. Using the first pose transformation matrix, the second position coordinate in the second world coordinate system is converted into the first position coordinate in the first world coordinate system, completing the stitching of the first map and the second map, and ensuring that the stitched map has accurate position information.
[0042] Regarding the defects existing in the above solutions, they are all the results obtained by the inventors through practice and careful research. Therefore, the process of discovering the above problems and the solutions proposed by the present disclosure for the above problems in the following text should all be the contributions made by the inventors during the process of the present disclosure.
[0043] It should be noted that similar reference numerals and letters represent similar items in the following drawings. Therefore, once an item is defined in one drawing, it does not need to be further defined and explained in subsequent drawings.
[0044] To facilitate the understanding of this embodiment, first, a robot disclosed in the embodiments of the present disclosure will be introduced in detail. The execution subject of the robot provided in the embodiments of the present disclosure is generally an electronic device with a certain computing ability. Such an electronic device includes, for example, a microcontroller, etc. In some possible implementation manners, the robot can be implemented by a processor in the microcontroller calling computer-readable instructions stored in a memory.
[0045] Hereinafter, the robot provided in the embodiments of the present disclosure will be described by taking the execution subject as an electronic device as an example.
[0046] Embodiment 1
[0047] See Figure 1 As shown, it is a schematic diagram of a robot provided by an embodiment of the present disclosure. The robot includes a motion component 101, a detection component 102, and a main controller 103. Among them, the motion component may include a motor, a driver, and a power supply, etc., and the detection component may include a laser sensor or a vision sensor, etc.
[0048] The motion component 101 is used to drive the robot to move.
[0049] In specific implementation, during the mapping process, the staff sends a movement instruction to the robot through a remote control device or directly sends an instruction to the robot through a server. After receiving the movement instruction, the main controller can control the motion component 101 to drive the robot to move. Among them, the remote control device may be a device with an infrared emitter such as a handle.
[0050] The detection component 102 is used to obtain the observation image of the mapping space and send it to the main controller.
[0051] In specific implementation, the observation image obtained by the detection component 102 may include markers and detected surrounding environment information. As Figure 2 shown, it is a schematic diagram of the robot obtaining the feedback information of the detection component detecting the marker and the surrounding environment. Among them, k represents the robot, l represents the marker, and n represents the surrounding environment information. k1, k2, k3, k4, and k5 respectively represent different positions of the robot during the mapping process, and the dotted line represents the observation image obtained by the detection component 102.
[0052] In one implementation manner, the observation image includes markers. In specific implementation, the detection component 102 obtains the observation image of the mapping space and feeds the information of the markers included in the observation image back to the main controller. Among them, the marker may be a two-dimensional code or a tag, etc. The marker data information in this observation image can be used to calculate the transformation matrix. For example, the staff remotely controls the robot to move in the site for building a map for a period of time. The lidar sensor obtains a total of 10 frames of data, and 3 of them contain marker information. The lidar sensor feeds the data containing marker information back to the main controller.
[0053] In another embodiment, the observed image includes the surrounding environment. Specifically, during implementation, the detection component 102 acquires the observed image of the mapping space and feeds back the point cloud information of the surrounding environment included in the observed image to the main controller. The point cloud information may include the position information of workstations, charging stations, obstacles, and slow-moving obstacles, etc. The point cloud data in this observed image can be used to complete the construction of the map. Continuing with the previous example, the lidar sensor acquires a total of 10 frames of data, among which 7 frames contain point cloud information. The lidar sensor feeds the data containing point cloud information back to the main controller.
[0054] The main controller 103 is configured to, for the observed image containing the marker at the first moment, determine the first pose information of the robot in the first world coordinate system when the robot detects the marker, where the first world coordinate system is the world coordinate system during the previous mapping; for the observed image containing the same marker at the second moment, determine the second pose information of the robot in the second world coordinate system when the robot detects the marker, where the second world coordinate system is the world coordinate system during the current mapping; determine the first pose transformation matrix of the second world coordinate system relative to the first world coordinate system according to the first pose information and the second pose information; and use the first pose transformation matrix to convert the second position coordinates of each target object included in the second map obtained from the current mapping into the first position coordinates in the first world coordinate system, thereby completing the stitching of the first map and the second map.
[0055] Specifically, during implementation, referring to Figure 3 as shown, the main controller 103 can complete the stitching process of the map constructed this time and the map constructed last time according to the following steps:
[0056] S301: For the observed image containing the marker at the first moment, determine the first pose information of the robot in the first world coordinate system when the robot detects the marker.
[0057] In this step, the first world coordinate system is the world coordinate system during the previous mapping.
[0058] Specifically, during implementation, a first world coordinate system is customized in the previous mapping space. In the first world coordinate system, the main controller 103 determines the first pose information according to the information fed back by the detection component 102. The first pose information may include the pose information of the robot when the detection component 102 feeds back the marker information during the movement of the robot. At this time, a first world coordinate system is customized in the previous map. Continuing with the previous example, at this time, the first world coordinate system customized in the previous map is denoted as O1. In the O1 world coordinate system, the first pose information of the robot when observing the marker can be determined, denoted as:
[0059]
[0060] For the m-th frame (1 ≤ m ≤ t) in which the robot observes the marker, the pose of the robot in the O1 world coordinate system can be determined. Here, t represents a positive integer greater than or equal to 1, and m represents a positive integer between 1 and t.
[0061] S302: For the observation images containing the same marker at the second moment, determine the second pose information of the robot in the second world coordinate system when the robot detects the marker.
[0062] In this step, the second world coordinate system is the world coordinate system during this mapping.
[0063] Specifically, in the space of this mapping, a second world coordinate system is customized. In the second world coordinate system, the main controller 103 determines the second pose information according to the information fed back by the detection component 102. Among them, the second pose information may include the pose information of the robot when the detection component 102 feeds back the marker information during the movement of the robot; the second pose information may also include the point cloud information of the surrounding environment information fed back by the detection component 102 during the movement of the robot, that is, the coordinate information of workstations, charging stations, obstacles, and slowly moving obstacles, etc. For example, the second world coordinate system customized in the space of this mapping is denoted as O2, and the robot is denoted as k. In the O2 world coordinate system, the second pose information of the robot when observing the marker can be determined, denoted as:
[0064]
[0065] For the m-th frame (1 ≤ m ≤ t) in which the robot observes the marker, the pose of the robot in the O2 world coordinate system can be determined.
[0066] S303: According to the first pose information and the second pose information, determine the first pose transformation matrix of the second world coordinate system relative to the first world coordinate system.
[0067] Specifically, based on the first pose information determined in step S301, determine the first coordinate transformation matrix from the robot space coordinate system to the first world coordinate system; based on the second pose information determined in step S302, determine the second coordinate transformation matrix from the robot space coordinate system to the second world coordinate system; according to the first coordinate transformation matrix and the second coordinate transformation matrix, determine the first pose transformation matrix from the first world coordinate to the second world coordinate system.
[0068] Continuing with the above example, based on the first pose information Determine the first coordinate transformation matrix from the robot space coordinate system k to the first world coordinate system O1 Based on the second pose information Determine the second coordinate transformation matrix from the robot space coordinate system k to the second world coordinate system O2 By multiplying the inverse matrix of the first coordinate transformation matrix by the second coordinate transformation matrix, the first pose transformation matrix can be obtained, denoted as
[0069] S304: Using the first pose transformation matrix, convert the second position coordinates of each target object included in the second map obtained from the current mapping into the first position coordinates in the first world coordinate system to complete the splicing of the first map and the second map.
[0070] Among them, the first map is the map obtained from the previous mapping, and the second map is the map obtained from the current mapping. Specifically, in implementation, using the first pose transformation matrix, convert the second position coordinates included in the second map into the first world coordinate system, denoted as the first position coordinates. At this time, the splicing of the first map and the second map is completed. Continuing with the above example, using can convert into It is also possible to correspondingly convert the position information of workstations, charging stations, obstacles, and slow-moving obstacles, etc. into the first world coordinate system to complete the splicing of the first map and the second map.
[0071] According to the robot provided by the embodiments of the present disclosure, use sensors to detect markers, and then further determine the current position of the robot, deduce a more accurate robot pose, and use this accurate pose information for map construction, finally complete the splicing of the map, ensure that the positions of important position information in the previous map are the same in the current map, improve the positioning accuracy of the robot, and thus ensure that the robot efficiently completes the work task.
[0072] Embodiment 2
[0073] Since there is an error in the first pose transformation matrix determined based on Embodiment 1, the embodiments of the present disclosure will provide a specific implementation process to optimize the determined first pose transformation matrix to obtain the second pose transformation matrix, which can be referred to Figure 4 as shown, which is a flowchart for optimizing the first pose transformation matrix, and the steps are as follows:
[0074] S401: During the mapping process, determine the third pose information of the marker in the robot space coordinate system.
[0075] In this step, the robot space coordinate system is a reference coordinate system constructed with the robot as the coordinate origin during the current mapping.
[0076] During specific implementation, based on the robot space coordinate system constructed during mapping at the second moment, the main controller 103 determines the third pose information of the marker in the robot space coordinate system according to the information fed back by the detection component 102. Among them, the third pose information may include the third pose information of the marker relative to the robot when the detection component 102 feeds back the marker information during the movement of the robot. For example, if the robot space coordinate system customized during mapping at the second moment is denoted as k, the determined third pose information can be denoted as:
[0077]
[0078] Based on the m-th frame (1 ≤ m ≤ t) when the robot observes the marker, the pose of the marker in the k space coordinate system can be determined.
[0079] S402: Determine the error of the first pose transformation matrix according to the third pose information, the first coordinate transformation matrix, and the second coordinate transformation matrix.
[0080] In this step, based on the first pose information obtained during mapping at the first moment Determine the first coordinate transformation matrix from the robot space coordinate system k to the first world coordinate system O1 during mapping at the second moment Based on the second pose information obtained during mapping at the second moment Determine the second coordinate transformation matrix from the robot space coordinate system k to the second world coordinate system O2 during mapping at the second moment
[0081] During specific implementation, according to the third pose information and the first coordinate transformation matrix obtained during mapping at the second moment, determine the first homogeneous coordinate of the marker in the first world coordinate system; according to the third pose information and the second coordinate transformation matrix, determine the second homogeneous coordinate of the marker in the second world coordinate system, and according to the second homogeneous coordinate and the first pose transformation matrix, the target homogeneous coordinate from the second world coordinate system to the first world coordinate system can be determined.
[0082] In one embodiment, the second homogeneous coordinate of the marker in the second world coordinate system can be left-multiplied by the first pose transformation matrix to determine the target homogeneous coordinate of the marker transformed from the second world coordinate system to the first world coordinate system; according to the determined target homogeneous coordinate, define an error function to determine the error results corresponding to all the image frames observing the marker.
[0083] Continuing with the above example, according to the image frame containing the marker obtained during mapping at the first moment and Determine that the first homogeneous coordinate of the marker in the O1 space coordinate system is According to the image frame containing markers obtained during mapping at the second moment and the second homogeneous coordinates of the markers in the O2 world coordinate system can be determined Multiply on the left by the first pose transformation matrix to obtain the target homogeneous coordinates from the second world coordinate system O2 to the first world coordinate system O1 as wherein define the error function From this, the error results corresponding to the observation images of all observed markers are determined
[0084] S403: Determine the second pose transformation matrix according to the error
[0085] In specific implementation, the error is obtained by using the error function defined in step S402, and the errors corresponding to the observation images in each direction where markers are detected are superimposed to obtain the final error. According to the error, the nonlinear least squares algorithm is applied, and the final error can be minimized, thereby obtaining the optimal pose transformation matrix, that is, determining the second pose transformation matrix
[0086] Continuing with the above example, all error results are superimposed to obtain the final error Apply the nonlinear least squares algorithm: Assume that the vector form of is then the Taylor expansion form of the error is e m (x + Δx) = e m (x) + J m Δx, where J m is the partial derivative of the error term e m with respect to x. Substitute the derivative result of J m back into the error function and substitute f(m) back into the final error to determine the second pose transformation matrix
[0087] S404: Update the first position coordinates of each target object in the first world coordinate system according to the second pose transformation matrix, and complete the splicing of the first map and the second map
[0088] According to the optimization of the pose transformation matrix provided by the embodiments of the present disclosure, it is used to reduce the error generated during the mapping process and ensure that the spliced map can obtain accurate position information
[0089] Based on the same inventive concept, an embodiment of the present disclosure also provides a map stitching method corresponding to a robot. Since the principle of solving problems by the map stitching method in the embodiment of the present disclosure is similar to that of the above-mentioned robot in the embodiment of the present disclosure, the implementation of the method can refer to the implementation of the robot, and the repeated parts will not be described again.
[0090] Embodiment III
[0091] A map stitching method provided by an embodiment of the present disclosure includes:
[0092] During the process of map building, obtain an observation image of the map building space, where the observation image contains markers;
[0093] For the observation image containing markers at the first moment, determine the first pose information of the robot in the first world coordinate system when the robot detects the markers, where the first world coordinate system is the world coordinate system at the time of the previous map building;
[0094] For the observation image containing the same markers at the second moment, determine the second pose information of the robot in the second world coordinate system when the robot detects the markers, where the second world coordinate system is the world coordinate system at the time of the current map building;
[0095] According to the first pose information and the second pose information, determine the first pose transformation matrix of the second world coordinate system relative to the first world coordinate system;
[0096] Use the first pose transformation matrix to convert the second position coordinates of each target object included in the second map obtained by the current map building into the first position coordinates in the first world coordinate system, and complete the stitching of the first map and the second map, where the first map is the map obtained by the previous map building.
[0097] In an optional implementation manner, the determining the first pose transformation matrix of the second world coordinate system relative to the first world coordinate system according to the first pose information and the second pose information includes:
[0098] According to the first pose information, determine the first coordinate transformation matrix from the robot space coordinate system to the first world coordinate system;
[0099] According to the second pose information, determine the second coordinate transformation matrix from the robot space coordinate system to the second world coordinate system;
[0100] According to the first coordinate transformation matrix and the second coordinate transformation matrix, determine the first pose transformation matrix from the second world coordinate to the first world coordinate.
[0101] In an optional implementation manner, it further includes:
[0102] During the map building process, determine the third pose information of the marker in the robot's space coordinate system;
[0103] According to the third pose information, the first coordinate transformation matrix, and the second coordinate transformation matrix, determine the error of the first pose transformation matrix;
[0104] Determine the second pose transformation matrix according to the error;
[0105] According to the second pose transformation matrix, update the first position coordinates of each target object in the first world coordinate system to complete the splicing of the first map and the second map.
[0106] In an optional implementation, the determining the second pose transformation matrix according to the error includes: superimposing the errors corresponding to each observed image in which the marker is detected, and using the least squares algorithm according to the error to determine the second pose transformation matrix.
[0107] Those skilled in the art can understand that in the above method of the specific implementation manner, the writing order of each step does not mean a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of each step should be determined according to its function and possible internal logic.
[0108] Those skilled in the art can clearly understand that for the convenience and brevity of description, the specific working process of the above-described method can refer to the corresponding process in the foregoing robot embodiments and will not be elaborated herein.
[0109] The technical solution of the present disclosure, in essence, or the part that contributes to the prior art or a part of this 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 for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present disclosure. The foregoing storage medium includes: various media such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disc that can store program codes.
[0110] Finally, it should be noted that the above-described embodiments are only specific embodiments of the present disclosure, used to illustrate the technical solutions of the present disclosure, rather than limiting it. The protection scope of the present disclosure is not limited thereto. Although the present disclosure has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that any person skilled in the art within the technical scope disclosed by the present disclosure can still modify the technical solutions described in the foregoing embodiments or can easily think of changes, or perform equivalent replacements for some of the technical features; and these modifications, changes or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present disclosure, and should all be covered within the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be subject to the protection scope of the claims.
Claims
1. A robot, characterized in that, Comprising: A motion component, a detection component, and a main controller; wherein: The motion component is used to drive the robot to move; The detection component is used to obtain an observation image of the mapping space and send it to the main controller, and the observation image contains markers; The main controller is used to determine the first pose information of the robot in the first world coordinate system when the robot detects the marker for the observation image containing the marker at the first moment, wherein the first world coordinate system is the world coordinate system at the time of the previous mapping; for the observation image containing the same marker at the second moment, determine the second pose information of the robot in the second world coordinate system when the robot detects the marker, wherein the second world coordinate system is the world coordinate system at the time of the current mapping; according to the first pose information, the second pose information, and the robot space coordinate system, determine the first pose transformation matrix of the second world coordinate system relative to the first world coordinate system; use the first pose transformation matrix to convert the second position coordinates of each target object included in the second map obtained by the current mapping into the first position coordinates in the first world coordinate system, and complete the splicing of the first map and the second map, where the first map is the map obtained by the previous mapping.
2. The robot according to claim 1, characterized in that, The main controller is used to determine the first coordinate transformation matrix from the robot space coordinate system to the first world coordinate system according to the first pose information; determine the second coordinate transformation matrix from the robot space coordinate system to the second world coordinate system according to the second pose information; according to the first coordinate transformation matrix and the second coordinate transformation matrix, determine the first pose transformation matrix of the second world coordinate system to the first world coordinate system.
3. The robot according to claim 2, characterized in that, The main controller is further used to determine the third pose information of the marker in the robot space coordinate system during the mapping process; according to the third pose information, the first coordinate transformation matrix, and the second coordinate transformation matrix, determine the error of the first pose transformation matrix; determine the second pose transformation matrix according to the error; update the first position coordinates of each target object in the first world coordinate system according to the second pose transformation matrix, and complete the splicing of the first map and the second map.
4. The robot according to claim 3, characterized in that, The main controller is used to superimpose the errors corresponding to the observation images in which the markers are detected, and use the least squares algorithm according to the errors to determine the second pose transformation matrix.
5. A map splicing method, characterized in that, Comprising: During the mapping process, obtain an observation image of the mapping space, and the observation image contains markers; For the observation image containing the marker at the first moment, determine the first pose information of the robot in the first world coordinate system when the robot detects the marker, wherein the first world coordinate system is the world coordinate system at the time of the previous mapping; For the observation image containing the same marker at the second moment, determine the second pose information of the robot in the second world coordinate system when the robot detects the marker, wherein the second world coordinate system is the world coordinate system at the time of the current mapping; Determine a first pose transformation matrix of the second world coordinate system relative to the first world coordinate system according to the first pose information, the second pose information, and the robot space coordinate system; Use the first pose transformation matrix to convert the second position coordinates of each target object included in the second map obtained from the current mapping into the first position coordinates in the first world coordinate system, and complete the splicing of the first map and the second map, where the first map is the map obtained from the previous mapping.
6. The method according to claim 5, characterized in that, The step of determining a first pose transformation matrix of the second world coordinate system relative to the first world coordinate system according to the first pose information, the second pose information, and the robot space coordinate system specifically includes: Determine a first coordinate transformation matrix from the robot space coordinate system to the first world coordinate system according to the first pose information; Determine a second coordinate transformation matrix from the robot space coordinate system to the second world coordinate system according to the second pose information; Determine a first pose transformation matrix from the second world coordinate to the first world coordinate according to the first coordinate transformation matrix and the second coordinate transformation matrix.
7. The method according to claim 6, characterized in that, It further includes: During the mapping process, determine the third pose information of the marker in the robot space coordinate system; Determine the error of the first pose transformation matrix according to the third pose information, the first coordinate transformation matrix, and the second coordinate transformation matrix; Determine a second pose transformation matrix according to the error; Update the first position coordinates of each target object in the first world coordinate system according to the second pose transformation matrix, and complete the splicing of the first map and the second map.
8. The method according to claim 7, characterized in that, The step of determining a second pose transformation matrix according to the error includes: superimposing the errors corresponding to the observed images of the detected markers, and using the least squares algorithm according to the errors to determine the second pose transformation matrix.
Citation Information
Patent Citations
Simultaneous localization and mapping navigation method, device and system by combining identifiers
CN107727104A
Petrochemical plant inspection robot environment modeling and map building device and method
CN108181636A