Map tile indexing method, index construction method, apparatus, and device

CN116595205BActive Publication Date: 2026-10-27CENNAVI TECH
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202310465981.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-04-26
Publication Date
2026-10-27
Estimated Expiration
2043-04-26

AI Technical Summary

Technical Problem

但由于在现有技术中,地图渲染引擎在确定该地区是否有卫星影像时,依靠遍历数据量较大的地图瓦片文件来查找是否有对应的地图瓦片,导致地图瓦片请求加载的效率较低

Benefits of technology

[0021]第七方面,提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当指令在电子设备上运行时,使得该电子设备执行如第一方面或其任一种可能的实现方式提供的地图瓦片索引方法,或者,该电子设备执行如第二方面或其任一种可能的设计提供的地图瓦片索引构建方法。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116595205B_ABST
    Figure CN116595205B_ABST
Patent Text Reader

Abstract

The application provides a map tile index method, an index construction method, a device and equipment, relates to the technical field of data storage, and is used for improving the efficiency of map tile request loading. The method comprises the following steps: a map tile index device acquires a tile number of a to-be-queried map tile, and determines an index file corresponding to a target map tile according to the tile number of the to-be-queried map tile. The index file corresponding to the target map tile comprises the identification of the target map tile and the identification of a subordinate map tile taking the target map tile as a root node. Further, the map tile index device acquires the identification of the to-be-queried map tile from the index file corresponding to the target map tile according to the tile number of the to-be-queried map tile and a preset sequence. When the identification of the to-be-queried map tile indicates that the to-be-queried map tile exists satellite image data, the satellite image data of the to-be-queried map tile is acquired.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data storage technology, and in particular to a map tile indexing method, index construction method, apparatus and device. Background Technology

[0002] Satellite imagery map tiles are mostly segmented using a quadtree algorithm. The number of tiles in each segmented layer is pyramid-shaped, and each map tile can be uniquely identified by its level, row number, and column number.

[0003] With the development of satellite remote sensing technology, the accumulated data of satellite imagery is increasing, and the resolution of satellite imagery is becoming more and more diverse. However, due to the different imaging capabilities of different remote sensing satellites, and the fact that the quality of satellite imagery is severely affected by cloud cover, it is difficult to obtain cloud-free satellite imagery covering the entire globe at multiple time phases and different resolutions.

[0004] Currently, many areas lack high-resolution imagery. When zooming in to a higher level on a map, the absence of satellite imagery for the viewed area significantly impacts the user experience. To enable seamless map browsing—meaning satellite imagery coverage for any area—real-time segmentation of low-resolution imagery is necessary to fill in the gaps in high-resolution coverage. However, in existing technologies, map rendering engines rely on traversing large map tile files to determine the presence of satellite imagery, resulting in low efficiency in loading map tile requests. Summary of the Invention

[0005] This application proposes a map tile indexing method, index construction method, apparatus, and device to improve the efficiency of map tile request loading.

[0006] To achieve the above objectives, this application adopts the following technical solution:

[0007] Firstly, a map tile indexing method is provided. This method includes: a map tile indexing device acquiring the tile number of a map tile to be queried, the tile number including the map tile's level, row number, and column number; and determining the index file corresponding to the target map tile based on the tile number of the map tile to be queried; the level of the target map tile is a preset starting level, the map tile to be queried is a subordinate map tile with the target map tile as its root node, and the index file corresponding to the target map tile includes an identifier of the target map tile and identifiers of subordinate map tiles with the target map tile as their root node. The identifiers are used to indicate whether satellite imagery data exists on the map tile, and the identifiers are stored in the index file in a preset order. Further, the map tile indexing device, based on the tile number of the map tile to be queried and the preset order, acquires the identifier of the map tile to be queried from the index file corresponding to the target map tile; and if the identifier of the map tile to be queried indicates that satellite imagery data exists on the map tile to be queried, acquires the satellite imagery data of the map tile to be queried.

[0008] In one possible design, when the identifier of the map tile to be queried indicates that satellite imagery data does not exist for the map tile to be queried, the map tile indexing method further includes: the map tile indexing device determining the identifier of a first map tile, wherein the first map tile is at the next higher level than the map tile to be queried, and the map tile to be queried is a secondary map tile with the first map tile as its root node. Further, if the identifier of the first map tile indicates that satellite imagery data exists for the first map tile, the map tile indexing device acquires the satellite imagery data of the first map tile. Further, the map tile indexing device, based on the tile number of the map tile to be queried, trims the satellite imagery data of the first map tile to obtain the satellite imagery data of the map tile to be queried.

[0009] In one possible design, when the identifier of the map tile to be queried indicates that satellite imagery data does not exist for the map tile to be queried, the map tile indexing method further includes: the map tile indexing device determining a map tile set, wherein each map tile in the map tile set has slave node map tiles that include the map tile to be queried, and the identifier of each map tile indicates that satellite imagery data exists for the map tile. Further, the map tile indexing device obtains the satellite imagery data of a second map tile based on the identifier of each map tile in the map tile set, where the second map tile is the highest-level map tile in the map tile set. Further, the map tile indexing device trims the satellite imagery data of the second map tile based on the tile number of the map tile to be queried, thus obtaining the satellite imagery data of the map tile to be queried.

[0010] In one possible design, the map tile indexing method further includes: the map tile indexing device obtaining the target end level from the index file of the target map tile, where the target end level is the end level corresponding to the target map tile; and if the level of the map tile to be queried is greater than the target end level, obtaining the satellite imagery data of a third map tile, where the map tile to be queried is a lower-level map tile with the third map tile as its root node. Further, the map tile indexing device, based on the tile number of the map tile to be queried, trims the satellite imagery data of the third map tile to obtain the satellite imagery data of the map tile to be queried.

[0011] Secondly, a method for constructing a map tile index is provided. This method includes: a map tile indexing device acquiring map tile data, the map tile data including multiple levels of map tiles, each map tile including satellite imagery data. Further, the map tile indexing device determines multiple fourth map tiles from the map tile data, the fourth map tiles being at a preset starting level, and determines a fifth map tile corresponding to each fourth map tile from the map tile data, the fifth map tile being a subordinate map tile with the fourth map tile as its root node. Further, the map tile indexing device generates an index file corresponding to each fourth map tile based on the identifier of each fourth map tile and the identifier of the fifth map tile corresponding to each fourth map tile, thus obtaining multiple index files that correspond one-to-one with the multiple fourth map tiles.

[0012] In one possible design, the map tile index construction method further includes: the map tile index construction device determining the ending level corresponding to each fourth map tile, wherein the ending level corresponding to each fourth map tile is the maximum level of the map tiles in the fifth map tile corresponding to each fourth map tile. Further, the map tile index construction device generates a file header for the index file corresponding to each fourth map tile based on a preset starting level and the ending level corresponding to each fourth map tile. Further, the map tile index construction device adds the file header of the index file corresponding to each fourth map tile to the index file corresponding to each fourth map tile.

[0013] Thirdly, a map tile indexing device is provided, including an acquisition unit and a determination unit. The acquisition unit acquires the tile number of a map tile to be queried, the tile number including the map tile's level, row number, and column number. The determination unit determines the index file corresponding to the target map tile based on the tile number of the map tile to be queried; the target map tile's level is a preset starting level, the map tile to be queried is a subordinate map tile with the target map tile as its root node, and the index file corresponding to the target map tile includes an identifier of the target map tile and identifiers of subordinate map tiles with the target map tile as their root node. The identifiers indicate whether satellite imagery data exists for the map tile, and the identifiers are stored in the index file in a preset order. The acquisition unit is also used to acquire the identifier of the map tile to be queried from the index file corresponding to the target map tile based on the tile number of the map tile to be queried and the preset order. The acquisition unit is further used to acquire the satellite imagery data of the map tile to be queried if the identifier of the map tile to be queried indicates that satellite imagery data exists for the map tile to be queried.

[0014] In one possible design, the map tile indexing device further includes a processing unit. The determining unit is further configured to determine the identifier of a first map tile, wherein the first map tile is the next level above the map tile to be queried, and the map tile to be queried is a secondary map tile with the first map tile as its root node. The acquiring unit is further configured to acquire the satellite image data of the first map tile if the identifier of the first map tile indicates that satellite image data exists for the first map tile. The processing unit is configured to crop the satellite image data of the first map tile according to the tile number of the map tile to be queried, thereby obtaining the satellite image data of the map tile to be queried.

