Joint positioning method and device based on circular queue

CN122921134APending Publication Date: 2026-10-16BEIJING XIAOYU INTELLISYS CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511285976.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-10
Publication Date
2026-10-16

AI Technical Summary

Technical Problem

[0004]为此,本发明的第一个目的在于提出一种基于循环队列的联合定位方法,基于移动站子地图循环队列中待处理的子地图对齐到参考站子地图数据库,解决主动定位设备受累积误差影响,导致定位结果发散的问题

Benefits of technology

[0018] The present invention provides a joint localization method, apparatus, electronic device, and storage medium based on a circular queue. This method acquires a mobile station sub-map circular queue and a reference station sub-map database. The mobile station sub-map circular queue is used to cache local sub-maps within a period of the active localization device, while the reference station sub-map database stores global sub-maps for the active localization device. In response to a sub-map to be processed in the mobile station sub-map circular queue, the sub-map is retrieved, loop closure vertices are detected in the reference station sub-map database, and the coordinate system offset of the sub-map is estimated. Based on the loop closure vertices and coordinate system offset, the sub-maps in the mobile station sub-map circular queue are updated to obtain an updated sub-map. This updated sub-map is used for visual feature localization by the active localization device. Therefore, by aligning the sub-maps to be processed in the mobile station sub-map circular queue to the reference station sub-map database, the problem of divergent localization results caused by accumulated errors in the active localization device is solved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122921134A_ABST
    Figure CN122921134A_ABST
Patent Text Reader

Abstract

The application provides a joint positioning method and device based on a circular queue, and relates to the technical field of visual positioning. The method comprises the following steps: obtaining a mobile station sub-map circular queue and a reference station sub-map database. The mobile station sub-map circular queue is used for buffering local sub-maps in a period of an active positioning device, and the reference station sub-map database is used for storing global sub-maps. In response to a sub-map to be processed in the mobile station sub-map circular queue, the sub-map is taken out to detect a loop vertex and estimate a coordinate system offset of the sub-map in the reference station sub-map database. The sub-map in the mobile station sub-map circular queue is updated based on the loop vertex and the coordinate system offset, so as to obtain an updated sub-map. The updated sub-map is used for visual feature positioning of the active positioning device. Thus, the sub-map to be processed in the mobile station sub-map circular queue is aligned to the reference station sub-map database, and the problem that the active positioning device is affected by cumulative error and causes divergence of positioning results is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of visual positioning technology, and in particular to a joint positioning method and apparatus based on a circular queue. Background Technology

[0002] In scenarios involving the construction of visual feature maps, sub-maps are often pre-built, and feature points of the current frame are extracted in real time during runtime and matched with the map for localization. Alternatively, simultaneous localization and mapping (SLAM) schemes based on vision or LiDAR are employed. However, these methods suffer from poor real-time performance and the localization results exhibit cumulative errors that gradually increase over time. This leads to the problem of diverging localization results due to the cumulative errors affecting the active localization device. Summary of the Invention

[0003] The present invention aims to at least partially solve one of the technical problems in the related art.

[0004] Therefore, the first objective of this invention is to propose a joint positioning method based on a circular queue, which aligns the sub-maps to be processed in the mobile station sub-map circular queue to the reference station sub-map database, thereby solving the problem of divergent positioning results caused by the cumulative error of active positioning devices.

[0005] The second objective of this invention is to propose a joint positioning device based on a circular queue.

[0006] The third objective of this invention is to provide an electronic device.

[0007] The fourth objective of this invention is to provide a non-transitory computer-readable storage medium storing computer instructions.

[0008] To achieve the above objectives, a first aspect of the present invention proposes a joint positioning method based on a circular queue, the method comprising:

[0009] Obtain a mobile station sub-map circular queue and a reference station sub-map database, wherein the mobile station sub-map circular queue is used to cache local sub-maps within the active positioning device's cycle, and the reference station sub-map database is used to store global sub-maps of the active positioning device;

[0010] In response to the submaps waiting to be processed in the mobile station submap circular queue, the submaps are retrieved, loop vertices are detected in the reference station submap database, and the coordinate system offset of the submaps is estimated.

[0011] The sub-maps in the mobile station sub-map circular queue are updated based on the loop vertices and coordinate system offsets to obtain updated sub-maps, wherein the updated sub-maps are used for visual feature localization of the active localization device.

[0012] To achieve the above objectives, a second aspect of the present invention provides a joint positioning device based on a circular queue, the device comprising:

[0013] The acquisition module is used to acquire the mobile station sub-map circular queue and the reference station sub-map database. The mobile station sub-map circular queue is used to cache local sub-maps within the active positioning device's cycle, and the reference station sub-map database is used to store global sub-maps of the active positioning device.

[0014] The detection module is used to respond to the sub-maps to be processed in the mobile station sub-map circular queue, retrieve the sub-maps, detect loop vertices in the reference station sub-map database, and estimate the coordinate system offset of the sub-maps;

[0015] The update module is used to update the sub-maps in the mobile station sub-map circular queue based on the loop vertices and coordinate system offsets to obtain an updated sub-map, wherein the updated sub-map is used for visual feature localization of the active localization device.

[0016] To achieve the above objectives, a third aspect of the present invention provides an electronic device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the method described in the first aspect.

[0017] To achieve the above objectives, a fourth aspect of the present invention provides a non-transitory computer-readable storage medium storing computer instructions for causing the computer to perform the method described in the first aspect.

[0018] The present invention provides a joint localization method, apparatus, electronic device, and storage medium based on a circular queue. This method acquires a mobile station sub-map circular queue and a reference station sub-map database. The mobile station sub-map circular queue is used to cache local sub-maps within a period of the active localization device, while the reference station sub-map database stores global sub-maps for the active localization device. In response to a sub-map to be processed in the mobile station sub-map circular queue, the sub-map is retrieved, loop closure vertices are detected in the reference station sub-map database, and the coordinate system offset of the sub-map is estimated. Based on the loop closure vertices and coordinate system offset, the sub-maps in the mobile station sub-map circular queue are updated to obtain an updated sub-map. This updated sub-map is used for visual feature localization by the active localization device. Therefore, by aligning the sub-maps to be processed in the mobile station sub-map circular queue to the reference station sub-map database, the problem of divergent localization results caused by accumulated errors in the active localization device is solved.

[0019] Additional aspects and advantages of the invention 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 the invention. Attached Figure Description

[0020] The above and / or additional aspects and advantages of the present invention will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:

[0021] Figure 1 This is a flowchart illustrating the joint positioning method based on a circular queue as shown in the first embodiment of the present invention;

[0022] Figure 2 This is a flowchart illustrating the joint positioning method based on a circular queue as shown in the second embodiment of the present invention;

[0023] Figure 3 This is a flowchart illustrating the joint positioning method based on a circular queue as shown in the third embodiment of the present invention;

[0024] Figure 4 This is a schematic diagram of the structure of the joint positioning device based on a circular queue as shown in the fourth embodiment of the present invention. Detailed Implementation

[0025] Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain the present invention, and should not be construed as limiting the present invention.

[0026] It should be noted that the acquisition, storage, use, and processing of data in the technical solution of this invention all comply with the relevant provisions of relevant laws and regulations.

[0027] The following description, with reference to the accompanying drawings, outlines a joint positioning method, apparatus, electronic device, and storage medium based on a circular queue, according to embodiments of the present invention.

[0028] Figure 1 This is a flowchart illustrating a joint positioning method based on a circular queue, as provided in an embodiment of the present invention.

[0029] like Figure 1 As shown, the method includes the following steps:

[0030] Step 101: Obtain the mobile station sub-map circular queue and the reference station sub-map database. The mobile station sub-map circular queue is used to cache local sub-maps within the active positioning device's cycle, and the reference station sub-map database is used to store global sub-maps of the active positioning device.

[0031] In some possible implementations, obtaining the mobile station sub-map circular queue and the reference station sub-map database includes: acquiring mobile station sensor data and reference station sensor data continuously collected from the active positioning device within a period; determining the mobile station sub-map circular queue by caching local sub-maps in the mobile station sensor data through the circular queue; and determining the reference station sub-map database by storing global sub-maps in the reference station sensor data through database columns.

[0032] To avoid excessive transmission and computation time due to large data volume, incremental optimization and updates are performed using a mobile submap circular queue, with each submap as a unit, while preserving the constraints between vertices as much as possible.

[0033] Optionally, a submap is a map format used in computer vision to extract key feature information from images, primarily for visual localization and Simultaneous Localization and Mapping (SLAM) systems. Its core is to extract image feature points or regions using algorithms to construct a simplified map for localization or navigation.

[0034] A circular queue is a data structure that uses a finite amount of storage space to store data (submaps), where the position after the last element is the position of the first submap, forming a cycle. This structure is specifically used to implement fixed-size buffers. In a circular queue, when the end of the array is filled, the next submap is filled starting from the beginning of the array, thus achieving a cycle.

[0035] In other possible implementations, when lasers or cameras are used as sensors, local sub-maps and global sub-maps are acquired using lasers or cameras; local sub-maps are cached using a circular queue to determine the mobile station sub-map circular queue; and global sub-maps are stored using database columns to determine the reference station sub-map database.

[0036] To achieve real-time positioning, environmental features (such as buildings, trees, flower beds, etc.) are collected in real time using sensors (such as cameras / lasers). This data is then combined with inertial measurement unit and odometry data to dynamically update the local environment model. This sub-map typically contains feature points near the current movement path for rapid positioning and path planning.

[0037] In this system, LiDAR measures the distance to obstacles by emitting lasers, while cameras identify feature points (such as road signs and building outlines) in images to generate sub-maps of a local map. Specifically, LiDAR can scan the environment to acquire high-precision point cloud data, extract geometric features (such as walls and obstacle edges), and construct a sub-map of the local map. Similarly, cameras can capture images, extract visual features (such as corners, edges, and textures), and reconstruct the local 3D structure using multiple frames to construct a sub-map of the local map. Likewise, LiDAR or cameras can collect environmental feature data globally and construct a global sub-map for local positioning and navigation.

[0038] Step 102: In response to the submaps to be processed in the mobile station submap circular queue, retrieve the submaps, detect loop vertices in the reference station submap database, and estimate the coordinate system offset of the submaps.

[0039] In some possible implementations, the concept of submaps is widely used in mobile robots and SLAM systems, especially in large-scale map building and real-time processing. Submaps are typically used to segment the global submap and process each submap independently to reduce computational complexity and memory footprint. When detecting loop closures and estimating submap coordinate system offsets, the image features of the submaps can be clustered into words using a visual bag-of-words model. Loop closures are then detected by comparing the word matching between the new submap and historical submaps to identify the loop closure vertices. Upon detecting a loop, the next step is to estimate the relative poses (position and orientation) between the submaps to estimate their coordinate system offsets, ensuring consistency across all submaps in the global coordinate system.

[0040] Step 103: Update the submap in the mobile station submap circular queue based on the loop vertices and coordinate system offsets to obtain the updated submap, wherein the updated submap is used for visual feature localization of the active localization device.

[0041] In some possible implementations, the submaps in the mobile station submap circular queue are updated based on loop closure vertices and coordinate system offsets to obtain an updated submap. This updated submap is used for visual feature localization by the active localization device. The process includes: relocalizing the submap based on loop closure vertices and obtaining a first submap that has been successfully relocalized; aligning the remaining submaps (excluding the first submap) with their coordinate systems based on the coordinate system offsets to obtain a second submap with the coordinate system aligned; and updating the submaps in the mobile station submap circular queue based on the first and second submaps to obtain an updated submap. This updated submap is used for visual feature localization by the active localization device, addressing the problem of divergent localization results caused by accumulated errors.

[0042] To improve the positioning accuracy of multiple devices that need to be synchronized to a high-precision reference device in various working conditions and scenarios, taking robot positioning based on ground rail as an example, the active positioning device is the robot. The robot re-localizes the submap collected by the robot on the ground rail and obtains the first submap that was successfully relocated. Based on the coordinate system offset, the remaining submaps after removing the first submap are aligned to obtain the second submap with the aligned coordinate system. The submaps in the mobile station's submap circular queue are updated according to the first and second submaps to obtain the real-time submap of the robot's movement on the ground rail, thus locating the robot's position.

