Image data organization and visualization method and system suitable for embedded platform

By applying the tile pyramid principle and user touch screen action update methods on the embedded platform, the challenges of massive remote sensing image data storage and processing in embedded geographic information systems are solved, and efficient image data organization and visualization are achieved.

CN115168516BActive Publication Date: 2025-04-15CHINESE PEOPLES LIBERATION ARMY UNIT 61540 +2
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210616854.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-01
Publication Date
2025-04-15
Estimated Expiration
2042-06-01

AI Technical Summary

Technical Problem

In embedded geographic information systems, how to effectively and intelligently store and process massive remote sensing image data, especially in the context of limited storage space and efficient rendering requirements.

Method used

The tile pyramid principle is adopted to obtain the images of remote sensing images under different scales, build compressed tile package files and tile index files, and update the cache tile set according to the user's touch screen actions, realizing the organization and visualization of image data on the embedded platform.

Benefits of technology

With the limited storage space of the embedded platform, efficient organization and visual processing of a large amount of image data is realized, improving the efficiency and user experience of data processing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115168516B_ABST
    Figure CN115168516B_ABST
Patent Text Reader

Abstract

The present invention provides an image data organization and visualization method and system suitable for an embedded platform, which relates to the technical field of data retrieval and its database structure. The tile pyramid principle is used to obtain a compressed tile package file and a tile index file of a remote sensing image; according to a cache tile group of the embedded platform and a touch screen action of a viewport user, an updated cache tile group is obtained; the embedded platform retrieves and decompresses multiple tile compressed data corresponding to the updated cache tile group in the compressed tile package file according to the tile index file to obtain multiple tile cache data; and renders multiple tile cache data corresponding to the updated cache display tile group to display the user's intended display image. The present invention can complete the organization and visualization of image data under the limited storage space of the embedded platform by constructing a compressed tile package file and a tile index file of a remote sensing image and updating a cache tile group.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of data retrieval and database structure thereof, and in particular to an image data organization and visualization method and system suitable for an embedded platform. Background Art

[0002] Embedded GIS (E-GIS) optimizes and reduces the functions of the GIS engine and migrates it to small mobile devices. E-GIS has the characteristics of small size, low power consumption and easy portability. With the development of remote sensing and photography technology, the resolution of remote sensing images continues to improve and the amount of data is growing. This puts higher requirements on the fast and efficient processing of massive remote sensing image data, especially in the offline data management of embedded GIS, which faces more severe challenges. How to effectively and intelligently store and process massive remote sensing data has become a research hotspot. Image map is a major type of map data in GIS. Since the organization of tile map data in embedded environment is limited by system resource space, conventional image organization model and retrieval method are difficult to fully meet the needs of multiple types of embedded terminals. Therefore, there is an urgent need for a general image data organization model and visualization solution suitable for embedded systems. Summary of the invention

[0003] The purpose of the present invention is to provide an image data organization and visualization method and system suitable for an embedded platform, which can complete the organization and visualization processing of a large amount of image data under the limited storage space of the embedded platform.

[0004] To achieve the above object, the present invention provides the following solutions:

[0005] An image data organization and visualization method suitable for an embedded platform, comprising:

[0006] Obtain remote sensing images at different scales;

[0007] According to the remote sensing images at different scales, the compressed tile package file and tile index file of the remote sensing image are obtained by using the tile pyramid principle;

[0008] According to the cache tile group of the embedded platform and the viewport user touch screen action, an updated cache tile group is obtained; the cache tile group includes a cache display tile group and a cache non-display tile group;

[0009] According to the tile index file, multiple tile compressed data corresponding to the updated cache tile group are retrieved and decompressed in the compressed tile package file to obtain multiple tile cache data;

[0010] Rendering is performed on the multiple tile cache data corresponding to the updated cache display tile group to display the image intended by the user.

[0011] Optionally, the step of obtaining a compressed tile package file and a tile index file of the remote sensing image by using a tile pyramid principle according to the remote sensing image at different scales specifically includes:

[0012] According to the tile size, the images at different scales are divided into blocks to obtain tile matrices corresponding to the images at different scales;

[0013] According to the plurality of tile matrices, a tile pyramid of the image to be processed is constructed; the plurality of block images obtained after the block processing correspond one to one with the tiles in the tile matrix; the number of layers of the tile pyramid is equal to the number of scales;

[0014] Compressing the block image corresponding to each tile in the tile pyramid respectively to obtain a plurality of tile compressed data;

[0015] Based on the tile pyramid, the plurality of tile compression data are stored in an encoded form according to a preset raster scanning order to obtain a compressed tile package file and a corresponding tile index file.

[0016] Optionally, the user touch screen action includes swiping left, swiping right, swiping up, swiping down, swiping to the upper left, swiping to the upper right, swiping to the lower left, swiping to the lower right, swiping to zoom in, and swiping to zoom out.