[0015] In one possible design, the map tile indexing device further includes a processing unit. The determining unit is further configured to determine a set of map tiles, where each map tile in the set has slave node map tiles that include the map tile to be queried, and each map tile's identifier indicates the presence of satellite imagery data. The acquiring unit is further configured to acquire the satellite imagery data of a second map tile, which is the highest-level map tile in the set, based on the identifier of each map tile in the set. The processing unit is configured to crop the satellite imagery data of the second map tile based on the tile number of the map tile to be queried, thus obtaining the satellite imagery data of the map tile to be queried.

[0016] In one possible design, the acquisition unit is further configured to obtain the target end level from the index file of the target map tile, where the target end level is the end level corresponding to the target map tile. The acquisition unit is also configured to obtain satellite imagery data of a third map tile if the level of the map tile to be queried is greater than the target end level; the map tile to be queried is a lower-level map tile with the third map tile as its root node. The processing unit is further configured to crop the satellite imagery data of the third map tile according to the tile number of the map tile to be queried, thereby obtaining the satellite imagery data of the map tile to be queried.

[0017] Fourthly, a map tile index construction apparatus is provided, including an acquisition unit, a determination unit, and a generation unit. The map tile index construction apparatus further includes a generation unit. The acquisition unit is further configured to acquire map tile data, which includes map tiles at multiple levels, each map tile including satellite imagery data. The determination unit is further configured to determine multiple fourth map tiles from the map tile data, the fourth map tiles being at a preset starting level. The determination unit is further configured to determine a fifth map tile corresponding to each fourth map tile from the map tile data, the fifth map tile being a subordinate map tile with the fourth map tile as its root node. The generation unit is configured to generate an index file corresponding to each fourth map tile based on the identifier of each fourth map tile and the identifier of the fifth map tile corresponding to each fourth map tile, thus obtaining multiple index files that correspond one-to-one with the multiple fourth map tiles.

[0018] In one possible design, the map tile indexing device further includes a processing unit. The determining unit is further configured to determine the ending level corresponding to each fourth map tile, where the ending level is the maximum level of the map tiles in the fifth map tile corresponding to each fourth map tile. The generating unit is further configured to generate a file header for the index file corresponding to each fourth map tile based on a preset starting level and the ending level corresponding to each fourth map tile. The processing unit is further configured to add the file header of the index file corresponding to each fourth map tile to the index file corresponding to each fourth map tile.

[0019] Fifthly, an electronic device is provided, the map tile indexing device including a memory and a processor; the memory and the processor are coupled, the memory being used to store computer program code including computer instructions, wherein when the processor executes the computer instructions, the electronic device performs a map tile indexing method as provided in the first aspect or any possible design thereof, or the electronic device performs a map tile indexing construction method as provided in the second aspect or any possible design thereof.

[0020] In a sixth aspect, a computer program product is provided, comprising computer instructions that, when executed on an electronic device, enable the electronic device to execute a map tile indexing method as provided in the first aspect or any possible implementation thereof, or for the electronic device to execute a map tile indexing construction method as provided in the second aspect or any possible design thereof.

[0021] In a seventh aspect, a computer-readable storage medium is provided, wherein instructions are stored therein, which, when executed on an electronic device, cause the electronic device to perform a map tile indexing method as provided in the first aspect or any possible implementation thereof, or to perform a map tile indexing construction method as provided in the second aspect or any possible design thereof.

[0022] In the map tile indexing method provided in this application, after obtaining the tile number of the map tile to be queried, the map tile indexing device determines whether satellite imagery data exists for the map tile to be queried through the index file. If satellite imagery data is detected, the satellite imagery data of the map tile to be queried is obtained. If it does not exist, there is no need to traverse the map tile file to search for the map tile to be queried, which improves the efficiency of map tile request loading. Attached Figure Description

[0023] Figure 1 A schematic diagram of map tile hierarchy provided for embodiments of this application;

[0024] Figure 2 A schematic diagram of a map tile provided for an embodiment of this application. Figure 1 ;

[0025] Figure 3 A schematic diagram of a map tile indexing system structure provided for an embodiment of this application;

[0026] Figure 4 A schematic flowchart of a map tile indexing method provided for embodiments of this application. Figure 1 ;

[0027] Figure 5 A schematic diagram of a preset sequence provided for embodiments of this application. Figure 1 ;

[0028] Figure 6 A schematic diagram of an organizational structure provided for an embodiment of this application;

[0029] Figure 7 A schematic flowchart of a map tile indexing method provided for embodiments of this application. Figure 2 ;

[0030] Figure 8A schematic flowchart of a map tile indexing method provided for embodiments of this application. Figure 3 ;

[0031] Figure 9 A schematic flowchart of a map tile index construction method provided for embodiments of this application. Figure 1 ;

[0032] Figure 10 A schematic diagram of a map tile provided for an embodiment of this application. Figure 2 ;

[0033] Figure 11 A schematic diagram of a preset sequence provided for embodiments of this application. Figure 2 ;

[0034] Figure 12 A schematic flowchart of a map tile index construction method provided for embodiments of this application. Figure 2 ;

[0035] Figure 13 A schematic diagram of a storage structure provided for an embodiment of this application;

[0036] Figure 14 A schematic flowchart of a map tile indexing method provided for embodiments of this application. Figure 4 ;

[0037] Figure 15 A schematic diagram of a map tile indexing device provided for an embodiment of this application;

[0038] Figure 16 A schematic diagram of a map tile index construction device provided for an embodiment of this application;

[0039] Figure 17 A schematic diagram of an electronic device structure provided for embodiments of this application. Figure 1 ;

[0040] Figure 18 A schematic diagram of an electronic device structure provided for embodiments of this application. Figure 2 . Detailed Implementation

[0041] The technical solutions in the embodiments of this application will now be described with reference to the accompanying drawings.

[0042] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0043] In the description of this application, unless otherwise stated, " / " means "or". For example, A / B can mean A or B. "And / or" in this document is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, and B alone. Furthermore, "at least one" and "multiple" refer to two or more. The terms "first," "second," etc., do not limit the quantity or order of execution, and "first," "second," etc., do not necessarily imply differences.

[0044] Satellite imagery map tiles are often segmented using a quadtree algorithm, resulting in a pyramid-shaped number of tiles in each segment. For example... Figure 1 As shown, each map tile can be uniquely identified by its layer, row number, and column number. The file format of satellite imagery map tiles is typically .jpg or .png, and the size is usually 256*256 or 512*512, as exemplified by... Figure 2 As shown.

[0045] Currently, many areas lack high-resolution imagery. When zooming in to a higher level on a map, the absence of satellite imagery for the viewed area significantly impacts the user experience. To enable seamless map browsing—meaning satellite imagery coverage for any area—real-time segmentation of low-resolution imagery is necessary to fill in the gaps in high-resolution coverage. However, in existing technologies, map rendering engines rely on traversing large map tile files to determine the presence of satellite imagery, resulting in low efficiency in loading map tile requests.

[0046] To address the aforementioned problems, this application proposes a map tile indexing method, apparatus, device, and storage medium. The map tile indexing apparatus obtains the tile number of the map tile to be queried, which includes the map tile's level, row number, and column number. Based on the tile number of the map tile to be queried, it determines the index file corresponding to the target map tile. The level of the target map tile is a preset starting level, and the map tile to be queried is a subordinate map tile with the target map tile as its root node. The index file corresponding to the target map tile includes an identifier for the target map tile and identifiers for subordinate map tiles with the target map tile as their root node. The identifiers indicate whether satellite imagery data exists for the map tile and are stored in the index file in a preset order. Further, the map tile indexing apparatus obtains the identifier of the map tile to be queried from the index file corresponding to the target map tile based on the tile number of the map tile to be queried and the preset order. If the identifier of the map tile to be queried indicates that satellite imagery data exists for the map tile to be queried, the satellite imagery data for the map tile to be queried is obtained.

[0047] In this way, after obtaining the tile number of the map tile to be queried, the map tile indexing device determines whether satellite imagery data exists for the map tile to be queried through the index file. If satellite imagery data is detected, the satellite imagery data of the map tile to be queried is obtained. If it does not exist, there is no need to traverse the map tile file to search for the map tile to be queried, thus improving the efficiency of map tile request loading.

