Visual Localization Map Segmentation for Memory Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing visual localization map storage and loading methods require large memory overhead and result in long loading times due to the need to load entire map files, especially for large scenes, leading to inefficiencies in memory usage and loading speed.
Innovation Solution
The method decomposes a single visual localization map file into multiple sub-map-files based on key frame abstract information, grouping key frames according to unique identification numbers or three-dimensional world coordinates, allowing for flexible loading and management of sub-map-files, which are then indexed using a master map file for efficient construction of local maps.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the entire visual localization map is loaded as a complete single map file, then the system can access all map data, but the memory overhead becomes very large for large scenes
Solution Approach 1:
The patent divides the complete visual localization map file into multiple sub-map-files based on spatial regions or key frame groups. Each sub-map-file contains a portion of the map data (key frames, map points, and their matching relationships), allowing the system to load only the necessary sub-regions into memory rather than the entire map, thus reducing memory overhead while maintaining access capability.
Solution Approach 2:
The patent introduces a hierarchical storage structure with a master map file containing indexing information and multiple sub-map-files containing actual map data. This adds a structural dimension to the storage system, enabling efficient navigation and selective loading of map regions without loading the complete map into memory.
2Device complexity
If the complete visual localization map file is stored as a single file, then the data structure remains simple, but the loading time during cold start becomes very long
Solution Approach 1:
The patent segments the large map file into multiple smaller sub-map-files, each containing a portion of the map data. During cold start, the system can load only the necessary sub-map-files based on the current location or required region, significantly reducing the total loading time compared to loading the complete map file.
Solution Approach 2:
The patent pre-processes the map data during the mapping phase to organize key frames and map points into grouped sub-maps with indexing information stored in the master map file. This preliminary organization enables rapid identification and loading of required map regions during cold start, avoiding the need to parse and load the entire map file.
3Quantity of substance
If sub-map-files are used to reduce memory overhead, then memory efficiency improves, but the storage and management structure becomes more complex
Solution Approach 1:
The patent introduces a master map file as an intermediary structure that contains indexing information, metadata, and references to multiple sub-map-files. This intermediary layer simplifies the management of sub-map-files by providing a unified interface for map operations, handling the complexity of distributed storage while maintaining memory efficiency through selective loading.
4Speed
If the entire map is loaded into memory, then random access to any map data is fast, but the space efficiency deteriorates for large scenes
Solution Approach 1:
The patent segments the map data into sub-map-files organized by spatial regions or key frame groups. The master map file contains indexing structures that enable efficient location of specific map regions. When access is needed, the system quickly identifies and loads only the relevant sub-map-files, maintaining fast access speed for required data while improving space efficiency by not loading unnecessary map regions into memory.
Data Source
Figure 1
Figure 2~3
Figure 4~5
AI summary
The present disclosure provides methods, apparatuses, and storage media for storing and loading visual localization maps. The methods for storing the visual localization maps may include acquiring a visual localization map; extracting key frame abstract information of each key frame from the visual localization map; grouping the key frame abstract information of all key frames of the visual localization map; for each group, generating and storing a sub-map-file of the group using the key frame abstract information of the group; generating key frame space index information based on the key frame abstract information of all groups; and generating and storing a master map file according to the key frame space index information for indexing the sub-map-file. By adopting the above solution, it is easy to flexibly load and manage the visual localization map according to the application requirements, thereby greatly improving the scalability of the visual localization map, the loading efficiency in the application and the space efficiency during the execution.