[0017] Optionally, obtaining an updated cache tile group according to the cache tile group of the embedded platform and the viewport user touch screen action specifically includes:

[0018] Determining a display rectangle in the tile pyramid according to the display tile group; the size of the display rectangle is equal to the viewport size of the embedded platform;

[0019] According to the display tile group, a cache rectangle is determined in the tile pyramid; the cache rectangle is concentric with the display rectangle; and the length difference and width difference between the cache rectangle and the display rectangle are both twice the side length of the tile;

[0020] When the user touch screen action is a horizontal stroke, it is determined whether there is a tile outside the fixed display rectangle in a direction opposite to the horizontal stroke direction, and a first determination result is obtained.

[0021] If the first judgment result is yes, the display rectangle and the cache rectangle are both translated in a direction opposite to the horizontal swipe direction with the tile side length as the translation distance; the horizontal swipe includes left swipe, right swipe, upward swipe and downward swipe;

[0022] Determine that a plurality of tiles corresponding to the translated display rectangle are updated display tile groups;

[0023] The multiple tiles corresponding to the translated cache rectangle are determined as an updated cache tile group.

[0024] Optionally, according to the display tile group, after determining the cache rectangle in the tile pyramid, the method further includes:

[0025] When the user touches the screen in an oblique stroke, it is determined whether there is a tile outside the fixed display rectangle in a direction opposite to the oblique stroke direction, and a second determination result is obtained.

[0026] If the second judgment result is yes, the display rectangle and the cache rectangle are both translated in a direction opposite to the oblique stroke direction, with the length of the tile diagonal as the translation distance; the oblique stroke includes an upper left stroke, an upper right stroke, a lower left stroke, and a lower right stroke;

[0027] Determine that a plurality of tiles corresponding to the translated display rectangle are updated display tile groups;

[0028] The multiple tiles corresponding to the translated cache rectangle are determined as an updated cache tile group.

[0029] Optionally, according to the display tile group, after determining the cache rectangle in the tile pyramid, the method further includes:

[0030] When the user touch screen action is a zoom stroke, determining to map the center of the display rectangle from the current layer to a mapping point on an adjacent layer; the zoom stroke includes a zoom-in stroke and a zoom-out stroke;

[0031] Determine the intersection point on the adjacent layer that is closest to the mapping point;

[0032] Taking the intersection point as the center, mapping the display rectangle and the cache rectangle onto the adjacent layer; the intersection point is the intersection point of four adjacent tiles;

[0033] Determine that a plurality of tiles corresponding to the mapped display rectangle are an updated display tile group;

[0034] The multiple tiles corresponding to the mapped cache rectangle are determined as an updated cache tile group.

[0035] Optionally, determining a mapping point for mapping the center of the display rectangle from the current layer to an adjacent layer includes:

[0036] When the zoom stroke is a magnification stroke, determining to map the center of the display rectangle from the current layer to a mapping point on an adjacent layer with a smaller scale;

[0037] When the zoom stroke is a zoom-out stroke, it is determined to map the center of the display rectangle from the current layer to a mapping point on an adjacent layer with a larger scale.

[0038] An image data organization and visualization system suitable for embedded platforms, comprising:

[0039] Image acquisition module, used to acquire remote sensing images at different scales;

[0040] The file construction module is used to obtain the compressed tile package file and tile index file of the remote sensing image based on the images of remote sensing images at different scales by using the tile pyramid principle;

[0041] A cache tile group update module, used to obtain an updated cache tile group according to the cache tile group of the embedded platform and the viewport user touch screen action; the cache tile group includes a cache display tile group and a cache non-display tile group;

[0042] A tile cache data determination module, configured to retrieve and decompress a plurality of tile compressed data corresponding to the updated cache tile group in the compressed tile package file according to the tile index file, to obtain a plurality of tile cache data;

[0043] The user intended display image display module is used to render the multiple tile cache data corresponding to the updated cache display tile group to display the user intended display image.

[0044] Optionally, the file construction module specifically includes:

[0045] A tile matrix determination unit is used to perform block processing on images at different scales according to tile sizes to obtain tile matrices corresponding to images at different scales;

[0046] A tile pyramid construction unit is used to construct a tile pyramid of the image to be processed according to the plurality of tile matrices; the plurality of block images obtained after the block processing correspond one to one with the tiles in the tile matrix; the number of layers of the tile pyramid is equal to the number of scales;

[0047] A compression unit, used for compressing the block image corresponding to each tile in the tile pyramid respectively to obtain a plurality of tile compression data;

[0048] The file construction unit is used to store the plurality of tile compression data in an encoded form according to a preset raster scanning order based on the tile pyramid to obtain a compressed tile package file and a corresponding tile index file.

[0049] Optionally, the user touch screen action includes swiping left, swiping right, swiping up, swiping down, swiping to the upper left, swiping to the upper right, swiping to the lower left, swiping to the lower right, swiping to zoom in, and swiping to zoom out.

[0050] According to the specific embodiments provided by the present invention, the present invention discloses the following technical effects:

[0051] The present invention provides an image data organization and visualization method and system suitable for an embedded platform, including obtaining images of remote sensing images at different scales; obtaining compressed tile package files and tile index files of remote sensing images according to the images of remote sensing images at different scales by using the tile pyramid principle; obtaining updated cache tile groups according to the cache tile groups of the embedded platform and the touch screen actions of the viewport user; the embedded platform retrieves and decompresses multiple tile compressed data corresponding to the updated cache tile group in the compressed tile package file according to the tile index file to obtain multiple tile cache data; rendering the multiple tile cache data corresponding to the updated cache display tile group to display the user's intended display image; the user's intended display image is a remote sensing image or a partial image of a remote sensing image. The present invention can complete the organization and visualization of image data under the limited storage space of the embedded platform by constructing compressed tile package files and tile index files of remote sensing images and updating cache tile groups. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.

[0053] Figure 1 This is a flow chart of the image data organization and visualization method in an embodiment of the present invention;

[0054] Figure 2 Schematic diagram of a pyramid organization model in an embodiment of the present invention;

[0055] Figure 3 This is a flowchart of image map organization and storage in an embodiment of the present invention;

[0056] Figure 4 Schematic diagram of the tile structure at each level in an embodiment of the present invention;

[0057] Figure 5 This is a diagram showing the correspondence between the compressed tile package file and the tile index file in an embodiment of the present invention;

[0058] Figure 6 This is the image map visualization process in the embodiment of the present invention;

[0059] Figure 7 A schematic diagram of the visible area in an embodiment of the present invention;

[0060] Figure 8 A schematic diagram of roaming in a visible area according to an embodiment of the present invention;

[0061] Fig. 9 A schematic diagram of a scheduling strategy in an embodiment of the present invention;

[0062] Fig.10 This is a schematic diagram of the tile container structure in an embodiment of the present invention;

[0063] Fig.11 A comparison diagram before and after the pyramid is constructed in an embodiment of the present invention;

[0064] Fig.12 This is a time-consuming analysis diagram for scaling multiple images in an embodiment of the present invention. DETAILED DESCRIPTION

[0065] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0066] The purpose of the present invention is to provide an image data organization and visualization method and system suitable for an embedded platform, which can complete the organization and visualization processing of a large amount of image data under the limited storage space of the embedded platform.

[0067] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.

[0068] like Figure 1 The present invention provides an image data organization and visualization method suitable for an embedded platform, comprising:

[0069] Step 101: Acquire remote sensing images at different scales;

[0070] Step 102: According to the remote sensing image at different scales, using the tile pyramid principle, a compressed tile package file and a tile index file of the remote sensing image are obtained;

[0071] Step 103: obtaining an updated cache tile group according to the cache tile group of the embedded platform and the viewport user touch screen action; the cache tile group includes a cache display tile group and a cache non-display tile group;

[0072] Step 104: according to the tile index file, retrieve and decompress multiple tile compressed data corresponding to the updated cache tile group in the compressed tile package file to obtain multiple tile cache data;

[0073] Step 105: Rendering the multiple tile cache data corresponding to the updated cache display tile group to display the image intended by the user; the image intended by the user to be displayed is a global image or a local image of the remote sensing image.

[0074] Wherein, step 102 specifically includes:

[0075] According to the tile size, the images at different scales are divided into blocks to obtain tile matrices corresponding to the images at different scales;

[0076] According to the plurality of tile matrices, a tile pyramid of the image to be processed is constructed; the plurality of block images obtained after the block processing correspond one to one with the tiles in the tile matrix; the number of layers of the tile pyramid is equal to the number of scales;

[0077] Compressing the block image corresponding to each tile in the tile pyramid respectively to obtain a plurality of tile compressed data;

[0078] Based on the tile pyramid, multiple tile compression data are stored in an encoded form according to a preset raster scanning order to obtain a compressed tile package file and a corresponding tile index file.

[0079] Specifically, the user's touch screen actions include left swipe, right swipe, up swipe, down swipe, upper left swipe, upper right swipe, lower left swipe, lower right swipe, zoom in swipe and zoom out swipe.

[0080] Step 103 specifically includes:

[0081] According to the display tile group, a display rectangle is determined in the tile pyramid; the size of the display rectangle is equal to the viewport size of the embedded platform;

[0082] According to the display tile group, a cache rectangle is determined in the tile pyramid; the cache rectangle is concentric with the display rectangle; the length difference and width difference between the cache rectangle and the display rectangle are both twice the length of the tile side;

[0083] When the user touches the screen in a horizontal stroke, it is determined whether there is a tile outside the display rectangle in a direction opposite to the horizontal stroke direction, and a first determination result is obtained.

[0084] If the first judgment result is yes, the display rectangle and the cache rectangle are both translated in the direction opposite to the horizontal swipe direction, with the tile side length as the translation distance; the horizontal swipe includes left swipe, right swipe, upward swipe and downward swipe;

