Navigation method and device of mobile robot, electronic equipment and storage medium
By setting a vision module in the head of a mobile robot, a local map is constructed to obtain a local positioning score, which solves the problem of positioning signals being easily interfered with in traditional visual navigation systems. This improves navigation accuracy and robustness, and enhances adaptability and application range.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- UBTECH ROBOTICS CORP LTD
- Filing Date
- 2024-12-27
- Publication Date
- 2026-06-23
Smart Images

Figure CN119806154B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robotics, and more specifically to a navigation method, device, electronic device, and storage medium for a mobile robot. Background Technology
[0002] With the rapid advancement of technology, mobile robots have demonstrated enormous application potential in various fields such as industrial production, home services, medical assistance, and disaster relief. In this process, the smoothness of visual navigation technology not only affects the operational efficiency of mobile robots but has also become a key indicator for measuring their intelligence level, adaptability, and user experience. Traditional visual navigation systems, as the core component of autonomous mobile robot movement, primarily rely on the robot's precise positioning information on a global map, achieving accurate path planning and navigation by matching current visual input with map data.
[0003] The accuracy of global positioning information is crucial for traditional visual navigation systems. However, in practical applications, positioning information is often affected by various factors, leading to deviations such as signal interference, environmental changes, and equipment malfunctions. Once the global positioning information deviates, the mobile robot may mistakenly enter an area marked with obstacles on the global map due to its inability to accurately determine its own position, resulting in mission failure. This is especially true when operating in confined spaces, where the shortcomings of traditional visual navigation technology become increasingly apparent. The susceptibility of positioning signals to interference causes positioning drift, severely impacting the navigation performance of the mobile robot. Summary of the Invention
[0004] In view of the above-mentioned shortcomings of the prior art, the present invention provides a navigation method, device, electronic device and storage medium for mobile robots, which effectively solves the problem of positioning drift caused by the susceptibility of positioning signals to interference in traditional visual navigation technology.
[0005] In a first aspect, the present invention provides a navigation method for a mobile robot, wherein a vision module is provided in the head of the mobile robot, and the method includes:
[0006] The localization score of the mobile robot is obtained, and the localization score is determined by the number of features that are successfully matched between the keyframe image of the mobile robot and the map and the reprojection pixel distance.
[0007] If the positioning score indicates that the mobile robot has lost its location, then the head of the mobile robot is rotated to construct a local map.
[0008] Obtain the global map for the mobile robot's navigation, and determine the navigation target point based on the global map;
[0009] The target endpoint in the local map is determined based on the navigation target point, and a local navigation path is generated using the target endpoint for local navigation.
[0010] Furthermore, controlling the head rotation of the mobile robot to construct a local map includes:
[0011] The head of the mobile robot is controlled to rotate, and point cloud information is acquired through the vision module;
[0012] The grid position and grid state of each grid are determined based on the point cloud information;
[0013] The confidence level of the raster is determined based on the number of point cloud observations to obtain an initial local map;
[0014] The confidence level of the initial local map is updated based on the angle of head rotation of the mobile robot to obtain the local map.
[0015] Furthermore, the step of updating the confidence level of the initial local map based on the head rotation angle of the mobile robot to obtain the local map includes:
[0016] Control the head rotation of the mobile robot to obtain a map of the front semicircular area in the direction of the mobile robot's movement;
[0017] The first semicircular area map is divided into at least one sector area, and the confidence level of each sector area is calculated.
[0018] If the confidence level of the sector region is lower than the confidence level threshold, the head of the mobile robot is controlled to rotate to update the confidence level of the corresponding sector region map and obtain the local map.
[0019] Furthermore, obtaining the positioning score of the mobile robot includes:
[0020] Obtain the number of features successfully matched with the map in the keyframe image of the mobile robot and the reprojection pixel distance;
[0021] If the number of features is greater than the number threshold and the reprojection pixel distance is less than the distance threshold, then the positioning score is determined to be the initial score;
[0022] Obtain the moving distance of the mobile robot, and then re-obtain the number of features;
[0023] If the number of features is less than the number threshold, the positioning score is re-determined based on the initial score and the moving distance.
[0024] Furthermore, the step of re-determining the positioning score based on the movement distance includes:
[0025] Set the distance coefficient;
[0026] Multiply the moving distance by the distance coefficient to obtain the fractional change value;
[0027] The initial score is subtracted from the score change value to obtain a new positioning score.
[0028] Furthermore, determining the location loss of the mobile robot based on the location score includes:
[0029] If the positioning score is greater than or equal to the first score threshold, then the mobile robot is determined to be in normal positioning.
[0030] If the positioning score is less than the first score threshold and greater than or equal to the second score threshold, then the positioning of the mobile robot is determined to be unstable.
[0031] If the positioning score is less than the second score threshold or the time during which the mobile robot's positioning is unstable exceeds the time threshold, then the mobile robot's positioning is determined to be lost.
[0032] Furthermore, determining the navigation target point based on the global map includes:
[0033] The local map and the global map are coarsely matched to obtain the approximate location of the local map in the global map.
[0034] Based on the rough location, a global path is planned in the global map, and the end of the global path is used as the navigation target point.
[0035] Secondly, the present invention also provides a navigation device for a mobile robot, wherein a vision module is provided in the head of the mobile robot, and the device includes:
[0036] The data acquisition module is used to acquire the localization score of the mobile robot. The localization score is determined based on the number of features that are successfully matched between the keyframe image of the mobile robot and the map, and the reprojection pixel distance.
[0037] A map building module is used to control the head rotation of the mobile robot to build a local map if the positioning score determines that the mobile robot has lost its positioning.
[0038] The target determination module is used to acquire a global map for the mobile robot's navigation and determine the navigation target point based on the global map;
[0039] The local navigation module is used to determine the target endpoint in the local map based on the navigation target point, and to generate a local navigation path using the target endpoint for local navigation.
[0040] Thirdly, the present invention provides an electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the navigation method for a mobile robot as described in the first aspect of the present invention.
[0041] Fourthly, the present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the navigation method for a mobile robot as described in the first aspect of the present invention.
[0042] The navigation method, device, electronic equipment, and storage medium for mobile robots provided by this invention integrate head motion control with local planning navigation strategies. This allows the robot to flexibly adjust its perspective in confined spaces or environments with unstable positioning signals, actively acquiring a wider field of view and richer environmental information. This improves the robot's navigation accuracy and robustness in complex and changing scenarios, effectively addressing challenges such as positioning drift. Simultaneously, it enhances the robot's adaptability in various application scenarios, enabling smooth and reliable path planning and obstacle avoidance even when facing complex navigation challenges. This significantly expands the robot's application scope and improves its work efficiency and user experience in various service scenarios. Attached Figure Description
[0043] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0044] Figure 1 This is a first schematic diagram of the navigation method flow for a mobile robot provided in an embodiment of the present invention;
[0045] Figure 2 This is a second schematic diagram of the navigation method flow for a mobile robot provided in an embodiment of the present invention;
[0046] Figure 3 This is a third schematic diagram of the navigation method flow for a mobile robot provided in an embodiment of the present invention;
[0047] Figure 4 This is the fourth schematic diagram of the navigation method flow for a mobile robot provided in this embodiment of the invention;
[0048] Figure 5 This is the fifth schematic diagram of the navigation method flow for a mobile robot provided in this embodiment of the invention;
[0049] Figure 6This is the sixth schematic diagram of the navigation method flow for a mobile robot provided in this embodiment of the invention;
[0050] Figure 7 This is the seventh schematic diagram of the navigation method flow for a mobile robot provided in this embodiment of the invention;
[0051] Figure 8 This is a schematic diagram of the navigation device structure for a mobile robot provided in an embodiment of the present invention;
[0052] Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention.
[0053] Explanation of key component symbols:
[0054] 800. Navigation device for mobile robot; 810. Data acquisition module; 820. Map building module; 830. Target determination module; 840. Local navigation module; 900. Electronic device; 910. Processor; 920. Communication interface; 930. Memory; 940. Communication bus. Detailed Implementation
[0055] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be further described clearly and completely below with reference to the accompanying drawings of the embodiments of this invention. It should be noted that the described embodiments are merely some embodiments of this invention, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0056] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this invention, "a plurality of" means two or more, unless otherwise explicitly specified.
[0057] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.
[0058] Traditional visual navigation systems, as a core component for autonomous movement of mobile robots, primarily rely on the robot's precise location information within a global map. They achieve accurate path planning and navigation by matching the current visual input with map data. The accuracy of global positioning information is crucial for traditional visual navigation systems. However, in practical applications, positioning information is often affected by various factors, such as signal interference, environmental changes, and equipment malfunctions. Once the global positioning information deviates, the mobile robot may be unable to accurately determine its own position and mistakenly enter an area marked with obstacles on the global map, leading to mission failure. This deficiency becomes particularly apparent when operating in confined spaces, where the susceptibility of positioning signals to interference causes positioning drift, severely impacting the robot's navigation performance.
[0059] Example 1
[0060] This invention provides a navigation method for a mobile robot, effectively solving the problem of positioning drift caused by interference with the positioning signals of traditional visual navigation technologies. In this invention, the mobile robot's head is rotatable and equipped with a vision module, which includes, but is not limited to, devices such as visual sensors and depth cameras. Figure 1 This is a first schematic diagram of the navigation method flow for a mobile robot provided in an embodiment of the present invention, as shown below. Figure 1 As shown, the method includes the following steps:
[0061] S100. Obtain the localization score of the mobile robot. The localization score is determined by the number of features that are successfully matched between the keyframe image of the mobile robot and the map, and the reprojection pixel distance.
[0062] Figure 2 This is a second schematic diagram of the navigation method flow for a mobile robot provided in an embodiment of the present invention, as shown below. Figure 2 As shown, obtaining the positioning score specifically includes the following steps:
[0063] S110. Obtain the number of features that are successfully matched with the keyframe image of the mobile robot and the reprojection pixel distance.
[0064] Keyframe images can be determined by comparing the matching degree between the image acquired by the vision module and the map before the update, or based on changes in image features. During visual localization, the more feature points that successfully match between the mobile robot's keyframe images and the pre-built map, the more similar the mobile robot's current position is to a certain location on the map, thus improving the accuracy and reliability of localization.
[0065] Reprojection pixel distance refers to the pixel distance between a point in 3D space projected onto an image plane and the actual observed image point. A smaller reprojection pixel distance indicates a closer proximity between the localization result and the actual location, resulting in higher localization accuracy. The reprojection pixel distance is obtained by generating 3D point cloud data from environmental depth information acquired by a vision module, projecting this data onto the image plane of the vision module, and calculating the pixel distance between the projected image points and the actually observed image points.
[0066] S120. If the number of features is greater than the number threshold and the reprojected pixel distance is less than the distance threshold, then the localization score is determined as the initial score.
[0067] In this embodiment of the invention, the quantity threshold and distance threshold can be set according to the specific application scenario and the requirements of the positioning system, and the initial score can be set according to the actual situation. For example, the quantity threshold can be set to 100, the distance threshold can be set to 5, and the initial score can be set to 100 points, that is, if the number of features that successfully match the keyframe image with the map is greater than 100 and the reprojection pixel distance is less than 5 pixels, then the positioning score is determined to be 100 points.
[0068] S130. Obtain the moving distance of the mobile robot and re-acquire the number of features.
[0069] When the navigation task or environment changes, the mobile robot moves, and the distance it has moved from its current position to the position where it last obtained the initial score is 0.2m. At this time, the number of features that successfully match the keyframe image and the map may decrease, and the number of successfully matched features needs to be re-determined based on the keyframe image.
[0070] S140. If the number of features is less than the number threshold, the positioning score is re-determined based on the initial score and the moving distance.
[0071] For example, if the number of features that successfully match the keyframe image with the map drops to 15, and the number of features is less than the threshold of 100, then the localization is considered unsuccessful, and the localization score is recalculated based on the initial score and the distance traveled. Figure 3 This is a third schematic diagram of the navigation method flow for a mobile robot provided in an embodiment of the present invention, as shown below. Figure 3 As shown, the re-determination of the positioning score specifically includes the following steps:
[0072] S141, Set the distance coefficient.
[0073] The distance coefficient can be set according to the initial score and the actual situation. In this embodiment of the invention, the distance coefficient is set to 50.
[0074] S142. Multiply the moving distance by a distance coefficient to obtain the fractional change value;
[0075] In this embodiment of the invention, the fraction change value is calculated to be 10 based on the moving distance and the distance coefficient.
[0076] S143. Subtract the change in score from the initial score to obtain the new positioning score.
[0077] In this embodiment of the invention, the mobile robot moves 0.2m from the position where the initial score was obtained to the current position, and the new positioning score is 90 points.
[0078] S200. If the positioning score indicates that the mobile robot has lost its positioning, then control the head rotation of the mobile robot to construct a local map.
[0079] Figure 4 This is the fourth schematic diagram of the navigation method flow for a mobile robot provided in this embodiment of the invention, as shown below. Figure 4 As shown, determining whether a mobile robot has lost its location based on the location score includes the following steps:
[0080] S201. If the positioning score is greater than or equal to the first score threshold, then the mobile robot positioning is determined to be normal.
[0081] The first score threshold can be set according to the actual situation. In this embodiment of the invention, the first score threshold can be set to 80 points. If the mobile robot is determined to be positioned normally, it can be controlled to move in the normal navigation mode.
[0082] S202. If the positioning score is less than the first score threshold and greater than or equal to the second score threshold, then the positioning of the mobile robot is determined to be unstable.
[0083] The second score threshold can also be set according to the actual situation. In this embodiment of the invention, the second score threshold is set to 40 points. The unstable positioning of the mobile robot indicates that there is a large error between the map position and the actual position in the real environment.
[0084] S203. If the positioning score is less than the second score threshold or the time of unstable positioning of the mobile robot exceeds the time threshold, then the positioning of the mobile robot is determined to be lost.
[0085] When the positioning score is less than 40, it indicates that the mobile robot is located within obstacles on the map, and the robot's positioning is determined to be lost. Similarly, if the mobile robot remains in a state of unstable positioning for an extended period, exceeding a set time threshold, it indicates that obstacles have been present around the robot for a considerable time, and the robot's positioning is also determined to be lost.
[0086] When a mobile robot loses its localization, it cannot complete the navigation task using normal navigation mode. Therefore, it is necessary to control the robot's head rotation to build a local map. Figure 5This is the fifth schematic diagram of the navigation method flow for a mobile robot provided in this embodiment of the invention, as shown below. Figure 5 As shown, the construction of a local map specifically includes the following steps:
[0087] S210: Control the head rotation of the mobile robot and acquire point cloud information through the vision module.
[0088] The vision module acquires depth information of the environment to generate point cloud information. Since the field of view of the vision module is small, it cannot cover the entire environment around the mobile robot. Therefore, it is necessary to control the rotation of the mobile robot's head to observe areas with low confidence, thereby improving the accuracy of the local map.
[0089] S220. Determine the grid position and grid status of each grid cell based on the point cloud information.
[0090] In this embodiment of the invention, the local map can be a grid map, and the pixel values of the grid map include three states: idle, unknown, and occupied. Idle indicates no obstacles, unknown indicates an undetected area, and occupied indicates an obstacle occupies the current position. The distance to obstacles in front of the mobile robot can be sensed using point cloud distance information, and the position information of each grid in the map coordinate system can be marked. The grid state can be determined by the point cloud height. For example, if the point cloud height is 0m, the grid in that area is set to an idle state; if the point cloud height exceeds 0.1m, the grid in that area is set to an occupied state; and for other point cloud heights, the grid in that area is set to an unknown state.
[0091] S230. Determine the confidence level of the raster based on the number of point cloud observations to obtain an initial local map.
[0092] The initial confidence level of the raster map is set to 0. The confidence level is related to the number of times the raster region has been observed. For example, if a raster region has been observed 0 times by the point cloud, that is, it has not been observed, the confidence level is set to 0; if the number of observations is less than or equal to 10, the confidence level is set to 1; if the number of observations is n, and n is greater than or equal to 10, the confidence level is set to n / 10.
[0093] S240. Update the confidence level of the initial local map based on the angle of the mobile robot's head rotation to obtain the local map.
[0094] Figure 6 This is the sixth schematic diagram of the navigation method flow for a mobile robot provided in this embodiment of the invention, as shown below. Figure 6 As shown, the confidence update specifically includes the following steps:
[0095] S241. Control the head rotation of the mobile robot to obtain a map of the front semicircular area in the direction of the mobile robot's movement.
[0096] Due to the limited field of view of the vision module, the mobile robot cannot observe a large area through a single image. Therefore, a map of the first semicircular area along the direction of movement of the mobile robot is obtained.
[0097] S242. Divide the first semicircular area map into at least one sector area and calculate the confidence level of each sector area.
[0098] In this embodiment of the invention, the first semicircular area map is divided into four sector areas, and the confidence level of each sector area is calculated. Specifically, the confidence level is calculated as follows: a ray is drawn clockwise from the center to the boundary of the circle. If there is an obstacle on the ray, the calculation stops, and the sum of the confidence levels from the starting point to the ending point is calculated. If there is no obstacle, the calculation stops at the boundary of the circle. This process continues until the confidence level of the entire sector area is calculated, and the total confidence level of the sector area is obtained.
[0099] S243. If the confidence level of the sector region is lower than the confidence level threshold, control the head rotation of the mobile robot to update the confidence level of the corresponding sector region map and obtain a local map.
[0100] Regions with confidence levels below a certain threshold are identified sequentially. The mobile robot is then controlled to rotate its head, updating these regions sequentially until a map is constructed where all regions meet the confidence threshold; this is the local map. In this embodiment, the confidence threshold can be set according to actual conditions.
[0101] S300: Obtain the global map for the mobile robot's navigation and determine the navigation target point based on the global map.
[0102] For mobile robots to perform local navigation, they also need to know the location of the target point on the local map. In normal navigation mode, the target point of the mobile robot is determined by the global planner planning a global path on the global map. The local map is only a small area of the global map, and determining the target point is difficult without the global path.
[0103] If a mobile robot is navigating locally in a narrow passage, it can determine the navigation target point by constructing a local map when a clear passage area appears around the mobile robot.
[0104] If a mobile robot needs to navigate in a narrow space, it needs to use a global map to help determine the navigation target point. Figure 7 This is the seventh schematic diagram of the navigation method flow for a mobile robot provided in this embodiment of the invention, as shown below. Figure 7 As shown, determining the navigation target point specifically includes the following steps:
[0105] S310. Perform a coarse match between the local map and the global map to obtain the approximate location of the local map within the global map.
[0106] In this embodiment of the invention, a narrow space is characterized by obstacles with many obvious features appearing in the local map. In this case, a coarse match is performed between the local map and the global map to obtain the approximate position of the current local map in the global map. The coarse match can be performed using matching methods such as point-to-point matching, point-to-arc matching, and feature matching.
[0107] S320. Based on the approximate location, plan a global path on the global map and use the end of the global path as the navigation target point.
[0108] In the robot coordinate system, a global path can be planned directly using a global map based on the approximate location, with the end of the global path serving as the navigation target point.
[0109] If a mobile robot performs local navigation in an open space, it means that there are few obstacles when building the local map. In the robot's coordinate system, a global path can be directly planned using the global map, and the end of the global path can be used as the navigation target point.
[0110] S400. Determine the target endpoint in the local map based on the navigation target point, and use the target endpoint to generate a local navigation path for local navigation.
[0111] In this embodiment of the invention, during local navigation, once the positioning status recovers from positioning loss to normal positioning, the system can switch to normal navigation mode for navigation.
[0112] The navigation method for mobile robots provided in this invention integrates head motion control with local planning navigation strategies. This allows the robot to flexibly adjust its perspective in narrow spaces or environments with unstable positioning signals, actively acquire a wider field of vision and richer environmental information, improve the robot's navigation accuracy and robustness in complex and ever-changing scenarios, and effectively cope with challenges such as positioning drift.
[0113] Example 2
[0114] Based on the same technical concept as Embodiment 1 above, this embodiment of the invention provides a navigation device for a mobile robot. Figure 8 This is a schematic diagram of the navigation device structure for a mobile robot provided in an embodiment of the present invention, as shown below. Figure 8 As shown, the navigation device 800 of the mobile robot includes:
[0115] The data acquisition module 810 is used to acquire the localization score of the mobile robot. The localization score is determined by the number of features that are successfully matched between the keyframe image of the mobile robot and the map, and the reprojection pixel distance.
[0116] The map building module 820 is used to control the head rotation of the mobile robot to build a local map if the positioning score determines that the mobile robot has lost its positioning.
[0117] The target determination module 830 is used to acquire a global map for the mobile robot navigation and determine the navigation target point based on the global map.
[0118] The local navigation module 840 determines the target endpoint in the local map based on the navigation target point, and uses the target endpoint to generate a local navigation path for local navigation.
[0119] The navigation device for mobile robots provided in this invention enhances the adaptability of robots in various application scenarios. Even when faced with complex navigation challenges, it can achieve smooth and reliable path planning and obstacle avoidance, greatly expanding the application scope of robots and improving their work efficiency and user experience in various service scenarios.
[0120] It is understood that the implementation method of the navigation method for the mobile robot described in Embodiment 1 above is also applicable to this embodiment and can achieve the same technical effect, so it will not be described again here.
[0121] Example 3
[0122] Based on the same concept, embodiments of the present invention also provide an electronic device. Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention, such as... Figure 9 As shown, the electronic device 900 may include a processor 910, a communication interface 920, a memory 930, and a communication bus 940, wherein the processor 910, the communication interface 920, and the memory 930 communicate with each other via the communication bus 940. The processor 910 can call logical instructions in the memory 930 to execute the steps of the navigation method for the mobile robot as described in the above embodiments. For example, this includes:
[0123] S100. Obtain the localization score of the mobile robot. The localization score is determined by the number of features that are successfully matched between the keyframe image of the mobile robot and the map, and the reprojection pixel distance.
[0124] S200. If the positioning score indicates that the mobile robot has lost its positioning, then control the head rotation of the mobile robot to construct a local map.
[0125] S300: Obtain the global map for the mobile robot's navigation and determine the navigation target point based on the global map;
[0126] S400. Determine the target endpoint in the local map based on the navigation target point, and use the target endpoint to generate a local navigation path for local navigation.
[0127] The processor 910 can be a central processing unit (CPU). The processor can also be 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, or combinations thereof.
[0128] Furthermore, the logical instructions in the aforementioned memory 930 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, essentially, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0129] The memory 930 may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store data created by the processor, etc. Furthermore, the memory may include high-speed random access memory and non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory may optionally include memory remotely located relative to the processor, which can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0130] Example 4
[0131] Based on the same concept, embodiments of the present invention also provide a computer-readable storage medium storing a computer program containing at least one piece of code executable by a master control device to control the master control device to implement the navigation method of the mobile robot as described in the above embodiments. For example, it includes:
[0132] S100. Obtain the localization score of the mobile robot. The localization score is determined by the number of features that are successfully matched between the keyframe image of the mobile robot and the map, and the reprojection pixel distance.
[0133] S200. If the positioning score indicates that the mobile robot has lost its positioning, then control the head rotation of the mobile robot to construct a local map.
[0134] S300: Obtain the global map for the mobile robot's navigation and determine the navigation target point based on the global map;
[0135] S400. Determine the target endpoint in the local map based on the navigation target point, and use the target endpoint to generate a local navigation path for local navigation.
[0136] Based on the same technical concept, this embodiment of the invention also provides a computer program, which, when executed by a master control device, is used to implement the above-described method embodiments.
[0137] The computer program may be stored, in whole or in part, on a computer-readable storage medium packaged with the processor, or in part or in whole on a memory not packaged with the processor.
[0138] Based on the same technical concept, embodiments of the present invention also provide a processor for implementing the above-described method embodiments. The processor may be a chip.
[0139] In summary, the navigation method, device, electronic equipment, and storage medium for mobile robots provided by this invention, by integrating head motion control and local planning navigation strategies, enable the robot to flexibly adjust its perspective in confined spaces or environments with unstable positioning signals. This allows it to actively acquire a wider field of view and richer environmental information, improving the robot's navigation accuracy and robustness in complex and ever-changing scenarios and effectively addressing challenges such as positioning drift. Simultaneously, it enhances the robot's adaptability in various application scenarios, enabling smooth and reliable path planning and obstacle avoidance even when facing complex navigation challenges. This significantly expands the robot's application scope and improves its work efficiency and user experience in various service scenarios.
[0140] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0141] The embodiments described above are merely illustrative of several implementations of the present invention, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of the present invention, and these modifications and improvements all fall within the scope of protection of the present invention. Therefore, the scope of protection of this patent should be determined by the appended claims.
[0142] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A navigation method for a mobile robot, characterized in that, The method of installing a vision module in the head of a mobile robot includes: The localization score of the mobile robot is obtained. This localization score is determined based on the number of features successfully matched between the mobile robot's keyframe images and the map, and the reprojection pixel distance, including: Obtain the number of features successfully matched with the map in the keyframe image of the mobile robot and the reprojection pixel distance; If the number of features is greater than the number threshold and the reprojection pixel distance is less than the distance threshold, then the positioning score is determined to be the initial score; Obtain the moving distance of the mobile robot, and then re-obtain the number of features; If the number of features is less than the number threshold, the positioning score is re-determined based on the initial score and the moving distance; If the positioning score determines that the mobile robot has lost its location, then the robot's head is rotated to construct a local map, which is a grid map and includes: Control the head rotation of the mobile robot and acquire point cloud information through the vision module; The grid position and grid state of each grid are determined based on the point cloud information; The confidence level of the raster is determined based on the number of point cloud observations to obtain an initial local map; The confidence level of the initial local map is updated based on the angle of head rotation of the mobile robot to obtain the local map; Obtain the global map for the mobile robot's navigation, and determine the navigation target point based on the global map; The target endpoint in the local map is determined based on the navigation target point, and a local navigation path is generated using the target endpoint for local navigation.
2. The navigation method for a mobile robot according to claim 1, characterized in that, The step of updating the confidence level of the initial local map based on the head rotation angle of the mobile robot to obtain the local map includes: Control the head rotation of the mobile robot to obtain a map of the front semicircular area in the direction of the mobile robot's movement; The first semicircular area map is divided into at least one sector area, and the confidence level of each sector area is calculated. If the confidence level of the sector region is lower than the confidence level threshold, the head of the mobile robot is controlled to rotate to update the confidence level of the corresponding sector region map and obtain the local map.
3. The navigation method for a mobile robot according to claim 1, characterized in that, The step of re-determining the positioning score based on the initial score and the moving distance includes: Set the distance coefficient; Multiply the moving distance by the distance coefficient to obtain the fractional change value; The initial score is subtracted from the score change value to obtain a new positioning score.
4. The navigation method for a mobile robot according to claim 1, characterized in that, The step of determining that the mobile robot has lost its location based on the location score includes: If the positioning score is greater than or equal to the first score threshold, then the mobile robot is determined to be in normal positioning. If the positioning score is less than the first score threshold and greater than or equal to the second score threshold, then the positioning of the mobile robot is determined to be unstable. If the positioning score is less than the second score threshold or the time during which the mobile robot's positioning is unstable exceeds the time threshold, then the mobile robot's positioning is determined to be lost.
5. The navigation method for a mobile robot according to claim 1, characterized in that, The step of determining the navigation target point based on the global map includes: The local map and the global map are coarsely matched to obtain the approximate location of the local map in the global map. Based on the rough location, a global path is planned in the global map, and the end of the global path is used as the navigation target point.
6. A navigation device for a mobile robot, characterized in that, A vision module is installed in the head of a mobile robot, and the device includes: The data acquisition module is used to acquire the localization score of the mobile robot. The localization score is determined based on the number of features successfully matched between the keyframe images of the mobile robot and the map, and the reprojection pixel distance, including: Obtain the number of features successfully matched with the map in the keyframe image of the mobile robot and the reprojection pixel distance; If the number of features is greater than the number threshold and the reprojection pixel distance is less than the distance threshold, then the positioning score is determined to be the initial score; Obtain the moving distance of the mobile robot, and then re-obtain the number of features; If the number of features is less than the number threshold, the positioning score is re-determined based on the initial score and the moving distance; A map building module, used to control the head rotation of the mobile robot to build a local map if the positioning score determines that the mobile robot has lost its positioning, wherein the local map is a grid map, including: Control the head rotation of the mobile robot and acquire point cloud information through the vision module; The grid position and grid state of each grid are determined based on the point cloud information; The confidence level of the raster is determined based on the number of point cloud observations to obtain an initial local map; The confidence level of the initial local map is updated based on the angle of head rotation of the mobile robot to obtain the local map; The target determination module is used to acquire a global map for the mobile robot's navigation and determine the navigation target point based on the global map; The local navigation module is used to determine the target endpoint in the local map based on the navigation target point, and to generate a local navigation path using the target endpoint for local navigation.
7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, The processor executes the computer program to implement the navigation method for the mobile robot as described in any one of claims 1 to 5.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the navigation method for the mobile robot as described in any one of claims 1 to 5.