Distributed tile data generation method and device, medium and product
Through distributed computing cluster concurrent processing, the problem of insufficient computing power of a stand-alone machine is solved, and massive geolocation data is efficiently generated and visualized, which improves response speed and computing efficiency.
Patent Information
- Application Number
- CN202510863742.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-25
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2045-06-25
AI Technical Summary
When processing massive geolocation data, the computing power of stand-alone processing is insufficient. Data sampling or reduction of processing cycles will lead to reduced tile details, low response efficiency of area switching, index establishment and data compression consume computing resources, making it difficult to efficiently visualize geolocation data.
The distributed tile data generation scheme is adopted to calculate the concurrent computing power of the cluster, and the location data is distributed to multiple computing nodes for processing in parallel, generating distributed tile data, without data sampling or index establishment, and the full amount of data is directly processed.
It improves the efficiency of geolocation data generation, reduces computing resource consumption, improves response speed and visualization effects, and supports rapid rendering of large-scale geolocation data.
Smart Images

Figure CN120371931A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure generally relate to the field of computers, and more particularly to methods, devices, media, and products for generating distributed tile data. Background Art
[0002] When providing map-related services, a large amount of geographical location data needs to be processed. Facing the huge and complex geographical location data, how to efficiently visualize this geographical location data so as to provide strong support for related applications or services has become an urgent direction that needs to be deeply explored. Summary of the Invention
[0003] Embodiments of the present disclosure provide a solution for generating distributed tile data.
[0004] In a first aspect of the present disclosure, a method for generating distributed tile data is provided. The method includes, based on the concurrent computing power of a computing cluster, assigning multiple location point information of location data to corresponding computing nodes of the computing cluster to concurrently determine multiple first tile identifiers respectively corresponding to at least some of the multiple location point information and multiple pixels for the multiple location point information, where at least two location point information corresponding to the same first tile identifier are assigned to different computing nodes of the computing cluster. The method further includes, based on the multiple first tile identifiers, assigning the multiple pixels to corresponding computing nodes of the computing cluster to concurrently generate multiple first tiles for the multiple first tile identifiers, each first tile being uniquely identified by the corresponding first tile identifier, where at least two pixels corresponding to the same first tile identifier are assigned to the same computing node of the computing cluster.
[0005] In a second aspect of the present disclosure, a device for generating distributed tile data is provided. The device includes a concurrent tile identifier determination module that, based on the concurrent computing power of a computing cluster, assigns multiple location point information of location data to corresponding computing nodes of the computing cluster to concurrently determine multiple first tile identifiers respectively corresponding to at least some of the multiple location point information and multiple pixels for the multiple location point information, where at least two location point information corresponding to the same first tile identifier are assigned to different computing nodes of the computing cluster. The device further includes a concurrent tile generation module configured to, based on the multiple first tile identifiers, assign the multiple pixels to corresponding computing nodes of the computing cluster to concurrently generate multiple first tiles for the multiple first tile identifiers, each first tile being uniquely identified by the corresponding first tile identifier, where at least two pixels corresponding to the same first tile identifier are assigned to the same computing node of the computing cluster.
[0006] According to a third aspect of the present disclosure, there is provided an electronic device. The computing device includes a processor and a memory, and instructions are stored on the memory, which when executed by the processor cause the processor to execute the method or process according to an embodiment of the present disclosure.
[0007] According to a fourth aspect of the present disclosure, there is provided a machine-readable storage medium. Machine-executable instructions are stored on the machine-readable storage medium, which when executed by a processor cause the processor to execute the method or process according to an embodiment of the present disclosure.
[0008] In a fifth aspect of the present disclosure, there is provided a computer program product. The computer program product is tangibly stored on a non-transitory computer-readable storage medium and includes a computer program, which when executed by a processor of a computer causes the processor to execute the method or process according to an embodiment of the present disclosure.
[0009] Note that the Summary of the Invention section is provided to introduce a series of concepts in a simplified form, which will be further described in the Detailed Description below. The Summary of the Invention section is not intended to identify the key features or essential features of the disclosure, nor is it intended to limit the scope of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] By describing the embodiments of the present disclosure in more detail in conjunction with the accompanying drawings, the above and other objects, features, and advantages of the present disclosure will become more clearly understood. In the drawings: Figure 1 is a schematic diagram illustrating an example environment in which the method and / or process according to an embodiment of the present disclosure may be implemented; Figure 2 is a flowchart schematically illustrating a method for generating tiles according to an embodiment of the present disclosure; Figure 3 is a diagram schematically illustrating a schematic example of preprocessing for location data according to an embodiment of the present disclosure; Figure 4 is a diagram schematically illustrating a schematic example of distributed tile generation for underlying tiles according to an embodiment of the present disclosure; Figure 5A is a diagram schematically illustrating a schematic example of distributed tile generation for high-level tiles according to an embodiment of the present disclosure; Figure 5B is a diagram schematically illustrating a schematic example of reusing sub-tiles in parent tile generation according to an embodiment of the present disclosure; Figure 6 is a diagram schematically illustrating an apparatus for generating tiles according to an embodiment of the present disclosure; Figure 7 is a schematic block diagram of an example device that can be used to implement an embodiment according to the present disclosure.
[0011] In all the figures, the same or similar reference numerals generally denote the same or similar elements. Detailed implementation manners
[0012] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. On the contrary, these embodiments are provided to more thoroughly and completely understand the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for illustrative purposes and are not used to limit the protection scope of the present disclosure.
[0013] In the description of the embodiments of the present disclosure, the term "comprising" and its variations should be understood as an open inclusion, that is, "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc. may refer to different or the same objects, unless clearly indicated otherwise.
[0014] It can be understood that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, usage scopes, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0015] For example, when receiving a user's active request, a prompt message is sent to the user to clearly prompt the user that the operation requested by the user will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to software or hardware such as an electronic device, an application program, a server, or a storage medium that performs the operations of the technical solutions of the present disclosure according to the prompt message.
[0016] As an optional but non-limiting implementation manner, the manner of sending a prompt message to the user in response to receiving the user's active request may be, for example, in the form of a pop-up window, and the prompt message may be presented in text in the pop-up window. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0017] It can be understood that the above process of notifying and obtaining the user's authorization is only illustrative and does not limit the implementation manner of the present disclosure, and other manners that meet relevant laws and regulations can also be applied to the implementation manner of the present disclosure.
[0018] As described above, it is necessary to explore how to efficiently visualize massive and complex geographical location data. More specifically, when the magnitude of geographical location data reaches several million, tens of millions, or even over hundreds of millions, quickly viewing the geographical location data of a certain area, a certain city, or an even larger area will result in extremely high real-time rendering costs.
[0019] In some related solutions, tile services may be adopted. For example, tiles can be generated for geographical locations and corresponding services can be built based on this for access in conjunction with Geographic Information System (GIS) tools or front-end frameworks. The difficult point that needs attention is how to quickly process massive location data and generate pictures corresponding to all the data. This will directly affect the timeliness of users' viewing of location information.
[0020] In terms of tile generation in related solutions, a single-machine processing method is generally adopted, mainly by reducing the magnitude of the data to be processed, so as to meet the requirements of single-machine processing. For example, the amount of data to be processed can be reduced by data sampling or reducing the processing cycle, and the heat map information of a corresponding small area can be generated by delimiting the area. In addition, a spatial index can be established to quickly obtain the specified location data, and data compression can be performed during the data processing to reduce the transmission volume.
[0021] However, there are still many deficiencies in these current related solutions and they face challenges in practical applications. First, the computing power provided by single-machine processing is insufficient when faced with such a large amount of location data. Second, data sampling or reducing the processing cycle may reduce the details of the generated tiles, resulting in degraded rendering (for example, degraded visualization effects). By delimiting small areas, the usage experience of the application or service is limited, such as reduced response efficiency during area switching, mismatches with user needs, etc. In addition, establishing a spatial index and performing data compression may consume additional computing resources.
[0022] To address at least some of the above and other potential problems, embodiments of the present disclosure propose a solution for generating distributed tile data. The solution includes assigning multiple location point information of location data to corresponding computing nodes of a computing cluster based on the concurrent computing power of the computing cluster, to concurrently determine multiple first tile identifiers respectively corresponding to at least some of the multiple location point information and multiple pixels for the multiple location point information, where at least two location point information corresponding to the same first tile identifier are assigned to different computing nodes of the computing cluster. The solution further includes assigning the multiple pixels to corresponding computing nodes of the computing cluster based on the multiple first tile identifiers, to concurrently generate multiple first tiles for the multiple first tile identifiers, each first tile being uniquely identified by the corresponding first tile identifier, where at least two pixels corresponding to the same first tile identifier are assigned to the same computing node of the computing cluster.
[0023] The solution for generating distributed tile data according to embodiments of the present disclosure provides a strategy for generating distributed tile data, which does not require sampling or filtering of location data, nor does it require delimiting small regions in advance, and can perform tile generation on all data and all-range data. In addition, through this strategy for generating distributed tile data, there is no need to establish an index, and it is possible to achieve the distribution of various processes at different granularities such as location points (information) and tiles, improving the generation efficiency.
[0024] The following refers to Figures 1 to 7 to illustrate the basic principles and several exemplary implementations of the present disclosure. It should be understood that these exemplary embodiments are only provided to enable those skilled in the art to better understand and then implement the embodiments of the present disclosure, and do not limit the scope of the present disclosure in any way.
[0025] Figure 1 is a schematic diagram schematically illustrating an example environment 100 in which the method and / or process according to embodiments of the present disclosure can be implemented. As Figure 1 shown, the example environment 100 includes a database 110 for location data, a computing cluster 120 including computing nodes (e.g., Figure 1 the locally arranged computing nodes 121 and 122 and the computing node 123 arranged in the cloud schematically shown therein), and tile data 130. In Figure 1 the implementation environment according to embodiments of the present disclosure is described by taking a computing cluster with a hybrid arrangement as an example. It should be understood that this is only an exemplary rather than a restrictive description, and other different types of computing clusters are also feasible, such as locally arranged or cloud-arranged computing clusters. A suitable computing environment configuration can be selected according to actual usage requirements.
[0026] In Figure 1Only a limited number of components and exemplary connection relationships are shown. It should be understood that this is for the purpose of facilitating explanation and easy illustration and is not intended to limit the scope of the present disclosure, and there may also be other different components. For example, a display component, an input component, etc. In an exemplary rather than restrictive manner, the generated tile data 130 and a heat map constructed based thereon can be displayed on the display component, and the requirements for tile generation (e.g., scale) can be typed in through the input component.
[0027] According to an embodiment of the present disclosure, the database 110 for location data can be configured to store original location data, such location data including a plurality of location point information (e.g., location point information characterized by spherical coordinates). The location data can come from different data sources and can be organized into data tables in the library based on predetermined attributes (e.g., time, region, etc.). Examples of data tables can include but are not limited to Hive tables.
[0028] According to an embodiment of the present disclosure, by assigning the plurality of location point information of the location data from the database 110 to a plurality of computing nodes (e.g., computing nodes 121 - 123) of the computing cluster 120, the generation of distributed tile data according to an embodiment of the present disclosure can be performed to generate the tile data 130 level by level from bottom to top. Hereinafter, the generation of distributed tile data according to an embodiment of the present disclosure will be further described in detail.
[0029] The computing cluster 120 can be a system with computing capabilities. As described above, the computing cluster 120 can include a plurality of computing nodes. According to an embodiment of the present disclosure, the computing cluster 120 and its computing nodes can concurrently perform corresponding tile generation processing at the granularity of location points (information), or can also concurrently perform corresponding tile generation processing at the granularity of tiles at each level. In Figure 1 an exemplary rather than restrictive manner, the computing nodes 121 and 122 can be arranged locally to the user, and the computing node 123 can be arranged in the cloud. The cloud can indicate a service mode built based on cloud or distributed technologies. In this mode, computing resources, storage resources, etc. are coupled together through a network to form a schedulable and extensible resource aggregate. At least a part of these resources can be dynamically retrieved or allocated to complete tasks without locally owning or managing these physical resources.
[0030] A computing node can refer to a unit of computing resource and can be a device with computing capabilities. For example, a computing node can be configured with a processor (such as a central processing unit (CPU), etc.) and a memory, etc., and can also be equipped with a dedicated accelerator (such as a graphics processing unit (GPU), etc.). In addition, data can be stored and maintained on the computing node.
[0031] As Figure 1 exemplarily shown in, the local computing nodes 121 and 122 and the computing node 123 at the cloud can be interconnected via a network to communicate with each other. Taking the architecture in Figure 1 as an example, the computing nodes 121-123 can communicate via a network to achieve, for example, data synchronization or sharing between nodes. Multiple computing nodes in the example environment 100 can process computing tasks in parallel. In addition, multiple computing nodes in the example environment 100 can have redundancy and fault tolerance mechanisms to ensure the reliable execution of computing tasks. When a computing node fails, the system can automatically migrate the job to other normal working nodes to ensure the continuity and availability of the task.
[0032] Examples of computing nodes can include supercomputers, personal computers, laptop computers, in-vehicle computing devices, mobile devices (such as smartphones, tablets, etc.), wearable electronic devices, multimedia devices, personal digital assistants (PDAs), or a combination including any one or more of the above devices, etc. It should be understood that the computing nodes described with reference to Figure 1 are merely exemplary and not restrictive. For example, other different numbers and types of computing nodes can also be adopted.
[0033] The above has been combined with Figure 1 to describe an example environment in which the methods and / or processes according to the embodiments of the present disclosure can be implemented. Below, in combination with Figure 2 to describe the method 200 for generating distributed tile data according to the embodiments of the present disclosure. Through the method 200, not only can large-scale geographical location information be effectively visualized, but also excellent computing performance and response speed are achieved, providing valuable data support for planning, management, analysis, etc.
[0034] Figure 2 is a flowchart schematically illustrating the method 200 for generating distributed tile data according to the embodiments of the present disclosure. At 210, based on the concurrent computing power of the computing cluster, multiple location point information of the location data is assigned to the corresponding computing nodes of the computing cluster to concurrently determine multiple first tile identifiers corresponding to at least some of the multiple location point information and multiple pixels for the multiple location point information, where at least two location point information corresponding to the same first tile identifier is assigned to different computing nodes of the computing cluster. The process of determining the first tile identifier for each location point information at 210 is designed to distribute the location point information to the computing nodes depending on the available parallel computing power of the computing cluster (for example, the total amount of concurrency that can be applied), rather than depending on the relevance in the location relationship, expecting that the multiple location point information is as scattered as possible on different computing nodes for processing, so as to enhance the parallelism of the processing and minimize the number of iterative rounds.
[0035] In some embodiments, each piece of location point information among the multiple pieces of location point information may have corresponding longitude and latitude values, and a first tile identifier thereof may be determined based on the longitude and latitude values of each piece of location point information, such as calculating the underlying tile coordinates. In addition, for each piece of location point information among the multiple pieces of location point information, a pixel corresponding to the location point information may be determined based on its longitude and latitude values, such as calculating pixel coordinates. It should be understood that the determination of the first tile identifier and the pixel may not be limited to being based on longitude and latitude values, and may also be based on relative position relationships, etc.
[0036] The first tile identifier may uniquely identify the corresponding first tile, where the first tile may be the bottom-level tile or the base tile in the tile pyramid. One first tile identifier may correspond to several pieces of location point information (for example, due to the rounding process in the calculation process of the first tile identifier), that is, the first tile identifiers calculated for several pieces of location point information may be the same, and the location point information may correspond to pixels one by one. Thus, one first tile identifier may correspond to several pixels. According to an embodiment of the present disclosure, when determining the first tile identifier for each piece of location point information, based on the computing power of the corresponding computing node, the first dispersion degree of distributing the multiple pieces of location point information to different computing nodes for calculation is maximized. The dispersion degree herein may refer to the degree of dispersion of processing being distributed to different computing nodes in the cluster for processing. The processing at 210 is distributed at the granularity of location point information. During the process of determining the first tile identifier for each piece of location point information, based on the available parallel computing power of the computing cluster, the multiple pieces of location point information are dispersed on different computing nodes as much as possible for processing. For example, multiple pieces of location point information associated in location are not assigned to the same computing node, but the available total concurrency degree at present may be considered, and the location point information is assigned to a computing node that has not reached the computing bandwidth bottleneck. When the overall computing power of the corresponding computing node is sufficient, the multiple pieces of location point information are respectively assigned to different computing nodes, so that several pieces of location point information corresponding to the same first tile identifier will be processed within the same concurrent task. In other words, several pieces of location point information corresponding to the same first tile identifier may not be assigned to the same computing node to sequentially execute the determination of the first tile identifier and the pixel, but are expected to be assigned to different computing nodes to concurrently execute the determination of the first tile identifier and the pixel. It should be understood that at 210, the first tile has not been generated yet, but the first tile identifier of the first tile to be generated and the pixels included in the first tile to be generated are determined.
[0037] At 220, based on multiple first tile identifiers, multiple pixels are assigned to corresponding computing nodes of a computing cluster to concurrently generate multiple first tiles of the multiple first tile identifiers, where each first tile is uniquely identified by a corresponding first tile identifier, and at least two pixels corresponding to the same first tile identifier are assigned to the same computing node of the computing cluster. As described above, one first tile identifier can correspond to several pixels, and the several pixels can be organized into a pixel matrix, for example, based on pixel identifiers (e.g., pixel coordinates). The process of generating the first tile of each first tile identifier at 220 aims to assign the pixels corresponding to the same first tile identifier to the same computing node as much as possible based on the first tile identifier. It is desired that each computing node generates the corresponding first tile in parallel, thereby reducing the possible data interaction overhead between computing nodes and improving the parallel processing efficiency.
[0038] According to an embodiment of the present disclosure, when generating the first tile of each first tile identifier, based on the computing power of a single computing node in the corresponding computing node, the second dispersion in which the pixels corresponding to the same first tile identifier are distributed to different computing nodes for calculation is minimized. For example, considering the first tile identifier, the pixels corresponding to the same first tile identifier are assigned to the same computing node as much as possible without being dispersed to different computing nodes. In this way, one first tile can be generated on one computing node. When the unit computing power of a single computing node is sufficient, all the pixels corresponding to the same first tile identifier are assigned to the same computing node.
[0039] The process at 220 is distributed at the granularity of first tiles. For multiple pixel matrices of multiple first tile identifiers, it is desired that a single pixel matrix is assigned to the same computing node, while multiple pixel matrices are dispersed to different computing nodes as much as possible to generate the corresponding first tiles in parallel at each computing node. In some embodiments, for one first tile identifier, the corresponding computing node calculates the depth value information of each pixel for the assigned pixel matrix and generates the corresponding picture information (i.e., the corresponding first tile) based on this. The multiple generated first tiles can be stored in an object storage platform. In some embodiments, the multiple first tiles can be customized. For example, the moving direction is indicated by color, or the position heat is indicated by brightness. In addition, transparency can also be used to indicate other metrics.
[0040] The method 200 for generating distributed tile data according to an embodiment of the present disclosure provides a strategy for generating distributed tile data, which does not require sampling or filtering of location data, nor does it require delimiting small regions in advance, and can perform tile generation on full-scale data and full-range data. In addition, through this strategy for generating distributed tile data, no index needs to be established, and the distribution of each process can be achieved at different granularities such as location points (information) and tiles, improving the generation efficiency.
[0041] Figure 3 A diagram schematically illustrates an example diagram 300 of the processing of location data according to an embodiment of the present disclosure. It should be understood that in the Figure 3 schematic example 300, for ease of illustration and easy diagramming, the processing of location data is described with a finite number of location point information and computing nodes, and the connection relationships between the respective location point information are also schematic and non-limiting.
[0042] According to an embodiment of the present disclosure, based on the concurrent computing power of a computing cluster, multiple location point information can be assigned to corresponding computing nodes of the computing cluster to concurrently generate corresponding line objects, where at least two location point information corresponding to the same trajectory can be assigned to different computing nodes of the computing cluster. In the interpolation processing according to an embodiment of the present disclosure, the location point information can be distributedly assigned to the computing nodes depending on the available parallel computing power of the computing cluster, rather than depending on the relevance in terms of location relationship, thereby improving the parallelism of the interpolation processing. As Figure 3 shown, the location point information 312 can be assigned to the computing node 301, the location point information 314 can be assigned to the computing node 302, and the location point information 316 can be assigned to the computing node 301, as Figure 3 indicated by the dashed arrows in. The process of assigning for processing at the granularity of location point information to the computing nodes can be random or can depend on the total available concurrency, regardless of whether these location point information are trajectory-related, which reduces the resistance to distributed execution. For example, within a concurrent task on the computing node 301, the location point information 312 and the location point information 322 to be processed belong to different trajectories. In other words, under the condition that the total available concurrency is not limited, it is desirable to disperse multiple location point information to different computing nodes as much as possible to concurrently execute the processing of location data according to an embodiment of the present disclosure.
[0043] After the concurrent processing by each computing node, it can be determined which location point information belongs to the same trajectory, and the location point information belonging to the same trajectory can be connected into a line object. For example, after the separate processing by the computing node 301 and the computing node 302, it can be determined that the location point information 312, the location point information 314, and the location point information 316 correspond to the same trajectory, and thus the location point information 312, the location point information 314, and the location point information 316 can be connected into a line object, as Figure 1 shown in. The generation of line objects for the location point information 322, the location point information 324, and the location point information 326 is the same or similar.
[0044] According to an embodiment of the present disclosure, for example, in response to the dotting frequency for location point information not meeting the dotting frequency threshold, interpolation processing can be performed on the corresponding line object to obtain interpolation points. Taking the line pair for location point information 322, location point information 324, and location point information 326 as an example, assuming that there is a long interval between the recording time of location point information 322 and the recording time of location 324, and / or there is a long interval between the recording time of location point information 324 and the recording time of location 326, interpolation processing can be performed on this line pair to obtain interpolation points 323 and 325 to make up for the insufficient location point information caused by the low dotting frequency. It should be understood that the processing of location data according to the embodiments of the present disclosure is not limited to the above line object generation and interpolation point acquisition, and may also include, for example, filtering of illegal locations.
[0045] Figure 4 FIG. schematically illustrates a diagram of a schematic example 400 of the generation of distributed tile data for underlying tiles according to an embodiment of the present disclosure. As Figure 4 shown, location data can be read from a database 410 for location data, where the read location data can be organized in the form of a location data Hive table 415. In some embodiments, before performing processing on location data (such as line object generation), multiple location point information can be divided into multiple groups of location point information with regional characteristics (such as Figure 4 the groups of location point information 1-3 shown schematically at 420), where each group of location point information in the multiple groups of location point information can correspond to a corresponding region. Generation of distributed tile data according to an embodiment of the present disclosure can be performed for one or more of these groups, such as processing for determining a first tile identifier for each location point information, processing for generating a first tile for each first tile identifier, etc. This can facilitate the generation of heat information for a predetermined region.
[0046] At 430, the feature calculation for tile generation will be described. First, at 431, before the feature calculation, processing on location data can be performed, such as the line object generation and interpolation point acquisition described above in conjunction with Figure 3 It should be understood that after the interpolation points are generated, like the location point information, each of them will participate in subsequent processing.
[0047] At 432, based on the concurrent computing power of the computing cluster, each of the multiple location points (information) and interpolation points can be assigned to a corresponding computing node of the computing cluster to calculate a first tile identifier corresponding to the point, where the first tile identifier can correspond to a number of points, and the first tile identifier (e.g., underlying tile coordinates) can uniquely identify the first tile (i.e., the underlying tile) to be generated. At 433, based on the concurrent computing power of the computing cluster, each of the multiple location points (information) and interpolation points can be assigned to a corresponding computing node of the computing cluster to determine the pixel corresponding to the point. In some embodiments, the determination of the pixel may include calculating the pixel identifier (e.g., pixel coordinates) of each pixel at 433, calculating the depth value of each pixel at 434, and which pixel group the pixel belongs to, etc. As described above, one first tile identifier can correspond to a number of pixels. In some embodiments, multiple pixels for multiple location point information and interpolation points can be aggregated into multiple pixel groups (such as pixel groups 1-3 at 440 schematically shown in Figure 4 ), where several pixels within each pixel group can be organized into a pixel matrix based on the corresponding pixel identifier.
[0048] At 450, an example implementation for tile generation will be described. According to an embodiment of the present disclosure, at 451, the maximum brightness value of each pixel matrix among the multiple pixel matrices for multiple first tile identifiers can be determined. As shown above, the brightness can be used to indicate the location heat. The higher the location heat of a location point information, the greater the brightness value of the corresponding pixel. Thus, determining the maximum brightness value for each pixel matrix is also determining the brightness value of the brightest pixel in the pixel matrix.
[0049] At 452, based on the maximum brightness value of each pixel matrix, normalization processing is performed on the multiple pixel matrices. This is to effectively represent the brightness differences between pixel matrices and avoid the situation where the location heat differences are large but no obvious differences are reflected when characterized by brightness. At 453, based on the normalized multiple pixel matrices, a first picture, i.e., a first tile, corresponding to each pixel matrix is generated. In addition, at 454, the generated first tiles can be stored for the object.
[0050] Figure 5A A diagram schematically illustrates a schematic example 500A of the generation of distributed tile data for high-level tiles according to an embodiment of the present disclosure. It should be understood that in the Figure 5A description of 500A in, the first tile refers to the underlying tile, the second tile refers to the high-level tile one level above the first tile in the hierarchy, and the third tile refers to the high-level tile one level above the second tile in the hierarchy.
[0051] At 510, an example implementation will be described for calculating the identification of a parent tile (i.e., a high-level tile) and aggregating corresponding child tiles (i.e., tiles at the level adjacent and below the high-level tile in the tile pyramid) based on it. At 511, a corresponding second tile identification is calculated for each of the multiple first tile identifications. As described above, the calculation of the first tile identification can be based on the longitude and latitude values of the position point information, and this calculation process is complex, involving many operations such as power operations, rounding operations, trigonometric function operations, logarithmic operations, etc. After obtaining the first tile identification, the first tile identification can be reused, and a simple operation (such as division operation and rounding operation, etc.) can be performed on the basis of the first tile identification to calculate the corresponding second tile identification.
[0052] Figure 5B The diagram schematically illustrates a diagram of a schematic example 500B of reusing child tiles in the generation of a parent tile according to an embodiment of the present disclosure. As Figure 5B shown therein, at (1), examples of child tiles are shown, and the child tile identifications of the four child tiles are respectively (x, y), (x + 1, y), (x, y + 1), and (x + 1, y + 1), where each child tile is 256 256 pixels.
[0053] According to an embodiment of the present disclosure, the child tile identification can be reused. For example, by performing a simple division and rounding on the child tile identification, the corresponding parent tile identification can be obtained. As Figure 5B shown in (2) of, the parent tile identification corresponding to the above four child tile identifications can be (x / 2, y / 2). It should be understood that Figure 5B the example calculations in are not intended to limit the scope of the present disclosure. For example, other parameters can also be used, and multiplication is also possible. In addition, the pictures of the child tiles can also be reused. For example, Figure 5B the 512 512-pixel parent picture of the parent tile shown at (2) of is composed of the 256 256-pixel child pictures of the child tiles (x, y), (x + 1, y), (x, y + 1), and (x + 1, y + 1) aggregated (for example, spliced). Then, picture compression can be performed on the parent picture at (2) to obtain the 256 compressed parent picture of 256 pixels of the parent tile at (3). In this way, it is no longer necessary to calculate the depth value of the pixels and generate the picture of the tile as in the case of the underlying tiles before, thus saving computing resources and improving the generation efficiency.
[0054] Return to Figure 5A, at 511, based on the concurrent computing power of the computing cluster, a plurality of first tile identifiers can be assigned to corresponding computing nodes of the computing cluster to concurrently determine a plurality of second tile identifiers respectively corresponding to at least some of the plurality of first tile identifiers, wherein at least two first tile identifiers corresponding to the same second tile identifier are assigned to different computing nodes of the computing cluster. According to an embodiment of the present disclosure, when determining the second tile identifier for each first tile identifier, based on the computing power of the corresponding computing node, the third dispersion degree of the plurality of first tile identifiers being distributedly assigned to different computing nodes for calculation is maximized. The process of determining the second tile identifier for each first tile identifier is distributed at the granularity of the first tile (identifier). During the process, based on the current total available concurrency degree, the plurality of first tile identifiers are dispersed on different computing nodes as much as possible for processing, so as to enhance the processing parallelism of the second tile identifier determination and minimize the number of iteration rounds. When the overall computing power of the corresponding computing node is sufficient, the plurality of first tile identifiers are respectively assigned to different computing nodes, so that several first tile identifiers corresponding to the same second tile identifier will be processed within the same concurrent task.
[0055] In addition, at 512, the corresponding first tiles can be aggregated based on the second tile identifiers. One second tile identifier can correspond to several first tile identifiers, and each first tile identifier corresponds to a corresponding first tile, that is, one second tile identifier can correspond to several first tiles. Several first tiles with the same second tile identifier can be aggregated into a first tile group (such as Figure 5A the sub-tile group 1-3 at 520 schematically shown), and the first tile group can be a set of pixels of the several first tiles.
[0056] At 530, an example implementation for generating a parent tile (i.e., a high-level tile) will be described. At 531, a plurality of calculated second tile identifiers are obtained. According to an embodiment of the present disclosure, based on the plurality of second tile identifiers, a plurality of first tiles can be assigned to corresponding computing nodes of a computing cluster to concurrently generate a plurality of second tiles by aggregating corresponding first tiles for each second tile identifier, where the level of the second tiles is higher than that of the first tiles, and each second tile is uniquely identified by a corresponding second tile identifier, and at least two first tiles corresponding to the same second tile identifier are assigned to the same computing node of the computing cluster. According to an embodiment of the present disclosure, when generating a second tile for each second tile identifier, based on the computing power of a single computing node in the corresponding computing node, the fourth dispersion degree that the first tiles corresponding to the same second tile identifier are distributedly assigned to different computing nodes for calculation is minimized. The process of generating a second tile for each second tile identifier is distributed at the granularity of the second tile. During the process, the second tile identifier can be considered, and the first tiles corresponding to the same second tile identifier are preferably assigned to the same computing node instead of being scattered to different computing nodes, so that each computing node concurrently generates a corresponding second tile, thereby reducing the possible data interaction overhead between computing nodes and improving the parallel processing efficiency. When the unit computing power of a single computing node is sufficient, all the first tiles corresponding to the same second tile identifier are assigned to the same computing node.
[0057] At 532, for a plurality of first tiles corresponding to each second tile identifier (e.g., for each first tile group in a plurality of first tile groups), a second picture (i.e., a parent picture) corresponding to each second tile identifier can be obtained by aggregating corresponding first tiles (i.e., sub-tiles). At 533, a second tile (i.e., a parent tile) is generated by performing picture compression on the obtained second picture. According to an embodiment of the present disclosure, the obtaining of the second picture and the generation of the second tile can be respectively assigned to different computing nodes of a computing cluster for concurrent execution at the granularity of the second tile.
[0058] It should be understood that Figure 5AThe processes 510-530 in 500A can be iterative loops to generate a tile pyramid including tiles at each level from bottom to top. For example, after determining a plurality of second tile identifiers and generating a plurality of second tiles, based on the concurrent computing power of the computing cluster, the plurality of second tile identifiers can be assigned to corresponding computing nodes of the computing cluster to concurrently determine a plurality of third tile identifiers respectively corresponding to at least some of the plurality of second tile identifiers, where at least two second tile identifiers corresponding to the same third tile identifier are assigned to different computing nodes of the computing cluster. According to an embodiment of the present disclosure, when determining the third tile identifier for each second tile identifier, based on the computing power of the corresponding computing node, the dispersion of the plurality of second tile identifiers being distributedly assigned to different computing nodes for calculation is maximized. When the overall computing power of the corresponding computing node is sufficient, the plurality of second tile identifiers are respectively assigned to different computing nodes.
[0059] Then, based on the plurality of third tile identifiers, the plurality of second tiles can be assigned to corresponding computing nodes of the computing cluster to concurrently generate a plurality of third tiles by aggregating the corresponding second tiles for each third tile identifier. The level of the third tiles is higher than that of the second tiles, and each third tile is uniquely identified by the corresponding third tile identifier, where at least two second tiles corresponding to the same third tile identifier are assigned to the same computing node of the computing cluster. According to an embodiment of the present disclosure, when generating the third tiles for each third tile identifier, based on the computing power of a single computing node in the corresponding computing node, the dispersion of the second tiles corresponding to the same third tile identifier being distributedly assigned to different computing nodes for calculation is minimized. When the unit computing power of the single computing node is sufficient, all the second tiles corresponding to the same third tile identifier are assigned to the same computing node. The iterative loop can continue until, for example, the generation of the tiles at the level corresponding to the predetermined scale is completed. At 540, it ends.
[0060] According to an embodiment of the present disclosure, a heat map can be constructed based on the underlying tiles, or a heat map can be constructed based on the underlying tiles and the high-level tiles. The constructed heat map can be a directional heat map, for example, one color represents one direction, or it can be a non-directional heat map. A point heat map is also possible.
[0061] Figure 6 is a schematic diagram illustrating an apparatus 600 for generating distributed tile data according to an embodiment of the present disclosure. The apparatus 600 can include a plurality of units or modules for performing the steps or actions in the methods or processes discussed above. As Figure 6As shown, the device 600 includes a concurrent tile identification determination module 610 configured to assign multiple location point information of location data to corresponding computing nodes of a computing cluster based on the concurrent computing power of the computing cluster, so as to concurrently determine multiple first tile identifiers respectively corresponding to at least some of the multiple location point information and multiple pixels for the multiple location point information, wherein at least two location point information corresponding to the same first tile identifier are assigned to different computing nodes of the computing cluster. The device 600 further includes a concurrent tile generation module 620 configured to assign the multiple pixels to corresponding computing nodes of the computing cluster based on the multiple first tile identifiers, so as to concurrently generate multiple first tiles of the multiple first tile identifiers, and each first tile is uniquely identified by the corresponding first tile identifier, wherein at least two pixels corresponding to the same first tile identifier are assigned to the same computing node of the computing cluster.
[0062] In some embodiments, the concurrent tile identification determination module 610 may be further configured to maximize a first dispersion degree that the multiple location point information is distributed to different computing nodes for calculation based on the computing power of the corresponding computing node when determining the first tile identifier for each location point information.
[0063] In some embodiments, the concurrent tile generation module 620 may be further configured to minimize a second dispersion degree that pixels corresponding to the same first tile identifier are distributed to different computing nodes for calculation based on the computing power of a single computing node in the corresponding computing node when generating the first tile of each first tile identifier.
[0064] In some embodiments, the device 600 may further include: a second concurrent tile identification determination module configured to assign the multiple first tile identifiers to the corresponding computing nodes of the computing cluster based on the concurrent computing power of the computing cluster, so as to concurrently determine second tile identifiers respectively corresponding to at least some of the multiple first tile identifiers, wherein at least two first tile identifiers corresponding to the same second tile identifier are assigned to different computing nodes of the computing cluster; and a second concurrent tile generation module configured to assign the multiple first tiles to the corresponding computing nodes of the computing cluster based on the second tile identifiers, so as to concurrently generate multiple second tiles by aggregating the corresponding first tiles for each second tile identifier, the level of the second tiles is higher than that of the first tiles, and each second tile is uniquely identified by the corresponding second tile identifier, wherein at least two first tiles corresponding to the same second tile identifier are assigned to the same computing node of the computing cluster.
[0065] In some embodiments, the second concurrent tile identification determination module may be further configured to, when determining a second tile identification for each first tile identification, maximize a third dispersion degree in which the multiple first tile identifications are distributedly assigned to different computing nodes for calculation, based on the computing power of the corresponding computing node.
[0066] In some embodiments, the second concurrent tile generation module may be further configured to, when generating a second tile for each second tile identification, minimize a fourth dispersion degree in which the first tiles corresponding to the same second tile identification are distributedly assigned to different computing nodes for calculation, based on the computing power of a single computing node in the corresponding computing node.
[0067] In some embodiments, the concurrent tile identification determination module 610 may be further configured to: determine a pixel identification for each pixel in the multiple pixels; and aggregate the multiple pixels into multiple pixel matrices based on the multiple first tile identifications and the pixel identifications, where each pixel matrix corresponds to a corresponding first tile identification.
[0068] In some embodiments, the concurrent tile generation module 620 may be further configured to: determine a maximum brightness value for each pixel matrix in the multiple pixel matrices; perform a normalization process on the multiple pixel matrices based on the maximum brightness value of each pixel matrix; and generate a first picture corresponding to each pixel matrix based on the normalized multiple pixel matrices.
[0069] In some embodiments, the second concurrent tile generation module may be further configured to: obtain a second picture corresponding to each second tile identification by aggregating corresponding first tiles; and generate the second tile by performing picture compression on the second picture.
[0070] In some embodiments, the apparatus 600 may further include: a line object generation module, configured to assign the multiple location point information to corresponding computing nodes of the computing cluster based on the concurrent computing power of the computing cluster to concurrently generate corresponding line objects, where at least two location point information corresponding to the same trajectory are assigned to different computing nodes of the computing cluster; and an interpolation module, configured to obtain interpolation points by performing an interpolation process on the corresponding line objects.
[0071] Figure 7 A block diagram of an electronic device 700 according to certain embodiments of the present disclosure is shown. The device 700 may be the device or apparatus described in the embodiments of the present disclosure. As Figure 7As shown, device 700 includes a central processing unit (CPU) and / or a graphics processing unit (GPU) 701, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 702 or computer program instructions loaded from a storage unit 708 into a random access memory (RAM) 703. In the RAM 703, various programs and data required for the operation of device 700 can also be stored. The CPU / GPU 701, ROM 702, and RAM 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704. Although not shown in Figure 7 , device 700 may also include a coprocessor.
[0072] Multiple components in device 700 are connected to the I / O interface 705, including: an input unit 706, such as a keyboard, a mouse, etc.; an output unit 707, such as various types of displays, speakers, etc.; a storage unit 708, such as a disk, an optical disc, etc.; and a communication unit 709, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 709 allows device 700 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0073] Each of the methods or processes described above can be executed by the CPU / GPU 701. For example, in some embodiments, the method can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 708. In some embodiments, part or all of the computer program can be loaded and / or installed onto device 700 via the ROM 702 and / or the communication unit 709. When the computer program is loaded into the RAM 703 and executed by the CPU / GPU 701, one or more steps or actions of the methods or processes described above can be executed.
[0074] In some embodiments, the methods and processes described above can be implemented as a computer program product. The computer program product may include a computer-readable storage medium having thereon computer-readable program instructions for performing various aspects of the present disclosure.
[0075] A computer-readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as a punched card or raised structures in grooves having instructions stored thereon, and any suitable combination of the foregoing. The computer-readable storage medium as used herein is not construed as being a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., an optical pulse through an optical fiber cable), or an electrical signal transmitted through a wire.
[0076] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to various computing / processing devices, or can be downloaded to an external computer or an external storage device through a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include a copper transmission cable, an optical fiber transmission, a wireless transmission, a router, a firewall, a switch, a gateway computer, and / or an edge server. A network adapter or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing / processing device.
[0077] The computer program instructions for performing the operations of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine - related instructions, microcode, firmware instructions, state - setting data, or source code or object code written in any combination of one or more programming languages, including object - oriented programming languages and conventional procedural programming languages. The computer - readable program instructions may be executed entirely on the user's computer, partially on the user's computer, executed as a stand - alone software package, partially on the user's computer and partially on a remote computer, or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network - including a local area network (LAN) or a wide area network (WAN) - or, alternatively, may be connected to an external computer (e.g., through the Internet using an Internet service provider). In some embodiments, by using the state information of the computer - readable program instructions to customize an electronic circuit, such as a programmable logic circuit, a field - programmable gate array (FPGA), or a programmable logic array (PLA), the electronic circuit can execute the computer - readable program instructions to implement various aspects of the present disclosure.
[0078] These computer - readable program instructions may be provided to a processing unit of a general - purpose computer, a special - purpose computer, or other programmable data - processing apparatus to produce a machine such that, when the instructions are executed by the processing unit of the computer or other programmable data - processing apparatus, a device is created that implements the functions / acts specified in one or more blocks of the flowchart and / or block diagram. The computer - readable program instructions may also be stored in a computer - readable storage medium, and these instructions cause a computer, a programmable data - processing apparatus, and / or other devices to operate in a particular manner, so that the computer - readable medium storing the instructions comprises a manufacture, which includes instructions that implement various aspects of the functions / acts specified in one or more blocks of the flowchart and / or block diagram.
[0079] The computer - readable program instructions may also be loaded onto a computer, other programmable data - processing apparatus, or other device, such that a series of operational steps are executed on the computer, other programmable data - processing apparatus, or other device to produce a computer - implemented process, so that the instructions executed on the computer, other programmable data - processing apparatus, or other device implement the functions / acts specified in one or more blocks of the flowchart and / or block diagram.
[0080] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of devices, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions noted in the blocks may occur in a different order than noted in the accompanying drawings. For example, two consecutive blocks may actually be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented by a dedicated hardware-based system that performs the specified functions or actions, or by a combination of dedicated hardware and computer instructions.
[0081] The various embodiments of the present disclosure have been described above. The above description is exemplary and not exhaustive, and is also not limited to the various embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art in the technical field without departing from the scope and spirit of the described embodiments. The choice of terms used herein is intended to best explain the principles of the various embodiments, the practical application, or the technical improvement of the technology in the market, or to enable other ordinary skilled persons in the technical field to understand the various embodiments disclosed herein.
Claims
1. A method for generating distributed tile data, comprising: Based on the concurrent computing power of a computing cluster, assigning multiple location point information of location data to corresponding computing nodes of the computing cluster to concurrently determine multiple first tile identifiers respectively corresponding to at least some of the multiple location point information and multiple pixels for the multiple location point information, wherein at least two location point information corresponding to the same first tile identifier are assigned to different computing nodes of the computing cluster; And Based on the multiple first tile identifiers, assigning the multiple pixels to the corresponding computing nodes of the computing cluster to concurrently generate multiple first tiles of the multiple first tile identifiers, each first tile being uniquely identified by the corresponding first tile identifier, wherein at least two pixels corresponding to the same first tile identifier are assigned to the same computing node of the computing cluster.
2. The method according to claim 1, wherein assigning the multiple location point information to the corresponding computing nodes of the computing cluster comprises: When determining the first tile identifier for each location point information, maximizing a first dispersion degree that the multiple location point information is distributed to different computing nodes for calculation based on the computing power of the corresponding computing node.
3. The method according to claim 1, wherein assigning the multiple pixels to the corresponding computing nodes of the computing cluster comprises: When generating the first tile of each first tile identifier, minimizing a second dispersion degree that the pixels corresponding to the same first tile identifier are distributed to different computing nodes for calculation based on the computing power of a single computing node in the corresponding computing node.
4. The method according to claim 1, further comprising: Based on the concurrent computing power of the computing cluster, assigning the multiple first tile identifiers to the corresponding computing nodes of the computing cluster to concurrently determine second tile identifiers respectively corresponding to at least some of the multiple first tile identifiers, wherein at least two first tile identifiers corresponding to the same second tile identifier are assigned to different computing nodes of the computing cluster; And Based on the second tile identifiers, assigning the multiple first tiles to the corresponding computing nodes of the computing cluster to concurrently generate multiple second tiles by aggregating the corresponding first tiles for each second tile identifier, the level of the second tiles being higher than that of the first tiles, and each second tile being uniquely identified by the corresponding second tile identifier, wherein at least two first tiles corresponding to the same second tile identifier are assigned to the same computing node of the computing cluster.
5. The method according to claim 4, wherein assigning the multiple first tile identifiers to the corresponding computing nodes of the computing cluster comprises: When determining the second tile identifier for each first tile identifier, maximizing a third dispersion degree that the multiple first tile identifiers are distributed to different computing nodes for calculation based on the computing power of the corresponding computing node.
6. The method according to claim 4, wherein assigning the plurality of first tiles to the corresponding computing nodes of the computing cluster includes: When generating a second tile of each second tile identifier, based on the computing power of a single computing node in the corresponding computing nodes, minimizing a fourth dispersion degree that the first tiles corresponding to the same second tile identifier are distributedly assigned to different computing nodes for calculation.
7. The method according to claim 1, wherein determining the plurality of pixels includes: Determining a pixel identifier of each pixel in the plurality of pixels; And Based on the plurality of first tile identifiers and the pixel identifiers, aggregating the plurality of pixels into a plurality of pixel matrices, each pixel matrix corresponding to a corresponding first tile identifier.
8. The method according to claim 7, wherein generating the plurality of first tiles includes: Determining a maximum brightness value of each pixel matrix in the plurality of pixel matrices; Based on the maximum brightness value of each pixel matrix, performing a normalization process on the plurality of pixel matrices; And Based on the normalized plurality of pixel matrices, generating a first picture corresponding to each pixel matrix.
9. The method according to claim 4, wherein generating the plurality of second tiles includes: Obtaining a second picture corresponding to each second tile identifier by aggregating corresponding first tiles; And Generating the second tile by performing picture compression on the second picture.
10. The method according to claim 1, further comprising: Based on the concurrent computing power of the computing cluster, assigning the plurality of location point information to the corresponding computing nodes of the computing cluster to concurrently generate corresponding line objects, wherein at least two location point information corresponding to the same trajectory are assigned to different computing nodes of the computing cluster; and Obtaining interpolation points by performing interpolation processing on the corresponding line objects.
11. An electronic device, comprising: A processor; And A memory coupled to the processor, wherein instructions are stored on the memory, and when the instructions are executed by the processor, the processor executes the method according to any one of claims 1 to 10.
12. A machine-readable storage medium, on which machine-executable instructions are stored, wherein when the machine-executable instructions are executed by a processor, the processor executes the method according to any one of claims 1 to 10.
13. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor of a computer, the processor executes the method according to any one of claims 1 to 10.
Citation Information
Patent Citations
Distributed algorithm for quickly establishing massive remote sensing image pyramid
CN102446208A
Cluster-based real-time rendering service of remote sensing data set
CN102722549A
Grouping of tiles for video coding
CN103975596A
A rapid tile generating method for remote sensing image data
CN106991135A
Quick vector superposition method and system for two-dimensional geographic space
CN107193923A