[0085] Determine that a plurality of tiles corresponding to the translated display rectangle are updated display tile groups;

[0086] The multiple tiles corresponding to the translated cache rectangle are determined as an updated cache tile group.

[0087] Specifically, according to the display tile group, after determining the cache rectangle in the tile pyramid, the following steps are also included:

[0088] When the user touches the screen in an oblique manner, it is determined whether there is a tile outside the display rectangle in a direction opposite to the oblique direction, and a second determination result is obtained.

[0089] If the second judgment result is yes, the display rectangle and the cache rectangle are translated in the direction opposite to the oblique stroke direction, with the length of the tile diagonal as the translation distance; the oblique stroke includes upper left stroke, upper right stroke, lower left stroke and lower right stroke;

[0090] Determine that a plurality of tiles corresponding to the translated display rectangle are updated display tile groups;

[0091] The multiple tiles corresponding to the translated cache rectangle are determined as an updated cache tile group.

[0092] When the user touch screen action is a zoom stroke, determine to map the center of the display rectangle from the current layer to a mapping point on an adjacent layer; the zoom stroke includes a zoom-in stroke and a zoom-out stroke;

[0093] Determine the intersection point on the adjacent layer that is closest to the mapped point;

[0094] With the intersection point as the center, both the display rectangle and the cache rectangle are mapped to the adjacent layer; the intersection point is the intersection point of four adjacent tiles;

[0095] Determine that a plurality of tiles corresponding to the mapped display rectangle are an updated display tile group;

[0096] The multiple tiles corresponding to the mapped cache rectangle are determined as an updated cache tile group.

[0097] The step of determining the mapping point where the center of the display rectangle is mapped from the current layer to the adjacent layer specifically includes:

[0098] When the zoom stroke is a magnification stroke, determining a mapping point where the center of the display rectangle is mapped from the current layer to an adjacent layer with a smaller scale;

[0099] When the zoom swipe is a zoom-out swipe, determine the mapping point at which the center of the display rectangle is mapped from the current layer to an adjacent layer of a larger scale.

[0100] Specifically, the image data organization and visualization method for embedded platforms provided by the present invention has good cross-platform characteristics, shields the differences in embedded systems, and has great advantages in terms of running memory occupancy, space utilization, rendering efficiency, etc. The specific scheme is as follows:

[0101] 1 Image map organization and storage

[0102] In geographic information systems, the image pyramid model is a key spatial data organization form and application model that integrates image stratification, block processing, resampling and other technologies. In order to cope with the continuous development trend of multi-source, multi-state and massive remote sensing image data and improve user experience, many scholars have conducted extensive research on it, with fruitful results. However, in terms of embedded map data organization models, the focus is mainly on vector data organization mode research, and image tile pyramid model research is mostly based on the server side, and there is little research on offline data special management.

[0103] The image pyramid uses the original raster image as the bottom layer of the pyramid, and constructs a series of image layers reflecting different levels of detail through downsampling methods. The original image layer has the highest resolution, and the resolution of the downsampled image gradually decreases as the pyramid level increases. Using the pyramid structure, the image map target level and tile set can be directly called according to the rendering image range, such as Figure 2 shown.

[0104] Combining the differences in embedded application environments and resource constraints, the multi-source spatial data fusion technology is used to integrate data organization type, data compression, data security and other special technologies into the pyramid construction process, forming a set of offline image organization and storage solutions suitable for embedded terminals, which can be divided into four modules: parameter specification, tile cropping, tile compression, and tile generation. Figure 3 shown.

[0105] 1.1 Parameter Specification

[0106] The construction of image pyramid depends on multiple parameters, and tile data can be flexibly generated according to the specified parameters. For details, see Table 1.

[0107] Table 1. Description of main parameters for image pyramid construction

[0108]

[0109] 1.2 Tile Clipping

[0110] For the generated image data at each level, according to the specified tile size, it is cropped in the raster scanning order from left to right and from top to bottom. The result is as follows Figure 4 As shown in the figure, RasterLayer represents the raster layer, and Layer_0 to Layer_2 represent the images of each level and the tiles contained therein. For the part of the layer edge whose length and width are less than the tile cropping size, if valid data does not exist, zero padding is adopted to reduce the amount of calculation, and the cropping result data is compressed by the tile compression module in the form of cache.

[0111] 1.3 Tile Compression

[0112] The image map is compressed using the libjpeg-turbo library (image compression and decompression library). This open source library is an extension of the libjpeg library, and is compiled and optimized based on it. It supports SIMD instructions, such as MMX and SSE of the X86 architecture and NEON of the ARM architecture, and can be cross-compiled to achieve cross-platform applications. In terms of encoding and decoding speed, experimental tests have shown that the speed of libjpeg-turbo is about 2 to 4 times that of libjpeg.