[0043] Therefore, given a prior reference station sub-map database, the sub-maps to be processed in the mobile station sub-map circular queue are aligned to the reference station sub-map database; given a prior mobile station sub-map circular queue, the sub-maps to be processed are aligned to the reference station sub-map database upon receiving it; furthermore, the sub-maps to be processed and the reference station sub-map database are received alternately at different frequencies, and the sub-maps to be processed are aligned to the reference station sub-map database. This enables collaboration among multiple active positioning devices, aligning the trajectories of low-precision active positioning devices to high-precision trajectories, and achieving multiple optimizations of multiple historical trajectories in large-scale scenarios.

[0044] This invention discloses a joint localization method based on a circular queue. The method acquires a mobile station sub-map circular queue and a reference station sub-map database. The mobile station sub-map circular queue caches local sub-maps within a given period of the active localization device, while the reference station sub-map database stores global sub-maps for the active localization device. In response to a sub-map in the mobile station sub-map circular queue, the method retrieves the sub-map, detects loop closure vertices in the reference station sub-map database, and estimates the coordinate system offset of the sub-map. Based on the loop closure vertices and coordinate system offset, the method updates the sub-maps in the mobile station sub-map circular queue to obtain an updated sub-map. This updated sub-map is used for visual feature localization by the active localization device. Thus, by aligning the sub-maps in the mobile station sub-map circular queue to the reference station sub-map database, the method addresses the problem of divergent localization results caused by accumulated errors in the active localization device.

[0045] To clearly illustrate how a submap is retrieved from the mobile station submap circular queue, used to detect loop vertices in the reference station submap database, and how the coordinate system offset of the submap is estimated, this invention proposes another joint localization method based on a circular queue.

[0046] Figure 2 This is a flowchart illustrating the joint positioning method based on a circular queue as shown in the second embodiment of the present invention.

[0047] like Figure 2 As shown, the joint location method based on a circular queue includes the following steps:

[0048] Step 201: Obtain the mobile station sub-map circular queue and the reference station sub-map database. The mobile station sub-map circular queue is used to cache local sub-maps within the active positioning device's cycle, and the reference station sub-map database is used to store global sub-maps of the active positioning device.

[0049] Step 202: In response to the pending submaps in the mobile station submap circular queue, the mobile station submap circular queue is placed in a separate thread for processing, so as to continuously retrieve the pending submaps.

[0050] As an example, in response to the pending submaps in the mobile station submap circular queue, unsynchronized submaps are continuously retrieved in a separate thread, where the circular queue is processed in a separate thread, and detection and updating continue even if no new submaps are received.

[0051] Step 203: Perform loop closure detection on the submap in the reference station submap database. If a loop closure is detected, detect the loop vertices in the reference station submap database.

[0052] As an example, reference station submaps are continuously added to the relocalized reference station submap database. The global variable `it_move` points to the submaps to be processed in the mobile station's circular queue (optionally, the global variable `it_base` points to the submaps to be processed in the reference station's circular queue). Loop closure detection is performed on the submaps, and if a loop closure is detected, the loop vertices are checked in the reference station submap database.

[0053] Loop closure detection can employ Depth-First Search (DFS), but it's not limited to this method. DFS is an effective way to detect loop closures in a submap. By recursively or using a stack to traverse the submap, visited vertices and the currently visited vertex can be marked. If the currently visited vertex is visited again, it indicates a loop closure exists.

[0054] Step 204: If no loopback is detected, estimate the coordinate system offset of the submap.

[0055] As an example, the odometry of the mobile station (such as wheel encoders or visual odometry) can be used to calculate the relative pose changes between adjacent submaps, and the coordinate system offset of the submap relative to the initial coordinate system of the global submap can be accumulated.

[0056] As another example, in the event of a short-term sensor failure, the coordinate system offset of the submap can be predicted using a motion model (such as a uniform velocity model or Kalman filtering).

[0057] In addition, if a low-precision prior submap (such as a raster map) exists, the current submap can be locally matched with the prior submap to estimate the coarse coordinate system offset.

