Section-free image service system and method based on dynamic projection and real-time mosaic
The non-slicing image service system, which combines dynamic projection and real-time mosaicking, solves the problems of redundant storage and high update latency in remote sensing image services. It enables flexible coordinate system transformation and seamless stitching of multiple images, thereby improving the efficiency and visualization capabilities of remote sensing image services.
Patent Information
- Application Number
- CN202511703076.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-19
- Publication Date
- 2026-02-13
AI Technical Summary
Existing technologies suffer from redundant storage, high update latency, and inability to flexibly handle arbitrary coordinate system transformations and multi-scene mosaicking requirements when processing remote sensing image services. They are particularly difficult to meet high-performance requirements in high-frequency, real-time service scenarios.
The system employs a slice-free image service based on dynamic projection and real-time mosaicking, including a raw data repository, a request processing engine, a dynamic projection module, an image service module, and a cache management module. The dynamic projection module performs real-time coordinate transformation and resampling, the image service module provides single-scene or multi-scene image services, and multi-level cache management is used to accelerate response.
It enables on-demand projection and dynamic combination, reduces storage space requirements, improves service flexibility and response speed, and can seamlessly mosaic multiple images in seconds. It supports cross-platform, multi-source remote sensing data fusion applications and dynamic visualization.
Smart Images