[0113] The tile cache data (such as bmp, png, etc.) is cached and compressed, and handed over to the tile generation module in cache form for compression processing to form standard JPEG data cache for map display, which is easy to organize and render data across platforms.

[0114] 1.4 Tile Generation

[0115] The JPEG image cache data is stored in a disk file in a certain format. According to the pyramid construction mode, it is divided into discrete and compact types. The discrete type manages tiles separately according to different levels. Each layer of image data is stored in a level folder, marked with row and column numbers, and a single tile name is named in combination with row and column two-dimensional coordinates for easy viewing and management. The compact mode stores tiles in a tile package series file in a specific format, and directly extracts the data to be displayed from the tile package when rendering the map.

[0116] Relying on the raster scanning order from left to right and from top to bottom, each level of tiles is stored in the tile package related files in the form of code. From the perspective of image data security, the tile package and index file are implemented in a custom mode, such as Figure 5 As shown in the figure, the files with the suffix *.tile are tile package files, and the files with the suffix *.indx are index files.

[0117] In the tile package file, TileData_0_00 represents the coded data item of tile number 00 on layer 0, and so on. i n i Represents layer i m i n i Similarly, in the index file, Index_0_00 represents the index item of the tile numbered 00 on layer 0, and Index_i_m i n i Represents layer i m i n iThe index item of the numbered tile. Each index item contains two sub-items, TileAddr and TileLength. The TileAddr sub-item stores the starting address of the corresponding tile, and the TileLength sub-item stores the encoding length. Image data compression and custom storage expand the storage space utilization rate, and cannot be parsed using commercial software, thereby improving the security of image map data.

[0118] 2 Image map visualization

[0119] The visualization of image maps under various embedded systems must shield the differences in drawing methods of various embedded platforms and provide a unified graphics drawing mode. The general control design and cross-platform development methods are integrated, and a cross-platform solution is designed according to the characteristics of the project application, and it is applied to WinCE and Android system platforms.

[0120] 2.1 Implementation Principle

[0121] Image map visualization technology includes two parts: map data preparation and display. The data preparation part involves the retrieval, scheduling, and storage of tile data, preparing the content required for map display for each terminal platform; the data display is a module for each terminal platform to complete map rendering using the supported graphics library. There are significant differences in the graphics drawing mechanisms under various embedded platforms. Therefore, the data preparation logic common to each platform, such as tile data retrieval, scheduling, and storage, is encapsulated as the core component of the program to facilitate the call of the graphics library of each platform, and finally generate executable programs for each platform through cross-compilation.

[0122] 2.2 Image map visualization

[0123] like Figure 6 ,The image map visualization of the embedded platform can be ,divided into four modules: tile retrieval, cache scheduling, tile storage, and ,map display.

[0124] 1) Image tile retrieval

[0125] The pyramid levels, map sets, and tile sets involved in each map set that need to be loaded within the screen display range are calculated in real time based on the geographic coordinates of the current viewport center point and the screen resolution, providing an operating basis for tile package parsing and scheduling.

[0126] Mobile map display based on mobile terminal platform can be considered as the process of terminal display screen moving and displaying on image data. When performing map roaming operation, it is necessary to calculate and determine the preloaded map set tile set information in real time according to the geographical location of the center point of the screen window.

[0127] The essence of map zooming operation is the switching display of pyramid tiles at each level. Since the correspondence between tiles at each pyramid level is relatively clear, when performing map zooming operation, the target level (the previous level or the next level) to be displayed in the next view can be dynamically determined according to the current map display level, and the map set and tile set to be displayed can be inferred based on the center point coordinates and screen resolution.

[0128] 2) Cache scheduling module

[0129] Since the embedded system has limited memory, the current data to be displayed should be read into the memory according to the actual situation to ensure low memory usage and avoid irrelevant calculations to the maximum extent. According to the relationship between the data area and the view window, the entire map is divided from the inside to the outside, with the center point of the view area as the center and the tile data block as the basic unit. It can be divided into three categories: visible area, pre-visible area, and invisible area, as shown in Table 2.

[0130] Table 2 Description of regional division elements

[0131]

[0132]

[0133] In combination with the characteristics of the embedded hardware environment, only the tiles in the light gray and dark gray areas are buffered. The essence of image map zooming is to completely update the tiles within the viewport range, and there is little room for optimization. In terms of image map roaming, the data dynamic update design is implemented: if the viewport roaming range is within the range of the opened memory data block, the used data has been loaded and there is no need to update the buffer tiles; if the data block range cannot be satisfied, the data block is dynamically updated (such as Figure 7-8 As shown, the dotted part is the uninstallation part and the black part is the update part).

[0134] Call the appropriate pyramid layer according to the image map display scale, and use the screen viewport range to clarify the range of the relevant data block. Only index data and cached image data are retained in the memory, which realizes the dynamic loading and updating of tile data, reduces real-time memory usage and greatly improves drawing efficiency. Scheduling strategies such as Fig. 9 shown.