[0058] Step 205: Update the submap in the mobile station submap circular queue based on the loop vertices and coordinate system offsets to obtain the updated submap, wherein the updated submap is used for visual feature localization of the active localization device.

[0059] It should be noted that the execution processes of steps 201 and 205 can be implemented in any of the ways described in the various embodiments of the present invention. The embodiments of the present invention do not limit this, nor will they be described in detail.

[0060] The joint localization method based on a circular queue in this invention responds to the sub-maps to be processed in the mobile station sub-map circular queue by placing the mobile station sub-map circular queue in a separate thread for processing, so as to continuously retrieve the sub-maps to be processed, thereby realizing continuous updating and independent processing of the sub-maps; loop closure detection is performed on the sub-maps in the reference station sub-map database, and if a loop closure is detected, the loop closure vertices are detected in the reference station sub-map database; if no loop closure is detected, the coordinate system offset of the sub-map is estimated, thereby realizing localization based on the subsequently built sub-map and improving the real-time performance of visual feature localization of the active localization device.

[0061] To clearly illustrate the above embodiment, Figure 3 This is an application flowchart of a joint localization method based on a circular queue provided in an embodiment of the present invention. Specifically, it involves acquiring continuously collected mobile station sensor data and reference station sensor data from active localization devices within a period; determining the mobile station Submap circular queue and the reference station Submap database; processing the mobile station submap circular queue in a separate thread (independent processing thread); performing loop closure detection on the submaps in the reference station submap database; obtaining the first submap that has successfully relocated based on the loop closure vertices, and obtaining the second submap with coordinate system alignment based on the coordinate system offset; updating the submaps in the mobile station submap circular queue to obtain the updated submap. This achieves collaborative localization among multiple active localization devices, solving the problem of divergent localization results caused by accumulated errors in active localization devices.

[0062] Furthermore, taking ground-rail-based robot localization as an example, the joint localization method based on circular queues can also include:

[0063] 1. Pre-calibrate the external parameters (e.g., sensor parameters) between the move station and the base station, where the move station and the base station are active positioning devices, such as robots;

[0064] 2. After the mobile station is initialized, it begins to move, drawing multiple weld seams, and continuously publishing the Submap to the reference station at a fixed number of vertices;

[0065] 3. After receiving the destination coordinates, the reference station begins to move on the ground track, while continuously publishing the Submap at a fixed number of vertices;

[0066] 4. Align move-Submaps to base-Submaps (for pose optimization of vertices between different tasks, the pose of vertices on the reference station is usually set as the reference, i.e., the state constant in the optimization problem): relocalization, loop closure detection Submaps perform global optimization, and non-loop closure Submap coordinate system alignment.

[0067] To implement the above embodiments, the present invention also proposes a joint positioning device based on a circular queue.

[0068] Figure 4 This is a schematic diagram of a joint positioning device based on a circular queue, provided as an embodiment of the present invention.

[0069] like Figure 4 As shown, the joint positioning device 40 based on a circular queue includes: an acquisition module 41, a detection module 42, and an update module 43.

[0070] The acquisition module 41 is used to acquire the mobile station sub-map circular queue and the reference station sub-map database, wherein the mobile station sub-map circular queue is used to cache local sub-maps within the active positioning device's cycle, and the reference station sub-map database is used to store global sub-maps of the active positioning device; the detection module 42 is used to, in response to the sub-maps to be processed in the mobile station sub-map circular queue, retrieve the sub-maps, detect loop vertices in the reference station sub-map database, and estimate the coordinate system offset of the sub-maps; the update module 43 is used to update the sub-maps in the mobile station sub-map circular queue based on the loop vertices and coordinate system offsets to obtain updated sub-maps, wherein the updated sub-maps are used for visual feature localization of the active positioning device.

[0071] Furthermore, in one possible implementation of this invention, the acquisition module 41 is specifically used to: acquire mobile station sensor data and reference station sensor data of the active positioning device continuously collected within a period; determine a mobile station sub-map circular queue by caching local sub-maps in the mobile station sensor data through a circular queue; and determine a reference station sub-map database by storing global sub-maps in the reference station sensor data through a database column.

[0072] Furthermore, in one possible implementation of this invention, the acquisition module 41 is further configured to: acquire local sub-maps and global sub-maps using a laser or camera as a sensor; cache the local sub-maps using a circular queue to determine a mobile station sub-map circular queue; and store the global sub-maps using a database column to determine a reference station sub-map database.

[0073] Furthermore, in one possible implementation of this invention, the detection module 42 is specifically configured to: respond to the sub-maps to be processed in the mobile station sub-map circular queue, place the mobile station sub-map circular queue in a separate thread for processing, so as to continuously retrieve the sub-maps to be processed; perform loop closure detection on the sub-maps in the reference station sub-map database, and if a loop closure is detected, detect the loop closure vertex in the reference station sub-map database; if no loop closure is detected, estimate the coordinate system offset of the sub-map.

[0074] Further, in one possible implementation of this invention, the update module 43 is specifically used for: repositioning the sub-map based on the loop vertices and obtaining the first sub-map that has been successfully repositioned; aligning the remaining sub-maps after removing the first sub-map based on the coordinate system offset to obtain a second sub-map with aligned coordinate systems; updating the sub-maps in the mobile station sub-map circular queue according to the first and second sub-maps to obtain an updated sub-map, wherein the updated sub-map is used for visual feature localization of the active localization device.

[0075] It should be noted that the foregoing explanation of the method embodiments also applies to the apparatus of this embodiment, and will not be repeated here.

[0076] The circular queue-based joint positioning device of this invention acquires a mobile station sub-map circular queue and a reference station sub-map database. The mobile station sub-map circular queue is used to cache local sub-maps within a period of the active positioning device, while the reference station sub-map database stores global sub-maps for the active positioning device. In response to sub-maps to be processed in the mobile station sub-map circular queue, the sub-maps are retrieved, loop closure vertices are detected in the reference station sub-map database, and the coordinate system offset of the sub-maps is estimated. Based on the loop closure vertices and coordinate system offset, the sub-maps in the mobile station sub-map circular queue are updated to obtain updated sub-maps, which are then used for visual feature positioning of the active positioning device. Thus, by aligning the sub-maps to be processed in the mobile station sub-map circular queue to the reference station sub-map database, the problem of divergent positioning results caused by accumulated errors in the active positioning device is solved.

[0077] To achieve the above embodiments, the present invention also proposes an electronic device, comprising:

[0078] At least one processor; and

[0079] A memory communicatively connected to the at least one processor; wherein,

[0080] The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the aforementioned method.

[0081] To implement the above embodiments, the present invention also proposes a non-transitory computer-readable storage medium storing computer instructions for causing the computer to perform the aforementioned method.

[0082] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "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 the present invention. 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. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0083] 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 at least one of that feature. In the description of this invention, "a plurality of" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0084] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing custom logic functions or processes, and the scope of preferred embodiments of the invention includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of the invention pertain.

[0085] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0086] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0087] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.

[0088] Furthermore, the functional units in the various embodiments of the present invention can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0089] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of the present invention have been shown and described above, it is to be understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of the present invention.

Claims

1. A joint positioning method based on a circular queue, characterized in that, The method includes: Obtain a mobile station sub-map circular queue and a reference station sub-map database, wherein the mobile station sub-map circular queue is used to cache local sub-maps within the active positioning device's cycle, and the reference station sub-map database is used to store global sub-maps of the active positioning device; In response to the submaps waiting to be processed in the mobile station submap circular queue, the submaps are retrieved, loop vertices are detected in the reference station submap database, and the coordinate system offset of the submaps is estimated. The sub-maps in the mobile station sub-map circular queue are updated based on the loop vertices and coordinate system offsets to obtain updated sub-maps, wherein the updated sub-maps are used for visual feature localization of the active localization device.

2. The method according to claim 1, characterized in that, The process of obtaining the mobile station sub-map circular queue and the reference station sub-map database includes: Acquire continuous mobile station sensor data and reference station sensor data of the active positioning device within the period; A circular queue is used to cache local sub-maps in the mobile station sensor data, and a mobile station sub-map circular queue is determined. The reference station sub-map database is determined by storing global sub-maps from the reference station sensor data in database columns.