[0048] Figure 3 This application discloses a map tile indexing system. The map tile indexing method provided in this embodiment can be applied to, for example, map tile indexing systems. Figure 3 The map tile indexing system shown is used to improve the efficiency of map tile request loading. For example... Figure 3 As shown, the map tile indexing system 10 includes a map tile indexing device 11 and a server 12.

[0049] The map tile indexing device 11 is connected to the server 12. The connection can be wired or wireless, and this embodiment does not limit the connection.

[0050] It should be noted that a map rendering engine 13 is also deployed in server 12. The map tile indexing device 11 can be integrated with server 12 in the same device, or it can be set up independently in different devices. In order to illustrate the interaction between map tile indexing device 11 and server 12, this embodiment of the application takes the independent setting of map tile indexing device 11 and server 12 as an example to describe the above map tile indexing method.

[0051] The map tile indexing device 11 can be used to receive map tile request messages sent by the map rendering engine 13.

[0052] The map tile request message includes the tile number of the map tile to be queried.

[0053] The map tile indexing device 11 can also be used to obtain the tile number of the map tile to be queried from the map tile request message. The tile number includes the map tile's level, row number, and column number.

[0054] The map tile indexing device 11 can also be used to determine the index file corresponding to the target map tile based on the tile number of the map tile to be queried.

[0055] The target map tile is set to a preset starting level, and the map tile to be queried is a subordinate map tile with the target map tile as the root node. The index file corresponding to the target map tile includes the identifier of the target map tile and the identifier of the subordinate map tile with the target map tile as the root node. The identifier is used to indicate whether the map tile has satellite imagery data, and the identifiers are stored in the index file in a preset order.

[0056] The map tile indexing device 11 can also be used to obtain the identifier of the map tile to be queried from the index file corresponding to the target map tile according to the tile number of the map tile to be queried and the preset order.

[0057] The map tile indexing device 11 can also be used to obtain satellite image data of the map tile to be queried when the identifier of the map tile to be queried indicates that satellite image data exists for the map tile to be queried.

[0058] Furthermore, the map tile indexing device 11 can also be used to send the satellite image data of the map tile to be queried to the map rendering engine 13 after obtaining the satellite image data of the map tile to be queried, so that the map rendering engine 13 can render and display based on the obtained satellite image data.

[0059] Figure 4 This is a flowchart illustrating a map tile indexing method according to some exemplary embodiments. In some embodiments, the above-described map tile indexing method can be applied to, for example... Figure 3 The map tile indexing system 10 shown includes a map tile indexing device 11. Hereinafter, this application will describe the map tile indexing method by taking the application of the map tile indexing method to the map tile indexing device 11 as an example.

[0060] like Figure 4 As shown, the map tile indexing method provided in this application includes the following steps S201-S204.

[0061] S201, The map tile indexing device obtains the tile number of the map tile to be queried.

[0062] The tile number includes the map tile's layer, row number, and column number.

[0063] As one possible implementation, the map tile indexing device parses the received map tile request message to obtain the tile number of the map tile to be queried, and then obtains the level, row number, and column number of the map tile to be queried.

[0064] It should be noted that the map tile request message can be sent by the map rendering engine to the map tile indexing device, or it can be entered by the user on the map tile indexing device. This application embodiment does not specifically limit this.

[0065] In one possible example, when rendering a map of a certain region, the map rendering engine, after determining the required map tiles, generates a map tile request message based on the tile number of the map tile and sends the map tile request message to the map tile indexing device, thereby enabling the map tile indexing device to obtain the tile number of the map tile to be queried.

[0066] In another possible example, the user inputs the tile number of the map tile to be queried through the input device of the map tile indexing device, so that the map tile indexing device responds to the user's input and obtains the tile number of the map tile to be queried.

[0067] S202, The map tile indexing device determines the index file corresponding to the target map tile based on the tile number of the map tile to be queried.

[0068] The target map tile is set to a preset starting level, and the map tile to be queried is a subordinate map tile with the target map tile as the root node. The index file corresponding to the target map tile includes the identifier of the target map tile and the identifier of the subordinate map tile with the target map tile as the root node. The identifier is used to indicate whether the map tile has satellite imagery data, and the identifiers are stored in the index file in a preset order.

[0069] It should be noted that the preset order can be as follows: Figure 5 As shown, the map tiles are arranged in ascending order of their layer size, with each layer containing the tiles in a Z-order curve sequence. Alternatively, the preset order can be arranged in ascending order of their layer size, with each layer containing the tiles arranged from left to right and from top to bottom. This application does not impose any specific limitations on this arrangement.

[0070] As one possible implementation, the map tile indexing device determines the tile number of the target map tile, which includes the map tile to be queried, within a preset starting level, based on the tile number of the map tile to be queried. Further, the map tile indexing device determines a pre-generated index file corresponding to the target map tile based on the target map tile.

[0071] It should be noted that the preset starting level can be pre-set in the map indexing device by the maintenance personnel of the map indexing system. For example, it can be 9, 10, 11, etc., and this application embodiment does not specifically limit it. Among them, the number of map tiles with a level lower than the preset starting level is small, and since the resolution requirement of satellite image data is low and it is easy to obtain, index files are not generated for map tiles with a level lower than the preset starting level.

[0072] In some embodiments, the map tile indexing device determines the tile number of the target map tile based on the tile number of the map tile to be queried in the following specific implementation:

[0073] The map tile indexing device determines the difference between the level of the map tile to be queried and the preset starting level, and then, based on the row number and column number of the map tile to be queried, substitutes them into the preset tile number conversion formula to obtain the tile number of the target map tile.

[0074] If the tile numbers of the map tile to be queried are z1, x1, and y1, then the tile numbers of the target map tile, z0, x0, and y0, are respectively:

[0075] z0 = z1 - q

[0076] x0 = floor(x1 ÷ 2) q )

[0077] y0 = floor(y1 ÷ 2) q )

[0078] Where q is the difference between the level of the map tile to be queried and the preset starting level, and the floor function means rounding down, for example floor(3.5) = 3.

[0079] In other embodiments, after obtaining the tile number of the map tile to be queried, the map tile indexing device first determines the relationship between the layer of the map tile to be queried and a preset starting layer. If the layer of the map tile to be queried is greater than or equal to the preset starting layer, the map tile indexing device executes the above method to determine the indexing device corresponding to the target map tile. If the layer of the map tile to be queried is less than the preset starting layer, since the data volume of map tiles at smaller layers is smaller and the resolution requirement for satellite imagery data is lower, making them easier to obtain, the map tile indexing device directly obtains the satellite imagery data of the map tile to be queried from the map tile data based on the tile number of the map tile to be queried.

[0080] It should be noted that how the map tile indexing device generates the index file corresponding to the tiles of the preset starting level can be referred to the subsequent description in the embodiments of this application, and will not be repeated here.

[0081] S203. The map tile indexing device obtains the identifier of the map tile to be queried from the index file corresponding to the target map tile according to the tile number of the map tile to be queried and the preset order.

[0082] As one possible implementation, since the identifiers of map tiles in the index file are recorded in a preset order, the map tile indexing device determines the position of the map tile to be queried in the index file corresponding to the target map tile based on the tile number and the preset order. Then, based on the determined position, it parses the index file corresponding to the target map tile to obtain the identifier of the map tile to be queried.

[0083] In some embodiments, the map tiles of each level are stored in the index file in the following preset order: from smallest to largest level, and the map tiles in each level are in a "Z" shape from smallest to largest.

[0084] The map tile indexing device first determines the difference between the layer of the map tile to be queried and the preset starting layer, determines the number of preceding layers, and then determines the number of identifiers for the map tiles in the preceding layers based on the number of preceding layers. Further, the map tile indexing device determines the order of the map tile to be queried within its layer based on the row number, column number, and preset order of the map tile to be queried. Further still, the map tile indexing device determines the position of the map tile to be queried in the index file corresponding to the target map tile and obtains the identifier of the map tile to be queried.

[0085] It should be noted that the map tile indexing device determines the number Q of map tile identifiers in the previous layer based on the number n in the previous layer, which can be calculated based on the following formula.