[0135] 3) Tile storage

[0136] In order to avoid repeated data processing during image display, the tile retrieval data is stored in the device memory to provide the same image data for each terminal platform. The tile container class is the implementation body of tile storage, which is used to store the attributes and pixel information of tile data. It provides operations similar to the standard library container class, including insertion, deletion, and search. Among them, the attribute information of the tile includes tile ID, screen coordinates, length and width, etc. The pixel information is the pixel block data of each tile.

[0137] like Fig.10 As shown in the figure, a 1 -a n Both represent tile cache data. The internal implementation of the tile container class adopts a bidirectional linked list structure, which can effectively avoid excessive performance consumption caused by frequent data insertion and deletion. When the map is roaming, the tile data to be displayed will be inserted into the container, and the tile data outside the screen display range will be deleted from the container; when the map is zoomed, all objects of the current layer in the container will be cleared first, and then new nodes will be inserted according to the data provided by the tile retrieval and cache scheduling module. The nodes in the entire container are always in a dynamic update state.

[0138] 4) Image map display

[0139] Map display is completed according to the tile data information stored in the tile container object and the corresponding drawing mode of each terminal platform. The screen coordinates, pixel data and other information of each tile to be displayed are obtained from the tile container object. Each terminal platform calls the supported graphics API to display all tiles at the corresponding position on the screen. Although the graphics APIs supported by each terminal platform are different, by accessing the tile container class object, all the complete tile data and attribute information required for map display can be obtained without distinction, thereby realizing cross-platform map display.

[0140] a) Map display on Android platform

[0141] As shown in Table 3, the image data rendering supported by the Android platform generally includes three modes: JNI, OpenGL ES, and Windows API.

[0142] Table 3 Android image rendering mode table

[0143]

[0144] The rendering method using JNI graphics API is relatively simple to implement. It directly calls the graphics interface provided by Android for the JAVA layer in the native layer. However, the display process involves the interaction between the native layer code and the JAVA layer code, and the rendering efficiency will be reduced. Using the Windows API rendering method, graphics rendering can be completed directly in the native code, avoiding the interaction between the native layer code and the JAVA layer code. Compared with the first method, the efficiency is improved, but the graphics interface functions provided by Windows API are relatively few, the graphics display method is not flexible enough, and it is impossible to use the frame buffer method for drawing, which has certain limitations. The OpenGLES rendering mode can directly complete graphics rendering in the native layer, avoiding interaction with the JAVA layer code, and provides a frame buffer drawing environment by default. Therefore, the solution chooses to use the OpenGLES graphics library to provide graphics display for the Android platform.

[0145] The map display module under the Android platform obtains the image data required for map display from the tile storage module, including the number of tiles to be displayed, screen coordinates, pixel data and other information, and attaches the tile pixel data to the triangulated network model in the form of texture to form a seamless splicing of the image map for final display.

[0146] b) Map display on WinCE platform

[0147] As shown in Table 4, the image data rendering supported by the WinCE platform can be roughly divided into GDI and OpenGL ES.

[0148] Table 4 WinCE image rendering mode

[0149]

[0150] Although the OpenGLES library has the advantages of cross-platform compilation and 2D / 3D compatibility, it is only compatible with high-version operating systems and hardware devices for the WinCE platform. Through research and analysis, the mainstream distribution equipment is equipped with the WinCE5.0 operating system, and the hardware does not support OpenGLES rendering. Therefore, the GDI graphics library is selected for image tile rendering, which has the advantages of high stability, strong hardware compatibility, and easy development.

[0151] 3. Test Analysis

[0152] A sampling comparison test analysis was conducted based on two core aspects: disk usage before and after the construction of different numbers of image pyramids and the time consumption for displaying and scaling multiple images. Fig.11 In , the horizontal axis represents the experimental data batch, such as Fig.11As shown in Table 5, as the amount of original image data continues to increase, the disk space occupied by the corresponding tile package is always at a low level and grows slowly; based on the Android end (configuration information is shown in Table 5), the time consumption of multi-image scaling is analyzed, and the response speed of cross-layer data update is less than 1.5s, which meets the user experience requirements. Fig.12 In , the horizontal axis represents the full-text query batch, such as Fig.12 shown.

[0153] Table 5 Android platform configuration information

[0154]

[0155]

[0156] In addition, the present invention also provides an image data organization and visualization system suitable for an embedded platform, comprising:

[0157] Image acquisition module, used to acquire remote sensing images at different scales;

[0158] The file construction module is used to obtain the compressed tile package file and tile index file of the remote sensing image based on the images of remote sensing images at different scales by using the tile pyramid principle;

[0159] The cache tile group update module is used to obtain an updated cache tile group according to the cache tile group of the embedded platform and the viewport user touch screen action; the cache tile group includes a cache display tile group and a cache non-display tile group;

[0160] A tile cache data determination module is used to retrieve and decompress multiple tile compressed data corresponding to the updated cache tile group in the compressed tile package file according to the tile index file to obtain multiple tile cache data;

