Robot positioning method, apparatus, and electronic device
Patent Information
- Application Number
- CN202611155505.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-31
- Publication Date
- 2026-10-16
AI Technical Summary
此类场景具有空间结构复杂、环境干扰多的特点,且其地图规模远大于普通场景,全局地图数据量可包含数万至数十万个环境特征点,这极大地增加了设备定位的难度
[0005]In the above technical solution, SLAM positioning coordinates and wireless positioning coordinates are obtained, and the wireless positioning coordinates are converted into transformed SLAM positioning coordinates in the same coordinate system based on the shared transformation parameters corresponding to the scene. The deviation between the two is compared to determine whether the robot has a positioning deviation. If a deviation exists, a shared map piece is obtained based on the transformed SLAM positioning coordinates, and then the calibrated positioning result is determined through feature matching. The shared transformation parameters and shared map pieces are obtained from the server and can be shared among different robots. This avoids calculating the transformation parameters separately for each robot, reduces the computational cost, and improves the parameter consistency of different robots. This enables the robot to adapt its positioning to different rail transit scenarios. By fusing the dual data sources of SLAM positioning coordinates and wireless positioning coordinates, the positioning accuracy of the robot in rail transit scenarios can be effectively improved.
Smart Images

Figure CN122921189A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of positioning technology, and in particular relates to a robot positioning method, device and electronic device. Background Technology
[0002] In large-scale and complex scenarios such as rail transit, robot localization faces numerous challenges. These scenarios are characterized by complex spatial structures, numerous environmental interferences, and map sizes far exceeding those of typical scenarios. The global map data can contain tens of thousands to hundreds of thousands of environmental feature points, significantly increasing the difficulty of device localization. Currently, device localization in such scenarios mainly relies on Simultaneous Localization and Mapping (SLAM) technology. However, SLAM technology suffers from drawbacks such as storage redundancy, easy loss of localization data across regions, and localization drift, making it difficult to effectively guarantee the accuracy of device localization. Summary of the Invention
[0003] This application aims to address at least one of the technical problems existing in the related art. To this end, this application proposes a robot localization method, apparatus, and electronic device, which improves the localization accuracy of robots in rail transit scenarios.
[0004] In a first aspect, this application provides a robot localization method, the method comprising: Send a parameter request to the server to obtain the shared coordinate transformation parameters corresponding to the current rail transit scenario; Obtain the SLAM positioning coordinates in the SLAM positioning coordinate system and the wireless positioning coordinates in the wireless positioning coordinate system; Based on the shared coordinate transformation parameters, the wireless positioning coordinates are converted into transformed SLAM positioning coordinates in the SLAM positioning coordinate system; The deviation verification result is determined based on the relative distance between the SLAM positioning coordinates and the transformed SLAM positioning coordinates; If the deviation verification result indicates that there is a positioning deviation, a map tiling request is sent to the server to obtain the target map tiling corresponding to the converted SLAM positioning coordinates; Feature matching is performed based on the target map segments to determine the calibrated positioning result.
[0005] In the above technical solution, SLAM positioning coordinates and wireless positioning coordinates are obtained, and the wireless positioning coordinates are converted into transformed SLAM positioning coordinates in the same coordinate system based on the shared transformation parameters corresponding to the scene. The deviation between the two is compared to determine whether the robot has a positioning deviation. If a deviation exists, a shared map piece is obtained based on the transformed SLAM positioning coordinates, and then the calibrated positioning result is determined through feature matching. The shared transformation parameters and shared map pieces are obtained from the server and can be shared among different robots. This avoids calculating the transformation parameters separately for each robot, reduces the computational cost, and improves the parameter consistency of different robots. This enables the robot to adapt its positioning to different rail transit scenarios. By fusing the dual data sources of SLAM positioning coordinates and wireless positioning coordinates, the positioning accuracy of the robot in rail transit scenarios can be effectively improved.
[0006] Secondly, this application provides a robot positioning device, the device comprising: The parameter request module is used to send parameter requests to the server to obtain shared coordinate transformation parameters corresponding to the current rail transit scenario; The coordinate acquisition module is used to acquire SLAM positioning coordinates in the SLAM positioning coordinate system and wireless positioning coordinates in the wireless positioning coordinate system. The conversion module is used to convert the wireless positioning coordinates into transformed SLAM positioning coordinates in the SLAM positioning coordinate system according to the shared coordinate conversion parameters. The verification module is used to determine the deviation verification result based on the relative distance between the SLAM positioning coordinates and the converted SLAM positioning coordinates; The map tiling request module is used to send a map tiling request to the server to obtain the target map tiling corresponding to the converted SLAM positioning coordinates if the deviation verification result indicates that there is a positioning deviation. The positioning module is used to perform local feature rematching based on the target map tiles to determine the calibrated positioning result.
[0007] Thirdly, this application 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 robot localization method as described in the first aspect above.
[0008] Fourthly, this application provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the robot localization method as described in the first aspect above.
[0009] Fifthly, this application provides a chip including a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the robot positioning method as described in the first aspect.
[0010] In a sixth aspect, this application provides a computer program product, including a computer program that, when executed by a processor, implements the robot localization method as described in the first aspect above.
[0011] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description
[0012] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the description of the embodiments taken in conjunction with the following drawings, in which: Figure 1 This is one of the flowcharts illustrating a robot localization method provided in some embodiments of this application; Figure 2 This is a second schematic flowchart of a robot localization method provided in some embodiments of this application; Figure 3 These are schematic diagrams of robot positioning systems provided in some embodiments of this application; Figure 4 This is a schematic diagram of the structure of a robot positioning device provided in some embodiments of this application; Figure 5 These are schematic diagrams of the structure of electronic devices provided in some embodiments of this application. Detailed Implementation
[0013] The technical solutions of the embodiments of this application will be clearly described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application are within the scope of protection of this application.
[0014] The terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such use of data can be interchanged where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class and the number of objects is not limited; for example, a first object can be one or more. Furthermore, in the specification and claims, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects are in an "or" relationship.
[0015] The robot positioning method, apparatus, and electronic equipment provided in this application will be described in detail below with reference to the accompanying drawings and through specific embodiments and application scenarios.
[0016] The robot positioning method provided in this application embodiment can be executed by a robot or a functional module or entity in a robot that can implement the robot positioning method. The robots mentioned in this application embodiment include, but are not limited to, rail transit inspection robots, rail transit material transportation robots, etc. The robot positioning method provided in this application embodiment is described below using an electronic device as the execution subject.
[0017] Figure 1 This is one of the flowcharts illustrating a robot localization method provided in some embodiments of this application. For example... Figure 1 As shown, the robot localization method includes steps 110, 120, 130 and 140.
[0018] The robot localization method provided in this application is applied to robot terminals in rail transit scenarios, which may specifically include various areas of rail transit systems such as subways and light rail. Exemplary robot terminals can be installed in areas such as subway platforms, concourses, passageways, and sections, and determine their own position using the robot localization method provided in this application.
[0019] Step 110: Send a parameter request to the server to obtain the shared coordinate transformation parameters corresponding to the current rail transit scenario.
[0020] Shared transformation parameters are used to transform wireless positioning coordinates from the wireless positioning coordinate system to the SLAM positioning coordinate system. These parameters can be translation parameters, rotation parameters, etc., and can be obtained by fitting sampling points within the rail transit scenario to ensure that the coordinates in the two coordinate systems are mutually corresponding. Different rail transit scenarios can correspond to different transformation parameters, ensuring that the SLAM positioning coordinates and wireless positioning coordinates can be accurately correlated in each rail transit scenario, thereby improving the accuracy of subsequent positioning deviation verification and positioning calibration.
[0021] Step 120: Obtain the SLAM positioning coordinates in the SLAM positioning coordinate system and the wireless positioning coordinates in the wireless positioning coordinate system.
[0022] The SLAM (Simultaneous Localization and Mapping) coordinate system is the coordinate system used in Simultaneous Localization and Mapping (SLAM) technology. It is typically established by combining environmental feature points (such as track markers and scene outlines) and can be used to describe the robot's relative position in the environment. SLAM coordinates are the robot's position coordinates determined in the SLAM coordinate system by real-time acquisition of environmental point cloud data and visual data using SLAM technology (such as visual SLAM or laser SLAM).
[0023] In some embodiments, the robot is equipped with a LiDAR and an Inertial Measurement Unit (IMU). The IMU, as a standard auxiliary component for LiDAR SLAM, acquires SLAM positioning coordinates through LiDAR-IMU pre-integration fusion. While the LiDAR outputs point cloud frames, the IMU simultaneously acquires motion angular velocity / acceleration to compensate for motion blind spots between LiDAR frames. Finally, the IMU is fused with the LiDAR data to generate continuous SLAM positioning coordinates. The robot can also be equipped with a visual SLAM sensor to acquire visual data of the scene and obtain SLAM positioning coordinates through feature point extraction and matching.
[0024] Wireless positioning coordinate systems refer to coordinate systems based on wireless positioning technologies (such as Ultra Wide Band (UWB) technology). The coordinate system is established using wireless network communication technologies such as Wi-Fi and Bluetooth. In some embodiments, the robot can be equipped with a Wi-Fi positioning module. The Wi-Fi positioning module receives Wi-Fi signals in the rail transit scenario and calculates the wireless positioning coordinates using algorithms such as Received Signal Strength Indication (RSSI). Alternatively, the wireless positioning coordinates can be received directly via wireless signals, eliminating the need for local positioning calculations on the robot and reducing computational and storage costs.
[0025] This application does not limit the specific method by which the robot acquires SLAM positioning coordinates and wireless positioning coordinates. SLAM positioning coordinates and wireless positioning coordinates provide dual data sources for subsequent positioning deviation verification, which helps to overcome the limitations of single positioning technology and provides reliable basic data for subsequent deviation judgment, thereby avoiding positioning misjudgments caused by a single coordinate.
[0026] Step 130: Based on the shared coordinate transformation parameters, convert the wireless positioning coordinates into transformed SLAM positioning coordinates in the SLAM positioning coordinate system.
[0027] In some embodiments, the robot pre-stores conversion parameters corresponding to various rail transit scenarios (such as different subway stations or different areas of the same station); based on the rail transit scenario in which the robot is currently located, the conversion parameters corresponding to that scenario are called; alternatively, the conversion parameters can be obtained by refitting the coordinates of the sampling positions in the scenario in real time to replace the pre-stored conversion parameters, so that the coordinate conversion adapts to changes in the scenario and improves the flexibility of the method.
[0028] In some embodiments, the method further includes: Obtain the identifier of the rail transit scene corresponding to the wireless positioning coordinates; based on the identifier, determine the transformation parameters of the rail transit scene. Specifically, the representation corresponding to the wireless positioning coordinates can be determined simultaneously through a wireless connection. Different robots can achieve data sharing of transformation parameters (i.e., shared transformation parameters) through a server, which can effectively avoid calculating transformation parameters separately on each robot, reducing computational costs and improving parameter consistency among different robots.
[0029] Step 140: Determine the deviation verification result based on the relative distance between the SLAM positioning coordinates and the converted SLAM positioning coordinates.
[0030] The wireless positioning coordinates are transformed using transformation parameters to obtain the robot's transformed SLAM positioning coordinates in the SLAM positioning coordinate system. Based on the SLAM positioning coordinates and the transformed SLAM positioning coordinates, a deviation verification result is determined. For example, the Euclidean distance between the SLAM positioning coordinates and the transformed SLAM positioning coordinates can be calculated and compared with a preset distance threshold to determine if a positioning deviation exists. Alternatively, the coordinate deviations between the SLAM positioning coordinates and the transformed SLAM positioning coordinates can be calculated simultaneously in multiple dimensions. If the deviation in any dimension exceeds the corresponding threshold, or if the combined deviation in multiple dimensions exceeds a preset combined threshold, a positioning deviation is confirmed.
[0031] Step 150: If the deviation verification result indicates that there is a positioning deviation, send a map tack request to the server to obtain the target map tack corresponding to the converted SLAM positioning coordinates.
[0032] Map tiles can be considered as multiple small map fragments pre-divided from a complete SLAM map of a rail transit scene (such as subway platforms, concourses, and passageways) according to preset rules. Map tiles are usually pre-stored on a server for robots to retrieve as needed; each tile corresponds to a different coordinate range and stores environmental feature points of that area (such as track edges, wall outlines, passageway markings, etc.), which can be quickly retrieved, reducing computational load and adapting to localization in large-scale and complex scenes.
[0033] The target map tiles are extracted by the server from the shared map tiles corresponding to the rail transit scene based on the transformed SLAM coordinates. Deviation verification results are usually divided into two cases: with positioning deviation and without positioning deviation. When the deviation verification result indicates that the robot has positioning deviation, the drift problem of SLAM positioning coordinates can be corrected and the positioning accuracy improved based on the calibrated positioning results obtained from the transformed SLAM positioning coordinates.
[0034] In some embodiments, a preset radius range centered on the transformed SLAM coordinates is used as a shared map tile. The preset radius range is a pre-defined circular range centered on the transformed SLAM positioning coordinates (for example, the radius can be 5 meters or 10 meters, which is not specifically limited in this application), used to limit the acquisition range of map tiles, ensuring coverage of the robot's current possible actual location, while avoiding computational redundancy and increased feature matching time caused by acquiring excessively large map tiles.
[0035] Understandably, when SLAM positioning coordinates drift, converting SLAM positioning coordinates (based on wireless positioning, which has strong anti-interference capabilities) can serve as a precise benchmark. By using feature matching or coordinate fusion, the deviation of SLAM positioning coordinates can be corrected to obtain calibrated positioning results. This helps to solve the problem of positioning drift in complex scenarios of rail transit and improve the positioning accuracy of robots in long-term, complex environments.
[0036] Step 160: Perform feature matching based on the target map segments to determine the calibrated positioning results.
[0037] Understandably, feature matching can be performed based on point cloud data, visual data, or a fusion of point cloud data and visual data. For example, it can be to match the collected point cloud features with the point cloud features stored in the acquired map tiles, use an iterative nearest point algorithm to iteratively optimize the matching accuracy, remove feature points with incorrect matching, and when the matching accuracy reaches a preset threshold (such as matching error ≤ 0.1 meters), the successfully matched feature points are determined, and the robot's localization result is derived based on the coordinates of the feature points.
[0038] The robot localization method provided in this application acquires SLAM positioning coordinates and wireless positioning coordinates, and converts the wireless positioning coordinates into transformed SLAM positioning coordinates in the same coordinate system based on shared transformation parameters corresponding to the scene. The deviation between the two is compared to determine whether the robot has a positioning deviation. If a deviation exists, a shared map segment is obtained based on the transformed SLAM positioning coordinates, and then the calibrated positioning result is determined through feature matching. The shared transformation parameters and shared map segments are obtained from the server and can be shared among different robots. This avoids calculating the transformation parameters separately for each robot, reduces computational costs, and improves the parameter consistency of different robots. It enables robot localization to adapt to different rail transit scenarios. By fusing the dual data sources of SLAM positioning coordinates and wireless positioning coordinates, the positioning accuracy of the robot in rail transit scenarios can be effectively improved.
[0039] In some embodiments of this application, determining the deviation verification result based on the relative distance between the SLAM positioning coordinates and the transformed SLAM positioning coordinates includes: Determine the relative distance between the SLAM positioning coordinates and the transformed SLAM positioning coordinates; If the relative distance exceeds a preset distance threshold, the deviation verification result is determined to indicate that a positioning deviation exists.
[0040] Understandably, relative distance is used to quantify the degree of deviation between two coordinate systems. For example, Euclidean distance, Manhattan distance, Chebyshev distance, and other calculation methods can be used to adapt to the equipotential requirements of different rail transit scenarios. The quantification of relative distance provides an objective and unified basis for subsequent threshold comparisons, avoiding verification errors caused by subjective experience judgments and helping to maintain the consistency of deviation judgment standards in different scenarios.
[0041] Since robots primarily move in planar motion (e.g., along a plane beside a track), in some embodiments, the SLAM localization coordinates and transformed SLAM localization coordinates are two-dimensional coordinates, and only the two-dimensional relative distance between the SLAM localization coordinates and transformed SLAM localization coordinates is calculated. In some embodiments, the SLAM localization coordinates and transformed SLAM localization coordinates may also be three-dimensional coordinates.
[0042] The preset distance threshold is a pre-set distance judgment threshold that can be used to distinguish between the presence and absence of positioning deviation; specifically, it can be a fixed threshold or a dynamic threshold to improve the accuracy and adaptability of positioning deviation verification.
[0043] For example, the preset distance threshold can be a fixed distance threshold (such as 5 meters) that is stored locally on the robot. If the relative distance exceeds the threshold, the deviation verification result is determined to be a positioning deviation. The deviation verification logic is simple and has a small amount of computation, which effectively reduces the robot's computational and storage costs.
[0044] In some embodiments, the preset distance threshold is a dynamic threshold that can be adaptively adjusted based on various conditions such as the current rail transit scenario in which the robot is located (e.g., long passages, signal-blocked areas, high-precision inspection areas, etc.), the robot's moving speed, and the quality of the wireless signal. For example, in high-precision inspection areas (e.g., equipment maintenance areas), the threshold can be adjusted to 0.3 meters to improve positioning accuracy; in long passages or signal-blocked areas, the threshold can be adjusted to 0.5 meters to avoid frequent misjudgments.
[0045] The robot localization method provided in this application determines the relative distance between the SLAM positioning coordinates and the transformed SLAM positioning coordinates, and then compares the relative distance with a preset distance threshold to determine whether there is a positioning deviation in the deviation verification result. By quantifying the relative distance and comparing the threshold, accurate verification can be achieved in different rail transit scenarios, reducing the risk of misjudgment and missed judgment. The verification logic is simple, requires no complex hardware support, can meet the real-time verification requirements of robot dynamic positioning, and helps to achieve rapid detection of positioning anomalies.
[0046] In some embodiments of this application, the target map fragment is extracted by the server from the shared map fragment corresponding to the rail transit scene based on the converted SLAM positioning coordinates; The step of performing feature matching based on the target map tiles to determine the calibrated positioning result includes: Collect point cloud data and visual data at the current location, and extract environmental structured features from the point cloud data and visual image data as feature data to be matched; wherein, the environmental structured features include at least one of column features and corner features; The feature data to be matched is compared with the target map piece to obtain the feature matching result; The calibrated positioning result is determined based on the feature matching result.
[0047] Shared map tiles can be considered as multiple small map fragments pre-divided from a complete SLAM map of a rail transit scene (such as subway platforms, concourses, and passageways) according to preset rules. Map tiles are usually pre-stored on a server for robots to access on demand; each tile corresponds to a different coordinate range and stores environmental feature points of that area (such as track edges, wall outlines, passageway markers, etc.), which can be quickly accessed, reducing computational load and adapting to localization in large-scale and complex scenes.
[0048] In some embodiments, in the shared map slice corresponding to the rail transit scenario, the shared map slice with a preset radius range centered on the transformed SLAM coordinates is the target map slice.
[0049] For example, after determining that a positioning deviation exists, the robot can receive the identifier of the current rail transit scene through visual recognition or wireless communication, and then retrieve the complete map tile library corresponding to that scene from the server. Using the transformed SLAM positioning coordinates as the center, it filters out target map tiles whose coordinate range falls within a preset radius centered on the transformed SLAM positioning coordinates, quickly obtaining the environmental feature data of that tile without needing to access the complete global map, thus reducing storage and computational burden. In some embodiments, the preset radius is a dynamic threshold that can be dynamically adjusted according to the type of rail transit scene the robot is currently in.
[0050] Understandably, selecting target segments within a preset radius significantly reduces the robot's computational and data transmission load compared to directly accessing the complete global map, thereby improving the real-time performance of subsequent feature matching. At the same time, the precise selection of target segments ensures that the scope of subsequent feature matching is focused on the vicinity of the robot's current actual position, avoiding interference from irrelevant regional features and providing a foundation for the accuracy of feature matching.
[0051] In some embodiments, the feature data to be matched is performed with the target map piece to obtain the feature matching result. Specifically, this includes: using the laser point cloud data and visual data collected by the robot at the current position as the data to be matched, and matching them with the laser point cloud features and visual features stored in the shared map piece; and determining the SLAM coordinates of the robot in the shared map piece based on the successfully matched feature points, thereby obtaining the calibrated positioning result.
[0052] Understandably, feature matching can be performed based on point cloud data, visual data, or a fusion of point cloud data and visual data. For example, it can be to match the collected point cloud features with the point cloud features stored in the acquired map tiles, use an iterative nearest point algorithm to iteratively optimize the matching accuracy, remove feature points with incorrect matching, and when the matching accuracy reaches a preset threshold (such as matching error ≤ 0.1 meters), the successfully matched feature points are determined, and the robot's localization result is derived based on the coordinates of the feature points.
[0053] The robot localization method provided in this application, when it is determined that the robot has a localization deviation, filters out shared map tiles within a preset radius using the converted SLAM localization coordinates as the center, and then determines the correspondence between the robot's real-time position and the target tile through feature matching, thereby obtaining the calibrated localization result. Compared with the global map in the rail transit scenario, the use of map tiles reduces the amount of computation and data storage for feature matching, which can solve the problem of long time consumption for global map feature matching, improve the robot localization efficiency, and reduce the computation and storage costs of robot localization.
[0054] In some embodiments of this application, sending a map tack request to the server to obtain the target map tack corresponding to the converted SLAM positioning coordinates includes: The identifier of the rail transit scene corresponding to the wireless positioning coordinates is obtained through a wireless connection; A map truncation request is generated based on the identifier and sent to the server to obtain map truncations of the rail transit scene; In the shared map segment of the rail transit scenario, a target map segment with a preset radius range centered on the transformed SLAM positioning coordinates is determined.
[0055] In other words, in some embodiments, the robot terminal may obtain a complete shared map segment of the rail transit scene, and then further filter out the target map segment corresponding to the converted SLAM positioning coordinates locally. The identifier of the rail transit scene is used to uniquely distinguish the same rail transit scene (such as different subway stations, or the platform / concourse / passage area of the same subway station). Specifically, it can be in the form of characters, codes, etc., and is pre-bound to the map segment library of each scene, which can serve as an index for the robot to obtain the corresponding scene map segment.
[0056] For example, the server pre-binds the wireless positioning coordinate system range of each rail transit scenario with the corresponding scenario identifier to form a mapping table. This mapping table can be stored locally on the robot or in the cloud / server. Alternatively, after the robot obtains its own wireless positioning coordinates, it can query this mapping table to match and obtain the corresponding rail transit scenario identifier based on the wireless positioning coordinate system range of the wireless positioning coordinates. Or, the robot can receive the identifier simultaneously with the wireless positioning coordinates via wireless signal, eliminating the need for local mapping on the robot and reducing its computational and storage costs.
[0057] By comparing coordinate ranges, target segments within a preset radius around the converted SLAM positioning coordinates can be selected. This ensures that the environmental features near the robot's current actual position are covered, providing sufficient and effective feature data for subsequent feature matching, while avoiding computational redundancy caused by selecting too many irrelevant segments.
[0058] Understandably, the server can perform the map tiling filtering, further reducing the robot's local computing and storage costs.
[0059] The robot positioning method provided in this application ensures that the robot can accurately identify the current rail transit scene by associating wireless positioning coordinates with scene identifiers. By retrieving map segments from the cloud, the storage pressure caused by storing a large number of segments locally is avoided, while ensuring the real-time retrieval of the segment library. This method can be adapted to rail transit scenes of different scales and complexities.
[0060] In some embodiments of this application, the method further includes: Move within the rail transit scene and collect scene point cloud data and scene visual data of the rail transit scene; A sub-map of the rail transit scene is generated based on the scene point cloud data and the scene visual data; The sub-maps are uploaded to the server, and the server merges the sub-maps uploaded by each robot terminal to generate a shared map fragment of the rail transit scene.
[0061] In some embodiments, a full-coverage data acquisition path is pre-planned for each rail transit scenario (e.g., paths to the four corners, center, and edges of platforms; straight-line back-and-forth paths and inflection point coverage paths for passageways), enabling the robot to move along the preset path and simultaneously acquire point cloud data and visual data within the scene using its onboard laser SLAM sensor and high-definition camera. In other embodiments, the robot may employ an autonomous path planning algorithm, combined with real-time acquired environmental data, to autonomously plan its movement path, ensuring coverage of all areas within the scene.
[0062] Sub-maps of rail transit scenes are generated based on point cloud data and visual data. For example, the collected point cloud data and visual data can be fused to generate a complete SLAM map of the rail transit scene first, and then the complete SLAM map can be divided into multiple small map pieces according to preset fixed rules (such as dividing by a 10m×10m grid or by scene functional areas (platforms, passageways)). Each piece can be labeled with the corresponding coordinate range and scene identifier. Alternatively, dynamic division rules can be adopted based on the differences in feature density in different areas. Different division rules can be used for areas with dense feature points (such as platforms and equipment areas) and areas with sparse feature points (such as long passageways) to ensure that there are enough feature points in each map piece and to avoid redundancy caused by too many pieces.
[0063] In some embodiments, for sub-maps, the laser point cloud density is not less than 5 points per square meter, and the visual ORB (Oriented Fast and Rotated BRIEF) feature density is not less than 10 points per square meter.
[0064] The robot localization method provided in this application synchronously collects point cloud data and visual data of each rail transit scenario to ensure the integrity and accuracy of the data. The collected data is then processed to generate a complete SLAM map of the scenario and divided into multiple map fragments. The map fragments are uploaded to the server to serve as shared map fragments among the robots, which can be accessed by each robot as needed, effectively reducing the storage cost of each robot.
[0065] In some embodiments of this application, the method further includes: At each sampling location within the rail transit scenario, the SLAM positioning coordinates and wireless positioning coordinates of the sampling location are collected; The SLAM positioning coordinates and wireless positioning coordinates of each sampling location are uploaded to the server, so that the server can generate shared coordinate transformation parameters for the rail transit scene based on the SLAM positioning coordinates and wireless positioning coordinates of each sampling location within the rail transit scene.
[0066] In some embodiments, sampling locations are pre-planned for each rail transit scenario; a robot can move within the rail transit scenario to collect the SLAM positioning coordinates and wireless positioning coordinates of the sampling location, ensuring that the two sets of coordinates are collected data at the same time and location, avoiding deviations caused by time differences; after the collection is completed, the dual coordinate data of each sampling location are correlated and uploaded to the server, and the server performs fitting calculations based on multiple sets of sampling data to obtain the shared transformation parameters corresponding to the rail transit scenario.
[0067] The following is a specific example of how to calculate shared transformation parameters through fitting: Obtain the SLAM positioning coordinates and wireless positioning coordinates of each sampling location; Calculate the mean of each SLAM positioning coordinate and perform a mean-removal operation to obtain the result. Calculate the mean of each wireless positioning coordinate and perform a mean-removal operation to obtain... arrive; Solving for shared transformation parameters using the least squares method : .
[0068] In some embodiments, the sampling locations in the rail transit scenario include at least one of the geometric endpoints of the rail transit scenario, the geometric center point of the rail transit scenario, or the intersection of different rail transit scenarios.
[0069] The geometric endpoints of a rail transit scene refer to the vertices or endpoints of the boundary of the rail transit scene, that is, the outermost points of the scene space (such as the two endpoints of the passage, the four corners of the platform, and the edge endpoints of the station hall). They are the core identifiers of the scene's geometric outline. Selecting geometric endpoints as sampling locations can accurately cover the boundary range of the scene.
[0070] The geometric center point of a rail transit scene refers to the center point of the geometric outline of the rail transit scene (such as the center of the platform, the geometric center of the station hall, or the midpoint of a long passage). Selecting the geometric center point as the sampling location can cover the central area of the scene.
[0071] Intersections of different rail transit scenarios refer to the connection points of two or more different rail transit scenarios (such as the connection point between the platform and the passage, the intersection point of different lines in the transfer station, and the connection point between the station hall and the entrance / exit). These points are key nodes for robot movement. Selecting them as sampling locations can ensure that the conversion parameters are adapted to the scene connection area and avoid cross-scene positioning deviation.
[0072] The robot localization method provided in this application embodiment uses a server to uniformly calculate and maintain shared transformation parameters, which avoids transformation errors caused by different robots calculating parameters separately. At the same time, it realizes parameter sharing and unification among multiple robots, improves the consistency and reliability of coordinate transformation, and enables robots to achieve stable localization in complex and diverse rail transit scenarios. Each rail transit scenario collects sampling data separately and fits exclusive transformation parameters, avoiding transformation deviations caused by sharing transformation parameters in different scenarios. This ensures that robots can achieve accurate coordinate transformation in different rail transit scenarios (different subway stations, different areas), adapting to the diverse needs of rail transit scenarios.
[0073] In some embodiments of this application, the method further includes: If the SLAM positioning coordinates fail to be acquired, the wireless positioning coordinates are converted into transformed SLAM positioning coordinates in the SLAM positioning coordinate system according to the shared coordinate transformation parameters corresponding to the current rail transit scenario. Send a map truncation request to the server to obtain the target map truncation corresponding to the converted SLAM positioning coordinates; Collect laser point cloud data and visual image data at the current location to generate feature data to be matched; Based on the feature data to be matched and the target map segment, feature matching is performed, and the relocation result is determined according to the feature matching result.
[0074] If the robot detects a failure to acquire SLAM positioning coordinates, the relocalization mechanism provided in this application embodiment is triggered. It is understood that in rail transit scenarios, cross-station movement may lead to SLAM positioning loss (e.g., sudden scene changes, inability to match feature points). To address the issues of long time consumption for large map feature matching and slow positioning recovery in related technologies, this application embodiment focuses on transforming SLAM positioning coordinates, effectively shortening the acquisition time of the positioning reference; by filtering target patches with fixed or dynamic radii and calling scene map patches instead of the global large map, the long time consumption of global large map feature matching can be effectively avoided, thereby improving the continuity of robot cross-station operations.
[0075] In some embodiments of this application, the method further includes: When the environmental data of the rail transit scenario changes, an update request is sent to the server so that the server instructs the robot terminal to re-collect the environmental data in the rail transit scenario and upload it to the server. Receive the updated shared coordinate transformation parameters and / or the updated shared map fragments returned by the server.
[0076] For example, robot terminals can identify changes in environmental data in rail transit scenarios in various ways. For instance, during robot patrol operations, they can compare real-time collected laser point clouds, visual images, and locally cached target map patch features. When the matching degree of environmental features in multiple consecutive frames is lower than a preset threshold, it is determined that the scene environmental data has changed. Alternatively, maintenance personnel can proactively report the changes, and the server can proactively send environmental change notifications to the robot terminal.
[0077] In some embodiments, upon receiving an update request, the server does not cause all robots to repeatedly collect data, thus wasting resources. Instead, it selects one or more idle robots based on the real-time location of each robot, remaining tasks, and equipment availability, and issues a fixed-point re-collection command to the modified area. After the designated robot arrives at the target area, it completely re-collects environmental data such as laser point cloud data and visual image data for that area.
[0078] The robot localization method provided in this application, when the scene environment data changes, the robot initiates an update request, and the server schedules the robot to re-collect environmental data in a targeted manner. Based on the latest collected data, the shared coordinate transformation parameters and shared map tiles are iteratively updated and simultaneously distributed to all robots. This avoids the disconnect between old map tiles or coordinate transformation parameters and the real scene, ensuring the accuracy and stability of robot localization in long-term operation scenarios. In addition, the server can instruct each robot to collect data and can flexibly configure only map tiles to be updated, only coordinate parameters to be updated, or both to be updated simultaneously, improving the flexibility of data updates.
[0079] Figure 2 This is a second schematic flowchart of a robot localization method provided in some embodiments of this application. For example... Figure 2 As shown, the robot localization method also includes: Constructing a hierarchical and shared SLAM map: Constructing a SLAM map in layers according to each rail transit scenario (different stations, platforms, passages), and simultaneously dividing each scenario into a dedicated map fragment library to achieve hierarchical storage and sharing of map fragments for each scenario; Coordinate transformation parameter initialization: For each rail transit scenario, SLAM positioning coordinates and wireless positioning coordinates of each sampling location are collected, and the transformation parameters corresponding to each rail transit scenario are obtained by fitting calculation; Multi-robot parameter synchronization: Enables synchronized updates of coordinate transformation parameters and map tile library among multiple robots, ensuring that when multiple robots are working across stations, they can all access the latest scene transformation parameters and map tiles; Daily positioning and deviation verification: During daily operation, the robot synchronously acquires its own SLAM positioning coordinates and wireless positioning coordinates. It converts the wireless positioning coordinates into transformed SLAM positioning coordinates using the current scene transformation parameters and verifies the deviation between the two. If the deviation does not exceed a preset distance threshold, the positioning is considered accurate, and the robot continues to cruise. If the deviation between the SLAM positioning coordinates and the transformed SLAM positioning coordinates exceeds a preset distance threshold, the positioning is considered abnormal, and a positioning calibration process is triggered. The corresponding map segment is retrieved based on the wireless positioning coordinates, and calibration is completed through feature matching. After calibration, the robot continues to cruise. Cross-site rapid relocalization (when SLAM localization is missing): If localization is determined to be missing, a relocalization mechanism is triggered. Based on the wireless localization coordinates, the corresponding map segment is retrieved, and the robot's localization result is determined through feature matching.
[0080] Figure 3 These are schematic diagrams of robot positioning systems provided in some embodiments of this application. For example... Figure 3 As shown, the robot positioning system includes at least one robot and a server.
[0081] The robot is capable of performing each process described in the above-described robot positioning method embodiments.
[0082] This application includes at least one robot. Different robots can share data on maps and conversion parameters through a server, which can effectively avoid the redundancy of each robot building maps separately. This reduces storage costs and improves the consistency of parameters between different robots.
[0083] In some embodiments, the server includes: a shared SLAM map server, a coordinate transformation parameter management module, and a wireless positioning server; wherein, A shared SLAM map server is used to store large SLAM maps in layers according to the order of station hall, platform and passage (i.e. rail transit scene). Each rail transit scene has a corresponding feature library (where laser point cloud density is ≥5 points / ㎡ and visual ORB features are ≥10 points / ㎡). Each map tile supports tile transmission according to the combination of layer ID and coordinate range (single response ≤100ms). The coordinate transformation parameter management module is used to calculate the transformation parameters between the Wi-Fi coordinate system (wireless positioning coordinate system) and the SLAM positioning coordinate system based on the coordinate data of the sampled location using the least squares method, and push the transformation parameters to the robot via the Message Queuing Telemetry Transport (MQTT) protocol (delay ≤ 50ms). The wireless positioning service is used to fuse UWB base station signals, output Wi-Fi coordinates (wireless positioning coordinates), and combine them with layer IDs (through coordinate range mapping) to form Wi-Fi positioning data to be pushed to the robot.
[0084] In some embodiments, the robot includes: a SLAM localization module, a wireless localization module, a sampling location acquisition module, and a localization verification and relocalization module; wherein, The SLAM positioning module is used to match SLAM map segments from the server based on LiDAR and inertial measurement unit, and output SLAM positioning coordinates (accuracy less than ±0.5 meters, frequency 10Hz). The wireless positioning receiver module is used to parse the Wi-Fi positioning data pushed by the server and extract the layer ID and Wi-Fi coordinates (filtering data with a confidence level of less than 0.8). The sampling point acquisition module is used to acquire the SLAM positioning coordinates and Wi-Fi coordinates of the sampling positions in the order of the four corners of the scene, the center of the scene, and the intersection of the scene (time difference ≤10ms), and upload them to the server for the calculation of conversion parameters; The positioning verification and relocation module is used to call the transformation parameters cached locally on the robot to convert Wi-Fi coordinates into SLAM positioning coordinates and calculate the deviation. When the deviation exceeds the preset threshold, it matches local features (using the FLANN algorithm) within a 10-meter range (preset radius range) for calibration. When positioning is lost, it requests the corresponding map patch based on the layer ID and Wi-Fi coordinates, and achieves fast relocation (less than 5 seconds) by matching features within 10 meters (Hamming distance less than 30).
[0085] The following is a specific example of a robot localization method: Taking a subway hub comprising three rail transit scenarios (L001: Line 1 platform 3000㎡, L002: transfer passage 1500㎡, L003: Line 2 platform 2500㎡) and 15 inspection robots as an example, the implementation process is as follows: Mapping: One robot traverses L001, L002, and L003 at a speed of 0.5 m / s, collecting point cloud and visual data at 2-meter intervals to generate three scene sub-maps (each 100 MB); the server merges the sub-maps into a global map (500 MB) and labels the scene ranges such as L001 (x∈[0,150], y∈[0,20]); Parameter calculation: The robot collects SLAM positioning coordinates and wireless positioning coordinates at five sampling locations (geometric endpoint, center point, and scene intersection) of L001; the server calculates the transformation parameters through fitting. =-2.6 meters, =-2.4 meters, =-1.2°, RMSE=0.24 meters; Parameter synchronization: After the remaining 14 robots enter L001, they obtain the corresponding scenario conversion parameters through the MQTT protocol and cache them locally; Daily positioning and deviation verification: The robot outputs SLAM positioning coordinates (e.g., (25.3, 8.4)) and wireless positioning coordinates (e.g., (27.9, 10.8)) in real time. After coordinate transformation, the transformed SLAM positioning coordinates (25.4, 8.3) are obtained. The deviation is 0.14 meters, and the positioning is normal. If the deviation is greater than 5 meters, map patches are acquired within a 10-meter range and feature matching is performed to complete the calibration. Cross-site rapid relocation: When the robot moves from L001 to L002, positioning is lost, and wireless positioning output ( =155.2, =10.3) and identify the current scene as L002; use scene transformation parameters to obtain transformed SLAM positioning coordinates ( =156.2, =10.5), request a 10-meter range map segment, match scene features, and restore positioning in 2.3 seconds (accuracy ±0.4 meters).
[0086] The robot positioning method provided in this application can be executed by a robot positioning device. This application uses the example of a robot positioning device executing the robot positioning method to illustrate the robot positioning device provided in this application.
[0087] This application also provides a robot positioning device. Figure 4 This is a schematic diagram of the structure of a robot positioning device provided in some embodiments of this application. For example... Figure 4As shown, the robot positioning device 400 includes: The parameter request module 401 is used to send a parameter request to the server to obtain the shared coordinate transformation parameters corresponding to the current rail transit scenario. The coordinate acquisition module 402 is used to acquire SLAM positioning coordinates in the SLAM positioning coordinate system and wireless positioning coordinates in the wireless positioning coordinate system. The conversion module 403 is used to convert the wireless positioning coordinates into transformed SLAM positioning coordinates in the SLAM positioning coordinate system according to the shared coordinate conversion parameters. Verification module 404 is used to determine the deviation verification result based on the relative distance between the SLAM positioning coordinates and the converted SLAM positioning coordinates; The map tack request module 405 is used to send a map tack request to the server to obtain the target map tack corresponding to the converted SLAM positioning coordinates if the deviation verification result indicates that there is a positioning deviation. The positioning module 406 is used to perform local feature rematching based on the target map tiles to determine the calibrated positioning result.
[0088] In some embodiments, the target map piece is extracted by the server from the shared map piece corresponding to the rail transit scene based on the converted SLAM positioning coordinates; In some embodiments, the positioning module 406 is used for: Collect point cloud data and visual data at the current location, and extract environmental structured features from the point cloud data and visual image data as feature data to be matched; wherein, the environmental structured features include at least one of column features and corner features; The feature data to be matched is compared with the target map piece to obtain the feature matching result; The calibrated positioning result is determined based on the feature matching result.
[0089] In some embodiments, the robot positioning device 400 further includes a first processing module, which is used for: Collect point cloud data and visual data at the current location, and extract environmental structured features from the point cloud data and visual image data as feature data to be matched; wherein, the environmental structured features include at least one of column features and corner features; The feature data to be matched is compared with the target map piece to obtain the feature matching result; The calibrated positioning result is determined based on the feature matching result.
[0090] In some embodiments, the robot positioning device 400 further includes a second processing module, which is used for: At each sampling location within the rail transit scenario, the SLAM positioning coordinates and wireless positioning coordinates of the sampling location are collected; The SLAM positioning coordinates and wireless positioning coordinates of each sampling location are uploaded to the server, so that the server can generate shared coordinate transformation parameters for the rail transit scene based on the SLAM positioning coordinates and wireless positioning coordinates of each sampling location within the rail transit scene.
[0091] In some embodiments, the sampling locations in the rail transit scenario include at least one of the geometric endpoints of the rail transit scenario, the geometric center point of the rail transit scenario, or the intersection of different rail transit scenarios.
[0092] In some embodiments, the robot positioning device 400 further includes a third processing module, which is used for: If the SLAM positioning coordinates fail to be acquired, the wireless positioning coordinates are converted into transformed SLAM positioning coordinates in the SLAM positioning coordinate system according to the shared coordinate transformation parameters corresponding to the current rail transit scenario. Send a map truncation request to the server to obtain the target map truncation corresponding to the converted SLAM positioning coordinates; Collect laser point cloud data and visual image data at the current location to generate feature data to be matched; Based on the feature data to be matched and the target map segment, feature matching is performed, and the relocation result is determined according to the feature matching result.
[0093] In some embodiments, the robot positioning device 400 further includes a fourth processing module; the fourth processing module is used for: When the environmental data of the rail transit scenario changes, an update request is sent to the server so that the server instructs the robot terminal to re-collect the environmental data in the rail transit scenario and upload it to the server. Receive the updated shared coordinate transformation parameters and / or the updated shared map fragments returned by the server.
[0094] The robot positioning device in this application embodiment can be an electronic device or a component within an electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal or other devices besides a terminal. For example, the electronic device can be a mobile phone, tablet computer, laptop computer, PDA, in-vehicle electronic device, mobile internet device (MID), augmented reality (AR) / virtual reality (VR) device, robot, wearable device, ultra-mobile personal computer (UMPC), netbook, or personal digital assistant (PDA), etc. It can also be a server, network attached storage (NAS), personal computer (PC), television (TV), ATM, or self-service machine, etc. This application embodiment does not specifically limit the device.
[0095] The robot positioning device in this application embodiment can be a device with an operating system. This operating system can be a Microsoft (Windows) operating system, an Android operating system, an iOS operating system, or other possible operating systems; this application embodiment does not specifically limit the specific operating system.
[0096] The robot positioning device provided in this application embodiment can realize all the processes implemented in the above robot positioning method embodiment and achieve the same technical effect. To avoid repetition, it will not be described again here.
[0097] Figure 5 These are schematic diagrams of the structure of an electronic device provided in some embodiments of this application. In some embodiments, such as Figure 5 As shown, this application embodiment also provides an electronic device 500, including a processor 501, a memory 502, and a computer program stored in the memory 502 and executable on the processor 501. When the program is executed by the processor 501, it implements the various processes of the above-described robot positioning method embodiment and achieves the same technical effect. To avoid repetition, it will not be described again here.
[0098] It should be noted that the electronic devices in the embodiments of this application include the mobile electronic devices and non-mobile electronic devices described above.
[0099] This application also provides a non-transitory computer-readable storage medium storing a computer program. When the computer program is executed by a processor, it implements the various processes of the robot localization method embodiments described above and achieves the same technical effect. To avoid repetition, it will not be described again here.
[0100] The processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.
[0101] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described robot positioning method.
[0102] The processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.
[0103] This application embodiment also provides a chip, which includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement the various processes of the above-described robot positioning method embodiments and can achieve the same technical effect. To avoid repetition, it will not be described again here.
[0104] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.
[0105] It should be noted that in all specific embodiments of this application, when processing data related to user identity or characteristics, such as SLAM positioning coordinates, wireless positioning coordinates, and positioning results, user permission or consent is obtained first. Furthermore, the collection, use, and processing of this data comply with relevant laws, regulations, and standards. In addition, when embodiments of this application require access to sensitive personal information of users, separate permission or consent from the user is obtained through pop-ups or redirection to a confirmation page. Only after obtaining the user's separate permission or consent is the necessary user-related data required for the normal operation of embodiments of this application obtained.
[0106] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. Furthermore, it should be noted that the scope of the methods and apparatuses in the embodiments of this application is not limited to performing functions in the order shown or discussed, but may also include performing functions substantially simultaneously or in the reverse order, depending on the functions involved. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.
[0107] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the related technology, can be embodied in the form of a computer software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal (which may be a mobile phone, computer, cloud device, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0108] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.
[0109] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "illustrative embodiment," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.
[0110] Although embodiments of this application have been shown and described, those skilled in the art will understand that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of this application, the scope of which is defined by the claims and their equivalents.
Claims
1. A robot localization method, characterized in that, A robot terminal applied in rail transit scenarios, the method comprising: Send a parameter request to the server to obtain the shared coordinate transformation parameters corresponding to the current rail transit scenario; Obtain the SLAM positioning coordinates in the SLAM positioning coordinate system and the wireless positioning coordinates in the wireless positioning coordinate system; Based on the shared coordinate transformation parameters, the wireless positioning coordinates are converted into transformed SLAM positioning coordinates in the SLAM positioning coordinate system; The deviation verification result is determined based on the relative distance between the SLAM positioning coordinates and the transformed SLAM positioning coordinates; If the deviation verification result indicates that there is a positioning deviation, a map tiling request is sent to the server to obtain the target map tiling corresponding to the converted SLAM positioning coordinates; Feature matching is performed based on the target map segments to determine the calibrated positioning result.
2. The robot localization method according to claim 1, characterized in that, The target map fragment is extracted by the server from the shared map fragment corresponding to the rail transit scene based on the converted SLAM positioning coordinates; The step of performing feature matching based on the target map tiles to determine the calibrated positioning result includes: Collect point cloud data and visual data at the current location, and extract environmental structured features from the point cloud data and visual image data as feature data to be matched; wherein, the environmental structured features include at least one of column features and corner features; The feature data to be matched is compared with the target map piece to obtain the feature matching result; The calibrated positioning result is determined based on the feature matching result.
3. The robot localization method according to claim 2, characterized in that, The method further includes: Move within the rail transit scene and collect scene point cloud data and scene visual data of the rail transit scene; A sub-map of the rail transit scene is generated based on the scene point cloud data and the scene visual data; The sub-maps are uploaded to the server, and the server merges the sub-maps uploaded by each robot terminal to generate a shared map fragment of the rail transit scene.
4. The robot localization method according to any one of claims 1 to 3, characterized in that, The method further includes: At each sampling location within the rail transit scenario, the SLAM positioning coordinates and wireless positioning coordinates of the sampling location are collected; The SLAM positioning coordinates and wireless positioning coordinates of each sampling location are uploaded to the server, so that the server can generate shared coordinate transformation parameters for the rail transit scene based on the SLAM positioning coordinates and wireless positioning coordinates of each sampling location within the rail transit scene.
5. The robot localization method according to claim 4, characterized in that, The sampling locations in the rail transit scenario include at least one of the geometric endpoints of the rail transit scenario, the geometric center point of the rail transit scenario, or the intersection of different rail transit scenarios.
6. The robot localization method according to claim 1, characterized in that, The method further includes: If the SLAM positioning coordinates fail to be acquired, the wireless positioning coordinates are converted into transformed SLAM positioning coordinates in the SLAM positioning coordinate system according to the shared coordinate transformation parameters corresponding to the current rail transit scenario. Send a map truncation request to the server to obtain the target map truncation corresponding to the converted SLAM positioning coordinates; Collect laser point cloud data and visual image data at the current location to generate feature data to be matched; Based on the feature data to be matched and the target map segment, feature matching is performed, and the relocation result is determined according to the feature matching result.
7. The method according to claim 1, characterized in that, The method further includes: When the environmental data of the rail transit scenario changes, an update request is sent to the server so that the server instructs the robot terminal to re-collect the environmental data in the rail transit scenario and upload it to the server. Receive the updated shared coordinate transformation parameters and / or the updated shared map fragments returned by the server.
8. A robot positioning device, characterized in that, include: The parameter request module is used to send parameter requests to the server to obtain shared coordinate transformation parameters corresponding to the current rail transit scenario; The coordinate acquisition module is used to acquire SLAM positioning coordinates in the SLAM positioning coordinate system and wireless positioning coordinates in the wireless positioning coordinate system. The conversion module is used to convert the wireless positioning coordinates into transformed SLAM positioning coordinates in the SLAM positioning coordinate system according to the shared coordinate conversion parameters. The verification module is used to determine the deviation verification result based on the relative distance between the SLAM positioning coordinates and the converted SLAM positioning coordinates; The map tiling request module is used to send a map tiling request to the server to obtain the target map tiling corresponding to the converted SLAM positioning coordinates if the deviation verification result indicates that there is a positioning deviation. The positioning module is used to perform local feature rematching based on the target map tiles to determine the calibrated positioning result.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the robot localization method as described in any one of claims 1 to 7.
10. A non-transitory 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 robot localization method as described in any one of claims 1 to 7.