[0086] Q = 4 0 +41 +4 2 +…+4 n

[0087] For example, if the preset starting level is 10, and the tile number of the map tile to be queried is 13, 1, 2, then the map tile indexing device determines that the difference between the level of the map tile to be queried and the preset starting level is 3, and thus determines that the number of map tile identifiers in the previous level is 4. 0 +4 1 +4 2 =21. Furthermore, the map tile indexing device determines the order of the map tile to be queried as 7 based on the row number, column number, and preset order of the map tile to be queried.

[0088] Furthermore, when the map tile indexing device generates the index file, if the identifier of the current level map tile does not occupy the entire byte, the remaining positions are filled with a preset binary number "0".

[0089] The map tile indexing device obtains the identifier of the map tile to be queried as follows: The device determines that level 10 uses 8 binary numbers, level 11 uses 8 binary numbers, and level 12 uses 16 binary numbers. This means the position of the map tile to be queried in the index file corresponding to the target map tile is the 8+8+16+7=39th binary number. Further, the device parses the index file corresponding to the target map tile to determine the 39th binary number, thus obtaining the identifier of the map tile to be queried.

[0090] When the map tile indexing device generates an index file, if the identifier of the current level map tile does not occupy the entire byte and the remaining positions are not filled, it records the identifiers of all map tiles in sequence.

[0091] The map tile indexing device obtains the identifier of the map tile to be queried by: determining the number of identifiers of the preceding map tiles and summing them with the order of the map tile to be queried in its level; further, determining the sum as the position of the map tile to be queried in the index file corresponding to the target map tile, that is, determining the 21+7=28th binary number as the identifier of the map tile to be queried; and further, parsing the index file corresponding to the target map tile to determine the 28th binary number, thus obtaining the identifier of the map tile to be queried.

[0092] S204. When the identifier of the map tile to be queried indicates that satellite imagery data exists for the map tile to be queried, the map tile indexing device acquires the satellite imagery data of the map tile to be queried.

[0093] As one possible implementation, the map tile indexing device determines whether satellite imagery data exists for the map tile indicated by its identifier. If the identifier of the map tile indicates that satellite imagery data exists, the map tile indexing device acquires the satellite imagery data for the map tile being queried.

[0094] In some embodiments, after generating the index file corresponding to each map tile in a preset starting level, the map tile indexing device follows the procedure as follows: Figure 6 The organizational structure shown stores index files and map tile data.

[0095] The index file is named after the tile number of the corresponding map tile and stored in the index file under the satellite folder. The satellite folder also includes folders for each level. The map tile indexing device stores the data in the corresponding folder according to the level of each map tile. For example, the map tile data of level 0 is stored in folder "0", the map tile data of level 18 is stored in folder "18", and each map tile is named after its tile number.

[0096] Based on the above organizational structure, if the tile number of the map tile to be queried is z, x, y, then after the map tile indexing device determines that the identifier of the map tile to be queried indicates that satellite image data exists for the map tile to be queried, it retrieves the map tile data with the file name z_x_y from the folder "z" corresponding to the level of the map tile to be queried, and identifies the retrieved map tile data as the satellite image data of the map tile to be queried.

[0097] In some embodiments, if the tile number of the map tile to be queried is obtained from the map tile request message sent by the map rendering engine by the map tile indexing device, then after obtaining the satellite image data of the map tile to be queried, the satellite image data of the map tile to be queried is sent to the map rendering engine for rendering and display.

[0098] It is understood that in the map tile indexing method provided in the above embodiments of this application, after obtaining the tile number of the map tile to be queried, the map tile indexing device determines whether satellite imagery data exists for the map tile to be queried through the index file. If satellite imagery data is detected, the satellite imagery data of the map tile to be queried is obtained. If it does not exist, there is no need to traverse the map tile file to search for the map tile to be queried, which improves the efficiency of map tile request loading.

[0099] In one design, if the map tile indexing device determines that the identifier of the map tile to be queried indicates that satellite imagery data does not exist for the queried map tile, in order to prevent the map rendering device from being unable to render the satellite imagery of the area corresponding to the tile, thereby degrading the user's map usage experience, such as... Figure 7 As shown, the map tile indexing method provided in this application embodiment also includes S301-S303.

[0100] S301, The map tile indexing device determines the identifier of the first map tile.

[0101] The first map tile is the next level above the map tile to be queried, and the map tile to be queried is the secondary map tile with the first map tile as its root node.

[0102] As one possible implementation, the map tile indexing device obtains the level of the first map tile by subtracting one from the level of the map tile to be queried. Further, the map tile indexing device calculates the row and column numbers of the first map tile based on the preset formula in step S202, the level of the first map tile, and the row and column numbers of the map tile to be queried, thus obtaining the tile number of the first map tile. Further still, the map tile indexing device retrieves the identifier of the first map tile from the index file corresponding to the target map tile based on the tile number of the first map tile and a preset order.

[0103] It should be noted that, compared with the lower-level map tile in the above embodiment, the secondary map tile is the next level below the root node, and the lower level is all the levels included under the root node.

[0104] For example, if the tile number of the map tile to be queried is 17, 6, or 9, then the map tile indexing device determines that the level of the first map tile is 16 and the row number of the first map tile is floor(6÷2). 1 =3, column number is floor(9÷2) 1 =4, meaning the tile number of the first map tile is determined to be 16, 3, 4. Further, the map tile indexing device obtains the identifier of the first map tile based on its tile number. The specific method by which the map tile indexing device obtains the identifier of the first map tile can be referred to the implementation method in step S203 of the above embodiment of this application, and will not be repeated here.

[0105] S302, When the identifier of the first map tile indicates that satellite image data exists for the first map tile, the map tile indexing device acquires the satellite image data of the first map tile.

[0106] It should be noted that the specific implementation method of the map tile indexing device in determining whether satellite image data exists for the first map tile and in obtaining the satellite image data of the first map tile can be referred to the description in step S204 of the embodiment of this application. The tile number of the map tile to be queried in the implementation method is replaced with the tile number of the first map tile, so as to determine whether satellite image data exists for the first map tile and obtain the satellite image data of the first map tile if it exists. It will not be described in detail here.

[0107] In some embodiments, if the map tile indexing device determines that the identifier of the first map tile indicates that the first map tile does not have satellite image data, it further determines that in the layer above the first map tile, there are map tiles that include the first map tile from the node map tile, and determines whether the map tile has satellite image data, until a map tile with satellite image data is determined, and then obtains the satellite image data of the map tile.

[0108] S303. The map tile indexing device cuts the satellite image data of the first map tile according to the tile number of the map tile to be queried, and obtains the satellite image data of the map tile to be queried.

[0109] It should be noted that the area of ​​the map tile at the next level is obtained by dividing the area of ​​the map tile at this level into four blocks. The tile numbers of these four blocks, arranged from left to right and from top to bottom, satisfy the following relationship with the tile numbers of the map tiles at this level:

[0110] If the tile number of the map tile at this level is (z, x, y), then the tile number of the first map tile is (z+1, x*2, y*2); the tile number of the second map tile is (z+1, x*2+1, y*2); the tile number of the third map tile is (z+1, x*2, y*2+1); and the tile number of the fourth map tile is (z+1, x*2+1, y*2+1).

[0111] As one possible implementation, the map tile indexing device cuts the satellite image data of the first map tile into four pieces according to the size of the four map tiles at the next level, namely the first satellite image data, the second satellite image data, the third satellite image data, and the fourth satellite image data, and respectively with the first map tile, the second map tile, the third map tile, and the first map tile.

[0112] Furthermore, after determining the tile number of the first map tile, the map tile indexing device determines that the tile number of the map tile to be queried matches the tile number of the first map tile in the four relationships mentioned above. If the tile number of the map tile to be queried is (z+1, x*2, y*2), the cropped first satellite image data is identified as the satellite image data of the map tile to be queried; if the tile number of the map tile to be queried is (z+1, x*2+1, y*2), the cropped second satellite image data is identified as the satellite image data of the map tile to be queried; if the tile number of the map tile to be queried is (z+1, x*2, y*2+1), the cropped third satellite image data is identified as the satellite image data of the map tile to be queried; and if the tile number of the map tile to be queried is (z+1, x*2+1, y*2+1), the cropped fourth satellite image data is identified as the satellite image data of the map tile to be queried.