[0161] The user intended display image display module is used to render the multiple tile cache data corresponding to the updated cache display tile group to display the user intended display image.

[0162] The file construction module specifically includes:

[0163] A tile matrix determination unit is used to perform block processing on images at different scales according to tile sizes to obtain tile matrices corresponding to images at different scales;

[0164] A tile pyramid construction unit is used to construct a tile pyramid of the image to be processed according to multiple tile matrices; the multiple block images obtained after the block processing correspond one to one with the tiles in the tile matrix; the number of layers of the tile pyramid is equal to the number of scales;

[0165] A compression unit, used for compressing the block image corresponding to each tile in the tile pyramid respectively to obtain a plurality of tile compression data;

[0166] The file construction unit is used to store multiple tile compression data in an encoded form based on the tile pyramid according to a preset raster scanning order to obtain a compressed tile package file and a corresponding tile index file.

[0167] Specifically, the user's touch screen actions include left swipe, right swipe, up swipe, down swipe, upper left swipe, upper right swipe, lower left swipe, lower right swipe, zoom in swipe and zoom out swipe.

[0168] As for the system disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the description of the method part.

[0169] The principles and implementation methods of the present invention are described in this article using specific examples. The description of the above embodiments is only used to help understand the method and core idea of ​​the present invention. At the same time, for those skilled in the art, according to the idea of ​​the present invention, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as limiting the present invention.

Claims

1. A method for organizing and visualizing image data suitable for an embedded platform, characterized in that: include: Obtain remote sensing images at different scales; According to the remote sensing images at different scales, the compressed tile package file and tile index file of the remote sensing image are obtained by using the tile pyramid principle; According to the cache tile group of the embedded platform and the viewport user touch screen action, an updated cache tile group is obtained; the cache tile group includes a cache display tile group and a cache non-display tile group; According to the tile index file, multiple tile compressed data corresponding to the updated cache tile group are retrieved and decompressed in the compressed tile package file to obtain multiple tile cache data; Rendering the multiple tile cache data corresponding to the updated cache display tile group to display the image intended by the user; The step of obtaining an updated cache tile group according to the cache tile group of the embedded platform and the touch screen action of the viewport user specifically includes: Determining a display rectangle in the tile pyramid according to the display tile group; the size of the display rectangle is equal to the viewport size of the embedded platform; According to the display tile group, a cache rectangle is determined in the tile pyramid; the cache rectangle is concentric with the display rectangle; and the length difference and width difference between the cache rectangle and the display rectangle are both twice the side length of the tile; When the user touch screen action is a horizontal stroke, determining whether there is a tile outside the fixed display rectangle in a direction opposite to the horizontal stroke direction, and obtaining a first determination result; If the first judgment result is yes, the display rectangle and the cache rectangle are both translated in a direction opposite to the horizontal swipe direction with the tile side length as the translation distance; the horizontal swipe includes left swipe, right swipe, upward swipe and downward swipe; Determine that a plurality of tiles corresponding to the translated display rectangle are updated display tile groups; Determine that a plurality of tiles corresponding to the translated cache rectangle are updated cache tile groups; According to the display tile group, after determining the cache rectangle in the tile pyramid, the method further includes: When the user touch screen action is an oblique stroke, determining whether there is a tile outside the fixed display rectangle in a direction opposite to the oblique stroke direction, and obtaining a second determination result; If the second judgment result is yes, the display rectangle and the cache rectangle are both translated in a direction opposite to the oblique stroke direction, with the length of the tile diagonal as the translation distance; the oblique stroke includes an upper left stroke, an upper right stroke, a lower left stroke, and a lower right stroke; Determine that a plurality of tiles corresponding to the translated display rectangle are updated display tile groups; The multiple tiles corresponding to the translated cache rectangle are determined as an updated cache tile group.

2. The image data organization and visualization method applicable to an embedded platform according to claim 1, characterized in that: The method of obtaining the compressed tile package file and tile index file of the remote sensing image by using the tile pyramid principle according to the remote sensing image at different scales specifically includes: According to the tile size, the images at different scales are divided into blocks to obtain the tile matrices corresponding to the images at different scales; According to the plurality of tile matrices, a tile pyramid of the image to be processed is constructed; the plurality of block images obtained after the block processing correspond one to one with the tiles in the tile matrix; the number of layers of the tile pyramid is equal to the number of scales; Compressing the block image corresponding to each tile in the tile pyramid respectively to obtain a plurality of tile compressed data; Based on the tile pyramid, the plurality of tile compression data are stored in an encoded form according to a preset raster scanning order to obtain a compressed tile package file and a corresponding tile index file.

3. The image data organization and visualization method applicable to an embedded platform according to claim 2, characterized in that: The user touch screen actions include left swipe, right swipe, up swipe, down swipe, upper left swipe, upper right swipe, lower left swipe, lower right swipe, zoom in swipe and zoom out swipe.