3. The method according to claim 2, characterized in that, The method further includes: When using lasers or cameras as sensors, local and global sub-maps are acquired using lasers or cameras. The mobile station sub-map circular queue is determined by caching the local sub-map using a circular queue. The global sub-maps are stored in database columns to determine the reference station sub-map database.

4. The method according to claim 1, characterized in that, The process of retrieving a submap from the mobile station submap circular queue, detecting loop vertices in the reference station submap database, and estimating the submap's coordinate system offset includes: In response to the submaps waiting to be processed in the mobile station submap circular queue, the mobile station submap circular queue is placed in a separate thread for processing to continuously retrieve the submaps waiting to be processed; Perform loop closure detection on the sub-map in the reference station sub-map database. If a loop closure is detected, detect the loop closure vertices in the reference station sub-map database. Estimate the coordinate system offset of the submap in the absence of detected loop closures.

5. The method according to claim 1, characterized in that, The process of updating the sub-maps in the mobile station sub-map circular queue based on the loop vertices and coordinate system offsets to obtain updated sub-maps, wherein the updated sub-maps are used for visual feature localization of the active localization device, includes: Based on the loop vertices, the sub-map is relocated, and the first sub-map that is successfully relocated is obtained. Based on the coordinate system offset, the remaining sub-maps excluding the first sub-map are aligned to obtain a second sub-map with the coordinate system aligned. The submaps in the mobile station submap circular queue are updated based on the first submap and the second submap to obtain an updated submap, wherein the updated submap is used for visual feature localization of the active localization device.

6. A joint positioning device based on a circular queue, characterized in that, The device includes: The acquisition module is used to acquire the mobile station sub-map circular queue and the reference station sub-map database. The mobile station sub-map circular queue is used to cache local sub-maps within the active positioning device's cycle, and the reference station sub-map database is used to store global sub-maps of the active positioning device. The detection module is used to respond to the sub-maps to be processed in the mobile station sub-map circular queue, retrieve the sub-maps, detect loop vertices in the reference station sub-map database, and estimate the coordinate system offset of the sub-maps; The update module is used to update the sub-maps in the mobile station sub-map circular queue based on the loop vertices and coordinate system offsets to obtain an updated sub-map, wherein the updated sub-map is used for visual feature localization of the active localization device.

7. The apparatus according to claim 6, characterized in that, The acquisition module is specifically used for: Acquire continuous mobile station sensor data and reference station sensor data of the active positioning device within the period; A circular queue is used to cache local sub-maps in the mobile station sensor data, and a mobile station sub-map circular queue is determined. The reference station sub-map database is determined by storing global sub-maps from the reference station sensor data in database columns.

8. The apparatus according to claim 7, characterized in that, The acquisition module is also specifically used for: When using lasers or cameras as sensors, local and global sub-maps are acquired using lasers or cameras. The mobile station sub-map circular queue is determined by caching the local sub-map using a circular queue. The global sub-maps are stored in database columns to determine the reference station sub-map database.

9. The apparatus according to claim 6, characterized in that, The detection module is specifically used for: In response to the submaps waiting to be processed in the mobile station submap circular queue, the mobile station submap circular queue is placed in a separate thread for processing to continuously retrieve the submaps waiting to be processed; Perform loop closure detection on the sub-map in the reference station sub-map database. If a loop closure is detected, detect the loop closure vertices in the reference station sub-map database. Estimate the coordinate system offset of the submap in the absence of detected loop closures.

10. The apparatus according to claim 6, characterized in that, The update module is specifically used for: Based on the loop vertices, the sub-map is relocated, and the first sub-map that is successfully relocated is obtained. Based on the coordinate system offset, the remaining sub-maps excluding the first sub-map are aligned to obtain a second sub-map with the coordinate system aligned. The submaps in the mobile station submap circular queue are updated based on the first submap and the second submap to obtain an updated submap, wherein the updated submap is used for visual feature localization of the active localization device.

11. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-5.

12. A non-transitory computer-readable storage medium storing computer instructions, characterized in that, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-5.