[0113] In some embodiments, after obtaining the satellite image data of the map tile to be queried, the map tile indexing device sends the satellite image data of the map tile to be queried to the map rendering engine, so that the map rendering engine renders the satellite image data of the map tile to be queried for display.

[0114] Understandably, in the map tile indexing method provided in the above embodiments of this application, when there is no satellite image data for the map tile to be queried, the map tile indexing device obtains satellite image data of the upper-level map tile with a lower resolution, and crops the upper-level satellite image data to obtain the satellite image data of the map tile to be queried. This solves the problem that when users browse satellite image maps, some areas have no satellite imagery at higher levels, resulting in a reduced user experience and improving user satisfaction with satellite image maps.

[0115] In one design, if the map tile indexing device determines that the identifier of the map tile to be queried indicates that satellite imagery data does not exist for the queried map tile, in order to prevent the map rendering device from being unable to render the satellite imagery of the area corresponding to the tile, thereby degrading the user's map usage experience, such as... Figure 8 As shown, the map tile indexing method provided in this application embodiment also includes S401-S403.

[0116] S401, The map tile indexing device determines the map tile set.

[0117] Each map tile in the map tile set has a slave node map tile that includes the map tile to be queried, and the identifier of each map tile indicates that the map tile contains satellite imagery data.

[0118] As one possible implementation, the map tile indexing device determines the levels between a preset starting level and the level of the map tile to be queried. Further, based on the tile number of the map tile to be queried, the map tile indexing device determines the map tiles in each level that include the map tile from the node. Further, the map tile indexing device determines the identifiers of the map tiles that include the map tile from the node, thus identifying the map tiles containing satellite imagery data as a set of map tiles.

[0119] It should be noted that the specific implementation of the map tile indexing device in determining the map tiles of the slave nodes in each level that include the map tile to be queried, and in determining the identifier of each map tile, can be referred to the description in the above embodiments of this application, and will not be repeated here.

[0120] S402, The map tile indexing device obtains satellite image data of the second map tile based on the identifier of each map tile in the map tile set.

[0121] The second map tile is the map tile with the highest level in the map tile set.

[0122] As one possible implementation, after determining the map tile set in step S401, the map tile indexing device further identifies the map tile with the highest level in the map tile set as the second map tile. Furthermore, the map tile indexing device obtains the satellite imagery data of the second map tile based on its tile number.

[0123] It should be noted that the specific implementation method of the map tile indexing device obtaining the satellite image data of the second map tile based on the tile number of the second map tile can be referred to the description in the above embodiments of this application, and will not be repeated here.

[0124] S403. The map tile indexing device cuts the satellite image data of the second map tile according to the tile number of the map tile to be queried, and obtains the satellite image data of the map tile to be queried.

[0125] It should be noted that the specific implementation method of the map tile indexing device cropping the satellite image data of the second map tile according to the tile number of the map tile to be queried to obtain the satellite image data of the map tile to be queried can refer to the description of step S303 in the above embodiment of this application. It is only necessary to replace the tile number of the first map tile with the tile number of the second map tile to obtain the satellite image data of the map tile to be queried.

[0126] In some embodiments, if the difference between the level of the second map tile and the level of the map tile to be queried is greater than 1, the map tile indexing device determines that in the levels between the second map tile and the level of the map tile to be queried, the tile number of the map tile that includes the map tile to be queried in the slave node map tile is included. Further, the map tile indexing device performs cropping layer by layer based on the tile number of the second map tile, the tile number of the map tile that includes the map tile to be queried in the slave node map tile in each level, the tile number of the map tile to be queried, and the satellite imagery data of the second map tile, until the satellite imagery data of the map tile to be queried is obtained.

[0127] In some embodiments, after obtaining the satellite image data of the map tile to be queried, the map tile indexing device sends the satellite image data of the map tile to be queried to the map rendering engine, so that the map rendering engine renders the satellite image data of the map tile to be queried for display.

[0128] It is understood that the map tile indexing method provided in the above embodiments of this application provides another way to obtain satellite image data of the map tile to be queried, which can improve the user experience of browsing satellite image maps when there is no satellite image data for the map tile to be queried.

[0129] In one design, Figure 9 This is a flowchart illustrating a map tile indexing method according to some exemplary embodiments. To support the map tile indexing device in the above embodiments of this application in indexing based on the tile number of map tiles, such as... Figure 9 As shown, the map tile index construction method provided in this application embodiment includes S501-S504, which are used to provide index support for the above-mentioned map tile indexing method.

[0130] S501, Map tile index construction device acquires map tile data.

[0131] The map tile data includes multiple levels of map tiles, and each map tile includes satellite imagery data.

[0132] As one possible implementation, the map tile indexing building device obtains map tile data, including satellite imagery data, from various levels of the server.

[0133] S502, The map tile indexing construction device determines multiple fourth map tiles from the map tile data.

[0134] The fourth map tile is set to the preset starting layer.

[0135] As one possible implementation, the map tile indexing construction device determines a map tile of a preset starting level from the map tile data, and identifies the determined map tile of the preset starting level as the fourth map tile.

[0136] S503, The map tile index construction device determines the fifth map tile corresponding to each fourth map tile from the map tile data.

[0137] The fifth map tile is a subordinate map tile with the fourth map tile as its root node.

[0138] As one possible implementation, since map tiles at different levels follow the pyramid rule, each tile at one level corresponds to four tiles at the next level. Thus, the map tile indexing device, based on the pyramid rule, determines four map tiles within the range of the fourth map tile at the next level. Further, the device determines sixteen map tiles within the range of these four tiles at the next next level. This process continues until the device reaches the maximum level of the map tiles in the data, at which point the map tile within the range of the fourth map tile is identified as the fifth map tile corresponding to the fourth map tile.

[0139] For example, such as Figure 10 As shown, if the hierarchy set is [n, n+1, n+2], and tiles 1, 2, 3, and 4 in level n are the fourth map tiles, taking tile 1 as an example, the map tile indexing device determines that in the next level n+1, the map tiles within the range of tile 1 are tiles 5, 6, 7, and 8. Further, the map tile indexing device determines that in the next level n+2, the map tiles within the range of tiles 5, 6, 7, and 8 are tiles 21-36. Further still, the map tile indexing device determines that tiles 5-8 and tiles 21-36 are the fifth map tiles corresponding to tile 1.

[0140] S504. The map tile index construction device generates an index file corresponding to each fourth map tile based on the identifier of each fourth map tile and the identifier of the fifth map tile corresponding to each fourth map tile, thereby obtaining multiple index files that correspond one-to-one with multiple fourth map tiles.

[0141] As one possible implementation, the map tile indexing device determines from the map tile data whether each fourth map tile and its corresponding fifth map tile contains satellite imagery data. If satellite imagery data exists, it is identified with a binary "1"; otherwise, it is identified with a binary "0". Further, based on the identifiers of the fourth map tiles and their corresponding fifth map tiles, the map tile indexing device assembles an index file corresponding to each fourth map tile in a preset order.

[0142] It should be noted that if the preset starting level is 10 and the maximum level of map tiles in the map tile data is 18, then the number of map tiles identified in each index file and the space occupied are shown in Table 1 below.

[0143] Table 1: Number and Space Occupied by Map Tiles at Each Level

[0144] 10 1 1 11 4 1 12 16 2 13 64 8 14 256 32 15 1024 128 16 4096 512 17 16384 2048 18 65536 8192

[0145] As can be seen from Table 1 above, after identifying the map tiles at levels 11-18 and the fourth map tile in the index file corresponding to each fourth map tile, the size of an index file is about 10kb, which only requires a small amount of disk space to identify the map tiles.

[0146] In some embodiments, after determining the identifier of the fourth map tile and the identifier of the fifth map tile corresponding to the fourth map tile, the map tile index building device generates the index file corresponding to the fourth map tile using a preset order of Z-order curves. The specific implementation method is as follows:

[0147] Based on the space required for each level as shown in Table 1 above, the map tile indexing device stores the identifier of one map tile of level 10 in the first byte of the index file. For example, the identifier of the map tile of level 10 is represented as "10000000". The first data "1" indicates that the first map tile of level 10 contains satellite imagery data, and the second to seventh data "0" are used to fill in a byte. The second byte of the index file stores the identifiers of four map tiles of level 11, the third and fourth bytes store the identifiers of 16 map tiles of level 12, the fifth to twelfth bytes store the identifiers of 64 map tiles of level 13, and so on. The 2733-10924th bytes of the index file store the identifiers of 65536 map tiles of level 18. The order of the map tile identifiers in the corresponding byte positions of each level in the index file is as follows: Figure 5 The schematic diagram of the Z-order curve shown is as follows: Figure 11 The order shown.

[0148] It is understood that in the map tile index construction method provided in the above embodiments of this application, an index file is generated according to the identifier of the map tile, so that the map tile index construction device can determine whether there is satellite image data of the map tile to be queried in the map tile data by the tile number of the map tile to be queried, without having to traverse the entire map tile data, thereby improving the efficiency of calling map tiles.

[0149] In one design, to further improve the efficiency of map tile retrieval, such as Figure 12 As shown, the map tile index construction method provided in this application embodiment also includes S601-S603.

[0150] S601, The map tile indexing construction device determines the ending layer corresponding to each fourth map tile.

[0151] The ending level corresponding to each fourth map tile is the maximum level of the map tiles in the fifth map tile corresponding to each fourth map tile.

[0152] As one possible implementation, the map tile index construction device determines the maximum level in the fifth map tile based on the fifth map tile corresponding to each fourth map tile determined in step S503 above, and sets the determined maximum level as the maximum level corresponding to the fourth map tile.

[0153] For example, if the maximum level in the fifth map tile corresponding to the fourth map tile A is 18, and the maximum level in the fifth map tile corresponding to the fourth map tile B is 16, then the map tile index building device determines that the ending level corresponding to the fourth map tile A is 18, and the maximum ending level corresponding to the fourth map tile B is 16.

[0154] S602, The map tile index construction device generates the file header of the index file corresponding to each fourth map tile according to the preset starting level and the ending level corresponding to each fourth map tile.

[0155] As one possible implementation, to facilitate the creation of index files and the parsing by users, the map tile index building device stores a preset starting level and the ending level corresponding to each fourth map tile determined in step S601 based on preset bytes, and obtains the file header of the index file corresponding to each fourth map tile.

[0156] For example, in conjunction with the example in step S601 above, if the preset starting level is 10, then the file header of the index file corresponding to the fourth map tile A is "00001010 00010010"; the file header of the index file corresponding to the fourth map tile B is "00001010 00010000".

[0157] S603, the map tile index building device adds the file header of the index file corresponding to each fourth map tile to the index file corresponding to each fourth map tile.

[0158] As one possible implementation, the map tile index construction device combines the file header corresponding to the fourth map tile obtained in step S504 and the file header of the index file corresponding to the fourth map tile generated in step S602 with the file header corresponding to the same fourth map tile to obtain multiple index files including file headers corresponding to each fourth map tile.

[0159] For example, Figure 13 The storage structure of an index file, including a file header, is shown. The file header consists of a preset start level and an end level, and the index file data consists of the identifiers of map tiles for each level between the preset start level and the end level.

[0160] It is understood that in the map tile index construction method provided in the above embodiments of this application, by adding a file header to the beginning of the index file, the creation of the index file and the parsing by the user can be facilitated. After parsing the file header of the index file, the map tile index construction device can determine whether the identifier of the map tile to be queried is stored in the index file based on the tile number of the map tile to be queried.

[0161] In one design, to handle situations where the level of the map tile to be queried is greater than the ending level, i.e., the identifier of the map tile to be queried does not exist in the index file, such as... Figure 14 As shown, the map tile indexing method provided in this application embodiment also includes S701-S703.

[0162] S701, The map tile indexing device obtains the target end level from the target map tile index file.

[0163] The target end level is the end level corresponding to the target map tile.

[0164] As one possible implementation, the map tile indexing device determines the index file corresponding to the target map tile based on the tile number of the target map tile determined in step S202 above. Further, the map tile indexing device parses the index file corresponding to the target map tile and determines the ending level in the header of the obtained index file as the target ending level.

[0165] S702, When the level of the map tile to be queried is greater than the target end level, the map tile indexing device acquires the satellite image data of the third map tile.

[0166] The map tile to be queried is the lower-level map tile with the third map tile as the root node.

[0167] As one possible implementation, the map tile indexing device determines whether the layer of the map tile to be queried is greater than the target end layer. Further, if the layer of the map tile to be queried is greater than the target end layer, the map tile indexing device identifies map tiles within the node map tiles that include the map tile to be queried and contain satellite imagery data, between the preset start layer and the target end layer, and designates these identified map tiles as third map tiles. Further, based on the tile numbers of the identified multiple third map tiles, the map tile indexing device retrieves the satellite imagery data of each third map tile from the map tile data.

[0168] S703, The map tile indexing device cuts the satellite image data of the third map tile according to the tile number of the map tile to be queried, and obtains the satellite image data of the map tile to be queried.

[0169] It should be noted that the specific implementation method of the map tile indexing device cropping the satellite image data of the third map tile according to the tile number of the map tile to be queried can be referred to the description in the above embodiments of this application, and will not be repeated here.

[0170] Understandably, in the map tile indexing method provided in the above embodiments of this application, when it is determined that the level of the map tile to be queried is greater than the target end level, that is, there is no satellite image data of the map tile to be queried in the map tile data, the map tile indexing device obtains the satellite image data of the map tile to be queried by cropping the satellite image data of the third map tile, which includes the map tile to be queried, from the node map tile, thereby improving the user's experience in browsing satellite image maps.

[0171] The foregoing mainly describes the solutions provided by the embodiments of this application from a methodological perspective. To achieve the above functions, it includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that, in conjunction with the units and algorithm steps of the various examples described in the embodiments disclosed herein, the embodiments of this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0172] This application embodiment can divide the user equipment into functional modules according to the above method example. For example, each function can be divided into a separate functional module, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. Optionally, the module division in this application embodiment is illustrative and only represents one logical functional division; other division methods may be used in actual implementation.

[0173] Figure 15 This is a schematic diagram of a map tile indexing device provided in an embodiment of this application. The map tile indexing device 80 is used to execute the above-described map tile indexing method. Figure 15 As shown, the map tile indexing device 80 includes an acquisition unit 801 and a determination unit 802.

[0174] The acquisition unit 801 is used to acquire the tile number of the map tile to be queried. The tile number includes the map tile's layer, row number, and column number. For example, ... Figure 4 As shown, the acquisition unit 801 can be used to execute S201.

[0175] The determining unit 802 is used to determine the index file corresponding to the target map tile based on the tile number of the map tile to be queried. The target map tile's level is a preset starting level, and the map tile to be queried is a subordinate map tile with the target map tile as its root node. The index file corresponding to the target map tile includes the identifier of the target map tile and the identifiers of the subordinate map tiles with the target map tile as their root node. The identifiers indicate whether satellite imagery data exists for the map tile, and the identifiers are stored in the index file in a preset order. For example, ... Figure 4 As shown, the determining unit 802 can be used to execute S202.

[0176] The acquisition unit 801 is also used to obtain the identifier of the map tile to be queried from the index file corresponding to the target map tile, based on the tile number of the map tile to be queried and a preset order. For example, such as Figure 4 As shown, the acquisition unit 801 can be used to execute S203.

[0177] The acquisition unit 801 is further configured to acquire satellite imagery data of the map tile to be queried when the identifier of the map tile indicates that satellite imagery data exists for the map tile to be queried. For example, such as Figure 4 As shown, the acquisition unit 801 can be used to execute S204.

[0178] Optional, such as Figure 15 As shown in the embodiment of this application, the map tile indexing device 80 further includes a processing unit 803.

[0179] The determining unit 802 is also used to determine the identifier of the first map tile, wherein the first map tile is the upper level of the map tile to be queried, and the map tile to be queried is a secondary map tile with the first map tile as its root node. For example, such as Figure 7 As shown, the determining unit 802 can be used to execute S301.

[0180] The acquisition unit 801 is further configured to acquire satellite image data of the first map tile when the identifier of the first map tile indicates that satellite image data exists on the first map tile. For example, as Figure 7 As shown, the acquisition unit 801 can be used to execute S302.

[0181] Processing unit 803 is used to crop the satellite image data of the first map tile according to the tile number of the map tile to be queried, thereby obtaining the satellite image data of the map tile to be queried. For example, Figure 7 As shown, the processing unit 803 can be used to execute S303.

[0182] Optional, such as Figure 15 As shown, in the map tile indexing device 80 provided in this application embodiment, the determining unit 802 is further used to determine a map tile set, wherein each map tile in the map tile set has slave node map tiles including the map tile to be queried, and the identifier of each map tile indicates that the map tile contains satellite imagery data. For example, such as Figure 8 As shown, the determining unit 802 can be used to execute S401.

[0183] The acquisition unit 801 is also used to acquire satellite imagery data of a second map tile based on the identifier of each map tile in the map tile set, wherein the second map tile is the highest-level map tile in the map tile set. For example, such as Figure 8 As shown, the acquisition unit 801 can be used to execute S402.

[0184] Processing unit 803 is used to crop the satellite image data of the second map tile according to the tile number of the map tile to be queried, thereby obtaining the satellite image data of the map tile to be queried. For example, Figure 8 As shown, the processing unit 803 can be used to execute S403.

[0185] Optional, such as Figure 15 As shown, in the map tile indexing device 80 provided in this application embodiment, the acquisition unit 801 is further configured to acquire the target end level from the index file of the target map tile, wherein the target end level is the end level corresponding to the target map tile. For example, as Figure 14 As shown, the acquisition unit 801 can be used to execute S701.

[0186] The acquisition unit 801 is also used to acquire satellite imagery data of a third map tile when the layer of the map tile to be queried is higher than the target end layer. The map tile to be queried is a lower-level map tile with the third map tile as its root node. For example, such as Figure 14 As shown, the acquisition unit 801 can be used to execute S702.

[0187] The processing unit 803 is also used to crop the satellite image data of the third map tile according to the tile number of the map tile to be queried, so as to obtain the satellite image data of the map tile to be queried. For example, Figure 14 As shown, the processing unit 803 can be used to execute S703.

[0188] Figure 16 This is a schematic diagram of a map tile indexing device provided in an embodiment of this application. The map tile indexing device 90 is used to execute the above-described map tile indexing method. Figure 16 As shown, the map tile index construction device 90 includes an acquisition unit 901, a determination unit 902, and a generation unit 903.

[0189] Acquisition unit 901 is used to acquire map tile data, which includes map tiles at multiple levels, with each map tile including satellite imagery data. For example, such as... Figure 9 As shown, the acquisition unit 901 can be used to execute S501.

[0190] The determining unit 902 is used to determine multiple fourth map tiles from the map tile data, wherein the layer of the fourth map tiles is a preset starting layer. For example, such as Figure 9 As shown, the determining unit 902 can be used to execute S502.

[0191] The determining unit 902 is also used to determine the fifth map tile corresponding to each fourth map tile from the map tile data, wherein the fifth map tile is a subordinate map tile with the fourth map tile as its root node. For example, such as Figure 9 As shown, the determining unit 902 can be used to execute S503.

[0192] The generation unit 903 is used to generate an index file corresponding to each fourth map tile based on the identifier of each fourth map tile and the identifier of the fifth map tile corresponding to each fourth map tile, thus obtaining multiple index files that correspond one-to-one with multiple fourth map tiles. For example, as... Figure 9 As shown, generation unit 903 can be used to execute S504.

[0193] Optional, such as Figure 16 As shown, the map tile index construction device 90 provided in this application embodiment also includes a processing unit 904.

[0194] Unit 902 is further configured to determine the ending level corresponding to each fourth map tile, wherein the ending level corresponding to each fourth map tile is the maximum level of the map tiles in the fifth map tile corresponding to each fourth map tile. For example, as... Figure 12 As shown, the determining unit 902 can be used to execute S601.

[0195] The generation unit 903 is also used to generate the file header of the index file corresponding to each fourth map tile based on the preset starting layer and the ending layer corresponding to each fourth map tile. For example, as Figure 12 As shown, the generation unit 903 can be used to execute S602.

[0196] Processing unit 904 is used to add the file header of the index file corresponding to each fourth map tile to the index file corresponding to each fourth map tile. For example, as Figure 12 As shown, the processing unit 904 can be used to execute S603.

[0197] When the functions of the integrated modules described above are implemented in hardware, this application provides a possible structural diagram of an electronic device. This electronic device is used to execute the map tile indexing method or map tile index construction method executed by the map tile indexing device in the above embodiments. For example... Figure 17 As shown, the electronic device 100 includes a processor 1001, a memory 1002, and a bus 1003. The processor 1001 and the memory 1002 can be connected via the bus 1003.

[0198] Processor 1001 is the control center of the electronic device. It can be a single processor or a collective term for multiple processing elements. For example, processor 1001 can be a general-purpose central processing unit (CPU) or other general-purpose processors. Among them, the general-purpose processor can be a microprocessor or any conventional processor.

[0199] As one embodiment, processor 1001 may include one or more CPUs, for example Figure 17 CPU 0 and CPU 1 are shown in the diagram.

[0200] The memory 1002 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), disk storage medium or other magnetic storage device, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but is not limited thereto.

[0201] As one possible implementation, the memory 1002 can exist independently of the processor 1001. The memory 1002 can be connected to the processor 1001 via the bus 1003 and is used to store instructions or program code. When the processor 1001 calls and executes the instructions or program code stored in the memory 1002, it can implement the map tile indexing method provided in this application embodiment.

[0202] In another possible implementation, the memory 1002 can also be integrated with the processor 1001.

[0203] Bus 1003 can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. This bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 17 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0204] It should be pointed out that, Figure 17 The structure shown does not constitute a limitation on the electronic device 100. Except... Figure 17 In addition to the components shown, the electronic device 100 may include more than Figure 17 It can show more or fewer parts, or combine certain parts, or arrange different parts.

[0205] As an example, combined Figure 15 The functions implemented by the acquisition unit 801, the determination unit 802, and the processing unit 803 in the map tile indexing device 80 are the same as those of the acquisition unit 801, the determination unit 802, and the processing unit 803. Figure 17The processor 1001 in it has the same function.

[0206] As another example, combining Figure 16 The functions implemented by the acquisition unit 901, determination unit 902, generation unit 903, and processing unit 904 in the map tile index construction device 90 are the same as those of the acquisition unit 901, determination unit 902, generation unit 903, and processing unit 904. Figure 17 The processor 1001 in it has the same function.

[0207] Optional, such as Figure 17 As shown, the electronic device provided in this application embodiment may further include a communication interface 1004.

[0208] The communication interface 1004 is used to connect with other devices via a communication network. This communication network can be Ethernet, a wireless access network, a wireless local area network (WLAN), etc. The communication interface 1004 may include an acquisition unit for receiving data and a transmission unit for sending data.

[0209] In one design, the communication interface in the electronic device provided in this application embodiment can also be integrated into the processor.

[0210] Figure 18 Another hardware structure of the electronic device in an embodiment of this application is shown. For example... Figure 18 As shown, the electronic device 110 may include a processor 1101 and a communication interface 1102. The processor 1101 is coupled to the communication interface 1102.

[0211] The functions of processor 1101 can be referred to in the description of processor 1001 above. In addition, processor 1101 also has storage functions, which can be referred to in the description of memory 1002 above.

[0212] The communication interface 1102 is used to provide data to the processor 1101. The communication interface 1102 can be an internal interface of the electronic device or an external interface of the electronic device (equivalent to the communication interface 1004).

[0213] It should be pointed out that, Figure 18 The structures shown do not constitute a limitation on electronic devices, except... Figure 18 In addition to the components shown, the electronic device 110 may include more or fewer components than illustrated, or combine certain components, or have different component arrangements.

[0214] Through the above description of the embodiments, those skilled in the art will clearly understand that, for the sake of convenience and brevity, only the division of the above functional units is used as an example. In practical applications, the above functions can be assigned to different functional units as needed, that is, the internal structure of the device can be divided into different functional units to complete all or part of the functions described above. The specific working process of the system, device, and unit described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0215] This application also provides a computer-readable storage medium storing instructions. When a computer executes these instructions, the computer performs each step of the method flow shown in the above-described method embodiments.

[0216] Embodiments of this application provide a computer program product containing instructions that, when executed on a computer, cause the computer to perform the map tile indexing method or map tile index construction method described in the above method embodiments.

[0217] The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of computer-readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), registers, hard disks, optical fibers, compact disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing, or any other form of computer-readable storage medium in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium may also be a component of the processor. The processor and the storage medium may reside in an application-specific integrated circuit (ASIC). In the embodiments of this application, the computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0218] Since the apparatus, device, computer-readable storage medium, and computer program product in the embodiments of this application can be applied to the above methods, the technical effects that can be obtained can also be referred to the above method embodiments. The embodiments of this application will not be repeated here.

[0219] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A map tile indexing method, characterized in that, The method includes: Obtain the tile number of the map tile to be queried, wherein the tile number includes the map tile's level, row number, and column number; Based on the tile number of the map tile to be queried, the index file corresponding to the target map tile is determined. The level of the target map tile is a preset starting level, and the map tile to be queried is a lower-level map tile with the target map tile as the root node. The index file corresponding to the target map tile includes the identifier of the target map tile and the identifier of the lower-level map tile with the target map tile as the root node. The identifier is used to indicate whether the map tile has satellite imagery data. The identifier is stored in the index file in a preset order. The preset order is: according to the map tile level from smallest to largest, the map tiles within each level are in Z-order curve order; or, the preset order is according to the map tile level from smallest to largest, the map tiles within each level are in left-to-right and top-to-bottom order. Based on the tile number of the map tile to be queried and the preset order, the identifier of the map tile to be queried is obtained from the index file corresponding to the target map tile; If the identifier of the map tile to be queried indicates that satellite imagery data exists for the map tile to be queried, then the satellite imagery data for the map tile to be queried is obtained. If the identifier of the map tile to be queried indicates that the map tile to be queried does not have satellite imagery data, a set of map tiles is determined, wherein each map tile in the set has a slave node map tile that includes the map tile to be queried, and the identifier of each map tile indicates that the map tile has satellite imagery data. Based on the identifier of each map tile in the map tile set, satellite image data of the second map tile is obtained, wherein the second map tile is the map tile with the highest level in the map tile set; Based on the tile number of the map tile to be queried, the satellite image data of the second map tile is cropped to obtain the satellite image data of the map tile to be queried.

2. The map tile indexing method according to claim 1, characterized in that, When the identifier of the map tile to be queried indicates that satellite imagery data does not exist for the map tile to be queried, the method further includes: The identifier of the first map tile is determined. The level of the first map tile is the upper level of the map tile to be queried. The map tile to be queried is the secondary map tile with the first map tile as the root node. If the identifier of the first map tile indicates that the first map tile contains satellite imagery data, then acquire the satellite imagery data of the first map tile. Based on the tile number of the map tile to be queried, the satellite image data of the first map tile is cropped to obtain the satellite image data of the map tile to be queried.

3. The map tile indexing method according to claim 1, characterized in that, The method further includes: Obtain the target end level from the index file of the target map tile, where the target end level is the end level corresponding to the target map tile; If the level of the map tile to be queried is greater than the target end level, satellite image data of the third map tile is obtained, wherein the map tile to be queried is a lower-level map tile with the third map tile as the root node; Based on the tile number of the map tile to be queried, the satellite image data of the third map tile is cropped to obtain the satellite image data of the map tile to be queried.

4. A method for constructing a map tile index, characterized in that, The map tile indexing method according to claim 1, wherein the map tile indexing construction method comprises: Acquire map tile data, which includes map tiles at multiple levels, with each map tile including satellite imagery data; Multiple fourth map tiles are determined from the map tile data, wherein the level of the fourth map tiles is the preset starting level; The fifth map tile corresponding to each fourth map tile is determined from the map tile data, and the fifth map tile is the lower-level map tile with the fourth map tile as the root node; Based on the identifier of each fourth map tile and the identifier of the fifth map tile corresponding to each fourth map tile, an index file corresponding to each fourth map tile is generated, resulting in multiple index files that correspond one-to-one with the multiple fourth map tiles; The ending level corresponding to each fourth map tile is determined, and the ending level corresponding to each fourth map tile is the maximum level of the map tile in the fifth map tile corresponding to each fourth map tile; Based on the preset starting level and the ending level corresponding to each fourth map tile, generate the file header of the index file corresponding to each fourth map tile; Add the header of the index file corresponding to each fourth map tile to the index file corresponding to each fourth map tile.

5. A map tile indexing device, characterized in that, It includes an acquisition unit, a processing unit, and a determination unit; The acquisition unit is used to acquire the tile number of the map tile to be queried, the tile number including the map tile level, row number and column number; The determining unit is used to determine the index file corresponding to the target map tile based on the tile number of the map tile to be queried; The target map tile has a preset starting level, and the map tile to be queried is a lower-level map tile with the target map tile as the root node. The index file corresponding to the target map tile includes the identifier of the target map tile and the identifiers of the lower-level map tiles with the target map tile as the root node. The identifiers are used to indicate whether the map tile has satellite imagery data. The identifiers are stored in the index file in a preset order. The preset order is: according to the map tile level from smallest to largest, the map tiles within each level are in Z-order curve order; or, the preset order is according to the map tile level from smallest to largest, the map tiles within each level are in left-to-right and top-to-bottom order. The acquisition unit is further configured to acquire the identifier of the map tile to be queried from the index file corresponding to the target map tile according to the tile number of the map tile to be queried and the preset order; The acquisition unit is further configured to acquire the satellite image data of the map tile to be queried when the identifier of the map tile to be queried indicates that the map tile to be queried has satellite image data. The determining unit is further configured to determine a set of map tiles when the identifier of the map tile to be queried indicates that the map tile to be queried does not have satellite image data, wherein each map tile in the set of map tiles has a slave node map tile that includes the map tile to be queried, and the identifier of each map tile indicates that the map tile has satellite image data. The acquisition unit is further configured to acquire satellite image data of a second map tile based on the identifier of each map tile in the map tile set, wherein the second map tile is the map tile with the highest level in the map tile set; The processing unit is further configured to crop the satellite image data of the second map tile according to the tile number of the map tile to be queried, so as to obtain the satellite image data of the map tile to be queried.

6. A map tile index construction device, characterized in that, The map tile indexing device according to claim 5, wherein the map tile indexing construction device includes an acquisition unit, a determination unit, a generation unit, and a processing unit; The acquisition unit is used to acquire map tile data, which includes map tiles at multiple levels, and each map tile includes satellite image data; The determining unit is used to determine multiple fourth map tiles from the map tile data, wherein the level of the fourth map tile is the preset starting level; The determining unit is further configured to determine the fifth map tile corresponding to each fourth map tile from the map tile data, wherein the fifth map tile is a lower-level map tile with the fourth map tile as the root node; The generation unit is used to generate an index file corresponding to each fourth map tile based on the identifier of each fourth map tile and the identifier of the fifth map tile corresponding to each fourth map tile, so as to obtain multiple index files that correspond one-to-one with the multiple fourth map tiles. The determining unit is further configured to determine the ending level corresponding to each fourth map tile, wherein the ending level corresponding to each fourth map tile is the maximum level of the map tile in the fifth map tile corresponding to each fourth map tile; The generation unit is further configured to generate the file header of the index file corresponding to each fourth map tile according to the preset starting level and the ending level corresponding to each fourth map tile; The processing unit is used to add the file header of the index file corresponding to each fourth map tile to the index file corresponding to each fourth map tile.

7. An electronic device, characterized in that, Including memory and processor; The memory and the processor are coupled; The memory is used to store computer program code, which includes computer instructions; When the processor executes the computer instructions, the electronic device performs the map tile indexing method as described in any one of claims 1-3 or the map tile indexing construction method as described in claim 4.

8. A computer-readable storage medium storing instructions, characterized in that, When the instructions are executed on an electronic device, the electronic device performs the map tile indexing method as described in any one of claims 1-3 or the map tile indexing construction method as described in claim 4.

Citation Information

Patent Citations

  • Organization and management method of map tile caching

    CN103279487A

  • Map data generation method, map data generation device, map data reading method and map data reading device

    CN104778212A

  • Display method and device for extended tile map based on WebGIS environment

    CN110704770A