Movatterモバイル変換


[0]ホーム

URL:


CN114218131B - Map data processing method, device, equipment and medium - Google Patents

Map data processing method, device, equipment and medium

Info

Publication number
CN114218131B
CN114218131BCN202111521822.0ACN202111521822ACN114218131BCN 114218131 BCN114218131 BCN 114218131BCN 202111521822 ACN202111521822 ACN 202111521822ACN 114218131 BCN114218131 BCN 114218131B
Authority
CN
China
Prior art keywords
data
map
target
virtual address
flattened
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111521822.0A
Other languages
Chinese (zh)
Other versions
CN114218131A (en
Inventor
冯威
戚悦
林伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Uisee Technologies Beijing Co Ltd
Original Assignee
Uisee Technologies Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Uisee Technologies Beijing Co LtdfiledCriticalUisee Technologies Beijing Co Ltd
Priority to CN202111521822.0ApriorityCriticalpatent/CN114218131B/en
Publication of CN114218131ApublicationCriticalpatent/CN114218131A/en
Application grantedgrantedCritical
Publication of CN114218131BpublicationCriticalpatent/CN114218131B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Classifications

Landscapes

Abstract

The embodiment of the disclosure relates to a map data processing method, a device, equipment and a medium, wherein the method is applied to an operating system and comprises the steps of receiving a data reading request, obtaining map metadata and space index data, determining target flattening map fragment data corresponding to a target data item to be accessed and position information to be accessed of the target data item in the target flattening map fragment data according to positioning information, the map metadata and the space index data or according to a current frame and the map metadata, determining a target virtual address space mapped by the target flattening map fragment data, obtaining an offset dictionary, determining a virtual address of the target data item according to the offset dictionary, the target virtual address space and the position information to be accessed, and reading corresponding data in a page cache based on the virtual address of the target data item. The embodiment of the disclosure realizes single-stage memory management, and the memory occupied by the map is safe and controllable during operation, so that the map data access efficiency is improved.

Description

Map data processing method, device, equipment and medium
Technical Field
The disclosure relates to the technical field of vehicle map data processing, and in particular relates to a map data processing method, device, equipment and medium.
Background
With the development of intelligent technology of vehicles, automatic driving technology becomes a hotspot in the field of vehicle research. The camera is utilized to extract visual characteristics of surrounding environment, and the real-time estimation of the current pose of the vehicle is one of main means for autonomous positioning of an automatic driving automobile. The visual positioning mode based on the pre-built map is a common method for providing high-precision positioning in a fixed scene.
Currently, the map data of the pre-built visual positioning map is stored as a file in some object serialization manner. However, this approach has the disadvantage that the map data must be deserialized and memory (heap memory) allocated as a complete object, and the memory overhead of this approach increases with increasing map capacity, and deserialization takes longer, resulting in memory limitations on the scale of the visual positioning map.
Disclosure of Invention
In order to solve the technical problems, the disclosure provides a map data processing method, a device, equipment and a medium.
The embodiment of the disclosure provides a map data processing method, which is applied to an operating system and comprises the following steps:
Receiving a data reading request, wherein the data reading request is used for reading visual positioning map data, the visual positioning map data comprises map metadata, spatial index data and a plurality of flattening map slicing data, the flattening map slicing data is obtained by processing original map slicing data input into a flattening tool, and the data reading request comprises a current frame or positioning information;
Acquiring the map metadata and the spatial index data, and determining target flattening map fragment data corresponding to a target data item to be accessed and to-be-accessed position information of the target data item in the target flattening map fragment data according to the positioning information, the map metadata and the spatial index data or according to the current frame and the map metadata;
determining a target virtual address space mapped by the target flattening map fragment data;
Acquiring an offset dictionary, and determining the virtual address of the target data item according to the offset dictionary, a target virtual address space and the position information to be accessed;
And reading corresponding data in the page cache based on the virtual address of the target data item.
The embodiment of the disclosure also provides a map data processing method, which comprises the following steps:
Acquiring visual positioning map data;
Inputting the original map fragment file of the visual positioning map data into a flattening tool to obtain flattening map fragment data and an offset dictionary;
the flattening map tile data is stored in a disk.
The embodiment of the disclosure also provides a map data processing device, which is set in an operating system and comprises:
the system comprises a request module, a data reading module and a data processing module, wherein the data reading module is used for receiving a data reading request, the data reading request is used for reading visual positioning map data, the visual positioning map data comprises map metadata, space index data and a plurality of flattening map slicing data, the flattening map slicing data is obtained by processing original map slicing data input into a flattening tool, and the data reading request comprises a current frame or positioning information;
the data module is used for acquiring the map metadata and the spatial index data and determining target flattening map fragment data corresponding to a target data item to be accessed and to-be-accessed position information of the target data item in the target flattening map fragment data according to the positioning information, the map metadata and the spatial index data or according to the current frame and the map metadata;
The first virtual module is used for determining a target virtual address space mapped by the target flattening map fragment data;
The second virtual module is used for acquiring an offset dictionary and determining the virtual address of the target data item according to the offset dictionary, the target virtual address space and the position information to be accessed;
and the reading module is used for reading the corresponding data in the page cache based on the virtual address of the target data item.
The embodiment of the disclosure also provides a map data processing device, which comprises:
The acquisition module is used for acquiring the visual positioning map data;
the flattening module is used for inputting the original map fragment file of the visual positioning map data into a flattening tool to obtain flattening map fragment data and an offset dictionary;
and the storage module is used for storing the flattening map fragment data in a magnetic disk.
The embodiment of the disclosure also provides electronic equipment, which comprises a processor, a memory for storing executable instructions of the processor, and the processor, wherein the processor is used for reading the executable instructions from the memory and executing the instructions to realize the map data processing method provided by the embodiment of the disclosure.
The present disclosure also provides a computer-readable storage medium storing a computer program for executing the map data processing method as provided by the embodiments of the present disclosure.
Compared with the prior art, the technical scheme provided by the embodiment of the disclosure has the advantages that an operating system can receive a data reading request, wherein the data reading request is used for reading visual positioning map data, the visual positioning map data comprise map metadata, space index data and a plurality of pieces of flattening map slicing data, the flattening map slicing data are processed by an original map slicing data input flattening tool, the data reading request comprises current frame or positioning information, map metadata and space index data are obtained, the target flattening map slicing data corresponding to a target data item to be accessed and the position information to be accessed in the target flattening map slicing data are determined according to the positioning information, the map metadata and the space index data or according to the current frame and the map metadata, the target virtual address space mapped by the target flattening map slicing data is determined, an offset dictionary is obtained, the virtual address of the target data item is determined according to the offset dictionary, the target virtual address space and the position information to be accessed, and the corresponding data in a virtual address reading page based on the target data item. By adopting the technical scheme, the map data is flattened and mapped to the virtual address space of the process, after the operating system receives the data reading request, the virtual address of the data item can be determined according to the map metadata, the space index data and the offset dictionary, and the data in the page cache is accessed through the virtual address, so that the data copying times can be reduced by utilizing a page cache mechanism, the page cache of the operating system becomes the first-level cache of the map data, single-level memory management is realized, the data can be accessed more effectively, the memory occupied by the map in operation is safe and controllable, the limitation of the physical memory size of the operating equipment is avoided, the application scene of the visual positioning technology is enlarged, the time consumption of reverse serialization is reduced, and the map data access efficiency is improved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the disclosure and together with the description, serve to explain the principles of the disclosure.
In order to more clearly illustrate the embodiments of the present disclosure or the solutions in the prior art, the drawings that are required for the description of the embodiments or the prior art will be briefly described below, and it will be obvious to those skilled in the art that other drawings can be obtained from these drawings without inventive effort.
FIG. 1 is a diagram of a map access in the related art;
FIG. 2 is a diagram illustrating another map access in the related art
Fig. 3 is a flow chart of a map data processing method according to an embodiment of the disclosure;
FIG. 4 is a schematic diagram of a map access provided by an embodiment of the present disclosure;
Fig. 5 is a flowchart illustrating another map data processing method according to an embodiment of the present disclosure;
FIG. 6 is a schematic diagram of a map flattening provided by an embodiment of the present disclosure;
FIG. 7 is a schematic diagram of another map flattening provided by an embodiment of the present disclosure;
Fig. 8 is a schematic structural diagram of a map data processing device according to an embodiment of the present disclosure;
fig. 9 is a schematic structural view of another map data processing device according to an embodiment of the present disclosure;
fig. 10 is a schematic structural diagram of an electronic device according to an embodiment of the disclosure.
Detailed Description
In the following detailed description, numerous specific details are set forth by way of examples in order to provide a thorough understanding of the relevant disclosure. However, it will be apparent to one of ordinary skill in the art that the present disclosure may be practiced without these specific details. It should be appreciated that the use of "system," "apparatus," "unit," and/or "module" terms in this disclosure is one method for distinguishing between different parts, elements, portions, or components at different levels in a sequential arrangement. However, these terms may be replaced with other expressions if the other expressions can achieve the same purpose.
It will be understood that when a device, unit, or module is referred to as being "on," "connected to," or "coupled to" another device, unit, or module, it can be directly on, connected to, or coupled to, or in communication with the other device, unit, or module, or intervening devices, units, or modules may be present unless the context clearly indicates an exceptional condition. For example, the term "and/or" as used in this disclosure includes any and all combinations of one or more of the associated listed items.
The terminology used in the present disclosure is for the purpose of describing particular embodiments only and is not intended to limit the scope of the present disclosure. As used in the specification and the claims, the terms "a," "an," "the," and/or "the" are not specific to a singular, but may include a plurality, unless the context clearly dictates otherwise. In general, the terms "comprises" and "comprising" are intended to cover only those features, integers, steps, operations, elements, and/or components that are explicitly identified, but do not constitute an exclusive list, as other features, integers, steps, operations, elements, and/or components may be included.
These and other features and characteristics of the present disclosure, as well as the methods of operation, functions of the related elements of structure, combinations of parts and economies of manufacture, may be better understood with reference to the following description and the accompanying drawings, all of which form a part of this specification. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended as a definition of the limits of the disclosure. It will be understood that the figures are not drawn to scale.
Various block diagrams are used in the present disclosure to illustrate various modifications of the embodiments according to the present disclosure. It should be understood that the foregoing or following structures are not intended to limit the present disclosure. The protection scope of the present disclosure is subject to the claims.
The visual positioning map is stored as a file in a manner of serialization of some object, which has the advantage that the storage, loading and use of the map data can be transparent to the algorithm module, which accesses the map data as other internal data.
For example, fig. 1 is a schematic view of one map access in the related art, fig. 2 is a schematic view of another map access in the related art, fig. 1 illustrates an access procedure when map data of a visual positioning map is stored in a conventional serialized file, and fig. 2 illustrates an access procedure when map data of a visual positioning map is stored in a flattened file. As shown in fig. 1 and fig. 2, the vehicle-end device may include an application layer, a memory system and a disk system in the figure, where the visual positioning algorithm module operates in the application layer, and the memory system includes two modules of application layer management and operating system management. Referring to fig. 1, when map data of a visual positioning map is stored in a disk system as a serialized file, a user needs to create a storage space (typically an application layer heap space) in the memory, to which byte stream data indicating map data of an operating system is read from the disk system, and map objects need to be re-serialized from the byte stream data, the visual positioning algorithm module can directly access map objects that are completely re-built in the application layer heap space. However, there are drawbacks in that the map data must be deserialized and memory (heap memory) allocated as a complete object, the memory overhead in this way increases with the increase of the map capacity, and the deserialization takes a long time, which results in the limitation of the size of the visual positioning map.
Referring to fig. 2, the visual positioning map is divided into a plurality of fragment files, that is, flattening files in the map, the algorithm module loads map fragments as required, the map data still needs to be deserialized to obtain complete map objects, and then the complete map objects are used by the algorithm module, and in order to meet the requirement that the algorithm can search the map data globally and randomly, the loaded fragment objects must be kept in the memory. There is also a memory constraint problem in fig. 2.
Because of the large number of cross-reference relations among the data of the visual positioning map and the requirements of global search and random access, the total capacity of the visual positioning map increases rapidly from indoor to outdoor and from limited places to open roads along with the continuous expansion of the scale of the applicable scene of the automatic driving technology, and the demand of an algorithm module for memory increases remarkably, so that vehicle-end equipment does not have enough memory (physical memory+virtual memory) to safely run. In order to solve the above-described problems, embodiments of the present disclosure provide a map data processing method, which is described below in connection with specific embodiments.
Fig. 3 is a flowchart of a map data processing method according to an embodiment of the present disclosure, where the method may be performed by a map data processing device, and the device may be implemented by software and/or hardware, and may be generally integrated in an electronic device. As shown in fig. 3, the method is applied to an operating system, and includes:
step 101, receiving a data reading request, wherein the data reading request is used for reading visual positioning map data, and the visual positioning map data comprises map metadata, spatial index data and a plurality of flattening map fragment data.
The map processing method of the embodiment of the disclosure can be applied to an operating system of a vehicle-end device, and the data reading request can be a reading request of the visual positioning map data sent by an application layer in the vehicle-end device.
The visual positioning map can be understood as map data obtained by adopting a visual synchronous positioning and mapping (Simultaneous Localization AND MAPPING, SLAM) technology, and can comprise a group of key frames and a large number of visual map points in a scene, wherein the key frames can record camera 6DoF gesture information of key nodes on a mapping track and association relation between the key frames and surrounding map elements, the visual map points are also called visual feature point clouds, and can record 3D coordinate points with certain visual features in the mapping environment, and the two groups of information and the common view relation between the two groups of information form the visual positioning map.
The visual positioning map data in the embodiment of the disclosure may be data after map division and flattening processing of the visual positioning map, specifically may include map metadata, spatial index data and a plurality of flattened map fragment data, the map metadata may include most basic attribute information of the visual positioning map, may include Origin world coordinates (Origin), camera parameters (CAMERA PARAMS), a Key Frame pose information directory (BoW to KF index), a Key Frame lookup table (KF lookup table), a Key Frame profile information directory (KF brief info catalog), a fragment file list (Chunk FILES LIST), and the like, the KF represents a Key Frame (Key Frame), the fragment file list may include related information of map fragments, for example, fragment sizes, and the like, the spatial index data may use a 3D spatial index data structure, for example, KD-Tree, the flattened map fragment data may be obtained by inputting the flattened map fragment data into the original map fragment data, and the flattened map fragment data may be the original map fragment data may be processed to obtain the complete map fragment file according to the preset rule of dividing the map fragment data.
Specifically, the operating system may acquire a data reading request sent by the application layer, where the data reading request may include a current frame or positioning information, where the current frame may be an image frame currently shot by the application layer, and the positioning information may be position information with a coarser granularity acquired by the application layer.
Step 102, acquiring map metadata and spatial index data, and determining target flattening map fragment data corresponding to a target data item to be accessed and position information to be accessed of the target data item in the target flattening map fragment data according to positioning information, the map metadata and the spatial index data or according to a current frame and the map metadata.
The data item may be understood as a minimum unit of the visual positioning Map data, and in the embodiment of the present disclosure, the data item may include a Key Frame (Key Frame) and Map points (Map points), that is, each flattened Map tile data may include a Key Frame set of a plurality of Key Frame combinations and a Map Point set of a plurality of Map Point combinations, where the Map points are coordinate points. The target data item may be understood as a data item in the visual positioning map data to be accessed corresponding to the data access request, the target flattened map tile data may be flattened map tile data where the target data item is located, and the position information to be accessed may be a specific position, that is, a specific number of data items, of the target data item in the target flattened map tile data.
In one embodiment of the disclosure, determining target flattening map fragment data corresponding to a target data item to be accessed and to-be-accessed position information of the target data item in the target flattening map fragment data according to positioning information, map metadata and spatial index data may include determining an identifier of an initial key frame according to the positioning information, determining a plurality of key frames in a preset range near the initial key frame as target key frames according to the identifier of the initial key frame, and searching in a key frame lookup table and a key frame profile information directory in the map metadata one by one according to the identifier of the target key frame to determine target flattening map fragment data corresponding to each target key frame and to-be-accessed position information thereof in the target flattening map fragment data.
When positioning information is included in the data read request, a local map may be constructed and more granular positioning may be performed based on the positioning information in embodiments of the present disclosure. The operation system can search in the space index data according to the positioning information, determine the initial key frame corresponding to the positioning information and the identifier of the initial key frame, and can determine a plurality of key frames near the initial key frame as target key frames according to the tag of the initial key frame, for example, can determine 10 key frames near the initial key frame as target key frames, wherein the data corresponding to the target key frames is the target data item, and then can search in the key frame lookup table and the key frame profile information catalog in the map metadata one by one according to the identifier of each target key frame, so as to determine the target flattening map fragment data corresponding to each target key frame and the position information to be accessed in the target flattening map fragment data.
Optionally, searching in a key frame lookup table and a key frame profile information catalog in map metadata one by one according to identifiers of target key frames to determine target flattening map fragment data corresponding to each target key frame and position information to be accessed in the target flattening map fragment data, wherein the method comprises searching in the key frame lookup table according to the identifiers of each target key frame to determine catalog numbers corresponding to each target key frame, searching in the key frame profile information catalog according to catalog numbers corresponding to each target key frame to determine target flattening map fragment data corresponding to each target key frame and position information to be accessed in the target flattening map fragment data.
The key frame lookup table may store, among other things, identifiers and corresponding directory numbers of key frames, as well as basic information of the key frames, such as spatial locations, etc. The key frame profile information directory may store a directory number and a corresponding target entry, and the directory entry may include fragment information of the key frame. Specifically, after determining the target key frames, the operating system may search in the key frame lookup table according to the identifier of each target key frame, determine the directory number corresponding to each target key frame, and search in the key frame profile information directory according to each directory number, so as to obtain the target flattened map fragment data corresponding to each target key frame, and the to-be-accessed position information of each target key frame in the target flattened map fragment data where the target flattened map fragment data is located.
In another embodiment of the disclosure, determining target flattening map fragment data corresponding to a target data item to be accessed and position information to be accessed of the target data item in the target flattening map fragment data according to a current frame and map metadata may include extracting a feature description word in the current frame, determining a plurality of candidate key frames by using an inverted index based on the feature description word, determining a reference key frame based on the plurality of candidate key frames by adopting a repositioning algorithm, searching in a key frame lookup table and a key frame profile information directory in the map metadata one by one according to identifiers of the reference key frames, and determining target flattening map fragment data corresponding to each reference key frame and position information to be accessed in the target flattening map fragment data.
Wherein the feature description word can be understood as a visual word in which visual feature points in the current frame are determined by an algorithm. The inverted index (Inverted index), also called inverted index, is an indexing method, and is used to store the mapping of the storage location of a word in a document or a group of documents under full text search, through which a list of documents containing the word can be quickly obtained according to a word.
When the data reading request includes the current frame, the operating system may first extract the feature description words corresponding to the visual feature points in the current frame, then determine the multiple key frames with the same or similar feature description words as candidate key frames through the inverted index according to the feature description words, then re-determine a reference key frame which is relatively similar to the current frame in the multiple candidate key frames by adopting a repositioning algorithm, wherein the data of the reference key frame is the target data item, and after determining the reference key frame, search in the key frame lookup table and the key frame profile information catalog one by one according to the identifier of the reference key frame, and determine the target flattened map fragment data corresponding to each reference key frame and the position information to be accessed in the target flattened map fragment data.
Optionally, the map data processing method of the embodiment of the disclosure may further include determining a plurality of common view key frames having a common view relationship with the reference key frame, and reading corresponding data for the plurality of common view key frames.
The co-view relationship may be understood as a relationship determined based on commonly observed map points, and if different key frames can observe the same map point, it is determined that a co-view relationship exists between different key frames. Because the common view relation between other key frames is recorded in the data of the key frames, after the reference key frame is determined and the data of the reference key frame is acquired, a plurality of common view key frames with common view relation with the reference key frame can be obtained, and the corresponding data are read in a mode of steps 101-105 for the plurality of common view key frames so as to construct a local map based on the data of the reference key frame and the common view key frames.
Step 103, determining a target virtual address space mapped by the fragmented data of the target flattening map.
The virtual address space is understood as the virtual address space of the running process of the visual positioning algorithm in the memory.
In the embodiment of the disclosure, determining the target virtual address space mapped by the target flattened map fragment data may include allocating a corresponding target virtual address space for the target flattened map fragment data in real time, or determining the target virtual address space mapped by the target flattened map fragment data according to a pre-established memory mapping relationship, where the memory mapping relationship is a mapping relationship between each flattened map fragment data and the virtual address space.
The memory mapping relationship may be understood as a mapping relationship between each piece of flattened map data and a virtual address header of a virtual address space, or a mapping relationship between each data item in each piece of flattened map data and a virtual address in the virtual address space, which is not particularly limited. Specifically, after determining the target flattening map fragment data, the operating system may map the target flattening map fragment data to the target virtual address space in real time, that is, allocate a corresponding target virtual address space for the target flattening map fragment data, or determine the target virtual address space corresponding to the target flattening map fragment data by searching according to a pre-established memory mapping relationship.
The embodiment of the disclosure can take the flattening map fragment data as a file mark read-only attribute of the memory map, and map the flattening map fragment data to a virtual address space through the memory map for later use.
And 104, acquiring an offset dictionary, and determining the virtual address of the target data item according to the offset dictionary, the target virtual address space and the position information to be accessed.
The offset dictionary may be a dictionary obtained by the flattening tool when flattening the original map tile data, and in the embodiment of the present disclosure, the offset dictionary records an offset address of each data item in each flattened map tile data relative to a virtual address header, where the virtual address header may be a virtual address corresponding to a first data item of each flattened map tile data.
In the embodiment of the disclosure, the operating system may acquire the offset dictionary, and then may determine the virtual address of the target data item according to the target virtual address space of the target flattened map tile data, the offset dictionary, and the to-be-accessed location information of the target data item.
Optionally, determining the virtual address of the target data item according to the offset dictionary, the target virtual address space and the location information to be accessed may include determining a target offset address of the target data item according to the location information to be accessed and the offset dictionary, and determining the virtual address of the target data item according to the virtual address header of the target virtual address space and the target offset address.
Specifically, the operating system may search in the offset dictionary according to the location information to be accessed to determine a target offset address corresponding to the target data item, and then may offset the target offset address according to the virtual address header of the target virtual address space to obtain the virtual address of the target data item.
Step 105, reading the corresponding data in the page buffer based on the virtual address of the target data item.
The page buffer may be a buffer used for buffering visual positioning map data in a memory, and in the embodiment of the present disclosure, disc data may be divided into pages and loaded into the memory by using a page buffer technology, so as to provide an application layer read-write access.
In the embodiment of the disclosure, reading the corresponding data in the page buffer based on the virtual address of the target data item may include determining a target physical address of the target data item in the page buffer based on the virtual address of the target data item, a mapping relationship between the virtual address and a physical address in the page buffer, and reading the data in the target physical address.
The mapping relationship between the virtual address and the physical address in the page buffer may be pre-constructed. Further, after determining the virtual address of the target data item, the operating system may determine the target physical address of the target data item in the page buffer according to the pre-constructed mapping relationship between the virtual address and the physical address in the page buffer, and read the data in the target physical address, thereby obtaining the target data item.
In some embodiments of the present disclosure, the map data processing method may further include, when the target physical address in the page buffer is invalid, acquiring a target data page of the target data item in the target flattened map tile data from the disk, reading the target data page into the page buffer, and storing the target data item in the target physical address.
A page of data is understood to mean a unit of flattened map sliced data stored in stages in disk, the concept of single stage storage (SINGLE LEVEL Store) emphasizes that the data is organized in pages, pages may reside in memory or on disk, where page access is not important to the process, it is important that its data format be consistent, single stage storage meaning that persistent objects are stored in pages and can be mapped to process space for direct use. One flattened map tile data may include a plurality of data pages, and the target data page may be a data page in which the target data item is located.
Specifically, when the operating system determines that there is no data in the target physical address in the page buffer or the validity period is over, the data in the disk is acquired in units of pages, that is, the target data page of the target data item in the target flattened map fragment data can be read from the disk, and stored in the page buffer, and the target data item is stored in the target physical address of the page buffer, so that the subsequent application layer can directly access the target data item based on the virtual address of the target data item.
In the related art, map data is brought into a page buffer by reading an application layer operation file, and the application layer is stressed. In the embodiment of the disclosure, for an application layer of the vehicle-end device, map data can be randomly accessed through memory mapping of visual positioning map data, a memory used for maintaining a map is not required, the pressure is low, an operating system can automatically cache and swap out map data in the memory by taking a page as a minimum unit, and the maintenance memory occupation does not exceed the limit of a system on a process.
According to the map data processing scheme provided by the embodiment of the disclosure, an operating system can receive a data reading request, wherein the data reading request is used for reading visual positioning map data, the visual positioning map data comprise map metadata, space index data and a plurality of pieces of flattening map fragment data, the flattening map fragment data are processed by an original map fragment data input flattening tool, the data reading request comprises current frames or positioning information, the map metadata and the space index data are acquired, the position information to be accessed of the target flattening map fragment data corresponding to a target data item to be accessed and the target virtual address space mapped by the target flattening map fragment data is determined according to the positioning information, the map metadata and the space index data or the current frames and the map metadata, the virtual address space mapped by the target flattening map fragment data is acquired, the virtual address of the target data item is determined according to the offset dictionary, the target virtual address space and the position information to be accessed, and the corresponding data in a page cache is read based on the virtual address of the target data item. By adopting the technical scheme, the map data is flattened and mapped to the virtual address space of the process, after the operating system receives the data reading request, the virtual address of the data item can be determined according to the map metadata, the space index data and the offset dictionary, and the data in the page cache is accessed through the virtual address, so that the data copying times can be reduced by utilizing a page cache mechanism, the page cache of the operating system becomes the first-level cache of the map data, single-level memory management is realized, the data can be accessed more effectively, the memory occupied by the map in operation is safe and controllable, the limitation of the physical memory size of the operating equipment is avoided, the application scene of the visual positioning technology is enlarged, the time consumption of reverse serialization is reduced, and the map data access efficiency is improved.
In some embodiments, the map data processing method may further include performing an editing operation on the data in the page buffer, wherein the editing operation includes a modification operation and/or a deletion operation.
The modification operation may be understood as a replacement of the data and the deletion operation may be understood as a discard of the data. The operating system may perform load operations, resident operations, modify operations, and/or delete operations on the data in the page cache. For the deleting operation, when the memory occupied by the page cache reaches the threshold value of the process configuration, the operating system deletes part of data based on a preset strategy, wherein the preset strategy can be set according to actual conditions, for example, the data can be deleted according to the heat or access quantity of the data.
In the scheme, the operating system can maintain the loading, residence, replacement or discarding of the data in the page buffer memory, can maintain the memory occupation of the page buffer memory not to exceed the limit of the system on the process, and avoid the increase of the memory expense along with the increase of the map capacity, so that the memory occupation of the visual positioning map data in the running process is safe and controllable.
Fig. 4 is a schematic diagram of map access provided by an embodiment of the present disclosure, and as shown in fig. 4, the diagram illustrates an access process of map data implemented based on flattened map tile data and memory mapping in the embodiment of the present disclosure, where a vehicle end device has the same structure as that in fig. 1 and fig. 2, and the vehicle end device may include an application layer, a memory system, and a disk system in the drawing, where a visual positioning algorithm module operates in the application layer, and the memory system includes two modules of application layer management and operating system management, where the operating system management is an operating system, and the map data processing method in the embodiment of the present disclosure may be executed by the operating system.
As shown in fig. 4, the single-level stored map may be a memory mapped file of map data flattening, i.e., flattening map tile data as described above. And taking the flattening map fragment data as a memory mapping file marking read-only attribute, and loading the memory mapping file marking read-only attribute into a process virtual address space operated by the algorithm module. For flattening map tile data, the tile data may be substituted into the page cache by a memory mapping operation. After loading initialization, each data item of the visual positioning map has a virtual address, and when the application layer needs to read the data item, the data item is directly accessed through the virtual address, and the operating system is responsible for reading the data from the disk into the page cache in the memory. When the memory occupied by the page buffer reaches the threshold value of the process configuration, the operating system is responsible for automatically recovering part of the page buffer, and the operating system can directly discard the replaced page buffer due to the read-only property of the buffer data.
The specific process may include (1) the operating system setting an upper memory usage limit for the visual positioning algorithm process level of the application layer. (2) The original map tile data is converted into flattened map tile data. That is, a method of data continuous storage and relative addressing between data references (i.e., flattening process) is defined to convert a conventionally serialized stored map into flattened map tile data. (3) When loading map data, the operating system maps the flattening map fragment data to a memory space through memory mapping, and allocates a virtual address space of an exclusive process. (4) When the method is operated, the relative offset of the accessed data is found out through flattening the agreed access mode, and the map data is directly accessed.
In the related technology, the visual positioning map needs to be copied by multiple levels of data and the application layer applies, maintains and releases the memory by itself. The scheme provides an optimization scheme of memory occupation during the operation of the visual positioning map, which can also be called as a single-stage storage scheme, and reduces the data copying times by utilizing a page buffer mechanism of an operating system, so that the page buffer is directly used as a first-stage buffer of map data, single-stage memory management is realized, the data is more effectively accessed, and the visual positioning map far exceeding the capacity of a main memory can be safely loaded and used.
Fig. 5 is a flowchart of another map data processing method according to an embodiment of the present disclosure, which may be performed by a map data processing device, where the device may be implemented in software and/or hardware, and may be generally integrated in an electronic device. As shown in fig. 5, the method includes:
step 501, obtaining visual positioning map data.
The visual positioning map data can be a traditional serialization file of the visual positioning map, and specifically, the map memory data structure can be obtained by persisting the map memory data structure into a byte stream file by using an object serialization technology under the category of an object-oriented programming language.
In the embodiment of the disclosure, the visual positioning map data may be acquired, and then the visual positioning map data may be divided based on a preset division rule, so as to obtain map metadata, spatial index data and a plurality of original map fragment files.
The preset division rule may focus on locality and relevance of map data, so that map data possibly related to each other are adjacent to each other in storage as much as possible, for example, the preset division rule may be divided according to a map building track or divided according to spatial locality, and divided according to spatial locality may be divided according to adjacent key frames. The map metadata may include most basic attribute information of the visual localization map, and may include world coordinates (Origin), camera parameters (CAMERA PARAMS), a Key Frame pose information directory (BoW to KF index), a Key Frame lookup table (KF lookup table), a Key Frame profile information directory (KF brief info catalog), and a tile file list (Chunk FILES LIST), etc., where KF represents a Key Frame (Key Frame), and related information of map tile data, such as a tile size, etc., may be included in the tile file list. The spatial index data may use a 3D spatial index data structure, such as KD-Tree, to index camera 3D world coordinates of the key frames. The plurality of original map fragment files may be a plurality of map subfiles resulting from decomposing the complete map file.
Step 502, inputting an original map fragment file of the visual positioning map data into a flattening tool to obtain flattening map fragment data and an offset dictionary.
The flattening tool can be used for flattening processing of map data, can be a serialization tool supporting zero copy and free of coding and decoding, can be set according to practical situations, for example, the flattening tool can be FlatBuffers, the flattening map fragment data to be output can be segmented map data in FlatBuffers format, and FlatBuffers can be a serialization tool. The offset dictionary may record offset addresses of each data item in the respective flattened map tile data relative to the virtual address header.
In the embodiment of the disclosure, inputting the original map tile file of the visual positioning map data into a flattening tool to obtain flattening map tile data may include inputting the original map tile file of the visual positioning map data into the flattening tool, arranging the original map tile file into a continuous byte stream according to a preset layout, and determining the obtained byte stream file as flattening map tile data.
Specifically, a plurality of complete original map tile files of the visual positioning map data are input into a flattening tool, key frames and map points in the original map tile files are used as object examples, the object examples, an object example set and constituent members of the object examples are all arranged into continuous byte streams according to a preset layout, the obtained byte stream files are determined to be flattening map tile data, an offset dictionary can be further included in output data of the flattening tool, and the offset dictionary can store positions of each data item in the flattening map tile data, namely offset addresses relative to virtual address heads, so that an operating system can access map data in the byte stream files through the offset dictionary.
Fig. 6 is a schematic diagram of map flattening provided by the embodiment of the present disclosure, as shown in fig. 6, in which a process of data division and flattening processing of visual positioning map data is shown, flattening conversion is a flattening tool, a conventional visual positioning map file is the visual positioning map data, the visual positioning map data and a positioning map division algorithm are input into the flattening tool, the visual positioning map data is divided based on the positioning map division algorithm to obtain map metadata, spatial index data and a plurality of original map tile files, and then flattening processing can be performed on the plurality of original map tile files by the flattening tool, see fig. 7 for a specific process, and finally map metadata, spatial index data and a plurality of flattened map tile data are output, such as tile 0, tile 1 to tile N in fig. 6.
Fig. 7 is a schematic diagram of another map flattening provided by an embodiment of the present disclosure, where fig. 7 illustrates a process of flattening a plurality of original map tile files by a flattening tool to obtain a plurality of flattened map tile data, and specifically includes a visual positioning map object instance in the map, typically an object instance running in an object-oriented programming language, determining a key frame and a map point in the original map tile file as the object instance, dividing the object instance into a plurality of levels according to a combination relationship, pointing the object instances to a mark reference by a pointer variable, and also can cross reference, for example, a bar in the map represents a key frame in the original map tile file, a bar represents a map point in the original map tile file, a cross reference, such as a co-view relationship, exists between the key frame and the map point, and a cross reference, such as a feature point on the key frame corresponds to the map point. The visual positioning map flattening data are the flattening map fragment data, the flattening map fragment data can be stored in a file in a byte stream form, the object examples, the object example set and the constituent members of the object examples can be arranged in a continuous byte stream according to a defined layout, the output data obtained after flattening comprise offset dictionaries, and the constituent members and the reference examples can be accessed only by looking up the offset dictionaries to access relative addresses.
According to the scheme, all data and corresponding data positions in the original map slicing file in the visual positioning map data can be stored in a linear array through the flattening tool, the flattened map slicing data can be obtained through byte stream form storage, when the visual positioning map slicing data are used, only the byte stream file is required to be sent out, when the visual positioning map slicing data are analyzed, only the corresponding data are required to be intercepted according to the stored positions, and the access efficiency is high during operation.
The flattening processing of the plurality of original map fragment files can solve the problems that the conventional visual positioning map has large whole capacity, poor fault tolerance of links such as transmission, copying and deployment caused by flattening into one file, and the map data reading and buffering depend on the file page buffering of an operating system, so that the visual positioning data correlation and locality principle can be considered during flattening data storage, and the access efficiency during operation is improved.
Step 503, storing the flattening map fragment data in a disk.
Specifically, after the original map tile file in the visual positioning map data is subjected to flattening processing to obtain flattened map tile data, the flattened map tile data can be stored in a disk, so that an operating system can receive a data reading request sent by an application layer, acquire map metadata and space index data, determine target flattened map tile data corresponding to a target data item to be accessed and position information to be accessed of the target data item in the target flattened map tile data according to positioning information, map metadata and space index data or according to a current frame and map metadata, determine a target virtual address space mapped by the target flattened map tile data, acquire an offset dictionary, determine a virtual address of the target data item according to the offset dictionary, the target virtual address space and the position information to be accessed, and read data corresponding to a page cache based on the virtual address of the target data item.
Compared with the prior art, the method reduces the time consumption of reverse serialization, removes the copy of data from page cache to memory heap space and the maintenance work of an application layer to the memory heap space, realizes single-stage memory management, namely memory management of an operating system level, ensures that the memory occupied by the map data is safe and controllable during running, and further improves the robustness of the system.
According to the map data processing scheme provided by the embodiment of the disclosure, the visual positioning map data are obtained, the original map slicing file of the visual positioning map data is input into a flattening tool, flattening map slicing data and an offset dictionary are obtained, and the flattening map slicing data are stored in a magnetic disk. By adopting the technical scheme, the map data is flattened and stored in the disk, so that the operating system can map the map data to the virtual address space of the process, after the operating system receives a data reading request, the virtual address of a data item can be determined according to the map metadata, the space index data and the offset dictionary, and the data in the page cache is accessed through the virtual address, the number of data copying times can be reduced by utilizing a page cache mechanism, the page cache of the operating system becomes the first-level cache of the map data, single-level memory management is realized, the data can be accessed more effectively, the memory occupied by the map during operation is safe and controllable, the limitation of the physical memory size of operation equipment is avoided, the application scene of the visual positioning technology is enlarged, the time consumption of reverse serialization is reduced, and the map data access efficiency is improved.
Fig. 8 is a schematic structural diagram of a map data processing device according to an embodiment of the present disclosure, where the device may be implemented by software and/or hardware, and may be generally integrated in an electronic device. As shown in fig. 8, the apparatus is provided in an operating system, and includes:
A request module 801, configured to receive a data reading request, where the data reading request is used to read visual positioning map data, the visual positioning map data includes map metadata, spatial index data, and a plurality of flattening map tile data, the flattening map tile data is processed by inputting original map tile data into a flattening tool, and the data reading request includes a current frame or positioning information;
A data module 802, configured to obtain the map metadata and the spatial index data, and determine, according to the positioning information, the map metadata, and the spatial index data, or according to the current frame and the map metadata, target flattening map tile data corresponding to a target data item to be accessed, and to-be-accessed location information of the target data item in the target flattening map tile data;
a first virtual module 803, configured to determine a target virtual address space mapped by the target flattening map tile data;
a second virtual module 804, configured to obtain an offset dictionary, and determine a virtual address of the target data item according to the offset dictionary, the target virtual address space, and the location information to be accessed;
And a reading module 805, configured to read corresponding data in the page cache based on the virtual address of the target data item.
Optionally, the data module 802 includes a first unit configured to:
Searching in the space index data according to the positioning information, and determining an identifier of an initial key frame;
determining a plurality of key frames in a preset range near the initial key frame as target key frames according to the identifier of the initial key frame;
And searching in a key frame lookup table and a key frame profile information catalog in the map metadata one by one according to the identifiers of the target key frames, and determining target flattening map fragment data corresponding to each target key frame and the position information to be accessed in the target flattening map fragment data.
Optionally, the first unit is specifically configured to:
searching in the key frame lookup table according to the identifier of each target key frame, and determining a directory number corresponding to each target key frame;
Searching in the key frame profile information directory according to the directory number corresponding to each target key frame, and determining target flattening map fragment data corresponding to each target key frame and the position information to be accessed in the target flattening map fragment data.
Optionally, the data module 802 includes a second unit configured to:
Extracting a feature description word in the current frame, and determining a plurality of candidate key frames by using an inverted index based on the feature description word;
Determining a reference key frame based on the plurality of candidate key frames using a repositioning algorithm;
And searching in a key frame lookup table and a key frame profile information catalog in the map metadata one by one according to the identifiers of the reference key frames, and determining target flattening map fragment data corresponding to each reference key frame and the position information to be accessed in the target flattening map fragment data.
Optionally, the device further includes a common view module, configured to:
determining a plurality of co-view key frames having a co-view relationship with the reference key frame;
and reading corresponding data aiming at the plurality of common view key frames.
Optionally, the first virtual module 803 is configured to:
and distributing corresponding target virtual address space for the target flattening map fragment data in real time, or determining the target virtual address space mapped by the target flattening map fragment data according to a pre-established memory mapping relation, wherein the memory mapping relation is a mapping relation between each flattening map fragment data and the virtual address space.
Optionally, the offset dictionary records an offset address of each data item in the flattening map fragment data relative to the virtual address header, wherein the data item comprises a key frame and a map point.
Optionally, the second virtual module 804 is configured to:
And determining a target offset address of the target data item according to the position information to be accessed and the offset dictionary, and determining a virtual address of the target data item according to a virtual address head of the target virtual address space and the target offset address.
Optionally, the reading module 805 is configured to:
and determining a target physical address of the target data item in the page cache based on the virtual address of the target data item, the mapping relation between the virtual address and the physical address in the page cache, and reading data in the target physical address.
Optionally, the apparatus further includes a buffer module, configured to:
When the target physical address in the page cache is invalid, acquiring a target data page of the target data item in the target flattening map fragment data from a magnetic disk;
and reading the target data page to a target physical address in the page cache.
Optionally, the apparatus further includes an editing module configured to:
And performing editing operation on the data in the page cache, wherein the editing operation comprises a modifying operation and/or a deleting operation.
The map data processing device provided by the embodiment of the disclosure can execute the map data processing method provided by any embodiment of the disclosure, and has the corresponding functional modules and beneficial effects of the execution method.
Fig. 9 is a schematic structural diagram of another map data processing apparatus according to an embodiment of the present disclosure, which may be implemented by software and/or hardware, and may be generally integrated in an electronic device. As shown in fig. 9, the apparatus includes:
an acquisition module 901, configured to acquire visual positioning map data;
the flattening module 902 is configured to input an original map tile file of the visual positioning map data into a flattening tool, so as to obtain flattened map tile data and an offset dictionary;
A storage module 903, configured to store the flattened map tile data in a disk.
Optionally, the flattening module 902 is configured to:
And inputting the original map fragment file of the visual positioning map data into the flattening tool, arranging the original map fragment file into continuous byte streams according to a preset layout, and determining the obtained byte stream file as flattening map fragment data.
Optionally, the apparatus further includes a dividing module, configured to:
And dividing the visual positioning map data based on a preset dividing rule to obtain map metadata, spatial index data and a plurality of original map fragment files.
The map data processing device provided by the embodiment of the disclosure can execute the map data processing method provided by any embodiment of the disclosure, and has the corresponding functional modules and beneficial effects of the execution method.
Fig. 10 is a schematic structural diagram of an electronic device according to an embodiment of the disclosure. As shown in fig. 10, the electronic apparatus 1000 includes a Central Processing Unit (CPU) 1001, which can execute various processes in the foregoing embodiments in accordance with a program stored in a Read Only Memory (ROM) 1002 or a program loaded from a storage section 1008 into a Random Access Memory (RAM) 1003. In the RAM1003, various programs and data necessary for the operation of the electronic apparatus 1000 are also stored. The CPU1001, ROM1002, and RAM1003 are connected to each other by a bus 1004. An input/output (I/O) interface 1005 is also connected to bus 1004.
Connected to the I/O interface 1005 are an input section 1006 including a keyboard, a mouse, and the like, an output section 1007 including a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, a speaker, and the like, a storage section 1008 including a hard disk, and the like, and a communication section 1009 including a network interface card such as a LAN card, a modem, and the like. The communication section 1009 performs communication processing via a network such as the internet. The drive 1010 is also connected to the I/O interface 1005 as needed. A removable medium 1011, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like, is installed as needed in the drive 1010, so that a computer program read out therefrom is installed as needed in the storage section 1008.
In particular, according to embodiments of the present disclosure, the methods described above may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program tangibly embodied on a medium readable thereby, the computer program comprising program code for performing the aforementioned obstacle avoidance method. In such an embodiment, the computer program can be downloaded and installed from a network via the communication portion 1009, and/or installed from the removable medium 1011.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units or modules described in the embodiments of the present disclosure may be implemented by software, or may be implemented by hardware. The units or modules described may also be provided in a processor, the names of which in some cases do not constitute a limitation of the unit or module itself.
In addition, the disclosure also provides a computer readable storage medium, which may be a computer readable storage medium contained in the apparatus in the above embodiment, or may be a computer readable storage medium that exists separately and is not assembled into a device. The computer-readable storage medium stores one or more programs for use by one or more processors in performing the map data processing methods described in the present disclosure.
In addition to the methods and apparatus described above, embodiments of the present disclosure may also be computer program products comprising computer program instructions which, when executed by a processor, cause the processor to perform the map data processing methods provided by the embodiments of the present disclosure.
The computer program product may write program code for performing the operations of embodiments of the present disclosure in any combination of one or more programming languages, including an object oriented programming language such as Java, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device, partly on a remote computing device, or entirely on the remote computing device or server.
Further, embodiments of the present disclosure may also be a computer-readable storage medium having stored thereon computer program instructions which, when executed by a processor, cause the processor to perform the map data processing method provided by the embodiments of the present disclosure.
The computer readable storage medium may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may include, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of a readable storage medium include an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, there is provided a map data processing method applied to an operating system, including:
Receiving a data reading request, wherein the data reading request is used for reading visual positioning map data, the visual positioning map data comprises map metadata, spatial index data and a plurality of flattening map slicing data, the flattening map slicing data is obtained by processing original map slicing data input into a flattening tool, and the data reading request comprises a current frame or positioning information;
Acquiring the map metadata and the spatial index data, and determining target flattening map fragment data corresponding to a target data item to be accessed and to-be-accessed position information of the target data item in the target flattening map fragment data according to the positioning information, the map metadata and the spatial index data or according to the current frame and the map metadata;
determining a target virtual address space mapped by the target flattening map fragment data;
Acquiring an offset dictionary, and determining the virtual address of the target data item according to the offset dictionary, a target virtual address space and the position information to be accessed;
And reading corresponding data in the page cache based on the virtual address of the target data item.
According to one or more embodiments of the present disclosure, in a map data processing method provided by the present disclosure, determining target flattened map tile data corresponding to a target data item to be accessed and to-be-accessed position information of the target data item in the target flattened map tile data according to the positioning information, the map metadata and the spatial index data, includes:
Searching in the space index data according to the positioning information, and determining an identifier of an initial key frame;
determining a plurality of key frames in a preset range near the initial key frame as target key frames according to the identifier of the initial key frame;
And searching in a key frame lookup table and a key frame profile information catalog in the map metadata one by one according to the identifiers of the target key frames, and determining target flattening map fragment data corresponding to each target key frame and the position information to be accessed in the target flattening map fragment data.
According to one or more embodiments of the present disclosure, in a map data processing method provided by the present disclosure, searching in a key frame lookup table and a key frame profile information directory in the map metadata one by one according to identifiers of the target key frames, respectively, to determine target flattened map fragment data corresponding to each target key frame and to-be-accessed location information in the target flattened map fragment data, including:
searching in the key frame lookup table according to the identifier of each target key frame, and determining a directory number corresponding to each target key frame;
Searching in the key frame profile information directory according to the directory number corresponding to each target key frame, and determining target flattening map fragment data corresponding to each target key frame and the position information to be accessed in the target flattening map fragment data.
According to one or more embodiments of the present disclosure, in a map data processing method provided by the present disclosure, determining, according to the current frame and the map metadata, target flattened map fragment data corresponding to a target data item to be accessed and to-be-accessed position information of the target data item in the target flattened map fragment data, includes:
Extracting a feature description word in the current frame, and determining a plurality of candidate key frames by using an inverted index based on the feature description word;
Determining a reference key frame based on the plurality of candidate key frames using a repositioning algorithm;
And searching in a key frame lookup table and a key frame profile information catalog in the map metadata one by one according to the identifiers of the reference key frames, and determining target flattening map fragment data corresponding to each reference key frame and the position information to be accessed in the target flattening map fragment data.
According to one or more embodiments of the present disclosure, in the map data processing method provided by the present disclosure, the method further includes:
determining a plurality of co-view key frames having a co-view relationship with the reference key frame;
and reading corresponding data aiming at the plurality of common view key frames.
According to one or more embodiments of the present disclosure, in a map data processing method provided by the present disclosure, determining a target virtual address space mapped by the target flattened map tile data includes:
and distributing corresponding target virtual address space for the target flattening map fragment data in real time, or determining the target virtual address space mapped by the target flattening map fragment data according to a pre-established memory mapping relation, wherein the memory mapping relation is a mapping relation between each flattening map fragment data and the virtual address space.
According to one or more embodiments of the present disclosure, in the map data processing method provided by the present disclosure, the offset dictionary records an offset address of each data item in each of the flattened map tile data relative to a virtual address header, where the data item includes a key frame and a map point.
According to one or more embodiments of the present disclosure, in the map data processing method provided by the present disclosure, determining, according to the offset dictionary, the target virtual address space, and the location information to be accessed, a virtual address of the target data item includes:
And determining a target offset address of the target data item according to the position information to be accessed and the offset dictionary, and determining a virtual address of the target data item according to a virtual address head of the target virtual address space and the target offset address.
According to one or more embodiments of the present disclosure, in the map data processing method provided by the present disclosure, the reading the corresponding data in the page buffer based on the virtual address of the target data item includes:
and determining a target physical address of the target data item in the page cache based on the virtual address of the target data item, the mapping relation between the virtual address and the physical address in the page cache, and reading data in the target physical address.
According to one or more embodiments of the present disclosure, in the map data processing method provided by the present disclosure, the method further includes:
When the target physical address in the page cache is invalid, acquiring a target data page of the target data item in the target flattening map fragment data from a magnetic disk;
And reading the target data page into the page cache, and storing the target data item into the target physical address.
According to one or more embodiments of the present disclosure, in the map data processing method provided by the present disclosure, the method further includes:
And performing editing operation on the data in the page cache, wherein the editing operation comprises a modifying operation and/or a deleting operation.
According to one or more embodiments of the present disclosure, the present disclosure provides a map data processing method including:
Acquiring visual positioning map data;
Inputting the original map fragment file of the visual positioning map data into a flattening tool to obtain flattening map fragment data and an offset dictionary;
the flattening map tile data is stored in a disk.
According to one or more embodiments of the present disclosure, in a map data processing method provided by the present disclosure, an original map tile file of the visual positioning map data is input into a flattening tool to obtain flattened map tile data, including:
And inputting the original map fragment file of the visual positioning map data into the flattening tool, arranging the original map fragment file into continuous byte streams according to a preset layout, and determining the obtained byte stream file as flattening map fragment data.
According to one or more embodiments of the present disclosure, in the map data processing method provided by the present disclosure, the method further includes:
And dividing the visual positioning map data based on a preset dividing rule to obtain map metadata, spatial index data and a plurality of original map fragment files.
According to one or more embodiments of the present disclosure, there is provided a map data processing apparatus provided to an operating system, including:
the system comprises a request module, a data reading module and a data processing module, wherein the data reading module is used for receiving a data reading request, the data reading request is used for reading visual positioning map data, the visual positioning map data comprises map metadata, space index data and a plurality of flattening map slicing data, the flattening map slicing data is obtained by processing original map slicing data input into a flattening tool, and the data reading request comprises a current frame or positioning information;
the data module is used for acquiring the map metadata and the spatial index data and determining target flattening map fragment data corresponding to a target data item to be accessed and to-be-accessed position information of the target data item in the target flattening map fragment data according to the positioning information, the map metadata and the spatial index data or according to the current frame and the map metadata;
The first virtual module is used for determining a target virtual address space mapped by the target flattening map fragment data;
The second virtual module is used for acquiring an offset dictionary and determining the virtual address of the target data item according to the offset dictionary, the target virtual address space and the position information to be accessed;
and the reading module is used for reading the corresponding data in the page cache based on the virtual address of the target data item.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the data module includes a first unit configured to:
Searching in the space index data according to the positioning information, and determining an identifier of an initial key frame;
determining a plurality of key frames in a preset range near the initial key frame as target key frames according to the identifier of the initial key frame;
And searching in a key frame lookup table and a key frame profile information catalog in the map metadata one by one according to the identifiers of the target key frames, and determining target flattening map fragment data corresponding to each target key frame and the position information to be accessed in the target flattening map fragment data.
According to one or more embodiments of the present disclosure, in the map data processing device provided by the present disclosure, the first unit is specifically configured to:
searching in the key frame lookup table according to the identifier of each target key frame, and determining a directory number corresponding to each target key frame;
Searching in the key frame profile information directory according to the directory number corresponding to each target key frame, and determining target flattening map fragment data corresponding to each target key frame and the position information to be accessed in the target flattening map fragment data.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the data module includes a second unit configured to:
Extracting a feature description word in the current frame, and determining a plurality of candidate key frames by using an inverted index based on the feature description word;
Determining a reference key frame based on the plurality of candidate key frames using a repositioning algorithm;
And searching in a key frame lookup table and a key frame profile information catalog in the map metadata one by one according to the identifiers of the reference key frames, and determining target flattening map fragment data corresponding to each reference key frame and the position information to be accessed in the target flattening map fragment data.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the apparatus further includes a common view module for:
determining a plurality of co-view key frames having a co-view relationship with the reference key frame;
and reading corresponding data aiming at the plurality of common view key frames.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the first virtual module is configured to:
and distributing corresponding target virtual address space for the target flattening map fragment data in real time, or determining the target virtual address space mapped by the target flattening map fragment data according to a pre-established memory mapping relation, wherein the memory mapping relation is a mapping relation between each flattening map fragment data and the virtual address space.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the offset dictionary records an offset address of each data item in each of the flattened map tile data, the data item including a key frame and a map point, with respect to a virtual address header.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the second virtual module is configured to:
And determining a target offset address of the target data item according to the position information to be accessed and the offset dictionary, and determining a virtual address of the target data item according to a virtual address head of the target virtual address space and the target offset address.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the reading module is configured to:
and determining a target physical address of the target data item in the page cache based on the virtual address of the target data item, the mapping relation between the virtual address and the physical address in the page cache, and reading data in the target physical address.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the apparatus further includes a buffer module configured to:
When the target physical address in the page cache is invalid, acquiring a target data page of the target data item in the target flattening map fragment data from a magnetic disk;
and reading the target data page to a target physical address in the page cache.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the apparatus further includes an editing module configured to:
And performing editing operation on the data in the page cache, wherein the editing operation comprises a modifying operation and/or a deleting operation.
According to one or more embodiments of the present disclosure, there is provided a map data processing apparatus including:
The acquisition module is used for acquiring the visual positioning map data;
the flattening module is used for inputting the original map fragment file of the visual positioning map data into a flattening tool to obtain flattening map fragment data and an offset dictionary;
and the storage module is used for storing the flattening map fragment data in a magnetic disk.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the flattening module is configured to:
And inputting the original map fragment file of the visual positioning map data into the flattening tool, arranging the original map fragment file into continuous byte streams according to a preset layout, and determining the obtained byte stream file as flattening map fragment data.
According to one or more embodiments of the present disclosure, in the map data processing apparatus provided by the present disclosure, the apparatus further includes a dividing module configured to:
And dividing the visual positioning map data based on a preset dividing rule to obtain map metadata, spatial index data and a plurality of original map fragment files.
According to one or more embodiments of the present disclosure, the present disclosure provides an electronic device comprising:
A processor;
a memory for storing the processor-executable instructions;
The processor is configured to read the executable instructions from the memory and execute the instructions to implement any of the map data processing methods provided in the present disclosure.
According to one or more embodiments of the present disclosure, there is provided a computer-readable storage medium storing a computer program for executing any one of the map data processing methods provided by the present disclosure.
It should be noted that in this document, relational terms such as "first" and "second" and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises an element.
The foregoing is merely a specific embodiment of the disclosure to enable one skilled in the art to understand or practice the disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the disclosure. Thus, the present disclosure is not intended to be limited to the embodiments shown and described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (17)

Translated fromChinese
1.一种地图数据处理方法,其特征在于,应用于操作系统,包括:1. A map data processing method, characterized in that it is applied to an operating system, comprising:接收数据读取请求,其中,所述数据读取请求用于读取视觉定位地图数据,所述视觉定位地图数据包括地图元数据、空间索引数据以及多个平展化地图分片数据,所述平展化地图分片数据由原始地图分片数据输入平展化工具中处理得到,所述数据读取请求中包括当前帧或定位信息;Receive a data read request, wherein the data read request is used to read visual positioning map data, the visual positioning map data includes map metadata, spatial index data and a plurality of flattened map tile data, the flattened map tile data is obtained by processing the original map tile data input into a flattening tool, and the data read request includes current frame or positioning information;获取所述地图元数据和所述空间索引数据,并根据所述定位信息、所述地图元数据以及所述空间索引数据,或者,根据所述当前帧以及所述地图元数据,确定需要访问的目标数据项对应的目标平展化地图分片数据以及所述目标数据项在所述目标平展化地图分片数据中的待访问位置信息;Acquire the map metadata and the spatial index data, and determine the target flattened map tile data corresponding to the target data item to be accessed and the to-be-accessed position information of the target data item in the target flattened map tile data according to the positioning information, the map metadata and the spatial index data, or according to the current frame and the map metadata;确定所述目标平展化地图分片数据映射的目标虚拟地址空间;Determine a target virtual address space for mapping the target flattened map tile data;获取偏移字典,根据所述偏移字典、目标虚拟地址空间和所述待访问位置信息,确定所述目标数据项的虚拟地址,所述偏移字典记录了各个所述平展化地图分片数据中每个数据项相对于虚拟地址头的偏移地址,所述数据项包括关键帧和地图点;Obtain an offset dictionary, and determine the virtual address of the target data item according to the offset dictionary, the target virtual address space and the to-be-accessed location information, wherein the offset dictionary records the offset address of each data item in each of the flattened map slice data relative to the virtual address head, and the data items include key frames and map points;基于所述目标数据项的虚拟地址读取页缓存中对应的数据。The corresponding data in the page cache is read based on the virtual address of the target data item.2.根据权利要求1所述的方法,其特征在于,根据所述定位信息、所述地图元数据以及所述空间索引数据,确定需要访问的目标数据项对应的目标平展化地图分片数据以及所述目标数据项在所述目标平展化地图分片数据中的待访问位置信息,包括:2. The method according to claim 1, characterized in that, according to the positioning information, the map metadata and the spatial index data, determining the target flattened map tile data corresponding to the target data item to be accessed and the to-be-accessed position information of the target data item in the target flattened map tile data comprises:根据所述定位信息在所述空间索引数据中进行查找,确定初始关键帧的标识符;Searching the spatial index data according to the positioning information to determine an identifier of an initial key frame;根据所述初始关键帧的标识符,将所述初始关键帧附近预设范围内的多个关键帧确定为目标关键帧;According to the identifier of the initial key frame, a plurality of key frames within a preset range near the initial key frame are determined as target key frames;根据所述目标关键帧的标识符分别逐一在所述地图元数据中的关键帧查找表、关键帧简介信息目录中进行查找,确定各所述目标关键帧对应的目标平展化地图分片数据以及其在所述目标平展化地图分片数据中的待访问位置信息。According to the identifier of the target key frame, the key frame lookup table and the key frame profile information directory in the map metadata are searched one by one to determine the target flattened map tile data corresponding to each target key frame and its to-be-accessed location information in the target flattened map tile data.3.根据权利要求2所述方法,其特征在于,根据所述目标关键帧的标识符分别逐一在所述地图元数据中的关键帧查找表、关键帧简介信息目录中进行查找,确定各所述目标关键帧对应的目标平展化地图分片数据以及其在所述目标平展化地图分片数据中的待访问位置信息,包括:3. The method according to claim 2 is characterized in that searching in the key frame lookup table and the key frame profile information directory in the map metadata one by one according to the identifier of the target key frame, determining the target flattened map slice data corresponding to each target key frame and its to-be-accessed position information in the target flattened map slice data, comprising:根据各所述目标关键帧的标识符在所述关键帧查找表中进行查找,确定各所述目标关键帧对应的目录号;Searching in the key frame lookup table according to the identifier of each target key frame to determine the directory number corresponding to each target key frame;根据各所述目标关键帧对应的目录号在所述关键帧简介信息目录中进行查找,确定各所述目标关键帧对应的目标平展化地图分片数据以及其在所述目标平展化地图分片数据中的待访问位置信息。The key frame profile information directory is searched according to the directory number corresponding to each target key frame to determine the target flattened map tile data corresponding to each target key frame and its to-be-accessed position information in the target flattened map tile data.4.根据权利要求1所述的方法,其特征在于,根据所述当前帧以及所述地图元数据,确定需要访问的目标数据项对应的目标平展化地图分片数据以及所述目标数据项在所述目标平展化地图分片数据中的待访问位置信息,包括:4. The method according to claim 1, characterized in that, according to the current frame and the map metadata, determining the target flattened map tile data corresponding to the target data item to be accessed and the to-be-accessed position information of the target data item in the target flattened map tile data comprises:提取所述当前帧中的特征描述单词,基于所述特征描述单词利用倒排索引确定多个候选关键帧;Extracting feature description words in the current frame, and determining a plurality of candidate key frames using an inverted index based on the feature description words;采用重定位算法基于所述多个候选关键帧确定参考关键帧;Determine a reference key frame based on the multiple candidate key frames using a relocation algorithm;根据所述参考关键帧的标识符分别逐一在所述地图元数据中的关键帧查找表、关键帧简介信息目录中进行查找,确定各所述参考关键帧对应的目标平展化地图分片数据以及其在所述目标平展化地图分片数据中的待访问位置信息。According to the identifier of the reference key frame, the key frame lookup table and the key frame profile information directory in the map metadata are searched one by one to determine the target flattened map slice data corresponding to each reference key frame and its to-be-accessed location information in the target flattened map slice data.5.根据权利要求4所述的方法,其特征在于,所述方法还包括:5. The method according to claim 4, characterized in that the method further comprises:确定与所述参考关键帧具有共视关系的多个共视关键帧;Determining a plurality of co-viewing key frames having a co-viewing relationship with the reference key frame;针对所述多个共视关键帧,读取对应的数据。For the multiple common-view key frames, corresponding data is read.6.根据权利要求1所述的方法,其特征在于,确定所述目标平展化地图分片数据映射的目标虚拟地址空间,包括:6. The method according to claim 1, characterized in that determining the target virtual address space of the target flattened map tile data mapping comprises:实时为所述目标平展化地图分片数据分配对应的目标虚拟地址空间,或者,根据预先建立的内存映射关系确定所述目标平展化地图分片数据映射的目标虚拟地址空间,其中,所述内存映射关系为各平展化地图分片数据与虚拟地址空间之间的映射关系。Allocate a corresponding target virtual address space for the target flattened map tile data in real time, or determine the target virtual address space mapped by the target flattened map tile data according to a pre-established memory mapping relationship, wherein the memory mapping relationship is a mapping relationship between each flattened map tile data and a virtual address space.7.根据权利要求1所述的方法,其特征在于,根据所述偏移字典、目标虚拟地址空间和所述待访问位置信息,确定所述目标数据项的虚拟地址,包括:7. The method according to claim 1, characterized in that determining the virtual address of the target data item according to the offset dictionary, the target virtual address space and the to-be-accessed location information comprises:根据所述待访问位置信息和所述偏移字典,确定所述目标数据项的目标偏移地址,并根据所述目标虚拟地址空间的虚拟地址头和所述目标偏移地址,确定所述目标数据项的虚拟地址。The target offset address of the target data item is determined according to the to-be-accessed location information and the offset dictionary, and the virtual address of the target data item is determined according to the virtual address header of the target virtual address space and the target offset address.8.根据权利要求1所述的方法,其特征在于,所述基于所述目标数据项的虚拟地址读取页缓存中对应的数据,包括:8. The method according to claim 1, wherein reading corresponding data in a page cache based on the virtual address of the target data item comprises:基于所述目标数据项的虚拟地址、虚拟地址与页缓存中物理地址的映射关系,确定所述目标数据项在所述页缓存中的目标物理地址,读取所述目标物理地址中的数据。Based on the virtual address of the target data item and the mapping relationship between the virtual address and the physical address in the page cache, the target physical address of the target data item in the page cache is determined, and the data in the target physical address is read.9.根据权利要求8所述的方法,其特征在于,所述方法还包括:9. The method according to claim 8, characterized in that the method further comprises:当所述页缓存中的目标物理地址无效,则从磁盘中获取所述目标数据项在所述目标平展化地图分片数据中的目标数据页;When the target physical address in the page cache is invalid, obtaining the target data page of the target data item in the target flattened map fragment data from the disk;将所述目标数据页读取至所述页缓存中,所述目标数据项存储至所述目标物理地址。The target data page is read into the page cache, and the target data item is stored at the target physical address.10.根据权利要求1所述的方法,其特征在于,所述方法还包括:10. The method according to claim 1, characterized in that the method further comprises:对所述页缓存中的数据进行编辑操作,其中,所述编辑操作包括修改操作和/或删除操作。An editing operation is performed on the data in the page cache, wherein the editing operation includes a modification operation and/or a deletion operation.11.一种地图数据处理方法,其特征在于,包括:11. A map data processing method, comprising:获取视觉定位地图数据;Get visual positioning map data;将所述视觉定位地图数据的原始地图分片文件输入至平展化工具中,得到平展化地图分片数据和偏移字典,所述偏移字典记录了各个所述平展化地图分片数据中每个数据项相对于虚拟地址头的偏移地址,所述数据项包括关键帧和地图点;Inputting the original map tile file of the visual positioning map data into a flattening tool to obtain flattened map tile data and an offset dictionary, wherein the offset dictionary records the offset address of each data item in each flattened map tile data relative to the virtual address head, wherein the data item includes a key frame and a map point;将所述平展化地图分片数据存储在磁盘中。The flattened map tile data is stored on disk.12.根据权利要求11所述的方法,其特征在于,将所述视觉定位地图数据的原始地图分片文件输入至平展化工具中,得到平展化地图分片数据,包括:12. The method according to claim 11, characterized in that the original map tile file of the visual positioning map data is input into a flattening tool to obtain the flattened map tile data, comprising:将所述视觉定位地图数据的原始地图分片文件输入所述平展化工具中,按照预设布局将所述原始地图分片文件排列到连续的字节流中,将得到的字节流文件确定为平展化地图分片数据。The original map tile files of the visual positioning map data are input into the flattening tool, the original map tile files are arranged into a continuous byte stream according to a preset layout, and the obtained byte stream files are determined as flattened map tile data.13.根据权利要求11所述的方法,其特征在于,所述方法还包括:13. The method according to claim 11, characterized in that the method further comprises:基于预设划分规则对所述视觉定位地图数据进行划分,得到地图元数据、空间索引数据以及多个所述原始地图分片文件。The visual positioning map data is divided based on a preset division rule to obtain map metadata, spatial index data and a plurality of original map segment files.14.一种地图数据处理装置,其特征在于,设置于操作系统,包括:14. A map data processing device, characterized in that it is arranged in an operating system, comprising:请求模块,用于接收数据读取请求,其中,所述数据读取请求用于读取视觉定位地图数据,所述视觉定位地图数据包括地图元数据、空间索引数据以及多个平展化地图分片数据,所述平展化地图分片数据由原始地图分片数据输入平展化工具中处理得到,所述数据读取请求中包括当前帧或定位信息;A request module, used for receiving a data reading request, wherein the data reading request is used for reading visual positioning map data, the visual positioning map data includes map metadata, spatial index data and a plurality of flattened map tile data, the flattened map tile data is obtained by processing the original map tile data input into a flattening tool, and the data reading request includes a current frame or positioning information;数据模块,用于获取所述地图元数据和所述空间索引数据,并根据所述定位信息、所述地图元数据以及所述空间索引数据,或者,根据所述当前帧以及所述地图元数据,确定需要访问的目标数据项对应的目标平展化地图分片数据以及所述目标数据项在所述目标平展化地图分片数据中的待访问位置信息;A data module, used to obtain the map metadata and the spatial index data, and determine the target flattened map tile data corresponding to the target data item to be accessed and the to-be-accessed position information of the target data item in the target flattened map tile data according to the positioning information, the map metadata and the spatial index data, or according to the current frame and the map metadata;第一虚拟模块,用于确定所述目标平展化地图分片数据映射的目标虚拟地址空间;A first virtual module is used to determine a target virtual address space for mapping the target flattened map tile data;第二虚拟模块,用于获取偏移字典,根据所述偏移字典、目标虚拟地址空间和所述待访问位置信息,确定所述目标数据项的虚拟地址,所述偏移字典记录了各个所述平展化地图分片数据中每个数据项相对于虚拟地址头的偏移地址,所述数据项包括关键帧和地图点;A second virtual module is used to obtain an offset dictionary, and determine the virtual address of the target data item according to the offset dictionary, the target virtual address space and the to-be-accessed location information, wherein the offset dictionary records the offset address of each data item in each of the flattened map slice data relative to the virtual address head, and the data item includes a key frame and a map point;读取模块,用于基于所述目标数据项的虚拟地址读取页缓存中对应的数据。The reading module is used to read the corresponding data in the page cache based on the virtual address of the target data item.15.一种地图数据处理装置,其特征在于,包括:15. A map data processing device, comprising:获取模块,用于获取视觉定位地图数据;An acquisition module is used to acquire visual positioning map data;平展化模块,用于将所述视觉定位地图数据的原始地图分片文件输入至平展化工具中,得到平展化地图分片数据和偏移字典,所述偏移字典记录了各个所述平展化地图分片数据中每个数据项相对于虚拟地址头的偏移地址,所述数据项包括关键帧和地图点;A flattening module, used for inputting the original map tile file of the visual positioning map data into a flattening tool to obtain flattened map tile data and an offset dictionary, wherein the offset dictionary records the offset address of each data item in each flattened map tile data relative to the virtual address head, wherein the data item includes a key frame and a map point;存储模块,用于将所述平展化地图分片数据存储在磁盘中。The storage module is used to store the flattened map tile data in a disk.16.一种电子设备,其特征在于,所述电子设备包括:16. An electronic device, characterized in that the electronic device comprises:处理器;processor;用于存储所述处理器可执行指令的存储器;a memory for storing instructions executable by the processor;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-13中任一所述的地图数据处理方法。The processor is used to read the executable instructions from the memory and execute the instructions to implement the map data processing method described in any one of claims 1-13.17.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-13中任一所述的地图数据处理方法。17. A computer-readable storage medium, characterized in that the storage medium stores a computer program, and the computer program is used to execute the map data processing method described in any one of claims 1 to 13.
CN202111521822.0A2021-12-132021-12-13Map data processing method, device, equipment and mediumActiveCN114218131B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN202111521822.0ACN114218131B (en)2021-12-132021-12-13Map data processing method, device, equipment and medium

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN202111521822.0ACN114218131B (en)2021-12-132021-12-13Map data processing method, device, equipment and medium

Publications (2)

Publication NumberPublication Date
CN114218131A CN114218131A (en)2022-03-22
CN114218131Btrue CN114218131B (en)2025-07-22

Family

ID=80701609

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN202111521822.0AActiveCN114218131B (en)2021-12-132021-12-13Map data processing method, device, equipment and medium

Country Status (1)

CountryLink
CN (1)CN114218131B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN115876211A (en)*2022-12-192023-03-31百度时代网络技术(北京)有限公司Navigation map generation method and device
CN118860992B (en)*2024-09-242025-01-24阿里云计算有限公司 Data and container file reading method, device, system, medium and program product

Citations (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN109460267A (en)*2018-11-052019-03-12贵州大学Mobile robot offline map saves and real-time method for relocating

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
DE602006020016D1 (en)*2006-03-312011-03-24Research In Motion Ltd Method and system for distributing cartographic content to mobile communication devices
US9129428B2 (en)*2012-05-312015-09-08Apple Inc.Map tile selection in 3D
EP3217294B1 (en)*2014-11-282018-11-28Huawei Technologies Co. Ltd.File access method and apparatus and storage device
CN109636884A (en)*2018-10-252019-04-16阿里巴巴集团控股有限公司Animation processing method, device and equipment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN109460267A (en)*2018-11-052019-03-12贵州大学Mobile robot offline map saves and real-time method for relocating

Also Published As

Publication numberPublication date
CN114218131A (en)2022-03-22

Similar Documents

PublicationPublication DateTitle
CN105630409B (en)Dual data storage using in-memory array and on-disk page structure
US9830109B2 (en)Materializing data from an in-memory array to an on-disk page structure
US9514211B2 (en)High throughput data modifications using blind update operations
CN107077495B (en) High-Performance Transactions in Database Management Systems
US8065484B2 (en)Enhanced access to data available in a cache
CN103810237B (en)Data managing method and system
CN102713826B (en) Method and apparatus for allocating file storage via tree representation of bitmap
US9672241B2 (en)Representing an outlier value in a non-nullable column as null in metadata
US7769792B1 (en)Low overhead thread synchronization system and method for garbage collecting stale data in a document repository without interrupting concurrent querying
CN109697016B (en)Method and apparatus for improving storage performance of containers
CN101324896B (en) A storage method, query method and management system for vector data
CN114218131B (en)Map data processing method, device, equipment and medium
WO2017107414A1 (en)File operation method and device
WO2017013758A1 (en)Database search system and database search method
CN1655146A (en)Method and apparatus for file system snapshot persistence
US7634517B1 (en)System and method for dynamically updating a document repository without interrupting concurrent querying
US10521117B2 (en)Unified table delta dictionary memory size and load time optimization
JPH04275684A (en)Graphic information data base constructing emthod and device applying the method
US10289709B2 (en)Interleaved storage of dictionary blocks in a page chain
US9696919B1 (en)Source/copy reference tracking with block pointer sets
CN104881466A (en)Method and device for processing data fragments and deleting garbage files
CN112784188B (en)Page rendering method and device
KR101936364B1 (en)Memory management system using flash memory and method thereof
CN1845093A (en) An Object File System with Extensible Attributes
CN111581247B (en)Data manager, time sequence database and information processing system

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp