Map construction method, multi-device cooperation system, and self-moving device
By judging the matching of trajectory points in multi-robot mapping, a scene map can be directly constructed, which solves the problem of stitching failure caused by map fragment deviation, improves the success rate and accuracy of mapping, and realizes real-time sharing of map information and positioning stability.
Patent Information
- Application Number
- CN202310073306.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-01
- Publication Date
- 2025-11-07
- Estimated Expiration
- 2043-02-01
AI Technical Summary
In existing multi-robot mapping methods, stitching failures due to map fragment deviations result in low mapping success rates.
By determining whether the target trajectory point matches the map fragment on the trajectory to be matched, a scene map is directly constructed based on the target trajectory and the trajectory to be matched, avoiding splicing failure caused by map fragment deviation.
It improves the success rate and accuracy of mapping, ensures the quality and reliability of scene maps, and achieves real-time sharing of map information and positioning stability through trajectory point matching.
Smart Images

Figure CN116255975B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of intelligent equipment, in particular to a map construction method, a multi-device cooperation system and a self-moving device. BACKGROUND
[0002] The current laser navigation robot relies on a 2D map for positioning and navigation to complete a specific work task. For map construction of a larger scene, in order to improve the mapping efficiency, a method of simultaneously mapping from different directions by multiple robots is usually used to construct a map.
[0003] The existing multi-robot mapping method specifically constructs a part of a scene map by each robot, then finds similar map segments in all map segments by using image processing technology, calculates the coordinate conversion relationship between the similar map segments, and finally splices the map segments constructed by each robot into a complete map.
[0004] For the existing multi-robot mapping method, since the mapping of all map segments is spliced into a complete map after each robot independently completes the construction of its own map segment, if the map segment constructed by one or more robots deviates, it is easy to cause the subsequent splicing of the map segment to fail, and thus the map construction fails. SUMMARY
[0005] The present application provides a map construction method, a multi-device cooperation system and a self-moving device, which aims to solve the problem that in the prior art, when the map segment constructed by a robot deviates, the splicing of the map segment cannot be completed, resulting in a low mapping success rate.
[0006] In a first aspect, the present application provides a map construction method, which comprises:
[0007] According to the obtained target trajectory point information, it is judged whether the target trajectory point matches the map segment on the to-be-matched trajectory, wherein the target trajectory point is a trajectory point on a target trajectory of a target self-moving device when the target self-moving device works in a target scene, and the to-be-matched trajectory is a trajectory of a to-be-matched self-moving device that cooperates with the target self-moving device to work in the target scene.
[0008] If the target trajectory point matches the map segment on the to-be-matched trajectory, a scene map of the target scene is constructed according to the target trajectory and the to-be-matched trajectory.
[0009] In a possible implementation manner of the present application, the scene map of the target scene is constructed according to the target trajectory and the to-be-matched trajectory, comprising:
[0010] determine first trajectory information and second trajectory information corresponding to the target trajectory and the trajectory to be matched respectively in a preset coordinate system;
[0011] construct a scene map according to the first trajectory information and the second trajectory information.
[0012] In a possible implementation manner of the present application, the first trajectory information includes a plurality of first trajectory points and first environment information corresponding to each first trajectory point, and the second trajectory information includes a plurality of second trajectory points and second environment information corresponding to each second trajectory point.
[0013] construct a scene map according to the first trajectory information and the second trajectory information, including:
[0014] construct a scene map according to the plurality of first trajectory points, the plurality of second trajectory points, the first environment information corresponding to each first trajectory point, and the second environment information corresponding to each second trajectory point.
[0015] In a possible implementation manner of the present application, the scene map of the target scene is constructed according to the target trajectory and the trajectory to be matched, and then the method further includes:
[0016] for any one of the target self-moving device and the self-moving device to be matched, in the working process of the device, update the scene map according to the subsequent trajectory point information of the device.
[0017] In a possible implementation manner of the present application, the scene map of the target scene is constructed according to the target trajectory and the trajectory to be matched, and then the method further includes:
[0018] for any one of the target self-moving device and the self-moving device to be matched, in the working process of the device, detect whether a current trajectory point on a current trajectory of the device and a historical map segment on a reference trajectory are loop matched, wherein the reference trajectory is any one of the target trajectory and the trajectory to be matched;
[0019] if the current trajectory point and the historical map segment on the reference trajectory are loop matched, then perform loop correction on the current trajectory based on the reference trajectory to obtain a corrected trajectory;
[0020] update the scene map according to the corrected trajectory.
[0021] In a possible implementation manner of the present application, the target trajectory point information includes target environment information corresponding to the target trajectory point; and determining whether the target trajectory point and a map segment on the trajectory to be matched are matched according to the obtained target trajectory point information includes:
[0022] calculate a feature matching degree between the target environment information and the map segment on the trajectory to be matched;
[0023] If the feature matching degree is greater than or equal to the preset matching threshold, it is determined that the target trajectory point matches the ground picture segment on the to-be-matched trajectory.
[0024] In a possible implementation of the present application, the to-be-matched self-moving device is provided with a positioning component and a sampling component, the positioning component is configured to detect a trajectory point coordinate of the to-be-matched self-moving device in a working process, and the sampling component is configured to sample environmental information of a target scene corresponding to each trajectory point coordinate of the to-be-matched self-moving device;
[0025] According to the obtained target trajectory point information, it is determined whether the target trajectory point matches the ground picture segment on the to-be-matched trajectory, and before the method, the method comprises:
[0026] Each to-be-matched trajectory point information of the to-be-matched self-moving device in a working process is obtained, wherein each to-be-matched trajectory point information comprises a trajectory point coordinate detected by the positioning component and environmental information of a target scene corresponding to the trajectory point coordinate sampled by the sampling component;
[0027] According to the trajectory point coordinate and the environmental information in each to-be-matched trajectory point information, a to-be-matched trajectory and a ground picture segment on the to-be-matched trajectory are obtained.
[0028] In a possible implementation of the present application, each to-be-matched trajectory point information carries a time stamp, and according to the trajectory point coordinate and the environmental information in each to-be-matched trajectory point information, a to-be-matched trajectory and a ground picture segment on the to-be-matched trajectory are obtained, comprising:
[0029] According to the time stamp carried in each to-be-matched trajectory point information, the trajectory point and the environmental information in each to-be-matched trajectory point information are spliced to obtain a to-be-matched trajectory and a ground picture segment on the to-be-matched trajectory.
[0030] In a second aspect, the present application further provides a multi-device cooperation system, which comprises a server and at least two self-moving devices that work cooperatively and are in communication connection with the server.
[0031] The server comprises a memory and a processor, the memory is configured to store a computer program, and the computer program is configured to be executed by the processor to implement the map construction method in the first aspect or any possible implementation manner of the first aspect.
[0032] In a third aspect, the present application further provides a self-moving device, which is configured with an execution module, the execution module is configured to execute a working task when the self-moving device walks in a target scene, the self-moving device cooperates with the server and other self-moving devices in the target scene to form the multi-device cooperation system in the second aspect, so as to construct a scene map of the target scene.
[0033] In a fourth aspect, the present application further provides a computer readable storage medium, which stores computer instructions, and the computer instructions are executed by a processor to implement the steps in the map construction method in the first aspect or any possible implementation manner of the first aspect.
[0034] From the above, the present application has the following beneficial effects:
[0035] In the present application, for a target trajectory point on a target trajectory, it is determined whether the target trajectory point matches a ground image segment on a to-be-matched trajectory according to the target trajectory point information, and when it is determined that the target trajectory point matches the ground image segment on the to-be-matched trajectory, a scene map is directly constructed according to the target trajectory and the to-be-matched trajectory. Compared with the prior art of splicing ground image segments according to the similarity of the ground image segments, the problem of splicing failure and map construction failure caused by the deviation of the constructed ground image segments can be avoided, the map construction success rate and the map construction accuracy are improved, the scene map is reconstructed by the trajectory point matching method, different devices can share the map information in real time, each device can use the map constructed by other devices to improve the positioning stability, the overall shared map can be obtained in real time during the map construction process, the requirement for the map construction path planning is reduced, and the quality and reliability of the constructed scene map are ensured. BRIEF DESCRIPTION OF DRAWINGS
[0036] In order to more clearly illustrate the technical solutions in the present application, the drawings needed in the description of the present application will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0037] Figure 1 is a scene schematic diagram of a multi-device cooperation system provided in an embodiment of the present application;
[0038] Figure 2 is a flow schematic diagram of a map construction method provided in an embodiment of the present application;
[0039] Figure 3 is a to-be-matched trajectory schematic diagram of a to-be-matched self-moving device provided in an embodiment of the present application;
[0040] Figure 4 is a functional module schematic diagram of a map construction device provided in an embodiment of the present application;
[0041] Figure 5 is a structure schematic diagram of a server provided in an embodiment of the present application;
[0042] Figure 6is a specific application scenario of the multi-device cooperation system provided in the embodiments of the present application. DETAILED DESCRIPTION
[0043] The technical solutions in the present application will be described clearly and completely in the present application in combination with the drawings. Obviously, the described embodiments are only some of the embodiments of the present application, not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the present application.
[0044] In the description of the present application, it should be understood that the terms "center", "longitudinal", "transverse", "length", "width", "thickness", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer" and the like indicate the orientation or positional relationship shown in the drawings, and are only for the convenience of describing the present application and simplifying the description, and do not indicate or imply that the device or element referred to must have a particular orientation, be constructed and operated in a particular orientation, and therefore cannot be understood as a limitation of the present application. In addition, the terms "first", "second" are only for the purpose of description, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first", "second" can explicitly or implicitly include one or more features. In the description of the present application, the meaning of "a plurality of" is two or more, unless otherwise explicitly specified.
[0045] In the present application, the word "exemplary" is used to mean "serving as an example, instance, or illustration." Any implementation described as "exemplary" in the present application is not necessarily to be construed as preferred or advantageous over other implementations. The following description is presented to enable any person skilled in the art to make and use the present application. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present application. It should be apparent to one skilled in the art, however, that the present application can be practiced without using these specific details. In other instances, well-known structures and processes are not elaborated upon in order to avoid unnecessary detail, which can obscure the description of the present application. Accordingly, the present application is not intended to be limited by the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.
[0046] The present application provides a map construction method, a multi-device cooperation system and a self-moving device, which will be described in detail below.
[0047] Please refer to Figure 1 , Figure 1Fig. 1 is a schematic diagram of a scene provided by a multi-device cooperation system according to an embodiment of the present application. The multi-device cooperation system includes a server 103, a first self-moving device 101, and a second self-moving device 102. The first self-moving device 101 is provided with a first sensor 1011, and the second self-moving device 102 is provided with a second sensor 1021.
[0048] The first self-moving device 101 and the second self-moving device 102 can move in a target scene. In the process of movement, the first sensor 1011 can collect first positioning data of a current position of the first self-moving device 101 and first environment data of the current position. The second sensor 1021 can collect second positioning data of a current position of the second self-moving device 102 and second environment data of the current position.
[0049] The first self-moving device 101 and the second self-moving device 102 are respectively in communication connection with the server 103, so that the data collected by the corresponding sensors can be uploaded to the server 103 for data processing by the server 103 to construct a respective walking track of the first self-moving device 101 and the second self-moving device 102, so as to construct a scene map of the target scene according to the constructed walking track.
[0050] In the embodiment of the present application, the server 103 can be an independent server, or a server network or a server cluster composed of servers. For example, the server 103 described in the embodiment of the present application includes but is not limited to a computer, a network host, a single network server, a plurality of network server sets, or a cloud server composed of a plurality of servers. The cloud server is composed of a large number of computers or network servers based on cloud computing.
[0051] In the embodiments of the present application, the first self-moving device 101 and the second self-moving device 102 can realize network communication with the server 103 through any communication mode, including but not limited to mobile communication based on the third generation partnership project (3rd Generation Partnership Project, 3GPP), long term evolution (Long Term Evolution, LTE), worldwide interoperability for microwave access (Worldwide Interoperability for Microwave Access, WiMAX), or computer network communication based on the TCP / IP protocol suite (TCP / IP), user datagram protocol (User Datagram Protocol, UDP), etc., or wireless network communication based on Bluetooth, mobile hotspot (Wi-Fi), Zigbee, etc. The first self-moving device 101 and the second self-moving device 102 can upload sensor data to the server 103 through the above communication mode, and the server 103 can send the current constructed scene map to the first self-moving device 101 and the second self-moving device 102 through the above communication mode.
[0052] Those skilled in the art can understand that Figure 1 The application environment shown in the above is only one application scenario suitable for the scheme of the present application, and does not constitute a limitation on the application scenarios of the scheme of the present application. Other application scenarios can also include more self-moving devices than those shown in the above, for example Figure 1 The above only shows two self-moving devices. It can be understood that the multi-device cooperation system can also include three, four or even more self-moving devices in communication connection with the server 103, and the specific number is not limited here. Figure 1 The above only shows two self-moving devices. It can be understood that the multi-device cooperation system can also include three, four or even more self-moving devices in communication connection with the server 103, and the specific number is not limited here.
[0053] It should be noted that Figure 1 The scene diagram of the multi-device cooperation system shown in the above is only one example. The multi-device cooperation system and the scene described in the embodiments of the present application are used to more clearly illustrate the technical scheme of the embodiments of the present application, and do not constitute a limitation on the technical scheme provided by the embodiments of the present application. Those skilled in the art can know that, as the multi-device cooperation system evolves and new business scenarios appear, the technical scheme provided by the embodiments of the present application is also applicable to similar technical problems.
[0054] Firstly, the application provides a map construction method, an execution subject of the map construction method can be a map construction device, or different types of devices integrated with the map construction device, such as a self-moving device, a server device, a physical host, or a user equipment (UE), wherein the self-moving device can be a smart device such as a cleaning robot or a laser navigation robot, and the UE can be a terminal device such as a smart phone, a tablet computer, a notebook computer, a palm computer, or a desktop computer.
[0055] The map construction method can be applied to a household or commercial mobile robot such as an indoor cleaning robot or an indoor laser navigation robot, and is used to establish a scene map of a working scene where the mobile robot is located, so that the mobile robot can complete a specific task based on the established scene map.
[0056] The map construction method comprises the following steps.
[0057] According to the obtained target trajectory point information, it is determined whether the target trajectory point matches a map segment on the to-be-matched trajectory, wherein the target trajectory point is a trajectory point on a target trajectory of a target self-moving device when the target self-moving device works in a target scene, and the to-be-matched trajectory is a trajectory of a to-be-matched self-moving device that cooperatively works with the target self-moving device in the target scene; if the target trajectory point matches the map segment on the to-be-matched trajectory, a scene map of the target scene is constructed according to the target trajectory and the to-be-matched trajectory.
[0058] Please refer to Figure 2 , Figure 2 is a flowchart of the map construction method provided in the embodiments of the application. It should be noted that although the logical sequence is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0059] In the embodiments of the application, the map construction method can comprise the following steps.
[0060] In step S201, according to the obtained target trajectory point information, it is determined whether the target trajectory point matches a map segment on the to-be-matched trajectory, wherein the target trajectory point is a trajectory point on a target trajectory of a target self-moving device when the target self-moving device works in a target scene, and the to-be-matched trajectory is a trajectory of a to-be-matched self-moving device that cooperatively works with the target self-moving device in the target scene.
[0061] In the embodiments of the application, the target trajectory point information can be position information and environment information of the target self-moving device when the target self-moving device works and moves in the target scene.
[0062] It can be understood that the position information can be coordinate information, and the environment information can be distance information between the target self-moving device and obstacles around the target self-moving device, that is, the position information can represent coordinates of the target trajectory point, and the environment information can represent an environment around the target trajectory point, that is, an obstacle situation.
[0063] The target self-moving device is provided with a sensor. When the target self-moving device works in the target scene, the sensor can sample the current position and the current environment information of the target self-moving device in real time based on a preset sampling frequency, to obtain corresponding position information and environment information. For example, the sensor can be configured to sample data once per second, and thus a set of position information and environment information can be obtained every 1 second. It can be understood that the sampling frequency of the sensor can be determined according to actual needs or actual application scenarios, and is not limited here.
[0064] In a specific implementation manner, the target self-moving device can upload the sampled position information and environment information to the server based on a preset uploading frequency, that is, the server can obtain information of the target trajectory point of the target self-moving device based on the uploading frequency, and according to the continuously obtained information of the target trajectory point, the server can determine the target trajectory of the target self-moving device in the target scene.
[0065] In another specific implementation manner, the server can also establish a communication link with the target self-moving device based on a preset access frequency, obtain information of the target trajectory point sampled by the target self-moving device when the target self-moving device moves, and thus determine the target trajectory of the target self-moving device in the target scene according to the obtained information of the target trajectory point.
[0066] Similarly, the server can obtain the information of the target trajectory point of the target self-moving device in the manner described above for obtaining the information of the target trajectory point, and details are not repeated here.
[0067] Similarly, the server can determine the target trajectory of the target self-moving device in the target scene according to the obtained information of the target trajectory point of the target self-moving device, and it can be understood that the target trajectory can be distributed with image segments.
[0068] In the embodiments of the present application, the server can determine an image segment on the target trajectory corresponding to the target trajectory point of the target trajectory point information according to a plurality of continuous target trajectory point information of the target trajectory point.
[0069] As Figure 3 shown, Figure 3is a to-be-matched trajectory diagram of a to-be-matched self-moving device provided in an embodiment of the present application, and the to-be-matched trajectory is arranged with a first to-be-matched ground picture segment B1, a second to-be-matched ground picture segment B2, a third to-be-matched ground picture segment B3 and a fourth to-be-matched ground picture segment B4 at intervals. It can be understood that the target trajectory and the trajectories of other self-moving devices that cooperate with the target self-moving device in the target scene can also be arranged with ground picture segments.
[0070] It should be noted that although Figure 3 The to-be-matched ground picture segments shown in FIG. 2 are arranged at intervals. In other application scenarios, the to-be-matched ground picture segments on the to-be-matched trajectory can also be arranged continuously, which can be determined according to actual application scenarios, and is not limited herein.
[0071] For example, the sensor of the to-be-matched self-moving device uploads 500 frames of to-be-matched trajectory point information to the server in sequence based on a pre-set upload frequency. During the process of receiving the 500 frames of to-be-matched trajectory point information, the server can generate corresponding ground picture segments according to every 100 frames of to-be-matched trajectory point information, so as to obtain 5 continuous ground picture segments on the to-be-matched trajectory. The server can also generate corresponding ground picture segments according to every 50 frames of to-be-matched trajectory point information, so as to obtain 10 continuous ground picture segments on the to-be-matched trajectory.
[0072] In the embodiment of the present application, after obtaining the target trajectory point information, the server can match the target trajectory point information with all the ground picture segments arranged on the to-be-matched trajectory, and determine whether the target trajectory point matches the ground picture segment on the to-be-matched trajectory.
[0073] It can be understood that determining whether the target trajectory point matches the ground picture segment on the to-be-matched trajectory is to determine whether the target self-moving device and the to-be-matched self-moving device pass through the same or similar positions in the movement process of the target self-moving device and the to-be-matched self-moving device in the target scene, that is, whether they pass through the same trajectory point or similar trajectory point.
[0074] In step S202, if the target trajectory point matches the ground picture segment on the to-be-matched trajectory, a scene map of the target scene is constructed according to the target trajectory and the to-be-matched trajectory.
[0075] According to step S201, it can be known that determining whether the target trajectory point matches the ground picture segment on the to-be-matched trajectory is to determine whether the target self-moving device and the to-be-matched self-moving device pass through the same trajectory point or similar trajectory point in the movement process of the target self-moving device and the to-be-matched self-moving device in the target scene.
[0076] If the target self-moving device and the to-be-matched self-moving device pass through the same trajectory point or a similar trajectory point, the position information and the environment information of the target trajectory point on the target trajectory of the target self-moving device should be corresponding to the corresponding image section of the same trajectory point or the similar trajectory point on the to-be-matched trajectory of the to-be-matched device, that is, matched.
[0077] After the server determines that the target trajectory point is matched with the image section on the to-be-matched trajectory, it can be determined that the target self-moving device and the to-be-matched self-moving device pass through the same trajectory point or a similar trajectory point. At this time, the server can construct the scene map of the target scene according to the target trajectory of the target self-moving device and the to-be-matched trajectory of the to-be-matched self-moving device.
[0078] In the embodiments of the present application, the server can transform the target trajectory and the to-be-matched trajectory into the same coordinate system based on the same trajectory point or the similar trajectory point, so as to construct the scene map in the coordinate system according to the trajectory point information of the transformed target trajectory and the to-be-matched trajectory, to obtain the scene map of the target scene.
[0079] In the embodiments of the present application, for the target trajectory point on the target trajectory, it is determined whether the target trajectory point is matched with the image section on the to-be-matched trajectory according to the target trajectory point information. When it is determined that the target trajectory point is matched with the image section on the to-be-matched trajectory, the scene map is directly constructed according to the target trajectory and the to-be-matched trajectory. Compared with the prior art of splicing the image sections according to the similarity of the image sections, the problem of splicing failure and mapping failure caused by the deviation of the constructed image sections can be avoided, the mapping success rate and the mapping accuracy are improved, and the scene map is reconstructed by the trajectory point matching method. Different devices can share the map information in real time, each device can use the map established by other devices to improve its own positioning stability, and the overall shared map can be obtained in real time during the mapping process, the requirement for mapping path planning is reduced, and the quality and reliability of the constructed scene map are ensured.
[0080] Next, the steps shown in FIG. 1 and the specific implementation that can be used in actual application will be described in detail. Figure 2
[0081] In some embodiments of the present application, constructing the scene map of the target scene according to the target trajectory and the to-be-matched trajectory can further include:
[0082] determining the first trajectory information and the second trajectory information corresponding to the target trajectory and the to-be-matched trajectory in the preset coordinate system; and constructing the scene map according to the first trajectory information and the second trajectory information.
[0083] Since the target self-moving device and the to-be-matched self-moving device work together in the target scene, the target trajectory and the to-be-matched trajectory are not completely identical. When the target self-moving device and the to-be-matched self-moving device start to move from different locations in the target scene, the target self-moving device and the to-be-matched self-moving device establish the coordinate system of the respective moving trajectories with the respective starting points as the coordinate origin. Therefore, in general, the coordinate systems in which the target trajectory and the to-be-matched trajectory are located are not identical.
[0084] In a specific implementation manner, the preset coordinate system can be the target coordinate system of the target trajectory. In this case, the first trajectory information corresponding to the target trajectory in the preset coordinate system is the trajectory information of the target trajectory itself. At this time, it is only required to convert the to-be-matched trajectory from the to-be-matched coordinate system to the target coordinate system. That is, the second trajectory information corresponding to the to-be-matched trajectory in the preset coordinate system is the trajectory information corresponding to the to-be-matched trajectory in the target coordinate system after converting all the to-be-matched trajectory points on the to-be-matched trajectory and the environment information corresponding to the to-be-matched trajectory points.
[0085] In another specific implementation manner, the preset coordinate system can be the to-be-matched coordinate system of the to-be-matched trajectory. In this case, the second trajectory information corresponding to the to-be-matched trajectory in the preset coordinate system is the trajectory information of the to-be-matched trajectory itself. At this time, it is only required to convert the target trajectory from the target coordinate system to the to-be-matched coordinate system. That is, the first trajectory information corresponding to the target trajectory in the preset coordinate system is the trajectory information corresponding to the target trajectory in the to-be-matched coordinate system after converting all the target trajectory points on the target trajectory and the environment information corresponding to the target trajectory points.
[0086] In still another specific implementation manner, the preset coordinate system can be a new coordinate system different from the target coordinate system and the to-be-matched coordinate system. In this case, it is required to convert the target trajectory from the target coordinate system to the new coordinate system and convert the to-be-matched trajectory from the to-be-matched coordinate system to the new coordinate system. That is, the first trajectory information corresponding to the target trajectory in the preset coordinate system is the trajectory information corresponding to the target trajectory in the new coordinate system after converting all the target trajectory points on the target trajectory and the environment information corresponding to the target trajectory points, and the second trajectory information corresponding to the to-be-matched trajectory in the preset coordinate system is the trajectory information corresponding to the to-be-matched trajectory in the new coordinate system after converting all the to-be-matched trajectory points on the to-be-matched trajectory and the environment information corresponding to the to-be-matched trajectory points.
[0087] In the embodiments of the present application, the selection of the preset coordinate system can be determined according to the actual application scenario, which is not limited here.
[0088] It can be understood that the first trajectory information and the second trajectory information after the coordinate conversion are trajectory information in the same coordinate system, i.e., the preset coordinate system. At this time, the first trajectory information and the second trajectory information can represent the scene information of the target scene, and therefore, the scene map can be directly constructed according to the first trajectory information and the second trajectory information.
[0089] In some embodiments of the present application, the first trajectory information includes a plurality of first trajectory points and first environment information corresponding to each first trajectory point, and the second trajectory information includes a plurality of second trajectory points and second environment information corresponding to each second trajectory point. According to the first trajectory information and the second trajectory information, the scene map can be further constructed by:
[0090] According to the plurality of first trajectory points, the plurality of second trajectory points, the first environment information corresponding to each first trajectory point, and the second environment information corresponding to each second trajectory point, the scene map is constructed.
[0091] According to the description in the above embodiments, it can be known that the first trajectory information is a combination of the first trajectory of the target trajectory converted into the preset coordinate system and the environment information around the first trajectory. That is, the plurality of first trajectory points can be spliced into the first trajectory, and the first environment information corresponding to the plurality of first trajectory points can be spliced into the obstacle feature around the first trajectory, so that the first trajectory and the obstacle feature around the first trajectory are fused together to obtain the first trajectory information.
[0092] Similarly, the second trajectory information is a combination of the second trajectory of the to-be-matched trajectory converted into the preset coordinate system and the environment information around the second trajectory. That is, the plurality of second trajectory points can be spliced into the second trajectory, and the second environment information corresponding to the plurality of second trajectory points can be spliced into the obstacle feature around the second trajectory, so that the second trajectory and the obstacle feature around the second trajectory are fused together to obtain the second trajectory information.
[0093] In the embodiments of the present application, the server can splice the plurality of first trajectory points, the first environment information corresponding to each first trajectory point, the plurality of second trajectory points, and the second environment information corresponding to each second trajectory point based on the preset coordinate system, so as to obtain the scene map in the preset coordinate system.
[0094] Different from the prior art of splicing the ground picture segment, in the embodiment of the present application, the trajectory points and the environmental information are directly spliced, that is, based on each coordinate point passed through by the target self-moving device and the to-be-matched self-moving device in the walking process and the obstacle features around the coordinate point, the scene map is obtained, which can avoid the problem of mapping failure caused by the deviation of the ground picture segment constructed by the self-moving device, improve the success rate and precision of the scene map construction, and at the same time, the scene map is reconstructed by the trajectory point matching method, different devices can share map information in real time, each device can use the map established by other devices to improve its own positioning stability, and at the same time, the overall shared map can be obtained in real time during the mapping process, and the requirement for mapping path planning is reduced.
[0095] In some embodiments of the present application, the to-be-matched self-moving device is provided with a positioning component and a sampling component, the positioning component is used to detect the trajectory point coordinates of the to-be-matched self-moving device in the working process, and the sampling component is used to sample the environmental information of the target scene corresponding to each trajectory point coordinate of the to-be-matched self-moving device;
[0096] According to the obtained target trajectory point information, it is judged whether the target trajectory point matches the ground picture segment on the to-be-matched trajectory, and the method can further include the following steps:
[0097] Obtaining each to-be-matched trajectory point information of the to-be-matched self-moving device in the working process, wherein each to-be-matched trajectory point information includes the trajectory point coordinates detected by the positioning component and the environmental information of the target scene corresponding to the trajectory point coordinates sampled by the sampling component;
[0098] According to the trajectory point coordinates and the environmental information in each to-be-matched trajectory point information, the to-be-matched trajectory and the ground picture segment on the to-be-matched trajectory are obtained.
[0099] In the embodiment of the present application, the positioning component carried by the to-be-matched self-moving device can be any existing positioning sensor or positioning device, which can use any existing positioning method or a fusion of multiple positioning methods to realize the positioning of the to-be-matched self-moving device, wherein the positioning methods include but are not limited to Real-Time Kinematic (RTK), multi-line laser radar positioning method, vision-based positioning method, Ultra-Wideband (UWB) based positioning method, etc.
[0100] The sampling component carried by the to-be-matched self-moving device can be any existing distance detection sensor, displacement sensor or ranging device, including but not limited to an optical distance sensor, an infrared distance sensor, an ultrasonic distance sensor, etc. The sampling component can detect the distance between the to-be-matched self-moving device and surrounding obstacles based on any existing distance detection method, thereby obtaining environmental information. For example, the to-be-matched self-moving device can detect the surrounding environmental obstacles at the current position of the to-be-matched self-moving device by using a Time of Flight (TOF) method. Specifically, the sampling component can emit a light pulse and measure the time from emission to reflection of the light pulse by an object, and calculate the distance between the to-be-matched self-moving device and the object based on the time interval.
[0101] In the embodiments of the present application, when the to-be-matched self-moving device moves and works in a target scene, the positioning component and the sampling component carried by the to-be-matched self-moving device can respectively detect the trajectory point coordinates of the to-be-matched self-moving device and the environmental information corresponding to the trajectory point coordinates based on preset sampling frequencies, and then upload the trajectory point coordinates and the corresponding environmental information, i.e., the to-be-matched trajectory point information, to the server based on a preset uploading frequency.
[0102] After obtaining the to-be-matched trajectory point information, the server can splice each to-be-matched trajectory point based on a preset splicing rule to obtain a to-be-matched trajectory of the to-be-matched self-moving device when moving in the target scene, and splice the environmental information corresponding to each to-be-matched trajectory point to obtain multiple map segments on the to-be-matched trajectory.
[0103] In a specific implementation manner, each to-be-matched trajectory point information can carry a timestamp. The server can splice the trajectory point and the environmental information in each to-be-matched trajectory point information according to the timestamp carried by each to-be-matched trajectory point information, to obtain the to-be-matched trajectory and the map segments on the to-be-matched trajectory.
[0104] It can be understood that the timestamp can be used to authenticate the time of the to-be-matched trajectory point information, and therefore the order of generation of the to-be-matched trajectory point information can be determined according to the timestamp. In the embodiments of the present application, the server can splice the trajectory point and the environmental information according to the frame number of the to-be-matched trajectory point information received in sequence, for example, a map segment is established based on 100 frames of to-be-matched trajectory point information according to the time sequence of the received 100 frames of to-be-matched trajectory point information.
[0105] In another specific implementation manner, the server can also splice the to-be-matched trajectory point information based on the moving distance of the to-be-matched self-moving device, for example, a map segment is established based on the to-be-matched trajectory point information within a range of 10 meters according to the coordinate position of the to-be-matched trajectory point, when the to-be-matched self-moving device moves 10 meters.
[0106] It should be noted that in some other application scenarios, the server can also generate the corresponding ground picture segment according to the existing manner capable of generating the ground picture segment according to the to-be-matched trajectory point information, and details are not described herein.
[0107] In some embodiments of the present application, the target trajectory point information can include target environment information corresponding to the target trajectory point; and the determining whether the target trajectory point matches the ground picture segment on the to-be-matched trajectory according to the obtained target trajectory point information can further include:
[0108] calculating a feature matching degree between the target environment information and the ground picture segment on the to-be-matched trajectory;
[0109] If the feature matching degree is greater than or equal to a preset matching threshold, it is determined that the target trajectory point matches the ground picture segment on the to-be-matched trajectory.
[0110] It can be understood that the ground picture segment is constructed according to sensor data sampled by a sampling component such as a sensor around the to-be-matched trajectory point corresponding to the segment, and the ground picture segment can represent the environmental features such as the wall surface and other obstacle features around the to-be-matched trajectory point corresponding to the segment. When the target trajectory point matches a certain ground picture segment on the to-be-matched trajectory, the target environment information corresponding to the target trajectory point or the latest sensor data on the target trajectory can be matched with the ground picture segment.
[0111] Specifically, a position, i.e., a trajectory point coordinate, can be searched in the ground picture segment, and it is assumed that the sensor data such as the lidar data corresponding to the target self-moving device can hit the wall surface or the obstacle in the ground picture segment as much as possible when the target self-moving device is at the position, and the position can be referred to as an optimal position.
[0112] In the embodiments of the present application, the method for searching the optimal position in the ground picture segment can adopt an exhaustive method, or a branch and bound method can be used to improve the search efficiency by constructing a multi-layer map. When the optimal position in the ground picture segment is found, if the lidar hit rate, i.e., the feature matching degree, is greater than or equal to a preset matching threshold, it is determined that the matching is successful, and otherwise the matching fails.
[0113] It can be understood that the matching threshold can be any value such as 60%, 75%, 90%, etc., and the matching threshold can be different in different application scenarios, and the specific value of the matching threshold can be determined according to the actual application scenario, which is not limited herein.
[0114] After the matching is successful, the target trajectory and the to-be-matched trajectory can be converted to the same coordinate system, so as to construct a scene map according to the converted trajectory information.
[0115] For example, if the target trajectory A matches a certain picture segment on the to-be-matched trajectory B, the latest trajectory point An on the target trajectory A will get the best position coordinate Pn on the picture segment, and the best position coordinate Pn is the corresponding position of the trajectory point An in the coordinate system with the starting point of the to-be-matched trajectory B as the origin. According to the corresponding relationship, the corresponding position Pi of any point Ai on the target trajectory A in the coordinate system with the starting point of the to-be-matched trajectory B as the origin can be calculated.
[0116] Suppose the relative position conversion relationship between any point Ai on the target trajectory A and the trajectory point An is Ti, the following relationship can be obtained:
[0117]
[0118] Let A n -1 ·P n =M, then P i =A i ·M, where M is the coordinate conversion matrix.
[0119] According to the coordinate conversion matrix, the corresponding position Pi of any point Ai on the target trajectory A in the coordinate system with the starting point of the to-be-matched trajectory B as the origin can be obtained.
[0120] In some embodiments of the present application, a scene map of a target scene is constructed according to a target trajectory and a to-be-matched trajectory, and then the method can further include:
[0121] For any one of the target self-moving device and the to-be-matched self-moving device, in the working process of the device, the scene map is updated according to the obtained subsequent trajectory point information of the device.
[0122] In the embodiments of the present application, when the target trajectory and the to-be-matched trajectory match successfully, the target trajectory and the to-be-matched trajectory are associated. In the subsequent movement of the target self-moving device and the to-be-matched self-moving device, after the server obtains new target trajectory point information and to-be-matched trajectory point information (subsequent trajectory point information), the constructed scene map can be updated according to the obtained subsequent trajectory point information, thereby improving the positioning stability of the target trajectory and the to-be-matched trajectory.
[0123] In some embodiments of the present application, a scene map of a target scene is constructed according to a target trajectory and a to-be-matched trajectory, and then the method can further include:
[0124] In the working process of any one of the target self-moving device and the self-moving device to be matched, whether a current track point on a current track of the device matches a historical ground picture segment on a reference track is detected, wherein the reference track is any one of the target track and the track to be matched;
[0125] If the current track point matches the historical ground picture segment on the reference track, the current track is corrected in a loop based on the reference track, and a corrected track is obtained; and the scene map is updated according to the corrected track.
[0126] It can be understood that after motion estimation, when the initial pose of the first frame image is fixed, the poses of subsequent frames can be recursively obtained in theory, but since the estimated poses of each two adjacent frames may have errors, and the errors are accumulated on the next frame, the errors are gradually accumulated, and the deviation between the system positioning track and the actual motion track is large.
[0127] In order to eliminate this error, when the self-moving device passes through the same position twice, due to the influence of accumulated error, the recursively obtained poses are quite different, but if the two poses are corrected to be the same, and then the poses of other frames are corrected based on the corrected poses, the influence of accumulated error can be reduced.
[0128] Therefore, in the embodiments of the present application, in the working process of any one of the target self-moving device and the self-moving device to be matched, whether the current track point of the device matches any historical ground picture segment on the reference track can be detected, wherein the historical ground picture segment includes the ground picture segment on the target track and the ground picture segment on the track to be matched.
[0129] That is, after the target track and the track to be matched are associated, the current track point of any one of the target self-moving device and the self-moving device to be matched can be matched with the ground picture segment on the reference track, that is, the target track and the track to be matched, to detect whether the device passes through the same coordinate position twice.
[0130] That is, after the server obtains the current track point information, whether the current track point matches the ground picture segment on the target track and whether the current track point matches the ground picture segment on the track to be matched can be detected.
[0131] In the embodiments of the present application, whether the reference track point matches the historical ground picture segment on the reference track can be determined by calculating the similarity between the current track point information and each historical ground picture segment on the reference track.
[0132] For example, a similarity threshold can be configured in advance for the server, the similarity between the current track point information and each historical map segment is calculated, the maximum similarity in each similarity is selected and compared with the similarity threshold, if the maximum similarity is less than the similarity threshold, it can be considered that the current track point is not matched with the historical map segment on the reference track, i.e., the device does not pass the same position twice; otherwise, if the maximum similarity is greater than or equal to the similarity threshold, it can be considered that the current track point is loop matched with the historical map segment on the reference track, i.e., the device passes the same position twice.
[0133] After determining that the current track point is loop matched with the historical map segment on the reference track, the current track can be loop corrected based on the reference track. It can be understood that the loop correction is to eliminate the accumulated error by using the loop information.
[0134] For example, loop fusion can be performed first, i.e., the map points associated with the feature points matched by the loop detection are fused, and the repeated map points are removed, then the pose correction of the current track point information is performed, the pose conversion relationship between the image frame corresponding to the current track point and the detected loop frame is determined, the image frame corresponding to the current track point is pose corrected based on the pose conversion relationship, all poses on the reference track are corrected by using, for example, the bundle adjustment (BA) method, the corrected track is obtained, and finally the scene map is updated according to the track points and the environmental information on the corrected track, so as to ensure that a higher quality scene map is obtained.
[0135] In order to better implement the map construction method of the present application, the present application further provides a map construction device, as shown in Figure 4 Figure 4 is a functional module schematic diagram of the map construction device provided in the embodiments of the present application. The map construction device 400 can include:
[0136] The matching judgment unit 401 is configured to judge whether the target track point is matched with the map segment on the to-be-matched track according to the obtained target track point information, wherein the target track point is a track point on a target track of a target self-moving device when the target self-moving device works in a target scene, and the to-be-matched track is a track of a to-be-matched self-moving device which cooperates with the target self-moving device to work in the target scene.
[0137] The mapping unit 402 is configured to construct a scene map of the target scene according to the target track and the to-be-matched track if the target track point is matched with the map segment on the to-be-matched track.
[0138] In some embodiments of the present application, the mapping unit 402 can be specifically configured to:
[0139] determine first trajectory information and second trajectory information corresponding to the target trajectory and the trajectory to be matched respectively in a preset coordinate system;
[0140] construct a scene map according to the first trajectory information and the second trajectory information.
[0141] In some embodiments of the present application, the first trajectory information includes a plurality of first trajectory points and first environment information corresponding to each first trajectory point, and the second trajectory information includes a plurality of second trajectory points and second environment information corresponding to each second trajectory point; the mapping unit 402 can be specifically further used for:
[0142] construct a scene map according to the plurality of first trajectory points, the plurality of second trajectory points, the first environment information corresponding to each first trajectory point, and the second environment information corresponding to each second trajectory point.
[0143] In some embodiments of the present application, the map construction apparatus 400 can further include a map updating unit 403, and the mapping unit 402 constructs a scene map of a target scene according to the target trajectory and the trajectory to be matched, and then the map updating unit 403 can be specifically used for:
[0144] for any one of the target self-moving device and the self-moving device to be matched, in the working process of the device, update the scene map according to the subsequent trajectory point information of the device.
[0145] In some embodiments of the present application, the map updating unit 403 can be specifically further used for:
[0146] for any one of the target self-moving device and the self-moving device to be matched, in the working process of the device, detect whether a current trajectory point on a current trajectory of the device and a historical map segment on a reference trajectory are loop matched, wherein the reference trajectory is any one of the target trajectory and the trajectory to be matched;
[0147] if the current trajectory point and the historical map segment on the reference trajectory are loop matched, then loop correct the current trajectory based on the reference trajectory to obtain a corrected trajectory;
[0148] update the scene map according to the corrected trajectory.
[0149] In some embodiments of the present application, the target trajectory point information includes target environment information corresponding to the target trajectory point; the matching judgment unit 401 can be specifically used for:
[0150] calculate a feature matching degree between the target environment information and the map segment on the trajectory to be matched;
[0151] if the feature matching degree is greater than or equal to a preset matching threshold, then determine that the target trajectory point is matched with the map segment on the trajectory to be matched.
[0152] In some embodiments of the present application, the self-moving device to be matched is provided with a positioning component and a sampling component, the positioning component is used to detect the coordinates of the trajectory points of the self-moving device to be matched in the working process, and the sampling component is used to sample the environmental information of the target scene corresponding to each trajectory point coordinate of the self-moving device to be matched; the matching judgment unit 401 judges whether the target trajectory point and the ground picture segment on the trajectory to be matched match according to the obtained target trajectory point information, and before that, the matching judgment unit 401 can be specifically used for:
[0153] obtaining each trajectory point information to be matched of the self-moving device to be matched in the working process, wherein each trajectory point information to be matched includes the trajectory point coordinates detected by the positioning component and the environmental information of the target scene corresponding to the trajectory point coordinates sampled by the sampling component;
[0154] obtaining the trajectory to be matched and the ground picture segment on the trajectory to be matched according to the trajectory point coordinates and the environmental information in each trajectory point information to be matched.
[0155] In some embodiments of the present application, each trajectory point information to be matched carries a time stamp, and the matching judgment unit 401 can be specifically used for:
[0156] splicing the trajectory point and the environmental information in each trajectory point information to be matched according to the time stamp carried in each trajectory point information to be matched, to obtain the trajectory to be matched and the ground picture segment on the trajectory to be matched.
[0157] It should be noted that in the present application, the related content of the matching judgment unit 401, the mapping unit 402 and the map updating unit 403 corresponds to the above one by one, and those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the map construction device and its corresponding unit modules described above can be referred to as Figure 2 The description of the map construction method corresponding to any embodiment is not repeated here.
[0158] In order to better implement the map construction method of the present application, the present application further provides a multi-device cooperation system, which comprises a server and at least two self-moving devices working cooperatively and in communication connection with the server.
[0159] The server can include a processor 501 and a memory 502, and the memory 502 can be used to store a computer program, which can be executed by the processor 501 to realize the following functions:
[0160] Based on the obtained target trajectory point information, it is determined whether the target trajectory point matches the map segment on the trajectory to be matched. The target trajectory point is the trajectory point on the target trajectory when the target self-mobile device is working in the target scene, and the trajectory to be matched is the trajectory of the self-mobile device to be matched that works in the target scene in cooperation with the target self-mobile device.
[0161] If the target trajectory point matches a map segment on the trajectory to be matched, then a scene map of the target scene is constructed based on the target trajectory and the trajectory to be matched.
[0162] like Figure 5 As shown, it illustrates a structural diagram of the server involved in this application, specifically:
[0163] The server may include components such as a processor 501 with one or more processing cores, a memory 502 with one or more computer-readable storage media, a power supply 503, and an input unit 504. Those skilled in the art will understand that... Figure 5 The structure shown does not constitute a limitation on the server. The server may include more or fewer components than shown, or combine certain components, or have different component arrangements. Wherein:
[0164] Processor 501 is the control center of the server, connecting various parts of the server through various interfaces and lines. It performs various server functions and processes data by running or executing software programs and / or unit modules stored in memory 502, and by calling data stored in memory 502, thereby providing overall server monitoring. Optionally, processor 501 may include one or more processing cores; processor 501 may be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor. Preferably, processor 501 may integrate an application processor and a modem processor, wherein the application processor mainly handles the operating system, user interface, and applications, and the modem processor mainly handles wireless communication. It is understood that the aforementioned modem processor may not be integrated into processor 501.
[0165] The memory 502 can be used to store software programs and modules, and the processor 501 can execute various function applications and data processing by running the software programs and modules stored in the memory 502. The memory 502 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, application programs required by at least one function, etc.; and the data storage area can store data created according to the use of the mobile device, etc. In addition, the memory 502 can include a high-speed random access memory, and can also include a non-volatile memory such as at least one magnetic disk storage device, a flash memory device, or other volatile solid-state memory device. Accordingly, the memory 502 can also include a memory controller to provide the processor 501 with access to the memory 502.
[0166] The server can also include a power supply 503 for powering the various components, and preferably the power supply 503 can be logically connected to the processor 501 through a power management system, so as to realize functions such as management of charging, discharging, and power consumption management through the power management system. The power supply 503 can also include one or more direct current or alternating current power supplies, a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator, etc.
[0167] The server can also include an input unit 504 and an output unit 505, wherein the input unit 504 can be used to receive input digital or character information, and generate keyboard, mouse, joystick, optical or trackball signal inputs related to user settings and function controls.
[0168] Although not shown, the mobile device can also include a display unit, etc., which will not be described here. In particular in the present application, the processor 501 in the server will load executable files corresponding to the processes of one or more application programs into the memory 502 according to the following instructions, and the processor 501 will run the application programs stored in the memory 502 to realize various functions, as follows:
[0169] According to the obtained target trajectory point information, it is determined whether the target trajectory point matches a ground picture segment on a to-be-matched trajectory, wherein the target trajectory point is a trajectory point on a target trajectory of the target mobile device when the target mobile device works in a target scene, and the to-be-matched trajectory is a trajectory of a to-be-matched mobile device that cooperatively works with the target mobile device in the target scene.
[0170] If the target trajectory point matches the ground picture segment on the to-be-matched trajectory, a scene map of the target scene is constructed according to the target trajectory and the to-be-matched trajectory.
[0171] Those skilled in the art can understand that all or part of the steps in the above various methods can be completed by instructions, or by related hardware controlled by the instructions, which can be stored in a computer readable storage medium and loaded and executed by the processor 501.
[0172] To this end, the present application provides a computer readable storage medium, which can include a Read Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, etc. Computer instructions are stored thereon, which are loaded by the processor 501 to execute the steps in any of the map construction methods provided by the present application. For example, the computer instructions are executed by the processor 501 to realize the following functions:
[0173] According to the obtained target trajectory point information, it is determined whether the target trajectory point matches the ground picture segment on the to-be-matched trajectory, wherein the target trajectory point is a trajectory point on a target trajectory of the target self-moving device when the target self-moving device works in a target scene, and the to-be-matched trajectory is a trajectory of a to-be-matched self-moving device that cooperatively works with the target self-moving device in the target scene.
[0174] If the target trajectory point matches the ground picture segment on the to-be-matched trajectory, a scene map of the target scene is constructed according to the target trajectory and the to-be-matched trajectory.
[0175] The computer instructions stored in the computer readable storage medium can execute the steps in any of the map construction methods provided by the present application, and thus the beneficial effects of the map construction methods can be achieved. Figure 2 The computer instructions stored in the computer readable storage medium can execute the steps in any of the map construction methods provided by the present application, and thus the beneficial effects of the map construction methods can be achieved. Figure 2 The computer instructions stored in the computer readable storage medium can execute the steps in any of the map construction methods provided by the present application, and thus the beneficial effects of the map construction methods can be achieved.
[0176] The present application also provides a self-moving device, which is configured with an execution module, the execution module can be used to perform a work task when the self-moving device walks in a target scene, and the self-moving device cooperates with a server and other self-moving devices in the target scene to form a multi-device cooperation system as shown in Figure 1 to construct a scene map of the target scene.
[0177] The server can realize the steps in any of the map construction methods provided by the present application, and thus the beneficial effects of the map construction methods can be achieved. Figure 2 The server can realize the steps in any of the map construction methods provided by the present application, and thus the beneficial effects of the map construction methods can be achieved. Figure 2 The server can realize the steps in any of the map construction methods provided by the present application, and thus the beneficial effects of the map construction methods can be achieved.
[0178] The following will be described in combination with Figure 6The specific application scenarios shown illustrate the technical solution of this application to aid understanding.
[0179] like Figure 6 As shown, the first device and the second device work together and start to build a scene map of the target scene from different positions in the target scene. During the movement of the first device and the second device, the sensor components on the two devices upload the sampled trajectory point information to the mapping server. The mapping server generates the first trajectory corresponding to the first device and the second trajectory corresponding to the second device based on the received multiple sets of trajectory point information.
[0180] When the first device moves to trajectory point A, the server matches the trajectory point information sampled by the sensor at trajectory point A with the map fragment on the second trajectory. If the matching degree is greater than or equal to the matching threshold, the server determines that trajectory point A and the second trajectory are successfully matched, establishes a connection between the first and second trajectories, and transforms the first and second trajectories to the same coordinate system. At this time, the first and second devices are located in the same coordinate system. The first and second devices can obtain each other's positions, trajectories, etc. through the server to improve their positioning stability. The server can construct a scene map based on the transformed trajectory data.
[0181] Once the scene map is successfully established, the first and second devices can establish a communication link with the server in real time to view the scene map. During the subsequent work of the first and second devices, the server can also perform further positioning and mapping based on the acquired trajectory point information to update and improve the scene map.
[0182] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the detailed descriptions of other embodiments above, which will not be repeated here.
[0183] In practice, each of the above units or structures can be implemented as an independent entity or can be arbitrarily combined to be implemented as the same or several entities. For specific implementation of each of the above units or structures, please refer to the previous embodiments, which will not be repeated here.
[0184] The above provides a detailed description of the map construction method, multi-device collaboration system, and self-moving device provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The above description is only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A map construction method characterized by comprising: The method comprises: acquiring each to-be-matched trajectory point information of a to-be-matched self-moving device during operation, wherein each to-be-matched trajectory point information comprises a trajectory point coordinate detected by a positioning component and environmental information of a target scene corresponding to the trajectory point coordinate sampled by a sampling component, the to-be-matched self-moving device is equipped with the positioning component and the sampling component, the positioning component is used to detect the trajectory point coordinate of the to-be-matched self-moving device during operation, and the sampling component is used to sample the environmental information of the target scene corresponding to each trajectory point coordinate of the to-be-matched self-moving device; obtaining a to-be-matched trajectory and a ground picture segment on the to-be-matched trajectory according to the trajectory point coordinate and the environmental information in each to-be-matched trajectory point information; judging whether a target trajectory point and the ground picture segment on the to-be-matched trajectory are matched according to the acquired target trajectory point information, the target trajectory point is a trajectory point on a target trajectory of a target self-moving device during operation in a target scene, and the to-be-matched trajectory is a trajectory of the to-be-matched self-moving device which cooperates with the target self-moving device to operate in the target scene; if the target trajectory point and the ground picture segment on the to-be-matched trajectory are matched, constructing a scene map of the target scene according to the target trajectory and the to-be-matched trajectory.
2. The method of claim 1, wherein, The method further comprises: determining first trajectory information and second trajectory information corresponding to the target trajectory and the to-be-matched trajectory in a preset coordinate system; constructing the scene map according to the first trajectory information and the second trajectory information.
3. The method of claim 2, wherein, The first trajectory information comprises a plurality of first trajectory points and first environmental information corresponding to each first trajectory point, and the second trajectory information comprises a plurality of second trajectory points and second environmental information corresponding to each second trajectory point. The method further comprises: constructing the scene map according to the plurality of first trajectory points, the plurality of second trajectory points, the first environmental information corresponding to each first trajectory point, and the second environmental information corresponding to each second trajectory point.
4. The method of claim 1, wherein, The method further comprises: updating the scene map according to subsequent trajectory point information of any one of the target self-moving device and the to-be-matched self-moving device during operation of the any one of the target self-moving device and the to-be-matched self-moving device.
5. The method of claim 1, wherein, The method further comprises: detecting whether a current trajectory point on a current trajectory of any one of the target self-moving device and the to-be-matched self-moving device and a historical ground picture segment on a reference trajectory are loop matched, the reference trajectory is any one of the target trajectory and the to-be-matched trajectory. if the current trajectory point matches the historical loop of the map segment on the reference trajectory, the current trajectory is loop corrected based on the reference trajectory to obtain a corrected trajectory; the scene map is updated according to the corrected trajectory.
6. The method of claim 1, wherein, The target trajectory point information includes target environment information corresponding to the target trajectory point; and the determining whether the target trajectory point matches the map segment on the to-be-matched trajectory according to the obtained target trajectory point information includes: calculating a feature matching degree between the target environment information and the map segment on the to-be-matched trajectory; if the feature matching degree is greater than or equal to a preset matching threshold, it is determined that the target trajectory point matches the map segment on the to-be-matched trajectory.
7. The method of claim 1, wherein, Each of the to-be-matched trajectory point information carries a timestamp; and the obtaining the to-be-matched trajectory and the map segment on the to-be-matched trajectory according to the trajectory point coordinates and the environment information in each of the to-be-matched trajectory point information includes: splicing the trajectory point and the environment information in each of the to-be-matched trajectory point information according to the timestamp carried in each of the to-be-matched trajectory point information, to obtain the to-be-matched trajectory and the map segment on the to-be-matched trajectory.
8. A multi-device collaboration system, characterized by, The multi-device cooperation system includes a server and at least two self-moving devices that work cooperatively and are communicatively connected to the server; The server includes a memory and a processor, the memory is used to store a computer program, and the computer program is executed by the processor to implement the map construction method in any one of claims 1-7.
9. A self-moving device, characterized in that The self-moving device is configured with an execution module, the execution module is used to execute a work task when the self-moving device walks in a target scene, the self-moving device cooperates with the server and other self-moving devices in the target scene to form the multi-device cooperation system in claim 8, to construct a scene map of the target scene.
Citation Information
Patent Citations
Trajectory information processing device and method
CN104236557A