Figure CN121523618A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of geographic information, remote sensing image processing and service, and particularly relates to a slice-free image service system and method based on dynamic projection and real-time inlay. BACKGROUND
[0002] With the rapid development of remote sensing technology, the scale, source and type of remote sensing data in China have shown explosive growth, and the daily acquisition capacity has reached the PB level, forming a normalized monitoring capability covering multiple fields. However, when these massive, multi-source and heterogeneous data are converted into online image services, the existing technical system faces serious challenges.
[0003] Currently, the mainstream online image service widely relies on the pyramid pre-slice (Tile Cache) technology. This technology improves the front-end access speed by pre-cutting the image into standard tiles, but its inherent defects are increasingly prominent in the era of massive data. On the one hand, pre-slicing generates a large amount of redundant data, resulting in high storage costs and serious resource waste, with a large amount of storage space occupied by low-frequency access tile data. On the other hand, this technology mode is rigid and has poor flexibility. Once the original data is updated or the user needs a different coordinate system, it is necessary to spend a lot of time to regenerate all the slices, which cannot meet the needs of data high-frequency update and dynamic application scenarios, and the problem of high update delay is particularly prominent.
[0004] At the same time, the coordinate reference system conversion frequently involved in the cross-system and cross-regional application of remote sensing data is another big difficulty faced by the existing technology. The current technology mostly uses open source libraries such as GDAL and PROJ for offline or batch conversion, but in the high-frequency and real-time online service scenario, these methods have significant shortcomings in conversion efficiency, interface integration complexity, precision guarantee and system scalability, and are difficult to meet the high-performance needs of high concurrency and real-time inlay, becoming a key bottleneck in the service process.
[0005] In addition, the traditional backend data storage and management method also cannot adapt to the challenges brought by massive data. The management method based on file system or traditional spatial database lacks sufficient flexibility and scalability when facing high-frequency concurrent access of TB to PB level data, and cannot dynamically schedule storage resources according to data access heat, which further limits the efficiency and sustainability of the entire service system.
[0006] It is urgent to develop a new method of remote sensing image service that can get rid of the traditional pre-slice mode and realize on-demand dynamic projection, real-time seamless inlay and intelligent storage management to cope with the current technical challenges.
[0007] Two public technical materials close to the present application are pointed out, and their remaining technical problems are pointed out.
[0008] Related technology 1: US 8655073 B2 (System and method for converting sourceimage data to tile …) proposes a remote sensing image service system based on a tile mechanism. The system first generates multiple tiles from the image according to a predetermined scaling level, and then the client requests the service in a fixed tile manner.
[0009] Technical issues exist: This technology relies on a pre-generated image tile library, which consumes significant storage space and incurs substantial preprocessing overhead, making it inflexible in handling arbitrary coordinate system transformations and resolution requests. Furthermore, it does not provide in-depth descriptions of real-time coordinate system transformations and multi-scene mosaicking strategies.
[0010] Related technology 2: US 7873238 B2 (Mosaic oblique images and methods of making and using …) proposes a method for reprojecting, selecting, and stitching multiple oblique images to generate oblique-mosaic images, involving pixel reprojection, terrain modeling, longitudinal structure correction, etc.
[0011] Technical issues: While this technique encompasses multi-scene mosaicking and coordinate transformation, it primarily targets oblique image scenes and fails to propose a service mechanism for arbitrary target coordinate systems, arbitrary resolutions, and without the need for tiling. Furthermore, the method lacks a systematic description of caching mechanisms, real-time service processes, multi-scene color equalization, and optimal mosaicking line algorithms.
[0012] In summary, both existing technologies have shortcomings in terms of slice preprocessing, coordinate transformation, multi-scene mosaicking, real-time service, and cache management. This invention aims to solve these problems through technical features such as "no slicing required, dynamic projection, real-time mosaicking, and multi-level caching". Summary of the Invention
[0013] To address the problems existing in the prior art, this invention provides a slice-free image service system and method based on dynamic projection and real-time mosaicking.
[0014] This invention is implemented as follows: a slice-free image service system based on dynamic projection and real-time mosaicking includes:
[0015] The system includes a raw data repository, a request processing engine, a dynamic projection module, an image service module, and a cache management module.
[0016] The raw data repository, connected to the request processing engine and cache management module, is used to store raw, untiled remote sensing images.
[0017] The request processing engine is connected with the original data storage, the dynamic projection module, the image service module and the cache management module, and is used for parsing a client request to extract a spatial range, a target coordinate system and a resolution and the like service parameters.
[0018] The dynamic projection module is connected with the request processing engine and the image service module, and is used for performing real-time coordinate conversion and resampling on image data read from the original data storage according to the target coordinate system.
[0019] The image service module is connected with the request processing engine, the dynamic projection module and the cache management module, and is configured to: when a request range covers a single image, serving the single-scene image processed by the dynamic projection module as a single-scene service module; and when the request range covers multiple images, serving the multiple-scene images after real-time geometric matching, color balancing and seamless mosaic processing as a multi-scene dynamic mosaic module.
[0020] The cache management module is connected with the original data storage, the request processing engine and the image service module, and is used for performing multi-level caching on processing results of the modules to accelerate response of subsequent requests.
[0021] Further, the dynamic projection module further comprises a parallel computing unit based on a graphic processing unit (GPU), and supports high-precision coordinate conversion by using a Bursa seven-parameter model.
[0022] Further, the multi-scene dynamic mosaic module further comprises:
[0023] An image matching unit: a three-level spatial index system is used to quickly match the multiple-scene images;
[0024] A color balancing unit: used for eliminating color differences between the multiple-scene images;
[0025] A mosaic line calculation unit: used for finding an optimal mosaic line based on a graph cut algorithm;
[0026] A feathering fusion unit: used for pixel fusion along the optimal mosaic line.
[0027] Further, the cache management module adopts a three-level cache architecture, which comprises a GPU video memory cache, a memory cache and a disk cache.
[0028] Another object of the application is to provide a slice-free image service method based on dynamic projection and real-time mosaic, which comprises the following steps:
[0029] Step 1: receiving a client request and parsing spatial range, target coordinate system and resolution parameters in the request;
[0030] Step 2, according to the spatial range, matching at least one relevant original remote sensing image from an original data repository;
[0031] Step 3, performing real-time dynamic projection on the matched at least one image to convert it into the target coordinate system;
[0032] Step 4, if multiple images are matched in Step 2, further performing real-time color balancing and seamless mosaic processing to generate a single mosaic image;
[0033] Step 5, returning the image generated in Step 3 or Step 4 as a processing result to the client;
[0034] Step 6, storing the image result returned in Step 5 in a multi-level cache according to a preset strategy;
[0035] Step 7, when the image data in the original data repository is updated, automatically invalidating the processing result related to the image in the multi-level cache.
[0036] Further, the seamless mosaic processing step further comprises:
[0037] calculating an optimal mosaic line based on a Graph Cut algorithm;
[0038] using a multi-band feathering fusion algorithm to perform seamless splicing along the optimal mosaic line.
[0039] Another object of the present application is to provide a computer device comprising a memory and a processor, the memory storing a computer program, the computer program being executed by the processor to cause the processor to perform the steps of the slice-free image service method based on dynamic projection and real-time mosaic.
[0040] Another object of the present application is to provide a computer readable storage medium storing a computer program, the computer program being executed by a processor to cause the processor to perform the steps of the slice-free image service method based on dynamic projection and real-time mosaic.
[0041] Another object of the present application is to provide an information data processing terminal for implementing the slice-free image service system based on dynamic projection and real-time mosaic.
[0042] In combination with the above technical solutions and solved technical problems, the technical solution to be protected by the present application has the following advantages and positive effects:
[0043] The present application aims to overcome the above-mentioned shortcomings of the existing pre-slice image service, and provides a more flexible, efficient, storage-saving, support-on-demand projection and dynamic combination of image online service system and method. The specific goals include:
[0044] First, enhance service flexibility, support users to specify any projection of image service on demand, realize on-demand output, meet diversified needs. Create an intelligent "coordinate system service hub", which can understand the original coordinate system of data, the target coordinate system of service and the coordinate system of user request, and automatically and efficiently complete the coordination and conversion route among the three, realize "many-to-one" and "one-to-many" coordinate system service.
[0045] Second, to solve the problem of high cost of traditional pre-slice storage and high update delay, the present application abandons the mode of pre-generated and stored slices, and directly provides services based on original image data.
[0046] Finally, to overcome the limitation of traditional mosaic service that requires pre-splicing slices, the present application designs a multi-scene dynamic mosaic service mechanism, supports dynamic combination of multi-scene images in specific areas on demand, realizes seamless splicing service, realizes on-demand provision of diversified service combinations, and greatly expands the application scenarios of data.
[0047] 1、The present application directly provides online services based on original image data, avoiding the problem of redundant storage caused by pre-generated and stored massive tiles, saving up to 90% of storage space. At the same time, when the original data is updated, the system does not need to perform time-consuming re-slicing process, and can realize one-key update and release of service, completely solving the core pain points of long data update cycle and high delay in traditional technology.
[0048] 2、The present application can respond to the on-demand service request of the client for any coordinate system, any spatial range and resolution through the integrated dynamic projection engine and real-time mosaic module. The system can expand the required support coordinate system and convert in real time with high precision, complete seamless mosaic of multi-scene images within seconds, generate visually consistent splicing results, and effectively support the fusion application and dynamic visualization of cross-platform and multi-source remote sensing data.
[0049] The technical scheme of the present application solves the technical problems that people have been eager to solve but have failed to succeed:
[0050] In the conversion technology of complex and diverse coordinate systems, the traditional technical method is to convert entity data into a standard data coordinate system, or to maintain the original data coordinate system, and when different application requirements arise, temporary conversion is performed. The present application realizes that each entity data stored in the database is marked with its original coordinate system by metadata. When a unified coordinate system service is needed (for example, unified as CGCS2000), the system does not physically convert all data, but dynamically establishes a virtual and unified view in the service layer, and performs real-time and on-demand coordinate conversion of data in non-CGCS2000 coordinate system, and then logically seamlessly splices with data in CGCS2000, and finally presents a unified CGCS2000 service to the user, realizing "real-time coordinate conversion and aggregation at the service level". The above-mentioned unified service (such as CGCS2000 service) itself can also be a logical service endpoint to accept user requests with different coordinate system parameters. When the user requests the service and specifies the need for WGS84 coordinate system, the system will intelligently perform real-time conversion of this unified service (which is logically CGCS2000) again, and finally returns to the user in WGS84 coordinate system. This realizes a service endpoint that can respond to multiple coordinate system requirements.
[0051] In the second aspect, in the traditional mosaicking technology, when an application needs to display or process an area with a coverage greater than a single entity data, physical mosaicking of multiple entity data involved must be performed in advance. This processing method has three core contradictions: the contradiction between data processing time and real-time requirement, physical mosaicking is a computationally intensive process, which takes a very long time for massive data (such as high-resolution satellite images), requires high storage and computing devices, and cannot meet the user's real-time or quasi-real-time application requirements. The contradiction between data redundancy storage and storage cost efficiency, the mosaicked result data is stored as a new file, which is highly redundant with the original entity data. This not only occupies a huge storage space, but also when the original data is updated, the mosaicked result will be immediately invalidated, causing double waste of storage resources and computing resources. The contradiction between data use flexibility and service singularity, a physical mosaicking fixes the data combination method, and the service is fixed as a single data block. Users cannot dynamically adjust the mosaicking range or content, and the system flexibility is very poor.
[0052] The present application deeply analyzes the above-mentioned contradiction, introduces the core idea of "virtual mosaic", and the advancement of the technical means lies in that the physical mosaic process which must be completed in the front-end data layer in the past is decoupled into a new architecture in which the background data remains independent and the front-end service is logically reconstructed. The system still stores independent and original entity images in the database, and only when responding to a service application, a "virtual mosaic view" is dynamically established in the service logic layer according to the range of user request. The "virtual mosaic view" is not a new physical file, but through spatial indexing, service metadata and coordinate registration technology, multiple independent entity data are dynamically logically spliced into a complete and large-range data service. For the user, what he perceives is a complete and already-mosaicked service, thereby realizing the intuitive experience of "what you see is what you get". BRIEF DESCRIPTION OF DRAWINGS
[0053] Figure 1 is a structure block diagram of a slice-free image service system based on dynamic projection and real-time mosaic provided by an embodiment of the present application.
[0054] Figure 2 is a flowchart of a slice-free image service method based on dynamic projection and real-time mosaic provided by an embodiment of the present application.
[0055] Figure 3 is a technical scheme diagram of a slice-free image service system based on dynamic projection and real-time mosaic provided by an embodiment of the present application.
[0056] Figure 4 is an example diagram of a cache architecture and a distributed framework provided by an embodiment of the present application.
[0057] Figure 5 is a dynamic projection processing flowchart provided by an embodiment of the present application.
[0058] Figure 6 is a single / multi-scene dynamic mosaic mode processing flowchart provided by an embodiment of the present application.
[0059] Figure 7 is a slice-free service publishing technical flowchart provided by an embodiment of the present application.
[0060] Figure 1 In the center: 1, original data storage; 2, request processing engine; 3, dynamic projection module; 4, image service module; 5, cache management module. DETAILED DESCRIPTION
[0061] In order to make the purpose, technical scheme and advantages of the present application more clear and understandable, the present application is further described in detail below in combination with embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and do not limit the present application.
[0062] As Figure 1 shown, the application embodiment provides a kind of based on dynamic projection and real-time inlaying slice-free image service system, which includes:
[0063] Original data storehouse 1, request processing engine 2, dynamic projection module 3, image service module 4, cache management module 5;
[0064] Original data storehouse 1, with request processing engine 2, cache management module 5 is connected, for storing the original remote sensing image without being sliced;
[0065] Request processing engine 2, with original data storehouse 1, dynamic projection module 3, image service module 4, cache management module 5 is connected, for parsing client request, to extract spatial range, target coordinate system and resolution etc.Service parameters;
[0066] Dynamic projection module 3, with request processing engine 2, image service module 4 is connected, for reading the image data from the original data storehouse according to the target coordinate system, real-time coordinate conversion and resampling are carried out;
[0067] Image service module 4, with request processing engine 2, dynamic projection module 3, cache management module 5 is connected, and it is configured as: when request range covers single image, as single scene service module, single scene image after dynamic projection module processing is served;When request range covers multiple images, as multi-scene dynamic inlaying module, multi-scene image is served after real-time geometric matching, color balance and seamless inlaying processing;
[0068] Cache management module 5, with original data storehouse 1, request processing engine 2, image service module 4 is connected, for the multi-level cache of the processing result of preceding module, to speed up the response of subsequent request.
[0069] Original data storehouse receives the remote sensing image source configured by system, and is centralizedly stored in original coordinate system with native collection format, request processing engine calls the retrieval interface of original data storehouse through index mechanism, determines the original image file needed to access according to the spatial range identification in client request and reads its basic metadata, including spatial reference, pixel resolution, image range and band information.
[0070] Request processing engine will be the target spatial range, target coordinate system, output resolution and image number etc.Parameter obtained by parsing, according to internal parameter interface rule, is passed to dynamic projection module, and image number and access range are recorded to cache management module, so that cache management module judges whether there is data block or image area that can be directly reused, so as to issue data reading instruction to original data storehouse when necessary.
[0071] The dynamic projection module, after receiving the target coordinate system and the original image data, performs projection matrix calculation from the original coordinate system to the target coordinate system through an internal coordinate conversion unit, and performs pixel-level resampling operation on the image data after the coordinate conversion is completed, so as to generate a target image block conforming to the requested coordinate reference and the requested resolution; then the projected and resampled image data is submitted to the image service module.
[0072] The image service module, after receiving the standardized image output by the dynamic projection module, determines the number of images according to the requested coverage range. When the request corresponds to a single image, the image service module directly generates service output according to the internal data blocking rule. When the request covers multiple images, the image service module sequentially calls the geometric matching unit, the brightness adjustment unit and the mosaic unit to perform common boundary reconstruction, pixel value adjustment and overlapping area processing on the multi-scene images, so as to form a continuous output image, and then output the result to the request end.
[0073] The cache management module, after receiving the output data of the image service module, writes the output image into a multi-level cache structure according to the coordinate range, the resolution level and the projection parameters corresponding to the output image. For subsequent requests, the cache management module first searches whether there is reusable data block according to the spatial index and parameter comparison mechanism, and if it is hit, the cache data is directly returned to the image service module or the request processing engine, and if it is not hit, the above processing flow is triggered again to ensure that the overall operation sequence and data access logic of the system remain consistent.
[0074] The dynamic projection module provided by the embodiment of the application further includes a parallel computing unit based on a graphics processing unit (GPU) and supports high-precision coordinate conversion using the Bursa seven-parameter model.
[0075] The multi-scene dynamic mosaic module provided by the embodiment of the application further includes:
[0076] The image matching unit: uses a three-level spatial index system to quickly match multi-scene images;
[0077] The color balance unit: used to eliminate color differences between multi-scene images;
[0078] The mosaic line calculation unit: used to find the optimal mosaic line based on the Graph Cut algorithm;
[0079] The feathering fusion unit: used to perform pixel fusion along the optimal mosaic line.
[0080] The cache management module provided by the embodiment of the application adopts a three-level cache architecture, which includes GPU video memory cache, memory cache and disk cache.
[0081] The slice-free image service system of the embodiment of the present application parses the spatial range, target coordinate system, output resolution and image level and other parameters in the request by the request processing engine after receiving the request of the client, locates the corresponding original image file in the original data storage through the internal indexing rules. The request processing engine synchronously submits the required image path and request parameters to the cache management module after completing the query range confirmation, so that the cache management module determines whether there is a reusable cache data block according to the three-level cache architecture. If the cache management module does not retrieve the data content of the corresponding parameters, the original data calling process is triggered, and the image data is output from the original data storage to the dynamic projection module for processing.
[0082] After receiving the projection parameters transmitted by the request processing engine, the dynamic projection module first calculates the coordinate conversion matrix of the original image by the internal Boolean seven-parameter model. The GPU parallel computing unit in the module performs parallel coordinate re-projection and resampling processing on each pixel of the original image according to the conversion matrix, calculates the corresponding position of the target pixel in the original image through a multi-thread block strategy, and combines the new image block conforming to the target coordinate system and the set resolution after completing the complete coordinate domain mapping. The standardized image data processed by the dynamic projection module is sent to the image service module for further processing.
[0083] After receiving the data output by the dynamic projection module, the image service module determines the processing path according to the number of images involved in the request. When the request only contains a single image, the image service module directly generates the returnable data according to the internal cutting rule. When the request involves multiple images, the image service module first uses a three-level spatial indexing system to quickly match different scene images by the image matching unit, determines the overlapping area and adjacent boundary. After completing the matching, the data is transmitted to the color balance unit for uniformity of the color baseline between images. Subsequently, the seam line calculation unit constructs an energy model based on the graph cut algorithm, and generates the most reasonable seam line for the transition of pixels through the minimum cut path. After the seam line is determined, the feathering fusion unit performs segmented pixel mixing processing on the regions on both sides of the seam line according to the preset pixel fusion strategy, to generate an overall continuous mosaic image result. The image service module organizes the processed data into output images conforming to the service specification.
[0084] The cache management module indexes and marks the image content, the corresponding spatial range, the projection parameter and the resolution after the image service module outputs data, and writes the multi-level cache system according to the priority order of the GPU video memory cache, the memory cache and the disk cache. The cache management module first matches the GPU video memory cache according to the spatial range index, the coordinate system parameter and the resolution parameter when processing subsequent requests, and if the corresponding data does not exist, the memory cache is searched, and the disk cache is further searched, and when all caches are not hit, the original image retrieval and processing flow is triggered again. Through this internal logic, the system maintains the parameter consistency and data scheduling order of the request processing link, thereby ensuring the stable connection and the integrity of the processing link between modules in the entire running process. As shown in FIG. Figure 2 The image service method provided by the embodiment of the present application based on dynamic projection and real-time inlaying includes:
[0085] S101, receiving a client request and parsing the spatial range, target coordinate system and resolution parameter in the request;
[0086] S102, matching at least one relevant original remote sensing image from an original data storage according to the spatial range;
[0087] S103, performing real-time dynamic projection on the matched at least one image to convert it into the target coordinate system;
[0088] S104, if multiple images are matched in S102, further performing real-time color balancing and seamless inlaying processing to generate a single inlaid image;
[0089] S105, returning the image generated in S103 or S104 to the client as a processing result;
[0090] S106, storing the image returned in S105 into a multi-level cache according to a preset strategy;
[0091] S107, when the image data in the original data storage is updated, automatically invalidating the processing result related to the image in the multi-level cache.
[0092] The seamless inlaying processing step provided by the embodiment of the present application further includes:
[0093] calculating an optimal inlaying line based on a Graph Cut algorithm;
[0094] performing seamless splicing along the optimal inlaying line by using a multi-band feathering fusion algorithm.
[0095] Another object of the present application is to provide a computer device comprising a memory and a processor, the memory storing a computer program, the computer program being executed by the processor to cause the processor to perform the steps of the method for free-slice image service based on dynamic projection and real-time tiling.
[0096] Another object of the present application is to provide a computer readable storage medium storing a computer program, the computer program being executed by a processor to cause the processor to perform the steps of the method for free-slice image service based on dynamic projection and real-time tiling.
[0097] Another object of the present application is to provide an information data processing terminal for implementing the system for free-slice image service based on dynamic projection and real-time tiling.
[0098] The present application is embodied as follows:
[0099] The present application provides a system and method for free-slice image service based on dynamic projection and real-time tiling, which realizes the whole process optimization from data access to service distribution through the following four technical steps (as shown in Figure 3 ):
[0100] (1) The original data repository and request processing engine are used to store the original remote sensing image data without slicing, and to parse the client request, extract the spatial range, coordinate system and resolution parameter;
[0101] (2) Real-time coordinate system dynamic conversion: Real-time coordinate conversion is the core capability to realize the dynamic adaptation of multiple coordinate systems. The system implementation principle is to convert the geographic coordinates of the original image into the target coordinate system (such as Google, Web Mercator, Map World, etc.) requested by the user in real time through a dynamic projection algorithm, without the need to store multiple versions of sliced data in advance.
[0102] (3) Single scene service and multi-scene dynamic tiling fusion mode: The system can directly provide single original image (or specified range) service on demand, with fast response speed; when the user request range covers multiple original images, the system automatically identifies and obtains related images in real time, performs dynamic, online geometric matching, color balancing and seamless tiling processing, and finally returns a seamless stitched image result.
[0103] (4) Free-slice dynamic service publishing: The system realizes one-key publishing of standard OGC WMTS / WMS service without slicing preprocessing, realizes free-slice publishing of OGC standard service of entity image data, supports real-time updating and ultra-fast browsing, greatly reduces hardware storage resources, saves slicing cost, improves service publishing efficiency, supports node parallel processing, and achieves fast processing, fast rendering and high concurrency of massive scale image data.
[0104] The technical solutions of the present application will be described in detail below in combination with the drawings and specific embodiments.
[0105] S1. Original data repository and request processing
[0106] The original data repository stores original remote sensing image data without slicing, supports multiple remote sensing data formats such as GeoTIFF, IMG, HDF5, JPEG2000, etc. The repository adopts a hierarchical storage architecture, including a hot data layer, a warm data layer and a cold data layer, and automatically schedules storage resources according to data access frequency and business needs. The request processing engine is responsible for parsing client requests (such as OGC WMS / WMTS standard requests or custom API requests), extracting key parameters, including spatial range (Bounding Box), coordinate system (CRS), resolution, output format, output size, etc. The engine supports multiple standard protocols, including WMS, WMTS and WCS protocols.
[0107] To improve system response, a three-level cache architecture and a distributed computing framework are adopted Figure 4 ), the cache architecture includes:
[0108] GPU memory cache: used to cache the hottest tile data, directly stored in GPU memory, achieving the fastest access speed. Due to the limited capacity of GPU memory, this layer of cache only stores the data with the highest access frequency, and uses LRU algorithm for management.
[0109] Redis memory cache: used to cache the second hottest tile data and intermediate calculation results, stored in Redis cluster, supporting millisecond-level response. This layer of cache has larger capacity and can store more hot data, and uses LFU algorithm for management.
[0110] SSD disk cache: used to cache data with lower access frequency but still requiring fast response, stored in local SSD hard disk. This layer of cache has the largest capacity and the lowest cost, suitable for storing a large amount of data, and uses LRU algorithm for management.
[0111] The technical process of the cache architecture is as follows:
[0112] Step 1: generate a unique cache key (Cache Key) according to the request parameters, including spatial range, coordinate system, resolution, output format, etc.
[0113] Step 2: determine the level of cache (GPU memory, Redis memory or SSD disk) according to the access frequency and importance of data;
[0114] Step 3: store the processing result in the corresponding level of cache;
[0115] Step 4: Monitor cache hit rate and dynamically adjust cache strategy;
[0116] Step 5: When the original data is updated, automatically invalidate related caches to ensure data consistency.
[0117] The distributed computing framework interface is used to distribute compute-intensive tasks to a computing cluster, supporting parallel processing and improving system response speed. The interface supports multiple distributed computing frameworks such as Spark, Dask, or Kubernetes, and can automatically select the most suitable framework based on system configuration and task characteristics. The main functions of the interface include:
[0118] Task distribution: Split compute-intensive tasks such as dynamic projection and multi-scene mosaic into multiple sub-tasks and distribute them to different computing nodes for parallel execution.
[0119] Load balancing: Real-time monitoring of resource usage (CPU, GPU, memory, network, etc.) of each computing node, dynamically allocating tasks based on resource availability to avoid delays or failures caused by computing bottlenecks.
[0120] Fault tolerance processing: In the event of node downtime, memory overflow, task crash, etc., automatically roll back and reschedule tasks, and migrate failed tasks to idle nodes for continuous execution to ensure stable processing flow.
[0121] Result aggregation: Collect the processing results of each computing node, merge and organize them to form the final output data. The specific workflow is as follows:
[0122] Step 1: Receive compute-intensive tasks from dynamic projection or multi-scene dynamic mosaic;
[0123] Step 2: Analyze task characteristics and computing resource requirements, and select the appropriate distributed computing framework;
[0124] Step 3: Split the task into multiple sub-tasks and generate a task execution plan;
[0125] Step 4: Distribute sub-tasks based on resource status of each computing node;
[0126] Step 5: Monitor task execution status and handle exceptions;
[0127] Step 6: Collect the execution results of each sub-task and perform aggregation processing;
[0128] Step 7: Return the final results to the calling module.
[0129] S2. Real-time coordinate system dynamic conversion
[0130] The present application proposes a "real-time coordinate system dynamic conversion" technology to achieve high-precision and high-efficiency coordinate conversion, such asFigure 5 as shown:
[0131] 1) Request resolution and matching. After the system receives a user request, it first performs a service request resolution process, automatically identifies the target coordinate reference system (CRS) in the request, usually identified by EPSG code (such as EPSG: 4326, EPSG: 3857, EPSG: 32649, etc.), and extracts the projection information embedded in the original image file, such as the WKT definition in GeoTIFF, image quadrangle coordinates, central meridian, projection unit, etc.
[0132] If the original data coordinate system is inconsistent with the target coordinate system, the system triggers a real-time projection conversion process. The present application uses the open source coordinate conversion engine PROJ library as the core calculation module, supports the mutual conversion of more than 2000 coordinate systems worldwide, including geographic coordinate systems, geodetic projections, and geocentric geodetic transformations (seven parameters) Typical models. In high-precision scenarios, call the Bursa seven-parameter model (Helmert Transformation), achieve sub-meter or centimeter-level spatial conversion accuracy through known control points or public reference parameters, and the conversion model is shown in equation 1.
[0133]
[0134] In the formula, α, β, γ are rotation parameters, ΔX, ΔY, ΔZ are translation parameters.
[0135] To meet the high-performance conversion requirements, the system integrates a parallel coordinate transformation calculation module based on GPU, uses CUDA technology to decompose the projection conversion task into multiple thread calculation units, supports parallel conversion efficiency of more than 10,000 coordinate points / second, and significantly improves the response ability.
[0136] 2) Standard OGC service publishing. During the conversion process, the system uses the coordinate mapping engine built by GDAL and PROJ to complete the bidirectional conversion of pixel coordinates (row and column numbers) to target geographic coordinates. Based on the affine matrix or high-order polynomial fitting algorithm (such as quadratic and cubic polynomial models), the conversion relationship between the source image and the target space is established.
[0137] For large-scale irregular grid data or split and spliced images, the present application introduces a block-by-pixel parallel computing strategy, divides the image into spatial blocks for concurrent conversion of sub-tasks, and establishes accurate projection mapping relationship at the pixel level within each block. At the same time, in order to ensure the geometric accuracy and color continuity of the target image, a cubic convolution interpolation algorithm (Cubic Convolution) is used to process the resampling process with high quality.
[0138] During the service response phase, the system embeds a coordinate transformation module in the image rendering pipeline to achieve an instant processing mode of "requesting, transforming, and serving simultaneously," eliminating the need for preprocessing or pre-projecting the entire image and significantly reducing data redundancy and maintenance costs.
[0139] To improve processing efficiency, the system is designed with a coordinate transformation parameter caching pool, which caches transformation matrices, affine models, and other parameters for commonly used coordinate system pairs in memory or on disk to avoid redundant calculations. It supports incremental transformation strategies based on the requested region, transforming only the actual service coverage area to avoid resource waste caused by full-map transformations.
[0140] 3) Adaptive Output. The system supports automatic dynamic resolution matching based on the service request range and output ratio, ensuring spatial consistency of the output image raster under different coordinate systems. After conversion, a control point verification process is executed, selecting typical boundary points and center points for coordinate comparison to determine whether the conversion error is within the tolerance range (e.g., 1m, 50cm, 10cm, etc.). If the accuracy requirements are not met, it automatically reverts to a high-precision conversion mode (e.g., a fitting algorithm based on control point inversion).
[0141] The system also establishes a coordinate transformation logging mechanism to fully record the input parameters, transformation model, error assessment results, output parameters and other metadata for each projection transformation request, which facilitates later problem tracking, quality backtracking and system optimization.
[0142] S3. Single-scene service and multi-scene dynamic mosaic fusion mode
[0143] This invention provides a single / multi-scene service module, such as Figure 6 As shown, for requests involving a single original image, this module first receives the request parameters parsed by the request processing engine, and then locates the target single-scene image in the original data repository according to the request range. During processing, the system determines whether dynamic projection is needed; if so, it calls the dynamic projection module for processing. Next, the image is scaled according to the requested resolution and output size, then cropped according to the requested spatial range, and finally converted to the requested output format. After processing, the processed image data is returned to the client, and the cache management module is notified to cache the processing result. The single-scene service module of this invention features a simple processing flow and fast response speed, making it particularly suitable for the need for rapid access to single images. By avoiding complex mosaicking processes, the system can complete request processing in a very short time, meeting the needs of application scenarios with high real-time requirements, and significantly improving the efficiency of image services and user experience.
[0144] Multi-scene dynamic mosaic module is one of the most innovative modules of the application, used to handle requests spanning multiple original images and achieve real-time seamless mosaic. The detailed processing flow of this module includes the following key components:
[0145] Image matching unit: intelligently matches all relevant original images covering the requested range. The unit uses a three-level spatial indexing system for efficient matching:
[0146] First level (coarse granularity): Geohash index division, globally encodes the image coverage area for quick positioning of the rough area;
[0147] Middle layer (structured): R-tree spatial index management, establishes R-tree index for the actual boundary range of the image, supporting quick determination of whether the image intersects the target request range;
[0148] Bottom layer (fast filtering): Bloom filter optimization for matching, constructs a Bloom filter for each image, and realizes accurate and fast matching based on the unique image ID and its key attributes.
[0149] Parallel processing unit: used for parallel processing of multi-scene image dynamic projection. The unit is based on a distributed computing framework, which distributes the projection tasks of each image to different computing nodes for parallel execution, ensuring that all images are converted to the same target coordinate system, laying the foundation for subsequent mosaic processing.
[0150] Color balance unit: used to eliminate color differences between different images. The unit uses a histogram matching algorithm to process the color consistency of overlapping area remote sensing images, eliminating color differences caused by different imaging times, sensor types or atmospheric conditions, and improving the naturalness of the mosaic effect.
[0151] Mosaic line calculation unit: used to find the optimal mosaic line based on the graph cut algorithm. The unit uses a dynamic seam detection algorithm based on feature points to automatically identify edge features (such as feature boundaries, road directions, water textures, etc.) of overlapping area remote sensing images, perform feature matching between multiple images, extract overlapping areas and automatically find the optimal seam path, avoiding crossing obvious feature boundaries. The seam line optimization objective function is as follows:
[0152]
[0153] Where λ is the balance coefficient.
[0154] Feathering fusion unit: used for pixel fusion along the mosaic line to achieve seamless stitching. The unit introduces a multi-band feathering fusion algorithm for multi-channel spectral analysis of the seam area, achieving natural fusion of color and geometry transition through weighted averaging, gradient transition, edge blurring, etc. to eliminate seam gap and brightness mutation. The feathering fusion weight calculation formula is as follows:
[0155]
[0156] where d is the distance to the seam line, and D is the blending width.
[0157] The specific workflow is as follows: firstly, the request parameter parsed by the request processing engine is received, and then the image matching unit is called to match all related original images according to the request range. Next, the parallel processing unit is called to apply dynamic projection to each matched image in parallel, ensuring that all images are converted to the same target coordinate system; after the projection processing is completed, the images can be optionally geometrically precisely registered to eliminate possible slight geometric deviations between different images. Then, the color balance unit is called to perform color balance processing to eliminate color differences between different images and ensure the visual consistency of the mosaic result; then the optimal mosaic line is determined by the mosaic line calculation unit, and the feathering and fusion unit performs pixel fusion along the mosaic line to generate the final seamless stitching result. The mosaic result is scaled according to the requested resolution and output size, and is converted into the requested output format; after the processing is completed, the processed mosaic image is returned to the client, and the cache management module is notified to cache the processing result to improve subsequent access efficiency.
[0158] S34 Free-slice dynamic service publishing
[0159] The present application proposes a "free-slice dynamic service publishing" technology ( Figure 7 ), which realizes real-time service of original image data:
[0160] 1) Spatial index establishment. The present application first constructs a lightweight multi-level spatial index directory structure, pre-generates logical slice areas based on image boundary, resolution and coordinate range, and establishes a pyramid-level directory system that can be quickly located. Each directory does not contain real tile images, but only records its spatial range, zoom level and image block coordinates, realizing logical layer index and data decoupling.
[0161] In the actual service request stage, a dynamic tile rendering mechanism based on GPU parallel computing framework is adopted. The present application develops a customized tile rendering module based on the NVIDIA CUDA platform, which supports up to 256 concurrent thread executions, and each thread handles a 256x256 or 512x512 pixel tile image generation task. The tile coordinate calculation formula is as shown in the formula (1):
[0162]
[0163]
[0164] A multi-level pyramid index is constructed, and pre-computed image block meta-information at different resolutions is used to form a lightweight spatial search directory. A rendering engine reads corresponding blocks of the original image on demand, performs resampling, projection transformation, layer superposition, color matching and other image processing operations, and finally outputs dynamic tile data that meets the client's request parameters.
[0165] To improve access efficiency and user experience, the system constructs an intelligent tile caching mechanism, records the access of hot areas based on the LRU (Least Recently Used) caching algorithm, caches frequently accessed tiles in GPU memory, Redis or local SSD, and achieves fast hit and millisecond-level response.
[0166] 2) Standard OGC service publishing. In the service interface layer, the application constructs a service publishing framework compatible with OGC standards, fully supports WMTS 1.0, WMS 1.3, WCS 2.0 and other standard protocols. The system has built-in RESTful API interfaces, providing standardized service calling paths, including GetCapabilities (capability query), GetTile (tile acquisition), GetMap (map layer rendering), GetCoverage (raster data download) and other operations, which facilitates the connection of various GIS platforms and web application systems.
[0167] The system also implements automatic coordinate reference system recognition and conversion capabilities. When the client requests a specific coordinate system (such as EPSG:3857 or EPSG:4326), the system automatically recognizes the original projection parameters of the image, calls the backend re-projection module to perform image space conversion, currently supports more than 2000 EPSG encoded coordinate systems, and supports user-defined coordinate system registration and extension.
[0168] To optimize the performance of dynamic services, the application designs an on-demand image block reading mechanism to avoid the high memory occupation problem of traditional WMS services. The service rendering module only extracts the minimum enclosing block of the image in the request area, and cooperates with the multi-thread scheduling framework to achieve significant memory saving and loading acceleration.
[0169] In addition, an intelligent preloading mechanism is introduced to predict the next tile request area of the user by analyzing the client's browsing behavior (such as drag direction, zoom rhythm, time sequence request), pre-render and cache the tiles that may be accessed, achieve the response ability of "not point first reach", and further improve the interaction experience and service stability.
[0170] Table 1 Remote sensing data type analysis table
[0171]
[0172] Table 2 Remote sensing data format analysis table
[0173]
[0174] The technical process of the slice-free image service system based on dynamic projection and real-time inlaying includes the following stages. The first stage is original data storage and request processing. The original remote sensing data is stored, and the parameters such as the spatial range, coordinate system and resolution of the user request are analyzed. The second stage is real-time coordinate system dynamic conversion. The multi-coordinate system real-time conversion is realized through a dynamic projection algorithm, and multiple versions of data do not need to be pre-stored. The third stage is a single scene service and a multi-scene dynamic inlaying fusion mode. The single scene or multi-scene image dynamic inlaying is realized, and the dynamic online geometric matching, color balance and seamless inlaying processing are completed. The fourth stage is a slice-free dynamic service publishing. The slice does not need to be pre-processed, and the OGC standard service is directly published, which supports real-time updating and high-concurrency access.
[0175] Figure 3 Slice-free image service system based on dynamic projection and real-time inlaying
[0176] Based on the three-level cache architecture proposed in the application, based on the task request initiated by the user, according to the task characteristics, the appropriate framework is automatically selected, the cache key is generated and the sub-task is decomposed, the cache level is determined according to the task computing resource demand and the sub-task is distributed, the GPU, memory and disk cache resources in the cache architecture are fully utilized to process tasks at all levels, and dynamic monitoring is implemented, and finally the task result aggregation is realized.
[0177] Figure 4 Cache architecture and distributed framework example diagram
[0178] The real-time coordinate system dynamic conversion technology avoids generating redundant slices for different coordinate systems, reduces the storage cost, and at the same time can support any coordinate system request, is compatible with mixed application of multiple sources of data, such as satellite image and vector map overlay, solves the storage and management bottleneck brought by multiple versions of slices, and provides a unified and efficient data service foundation for cross-platform and multi-terminal remote sensing application.
[0179] Figure 5 Dynamic projection processing flowchart
[0180] The virtual inlaying core process includes: 1) unified management of metadata and construction of spatial index; 2) real-time response to requests based on a rule-based dynamic processing engine, and on-demand coordinate conversion, band matching, seam fusion and other calculations; 3) generation of standardized service interfaces (such as WMS / WMTS), and provision of virtual inlaying views according to range, resolution and phase calling to the outside.
[0181] Figure 6 Single scene / multi-scene dynamic inlaying mode processing flowchart
[0182] The slice-free service takes dynamic rendering as the core, and calls real-time images through efficient spatial index construction and standardized service publishing. Based on image metadata automatic analysis of geospatial framework, the target area corresponding to the original data block is quickly located. In the service publishing stage, the system screens the matching data block from the spatial index according to the request range and level, generates an image segment conforming to the target resolution, and outputs it as a map layer that can be directly called through a standardized OGC service interface (such as WMS, WMTS).
[0183] Figure 7 Slice-free service publishing technical process
[0184] Embodiment
[0185] In order to better understand the technical solutions of the present application, two specific embodiments are provided below.
[0186] Embodiment 1: Single-scene image dynamic projection service (single scene + dynamic projection):
[0187] This embodiment simulates a scenario in which a user requests to obtain a single-scene image service of a specific area, a specific UTM projection, and a 0.5-meter resolution.
[0188] Scenario setting:
[0189] Original data: The original image data is stored in a hierarchical storage system. According to its access frequency, a high-frequency access original image (coordinate system WGS84 geographic coordinate system (EPSG: 4326)) is scheduled to the hot data layer (high-performance SSD).
[0190] User request: The client obtains an image of a physical area through a standard WMS GetMap request.
[0191] Specific steps:
[0192] Step 1: Receive and analyze WMS request
[0193] The request processing engine receives an HTTP GET request, and the URL parameters are as follows:
[0194] `SERVICE=WMS`
[0195] `VERSION=1.3.0`
[0196] `REQUEST=GetMap`
[0197] `LAYERS=Satellite_Imagery`
[0198] `CRS=EPSG:32649` (target coordinate system: UTM Zone 49N)
[0199] `BBOX=500000,4000000,501000,4001000` (Target range, unit: meters)
[0200] `WIDTH=2000`
[0201] `HEIGHT=2000` (Output image size, combined with BBOX to calculate resolution as 0.5 meters)
[0202] `FORMAT=image / jpeg`
[0203] Step 2: Cache Query
[0204] The system generates a unique cache key based on the request parameters, such as "wms:Satellite_Imagery:EPSG32649:500000,4001000:2000x2000:jpeg". Then, the system queries the three-level cache in sequence: first checks the GPU memory cache, which is not hit; then queries the Redis memory cache, which is still not hit; finally queries the SSD disk cache, which is also not hit. Cache query fails, and the real-time processing process is entered.
[0205] Step 3: Image Positioning and Data Reading
[0206] The request processing engine forwards the request parameters to the single scene service module. This module first converts the request BBOX (UTM projection) back to the WGS84 coordinate system, and then uses the R-tree spatial index for fast query to accurately locate the original image that completely covers the range from the hierarchical storage system. Since the image is hot data, the system only reads the data block of the minimum bounding rectangle corresponding to the request range from the hot data layer, avoiding loading the entire image and saving I / O and memory resources.
[0207] Step 4: Real-time Coordinate System Dynamic Conversion
[0208] Since the original image coordinate system (EPSG: 4326) is inconsistent with the request coordinate system (EPSG: 32649), the system calls the dynamic projection module. This module integrates the PROJ library as the core conversion engine and starts the parallel computing unit based on NVIDIA CUDA to perform coordinate conversion and resampling. In this process, to ensure image quality, the resampling algorithm parameter is set to cubic convolution interpolation (Cubic Convolution). The GPU uses its large-scale parallel processing capability to efficiently convert the read image data block from the WGS84 projection and resample it to the target UTM coordinate system 2000x2000 pixel grid.
[0209] Step 5: Format conversion and response
[0210] The pixel data block generated after dynamic projection is encoded in JPEG format in real time, as shown in Table 3. The system returns the encoded image data to the user as the response body of the WMS GetMap request.
[0211] Table 3 Key parameters for JPEG format conversion
[0212]
[0213] Step 6: Result caching
[0214] After processing is completed, the system notifies the cache management module. According to the cache strategy (for example, the LFU algorithm), since it is newly generated data, the processing result (JPEG image) is stored in the SSD disk cache this time, so that subsequent requests with the same parameters can directly hit the cache, achieving millisecond-level response.
[0215] Example 2: Multi-scene image dynamic seamless mosaic service (multi-scene dynamic mosaic):
[0216] This example simulates a scenario where a user requests to obtain a seamless image map in a large range and Web Mercator projection, which spans multiple original images.
[0217] Scenario setting:
[0218] Original data: original images covering adjacent areas by multiple scenes (coordinate system: WGS84 (EPSG: 4326)) are stored in a tiered storage system. According to their recent lower access frequency, these 5 scenes of images are stored in the warm data tier (standard SATA hard disk array).
[0219] User request: a Web map client requests a seamless mosaic image layer.
[0220] Specific steps:
[0221] Step 1: Receive and parse WMS request
[0222] The request processing engine receives the request with the following parameters:
[0223] `CRS=EPSG:3857` (target coordinate system: Web Mercator)
[0224] `BBOX=-8237499,4970249,-8236499,4971249` (target range)
[0225] `WIDTH=1000`
[0226] HEIGHT=1000 (output image size, resolution is 1 meter)
[0227] FORMAT=image / png
[0228] Step 2: Cache query and image matching
[0229] The system generates a cache key and queries the cache, which is not hit. The request is forwarded to the multi-view dynamic mosaic module. The image matching unit starts a three-level spatial index for query:
[0230] 1. Geohash index: First, calculate the Geohash code according to the BBOX to quickly filter out the possible relevant image groups.
[0231] 2. R-tree index: Within the filtered groups, accurately determine through R-tree to match the boundary box of 5 images from the temperature data layer to the request range that exists overlap.
[0232] 3. Bloom filter: Quickly verify the matching results and confirm the correctness.
[0233] Step 3: Parallel dynamic projection
[0234] The system uses the Dask distributed computing framework interface to distribute the dynamic projection tasks of the 5 images to 5 different nodes of the computing cluster for parallel execution. The dynamic projection module on each node uses a cubic convolution interpolation algorithm to convert the image block it is responsible for from WGS84 (EPSG: 4326) to Web Mercator (EPSG: 3857) projection in real time.
[0235] Step 4: Color balance processing
[0236] The parallel processing unit passes the projected 5-image data to the color balance unit. This unit selects the image with the largest overlap area as the color reference and uses the Histogram Matching algorithm to adjust the color histogram of the remaining 4 images to be consistent with the reference image, eliminating color differences caused by imaging time, sensor differences, etc.
[0237] Step 5: Optimal mosaic line calculation
[0238] The mosaic line calculation unit starts the dynamic seam detection algorithm based on Graph Cut in all overlapping areas. The algorithm calculates the cost between pixels according to the optimization objective function formula 2. In this example, the balance coefficient λ is set to 0.7 to preferentially avoid building, road, and other high-gradient feature edges. The algorithm finds a path with the lowest energy on the cost map, which is the optimal mosaic line (seam line), as shown in Table 4.
[0239] Table 4 Key parameter configuration for the objective function of tessellation line calculation optimization
[0240]
[0241] Step 6: Feathering and fusion, and result generation
[0242] The feathering blending unit performs pixel blending along the calculated mosaic line. This example uses a multi-band feathering blending algorithm, with weight calculation based on Formula 3. The blending width D is set to 20 pixels, and a smooth weighted average transition is performed within a 10-pixel area on each side of the mosaic line to generate a visually seamless and complete image.
[0243] Step 7: Response and Caching
[0244] The resulting seamless 1000×1000 pixel mosaic image is encoded in PNG format and returned to the client. Simultaneously, the result is stored in a Redis memory cache, as large mosaic images are typically hotspots requiring faster subsequent access speeds.
[0245] Application Example: Providing production base map services for farmland protection projects.
[0246] In the special production of farmland protection monitoring, the scope of operation needs to be covered by 90 single-scene satellite images. If single-scene data is used, the operation will be cumbersome and involve the overlapping relationship between data from multiple production projects. Improper operation can easily lead to data inconsistency. Therefore, it is necessary to provide mosaicked image services as production base maps.
[0247] Application process of this invention:
[0248] Service Application: Data processors for the farmland protection project can directly use the interface provided by this invention's system to set filtering conditions such as time and cloud cover, using administrative divisions as the scope. The system backend automatically retrieves and lists all single-scene images (90 in total) covering the area that meet the criteria. These images are still stored as independent entities in the database and may originate from different satellite sensors, having different original coordinate systems.
[0249] One-click publishing: After the data processor confirms the data list, without any preprocessing, they can directly submit a service application for a "virtual mosaic production base map" and specify the output coordinate system as the unified coordinate system (such as CGCS2000) stipulated by the farmland protection project.
[0250] Background processing and service generation: after receiving the application, the virtual mosaic processing module cooperates with the coordinate conversion engine to automatically execute the following processes: dynamically matching the 90 single-scene images in space index, automatically converting the images in non-target coordinate system to the unified CGCS2000 coordinate system in real time; seamlessly mosaic and edge processing of all images in memory, generating a complete "virtual mosaic view" covering the entire administrative region.
[0251] Application implementation effect: the entire processing flow is completed within a few minutes, and a standardized WMTS / WMS service address is generated. All project members can directly load this service address into their GIS production software (such as ArcGIS, QGIS) as a continuous, seamless, and coordinate-unified working base map. Through the invention, the base map preparation time is shortened from "days" to "minutes", and the data inconsistency problem caused by multiple manual mosaics is completely eliminated.
[0252] To verify the beneficial effects brought by the system of the present application, the following comparative experiments are designed to compare the present application with the traditional "pre-mosaic-post-release" method.
[0253] 1. Experimental setup
[0254] (1) Data: 92 scenes of Gaofen-2 satellite images involved in a certain province's cultivated land protection project, with an average size of about 1.1 GB per single-scene data.
[0255] (2) Comparison object:
[0256] Comparative Example 1: The traditional "pre-mosaic-post-release" method commonly used in the industry is adopted. That is, manually pre-process the 92 scenes of images for coordinate conversion, color balancing, etc., and physically splice them into a complete raster data set, and finally publish the result as a map service.
[0257] Comparative Example 2: The mosaic data set method of professional GIS software is adopted. The paths of the 92 scenes of original images are indexed to a mosaic data set, which is directly published as an image service through a server, and the virtual mosaic effect is realized by dynamic rendering on the client side.
[0258] Inventive Example: The system described in the present application is adopted, and the virtual mosaic service application is submitted, and the data processing and service release are automatically completed by the system.
[0259] (3) The running platform configuration of the inventive example is as follows:
[0260] Processor: 2 Intel Xeon Gold 6238 22-core processors;
[0261] Memory: 256GB (8x32GB DDR4);
[0262] Storage: Hybrid storage solution with 2 x 1.92TB solid state drives as system and cache disks.
[0263] 2. Comparative result analysis
[0264]
[0265] It should be noted that the embodiments of the present application can be realized by hardware, software, or a combination of software and hardware. The hardware part can be realized by special logic; the software part can be stored in a memory and executed by a suitable instruction execution system, such as a microprocessor or a specially designed hardware. Those skilled in the art can understand that the above-mentioned devices and methods can be realized by computer executable instructions and / or included in processor control codes, for example, such codes are provided on a carrier medium, such as a magnetic disk, CD or DVD-ROM, a programmable memory, such as a read-only memory (firmware), or a data carrier, such as an optical or electronic signal carrier. The devices of the present application and their modules can be realized by hardware circuits, such as very large scale integrated circuits or gate arrays, semiconductors, such as logic chips, transistors, etc., or programmable hardware devices, such as field programmable gate arrays, programmable logic devices, etc., by software executed by various types of processors, or by a combination of the above-mentioned hardware circuits and software, such as firmware.
[0266] The above description is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto, any modification, equivalent replacement and improvement within the technical range disclosed by the present application, which is within the spirit and principle of the present application, should be covered within the protection scope of the present application.
Claims
1. A slice-free image service system based on dynamic projection and real-time mosaicking, characterized in that, The system includes: The raw data repository is used to store un-tiled remote sensing image data; The request processing engine, connected to the original data repository, is used to parse client requests and obtain spatial extent, target coordinate system, and resolution parameters; A dynamic projection module, connected to the request processing engine, is used to perform coordinate transformation and resampling on the image data obtained from the original data repository according to the target coordinate system; The image service module, connected to the dynamic projection module, is used to output a single-scene image when a corresponding single image is requested, and to perform geometric matching, color adjustment and mosaicking on multiple images when multiple images are requested. The cache management module, connected to the image service module, is used to perform multi-level caching on the processed image data and provide cache scheduling support to the request processing engine.
2. The system as described in claim 1, characterized in that, The dynamic projection module includes a parallel computing unit based on a graphics processor and uses a spatial coordinate transformation model consisting of seven parameters to perform the transformation from three-dimensional coordinates to the target coordinate system.
3. The system as described in claim 1, characterized in that, The image service module includes an image matching unit, a color balance unit, a mosaic line calculation unit, and a pixel fusion unit.
4. The system as described in claim 3, characterized in that, The image matching unit uses a three-level spatial index structure to establish spatial retrieval relationships between multiple images.
5. The system as described in claim 3, characterized in that, The mosaic line calculation unit determines the transition boundary line between images based on the minimum cut principle, and the pixel fusion unit performs pixel-level fusion along the boundary line.
6. The system as described in claim 1, characterized in that, The cache management module adopts a three-level cache architecture, including video memory cache, memory cache and disk cache.
7. A method for providing slice-free image services based on dynamic projection and real-time mosaicking, characterized in that, The method includes: Receive client requests and parse spatial extent, target coordinate system, and resolution parameters; At least one original image is determined from the original data repository based on the spatial extent; Perform coordinate transformation and resampling on the original image to obtain the target coordinate system image; When the number of at least one image is greater than 1, geometric matching, color adjustment and image mosaicking are performed on each image; The processed image is written to a multi-level buffer and then output to the client.
8. The method as described in claim 7, characterized in that, The coordinate transformation adopts a spatial transformation model consisting of seven parameters, and performs the calculation and resampling of the corresponding pixel positions through parallel computing.
9. The method as described in claim 7, characterized in that, The image mosaicking process includes calculating the boundary lines between images based on the graph cut principle and performing pixel fusion along the boundary lines.
10. The method as described in claim 7, characterized in that, When the original data is updated, the cached content corresponding to the image is invalidated and the image processing flow is re-executed.
Citation Information
Patent Citations
Device for stabilizing and pressure distributing of a framing element
EP0032649A1
Mosaic oblique images and methods of making and using same
US7873238B2
System and method for converting source image data to tile data
US8655073B2
Multi-temporal remote sensing data display method and device, equipment and medium
CN115203594A
Slicing-free remote sensing image loading method, device, equipment and medium
CN116910290A
Cited By
Index file generation method, land image information tracing method and tile image generation method
CN122196206A
A WMS map hierarchical management method, system, device and medium
CN122286805B