4. The image data organization and visualization method applicable to an embedded platform according to claim 1, characterized in that: According to the display tile group, after determining the cache rectangle in the tile pyramid, the method further includes: When the user touch screen action is a zoom stroke, determining to map the center of the display rectangle from the current layer to a mapping point on an adjacent layer; the zoom stroke includes a zoom-in stroke and a zoom-out stroke; Determine the intersection point on the adjacent layer that is closest to the mapping point; Taking the intersection point as the center, mapping the display rectangle and the cache rectangle onto the adjacent layer; the intersection point is the intersection point of four adjacent tiles; Determine that a plurality of tiles corresponding to the mapped display rectangle are an updated display tile group; The multiple tiles corresponding to the mapped cache rectangle are determined as an updated cache tile group.

5. The image data organization and visualization method applicable to an embedded platform according to claim 4, characterized in that: Determines the mapping point that maps the center of the display rectangle from the current layer to the adjacent layer, including: When the zoom stroke is a magnification stroke, determining to map the center of the display rectangle from the current layer to a mapping point on an adjacent layer with a smaller scale; When the zoom stroke is a zoom-out stroke, it is determined to map the center of the display rectangle from the current layer to a mapping point on an adjacent layer with a larger scale.

6. An image data organization and visualization system suitable for an embedded platform, characterized in that: include: Image acquisition module, used to acquire remote sensing images at different scales; The file construction module is used to obtain the compressed tile package file and tile index file of the remote sensing image based on the images of remote sensing images at different scales by using the tile pyramid principle; A cache tile group update module is used to obtain an updated cache tile group according to the cache tile group of the embedded platform and the viewport user touch screen action; the cache tile group includes a cache display tile group and a cache non-displayed tile group; the cache tile group update module is also used to determine a display rectangle in the tile pyramid according to the display tile group; the size of the display rectangle is equal to the viewport size of the embedded platform; a cache rectangle is determined in the tile pyramid according to the display tile group; the cache rectangle is concentric with the display rectangle; the length difference and width difference between the cache rectangle and the display rectangle are both twice the tile side length; when the user touch screen action is a horizontal stroke, it is determined whether there is a tile outside the determined display rectangle in the direction opposite to the horizontal stroke direction, and a first judgment result is obtained. If the first judgment result is yes, the display rectangle and the cache rectangle are both translated in the direction opposite to the horizontal stroke direction with the tile side length as the translation distance; the horizontal stroke includes left stroke, right stroke, upward stroke and downward stroke; and a plurality of tiles corresponding to the translated display rectangle are determined to be the updated display tile group; Determine that a plurality of tiles corresponding to the translated cache rectangle are updated cache tile groups; After determining the cache rectangle in the tile pyramid according to the display tile group, the method further includes: when the user touch screen action is an oblique stroke, determining whether there is a tile outside the determined display rectangle in a direction opposite to the oblique stroke direction, and obtaining a second judgment result; if the second judgment result is yes, translating the display rectangle and the cache rectangle in a direction opposite to the oblique stroke direction with the tile diagonal length as the translation distance; the oblique stroke includes an upper left stroke, an upper right stroke, a lower left stroke, and a lower right stroke; determining that a plurality of tiles corresponding to the translated display rectangle are an updated display tile group; determining that a plurality of tiles corresponding to the translated cache rectangle are an updated cache tile group; A tile cache data determination module, configured to retrieve and decompress a plurality of tile compressed data corresponding to the updated cache tile group in the compressed tile package file according to the tile index file, to obtain a plurality of tile cache data; The user intended display image display module is used to render the multiple tile cache data corresponding to the updated cache display tile group to display the user intended display image.

7. The image data organization and visualization system suitable for embedded platforms according to claim 6, characterized in that: The file construction module specifically includes: A tile matrix determination unit is used to perform block processing on images at different scales according to tile sizes to obtain tile matrices corresponding to images at different scales; A tile pyramid construction unit is used to construct a tile pyramid of the image to be processed according to the plurality of tile matrices; the plurality of block images obtained after the block processing correspond one to one with the tiles in the tile matrix; the number of layers of the tile pyramid is equal to the number of scales; A compression unit, used for compressing the block image corresponding to each tile in the tile pyramid respectively to obtain a plurality of tile compression data; The file construction unit is used to store the plurality of tile compression data in an encoded form according to a preset raster scanning order based on the tile pyramid to obtain a compressed tile package file and a corresponding tile index file.

8. The image data organization and visualization system suitable for embedded platforms according to claim 6, characterized in that: The user touch screen actions include left swipe, right swipe, up swipe, down swipe, upper left swipe, upper right swipe, lower left swipe, lower right swipe, zoom in swipe and zoom out swipe.

Citation Information

Patent Citations

  • Tile map storage method and apparatus, storage medium and computer device

    CN107977407A

  • Feature management for web map tile services

    CN109937414A