A Method for Real-time Generation of Satellite Remote Sensing Image Tiles
By building a remote sensing image data warehouse and tile generation process, satellite remote sensing image tiles are generated in real time, which solves the problems of time and large storage space in traditional methods, achieves rapid generation and low occupation, and improves the user experience and service capabilities of the business system.
Patent Information
- Application Number
- CN202310106302.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-13
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2043-02-13
AI Technical Summary
In the prior art, satellite remote sensing image tiles are generated for a long time, and the storage space occupies a large amount of time, and it is difficult to meet the diverse remote sensing data exploration needs, and the user experience is poor.
The method of generating satellite remote sensing image tiles in real time is adopted. By building a remote sensing image data warehouse and tile generation process, remote sensing image data is collected in real time and converted into TIFF format files, indexing and storing in blocks, and tiles are generated in real time when the user initiates a tile request, supporting customization of visual conversion algorithms.
It realizes the rapid generation of satellite remote sensing image tiles, reduces storage space usage, improves user experience and service capabilities of business systems, and supports interactive remote sensing image data exploration.
Smart Images

Figure CN116361494B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of satellite remote sensing image tiling, and particularly relates to a method for real-time generation of satellite remote sensing image tiles. Background Technique
[0002] With the rapid development of aerospace technology, remote sensing technology, and big data technology, the quantity, variety, and quality of remote sensing data have changed significantly. Remote sensing data is applied in various fields, from agriculture, forestry, ocean, land, environmental protection, meteorology to finance, insurance, and even war. Remote sensing data is mainly published through satellite data center websites and data sharing platforms, but mostly provides standard product services, that is, the data area and preprocessing method are determined and cannot be modified. In actual applications, the vast majority of users interactively use remote sensing data on the browser side. Since the geographical range browsed by users is uncertain, if the browsed data range is very small, but the full-frame remote sensing image data is still returned during the process from the server-side database to the client, the server IO operation and network transmission are very time-consuming. After the server obtains the data and renders the map, it occupies a large amount of CPU resources. If the user then frequently operates the map, the time consumed during the process of the server rendering the map and transmitting it to the client for browsing will be very long. Therefore, it is basically impossible to achieve good interaction effects for users on the browser side, and the user experience is poor.
[0003] Using the existing map tile technology, by cutting the data according to the zoom level through tiling, when users access each time, they can map the current geographical range to the picture index of the tile coordinates, and then request these picture indexes from the backend. After the client gets the pictures, it can render the pictures in sequence. The whole process reduces the resource consumption of the server.
[0004] However, the above traditional tiling technology solves the problem of resource consumption from the server side to the user side, but the generation of tiles needs to be prepared in advance, that is, the remote sensing data is cut into tiles in advance and stored, and then the tiles are provided through a static file service. This method consumes a high amount of time and storage space, that is, the tile generation is lagging and cannot be achieved in real time. Among them:
[0005] Tiling time = remote sensing image preprocessing time + tile cutting time + tile uploading time to the static file storage system. Among them, the tile cutting time and the tile uploading time to the static file storage system account for the main part. Storage space occupation = original remote sensing image space occupation + tile data space occupation. Among them, the calculation formula for the number of tiles at each zoom level is:
[0006] n = 4 zoom In the formula, n is the number of tiles, and zoom is the zoom level.
[0007] On the one hand, since tiling requires generating data for all available zoom levels, and on the other hand, with the growth of the number of satellites and the upgrading of observation requirements, the remote sensing data itself will also continue to increase, resulting in an exponential growth in the time required for tiling and the storage space of tiles.
[0008] Also, since the tiles are pre-generated and the entire process link is relatively long, and the tile visualization conversion algorithm needs to be preset in advance, it is difficult to adjust in the later stage and cannot meet the increasingly diverse exploration needs of remote sensing data.
[0009] Therefore, those skilled in the art are committed to developing a tile generation method that can generate tiles quickly, occupy less space, and can conveniently customize the visualization conversion algorithm. Summary of the Invention
[0010] The object of the present invention is to provide a method for real-time generation of satellite remote sensing image tiles to solve the technical problems existing in the above-mentioned prior art.
[0011] To achieve the above object, the present invention adopts the following technical solution. A method for real-time generation of satellite remote sensing image tiles includes the following working steps:
[0012] S1. Build a remote sensing image data warehouse;
[0013] S1.1. Real-time collect remote sensing image data from the satellite data center;
[0014] S1.2. Preprocess the remote sensing image. Through the preprocessing of the remote sensing image, perform operations such as reprojection, geometric correction, and radiometric correction on the entity data of the remote sensing image data, and finally convert it into a TIFF format file;
[0015] S1.3. Build an index module for remote sensing image metadata. By real-time collecting and updating all the metadata and storing it in the database index table, the index table includes the original fields and records in the metadata in S1.1, and add a file storage location field and the corresponding URI record. The file storage location is the storage location of the TIFF format file;
[0016] S1.4. Build a remote sensing image data block storage module, and store the TIFF format file in S1.1 in the data warehouse; the data warehouse is a distributed file storage system of a server or a server cluster;
[0017] S2. Tile generation process;
[0018] S2.1. The client initiates a tile request. The tile is a Web Mercator tile, and the request is an HTTP request. The request can carry x, y, z parameters and visualization conversion algorithm parameters. The x, y, and z parameters represent the tile row number, column number, and zoom level respectively. Optionally, the visualization conversion algorithm parameter is an image matrix processing expression. Optionally, the visualization conversion algorithm parameter is a user-defined algorithm script;
[0019] S2.2. Obtain the corresponding longitude and latitude range box according to the row number, column number, and zoom level of the tile;
[0020] S2.3. According to the longitude and latitude range box, by matching the image position information in the database index table in S1.1, filter the list of metadata records that meet the conditions in the table. The number of elements n in the metadata list is n >= 1;
[0021] S2.4. Calculate the data coverage by combining the returned metadata record list and the longitude and latitude range box in S2.2, and select one or more metadata records according to the rules in the returned metadata record list;
[0022] S2.5. According to the storage location of the corresponding TIFF format file in the metadata record or metadata record list selected in S2.4, obtain the corresponding TIFF format file or list of TIFF format files. Through the displacement corresponding to the data block in the tag directory of the TIFF file and the zoom level request information carried in S2.1, request all eligible data block data in the remote sensing image data block storage module in S1.3 and return it;
[0023] S2.6. Synthesize the data block data list returned in S2.5 into an overall image data;
[0024] S2.7. Execute a visualization conversion algorithm on the overall image data in S2.7, adjust the pixel values in the overall picture, and finally output real-time tile data.
[0025] Preferably, the target remote sensing image data includes but is not limited to: metadata and the entity data. The metadata is public data and can be obtained for free, including: data name, satellite information, sensor information, image acquisition time, cloud cover information, image position information, image download address; among them, the image position information includes but is not limited to: upper left latitude, upper left longitude, upper right latitude, upper right longitude, lower right latitude, lower right longitude, lower left latitude, lower left longitude. The entity data is the data that truly contains remote sensing image pixel information.
[0026] Preferably, the TIFF format file includes: a file header, at least one image information, and a tag directory;
[0027] The TIFF format file is a COG (Cloud Optimized GeoTIFF) format file, and the COG file format supports reading all the tag directories first, and then reading the target data block data list according to the displacement information corresponding to the data block.
[0028] Preferably, the image information is a full-size image or thumbnails of each zoom level, the zoom level is an integer and is specified during the conversion process, and the image information is sliced into multiple data blocks according to the zoom level and stored dispersedly in the TIFF format file.
[0029] Preferably, the tag directory includes at least one tag, and the content of the tag includes but is not limited to the pixel depth of the image, the information of each pixel band, RGB encoding, geographic information, the displacement information corresponding to the data block, and the displacement of the next image; wherein, the geographic information includes but is not limited to: geographic location information, spatial scale information; the displacement of the next image is used to locate the starting position of the data of the next image information.
[0030] Preferably, during the conversion process, parameters can be specified to generate the relevant tag information in the thumbnail, the data block, and the tag directory. The parameters include but are not limited to the zoom level, the type of compression algorithm, and the external thumbnail reference. The conversion process takes minutes, while the time-consuming for tile segmentation and tile uploading in the traditional tile service is in the order of ten minutes.
[0031] Preferably, the calculation formula of the data coverage is as shown in Formula 1:
[0032]
[0033] In the formula, cov represents the coverage value of the remote sensing image; T represents the space enclosed by the longitude and latitude range box; I represents the space corresponding to the geographic location information in each record of the metadata record list; union() is a function for performing a union operation on the spatial data set; intersection() is a function for performing an intersection operation on the spatial data set; area() is a function for calculating the area.
[0034] Preferably, the rule is:
[0035] a. If among the metadata record list, the coverage calculated for the spaces corresponding to the geographic location information in m records is 1, then select the first metadata record that conforms to the rule, where m >= 1;
[0036] b. If the space corresponding to the geographic location information in a total of n records in the metadata record list is taken as a union, and the coverage is 1, then the n metadata records are selected;
[0037] If the coverage of the spaces corresponding to the geographic location information in all records in the metadata record list is still less than 1 after the union of the spaces, then all metadata records in the metadata record list are selected.
[0038] Beneficial Effects
[0039] The present invention provides a method for real-time generation of satellite remote sensing image tiles. It has the following beneficial effects:
[0040] (1) A method for real-time generation of satellite remote sensing image tiles. The present invention aims at the drawbacks of tile preprocessing in interactive online remote sensing data services under the background of massive remote sensing data, and proposes a method for real-time tile generation. The entity data of the target remote sensing image data is converted into a specified TIFF format file. Since the conversion process takes significantly less time than the traditional tiling time, the time-consuming tile segmentation and tile uploading to the static file storage system in the traditional pre-generated tiles is saved, so that the remote sensing image data can be generated in real time. After preprocessing the blocks, creating indexes and storing them in the remote sensing image data warehouse, the user can obtain real-time tile data after initiating a tile request from the business system client, which greatly improves the user experience and greatly enhances the service capabilities of the business system, and has strong practicality.
[0041] (2) This method for real-time generation of satellite remote sensing image tiles converts the entity data of the target remote sensing image data into a specified TIFF format file, which significantly reduces the space occupied by the original remote sensing image data, greatly improving the problem of excessive storage space occupied by traditional pre-generated tiles.
[0042] (3) This method for real-time generation of satellite remote sensing image tiles can change the tile generation rules in real time by transmitting a visualization conversion algorithm when a user requests a tile, thereby greatly improving the convenience for users to use the business system to debug remote sensing algorithms and explore and innovate business processes. BRIEF DESCRIPTION OF THE DRAWINGS
[0043] Figure 1 This is a flow chart of a method for real-time generation of satellite remote sensing image tiles according to the present invention;
[0044] Figure 2 Schematic diagram of the COG file structure in an embodiment of the present invention. DETAILED DESCRIPTION
[0045] In order to better understand the purpose, structure and function of the present invention, the following is a further detailed description of a real-time satellite remote sensing image tile generation method of the present invention in conjunction with the accompanying drawings.
[0046] A method for real-time generation of satellite remote sensing image tiles, as Figure 1 shown, this embodiment provides a method for real-time generation of satellite remote sensing image tiles for conducting research related to earth observation, specifically including the following steps:
[0047] S1.1. Real-time collect remote sensing image data from the satellite data center;
[0048] S1.2. Preprocess the remote sensing image. In this embodiment, through the preprocessing of the remote sensing image, after reprojection, geometric correction, and radiometric correction of the entity data of the remote sensing image data, it is converted into a COG format file;
[0049] The target remote sensing image data includes: metadata and the entity data in S1.2. The metadata is public data and can be obtained for free, including: data name, satellite information, sensor information, image acquisition time, cloud cover information, image location information, image download address; among them, the image location information includes: upper left latitude, upper left longitude, upper right latitude, upper right longitude, lower right latitude, lower right longitude, lower left latitude, lower left longitude, and the entity data is the data that truly contains remote sensing image pixel information;
[0050] As Figure 2 shown, the COG format file includes: a file header, at least one image information, and a tag directory;
[0051] The image information can be a full-size image or thumbnail images at each zoom level, and the zoom level is an integer and is specified during the conversion process;
[0052] The image information is sliced into multiple data blocks according to formula (1) corresponding to the zoom level and is stored dispersedly in the COG format file;
[0053] n = 4 zoom ..........................(1)
[0054] In the formula, n is the number of data blocks, and zoom is the zoom level.
[0055] As Figure 2 shown, the tags in the tag directory include the pixel depth of the image, per-pixel band information, RGB encoding, geographic information, the displacement information corresponding to the data block, and the displacement of the next image; among them, the geographic information includes: geographic location information, spatial scale information, and the displacement of the next image is used to locate the data start position of the next image information;
[0056] The COG file format supports reading all the tag directories first, and then reading the data list of the target data block according to the displacement information corresponding to the data block;
[0057] During the conversion process, parameters can be specified to generate the thumbnail, the relevant tag information in the data block and the tag directory. The parameters include the zoom level, the type of compression algorithm, and the external thumbnail reference;
[0058] The following is a comparative experiment on the time consumption and storage space occupation of traditional tiling and the tiling of the present invention:
[0059] The server in the experimental environment is configured with an Intel(R) Xeon(R) Gold 6266C CPU @ 3.00GHz, 8 cores 16G, and the physical data size of the remote sensing image data is 4.5GB.
[0060] As shown in Table (1), under the above configuration, the conversion process takes 3.8 minutes, and the tile splitting and tile uploading in the traditional tile service take 23 minutes. By comparison, the present invention significantly reduces the time consumption of tiling.
[0061]
[0062] As shown in Table (2), on the basis of the above configuration, the compression level is set to 6, the compression algorithm is LZW, and the external thumbnail reference is empty. After the conversion process, the size of the COG file is 3.9GB, and the physical data of the remote sensing image data stored in the traditional tile service and the size of the cut-out tiles are 8G. By comparison, the present invention significantly reduces the storage space occupation.
[0063] COG file size Entity data size of remote sensing image data 3.9 GB Remote sensing image 4.5 GB + tile size 3.5 GB = 8 GB
[0064] S1.2. Build an index module for the metadata of remote sensing images. By real-time collecting, updating all metadata and storing it in the database index table, the index table includes the original fields and records in the metadata in S1.1, and adds a file storage location field and the corresponding URI record.
[0065] In this embodiment, the file storage location is the storage location of the COG format file.
[0066] S1.3. Build a module for storing remote sensing image data in blocks, and store the COG format file in the data warehouse. In this embodiment, the data warehouse is the HDFS file storage system of a server or a server cluster.
[0067] S2. Tile generation process;
[0068] S2.1. The client initiates a tile request. The tile is a web Mercator tile. In this embodiment, the request is an HTTP request, which can carry parameters x, y, and z, representing the tile row number, column number, and zoom level respectively. It can also carry visualization conversion algorithm parameters. In this embodiment, the visualization conversion algorithm parameters are the RGB channel image pixel matrix processing expressions, as shown in Equation 1:
[0069]
[0070] In the formula, U, V, and W are the corresponding pixel matrices of the red, green, and blue bands in the remote sensing data, R, G, and B are the pixel matrices of the three color spaces after visualization conversion, and the parameters a, b, c, d, e, f, g, h, and i in the conversion matrix are constants.
[0071] S2.2. According to the tile row number x, column number y, and zoom level z of the tile, obtain the corresponding longitude and latitude range box. In this embodiment, the tile coordinate system adopts the WMTS specification, and the conversion formula is as shown in Equation 2:
[0072]
[0073] In the formula, lon and lat are the longitude and latitude of the upper left corner of the tile respectively. Combining with the tile size at this zoom level z, the longitude and latitude range box corresponding to the tile can be obtained.
[0074] S2.3. According to the longitude and latitude range box, by matching the image position information in the database index table in S1.1, filter the list of metadata records that meet the conditions in this table. The number of elements n in the metadata list is n >= 1;
[0075] S2.4. Combine the returned metadata record list and the longitude and latitude range box in S2.2 to calculate the data coverage. The data coverage calculation formula is as shown in Equation 3:
[0076]
[0077] In the formula, cov represents the coverage value of the remote sensing image; T represents the space enclosed by the longitude and latitude range box; I represents the space corresponding to the geographical location information in each record of the metadata record list; union() is a function for performing a union operation on a spatial data set; intersection() is a function for performing an intersection operation on a spatial data set; area() is a function for calculating the area.
[0078] Then, select one or more metadata records from the returned metadata record list as the metadata record list according to the rule. The rule is:
[0079] If among the metadata record list, the coverage after spatial calculation corresponding to the geographical location information in m records is 1, then select the first metadata record that meets the rule, where m >= 1;
[0080] If among the metadata record list, after taking the union of the spaces corresponding to the geographical location information in a total of n records, the coverage is 1, then select these n metadata records;
[0081] If among the metadata record list, after taking the union of the spaces corresponding to the geographical location information in all records, the coverage is still less than 1, then select all the metadata records in this metadata record list.
[0082] S2.5. According to the storage locations of the corresponding COG format files in the metadata record list selected in S2.4, obtain the corresponding COG format file list, and request all eligible data block data in the remote sensing image data block storage module in S1.3 through the data block displacement information in the label directory of the COG file and the zoom level request information carried in S2.1 and return it;
[0083] S2.6. Synthesize all the data block data returned in S2.5 into an overall image data;
[0084] S2.7. Execute a visualization conversion algorithm on the overall image data in S2.7, adjust the pixel values in the overall picture, and finally output real-time tile data.
[0085] In this embodiment, the visualization conversion algorithm is the image matrix processing expression in S2.1.
[0086] In view of the drawbacks of the tiling preprocessing method in the interactive online remote sensing data service under the background of massive remote sensing data, the present invention proposes a method for real-time tile generation, which converts the entity data of the target remote sensing image data into a specified TIFF format file. The test experiment shows that compared with the traditional tile generation method, the time consumption and storage space occupation in the tile generation process of this method are significantly reduced, so as to support real-time tile data generation, greatly improving the service ability of the business system; and users can customize the visualization conversion algorithm when requesting tiles, and can conveniently conduct interactive real-time remote sensing image data exploration on the basis of obtaining real-time tile data, greatly improving the user experience and having strong practicability.
[0087] It will be understood that the present invention is described by way of some embodiments, and those skilled in the art will appreciate that various changes or equivalent substitutions may be made to these features and embodiments without departing from the spirit and scope of the present invention. Additionally, under the teachings of the present invention, these features and embodiments may be modified to adapt to specific circumstances and materials without departing from the spirit and scope of the present invention. Therefore, the present invention is not limited by the specific embodiments disclosed herein, and all embodiments falling within the scope of the claims of the present application belong to the scope protected by the present invention.
Claims
1. A method for real-time generation of satellite remote sensing image tiles, characterized in that: It includes the following working steps: S1. Build a remote sensing image data warehouse; S1.
1. Real-time collect remote sensing image data from the satellite data center; S1.
2. Preprocess the remote sensing images. Through the preprocessing of the remote sensing images, perform operations such as reprojection, geometric correction, and radiometric correction on the entity data of the remote sensing image data, and finally convert it into a TIFF format file; S1.
3. Build an index module for the metadata of the remote sensing images. By real-time collecting and updating all the metadata and storing it in the database index table, the index table includes the original fields and records in the metadata in S1.1, and add a file storage location field and the corresponding URI record. The file storage location is the storage location of the TIFF format file; S1.
4. Build a module for storing the remote sensing image data in blocks, and store the TIFF format file in S1.1 in the data warehouse; The data warehouse is a distributed file storage system of a server or a server cluster; S2. Tile generation process; S2.
1. The client initiates a tile request. The tile is a web Mercator tile, and the request is an HTTP request. The request can carry x, y, z parameters and visualization conversion algorithm parameters. The x, y, z parameters represent the tile row number, column number, and zoom level respectively. Optionally, the visualization conversion algorithm parameter is an image matrix processing expression. Optionally, the visualization conversion algorithm parameter is a user-defined algorithm script; S2.
2. Obtain the corresponding longitude and latitude range box according to the row number, column number, and zoom level of the tile; S2.
3. According to the longitude and latitude range box, by matching the image position information in the database index table in S1.1, filter the list of metadata records that meet the conditions in the table. The number of elements n in the metadata list is n>=1; S2.
4. Calculate the data coverage by combining the returned list of metadata records and the longitude and latitude range box in S2.2, and select one or more metadata records according to the rules in the returned list of metadata records; S2.
5. According to the storage location of the corresponding TIFF format file in the metadata record or list of metadata records selected in S2.4, obtain the corresponding TIFF format file or list of TIFF format files. Through the displacement corresponding to the data block in the tag directory of the TIFF file and the zoom level request information carried in S2.1, request all the data block data that meet the conditions in the remote sensing image data block storage module in S1.3 and return it; S2.
6. Synthesize the list of data block data returned in S2.5 into an overall image data; S2.
7. Execute a visualization conversion algorithm on the overall image data in S2.7, adjust the pixel values in the overall picture, and finally output real-time tile data.
2. The method for real-time generation of satellite remote sensing image tiles according to claim 1 is characterized in that: The target remote sensing image data includes, but is not limited to: metadata and the entity data. The metadata is public data that can be obtained for free and includes: data name, satellite information, sensor information, image acquisition time, cloud cover information, image location information, and image download address. Among them, the image location information includes, but is not limited to: upper left latitude, upper left longitude, upper right latitude, upper right longitude, lower right latitude, lower right longitude, lower left latitude, and lower left longitude. The entity data is the data that truly contains the pixel information of the remote sensing image.
3. The real-time generation method of satellite remote sensing image tiles according to claim 1, characterized in that: The TIFF format file includes: a file header, at least one image information, and a tag directory. The TIFF format file is a COG (Cloud Optimized GeoTIFF) format file. The COG file format supports reading all the tag directories first, and then reading the target data block data list according to the displacement information corresponding to the data blocks.
4. The real-time generation method of satellite remote sensing image tiles according to claim 1, characterized in that: The image information is a full-size image or thumbnails at each zoom level. The zoom level is an integer and is specified during the conversion process. The image information is sliced into multiple data blocks according to the zoom level and stored dispersedly in the TIFF format file.
5. The method for real-time generation of satellite remote sensing image tiles according to claim 1, wherein: The tag directory includes at least one tag. The content of the tag includes, but is not limited to: the pixel depth of the image, per-pixel band information, RGB encoding, geographic information, the displacement information corresponding to the data block, and the displacement of the next image. Among them, the geographic information includes, but is not limited to: geographic location information and spatial scale information. The displacement of the next image is used to locate the starting position of the data of the next image information.
6. The method for real-time generation of satellite remote sensing image tiles according to claim 1, wherein: During the conversion process, parameters can be specified to generate the relevant tag information in the thumbnail, the data block, and the tag directory. The parameters include, but are not limited to: the zoom level, the type of compression algorithm, and the external thumbnail reference. The conversion process takes a few minutes, while the time taken for tile segmentation and tile uploading in the traditional tile service is about ten minutes.
7. The method for real-time generation of satellite remote sensing image tiles according to claim 1, characterized in that: The calculation formula for the data coverage is shown in Equation 1: In the formula, cov represents the coverage value of the remote sensing image; T represents the space enclosed by the longitude and latitude range box; I represents the space corresponding to the geographic location information in each record of the metadata record list; union() is a function for performing a union operation on a spatial data set; intersection() is a function for performing an intersection operation on a spatial data set; area() is a function for calculating the area.
8. The method for real-time generation of satellite remote sensing image tiles according to claim 1, wherein: The rules are as follows: a. If, in the metadata record list, the calculated coverage of the space corresponding to the geographic location information in m records is 1, then select the first metadata record that meets the rule, where m >= 1; b. If, in the metadata record list, after taking the union of the spaces corresponding to the geographic location information in a total of n records, the coverage is 1, then select these n metadata records; If, in the metadata record list, after taking the union of the spaces corresponding to the geographic location information in all records, the coverage is still less than 1, then select all the metadata records in the metadata record list.
Citation Information
Patent Citations
Distributed visible light remote-sensing image dynamic object detecting and analyzing system
CN108932303A
Global massive remote sensing data organization and management method and system
CN111552753A