A method, device, equipment and medium for displaying three-dimensional chart data
Patent Information
- Application Number
- CN202611169146.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-04
- Publication Date
- 2026-10-23
- Estimated Expiration
- 2046-08-04
AI Technical Summary
[0023]本发明实施例公开了一种三维海图数据的显示方法、装置、设备及介质。获取原始三维海图数据;其中,原始三维海图数据与预设海域相对应,且包括经度、纬度及海洋要素信息;通过双连续预设间隔统计法对原始三维海图数据进行完整性校验;若完整性校验不通过,则采用预设插值法对原始三维海图数据进行插值处理;按照多个不同的预设分辨率分别对处理后的原始三维海图数据进行抽样,并对关键通航要素进行保留,获得多个不同预设分辨率的三维海图数据;对多个不同分辨率的三维海图数据分别按照预设经纬度尺寸进行分块,获得多个分块数据;其中,分块数据携带经纬度及分辨率;基于视角信息获取第一目标分块数据,并对第一目标分块数据进行渲染及显示;其中,视角信息包括视角高度及视角中心点,视角高度与分辨率相对应,视角中心点与经纬度相对应。本发明实施例提供的三维海图数据的显示方法,可以提高三维海图数据的渲染及显示效率,以满足船舶导航等实时性场景的需求。
Smart Images

Figure CN122737405B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of electronic nautical chart visualization technology, and in particular to a method, apparatus, device and medium for displaying three-dimensional nautical chart data. Background Technology
[0002] Currently, the visualization needs of electronic nautical charts in fields such as ship navigation, marine development, and maritime search and rescue have upgraded from traditional two-dimensional planes to three-dimensional real-view modes. Figure 3 3D data is characterized by its wide coverage, large data volume, wide resolution range, and high safety requirements for navigation elements. Traditional full-load rendering mode suffers from problems such as long loading time, high memory consumption, and severe rendering lag, which cannot meet the needs of real-time scenarios such as ship navigation. Summary of the Invention
[0003] This invention provides a method, apparatus, device, and medium for displaying three-dimensional nautical chart data, which can improve the rendering and display efficiency of three-dimensional nautical chart data to meet the needs of real-time scenarios such as ship navigation.
[0004] According to one aspect of the present invention, a method for displaying three-dimensional nautical chart data is provided, comprising:
[0005] Acquire raw three-dimensional nautical chart data; wherein the raw three-dimensional nautical chart data corresponds to a preset sea area and includes longitude, latitude and marine element information;
[0006] The integrity of the original three-dimensional nautical chart data was verified by a double continuous preset interval statistical method.
[0007] If the integrity check fails, the original three-dimensional nautical chart data will be interpolated using a preset interpolation method.
[0008] The processed original 3D nautical chart data was sampled according to multiple different preset resolutions, and key navigation elements were retained to obtain 3D nautical chart data with multiple preset resolutions.
[0009] The multiple 3D nautical charts with different resolutions are divided into blocks according to preset latitude and longitude dimensions to obtain multiple block data; wherein, the block data carries latitude, longitude and resolution;
[0010] The first target block data is obtained based on the viewpoint information, and the first target block data is rendered and displayed; wherein, the viewpoint information includes viewpoint height and viewpoint center point, the viewpoint height corresponds to the resolution, and the viewpoint center point corresponds to latitude and longitude.
[0011] According to another aspect of the present invention, a display device for three-dimensional nautical chart data is provided, comprising:
[0012] The data acquisition module is used to acquire raw three-dimensional nautical chart data; wherein the raw three-dimensional nautical chart data corresponds to a preset sea area and includes longitude, latitude and marine element information;
[0013] The data verification module is used to verify the integrity of the original three-dimensional nautical chart data using a double continuous preset interval statistical method.
[0014] An interpolation module is used to interpolate the original three-dimensional nautical chart data using a preset interpolation method if the integrity check fails.
[0015] The data sampling module is used to sample the processed original three-dimensional nautical chart data at multiple different preset resolutions, and retain key navigation elements to obtain three-dimensional nautical chart data at multiple different preset resolutions.
[0016] The segmentation module is used to segment the multiple 3D nautical chart data of different resolutions into blocks according to preset latitude and longitude dimensions to obtain multiple block data; wherein, the block data carries latitude, longitude and resolution;
[0017] The display module is used to acquire first target block data based on view information, and to render and display the first target block data; wherein, the view information includes view height and view center point, the view height corresponds to the resolution, and the view center point corresponds to latitude and longitude.
[0018] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:
[0019] At least one processor; and
[0020] A memory communicatively connected to the at least one processor; wherein,
[0021] The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the method for displaying three-dimensional nautical chart data according to any embodiment of the present invention.
[0022] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the method for displaying three-dimensional nautical chart data according to any embodiment of the present invention.
[0023] This invention discloses a method, apparatus, device, and medium for displaying three-dimensional nautical chart data. The process includes: acquiring raw three-dimensional nautical chart data; wherein the raw three-dimensional nautical chart data corresponds to a preset sea area and includes longitude, latitude, and marine element information; performing integrity verification on the raw three-dimensional nautical chart data using a double continuous preset interval statistical method; if the integrity verification fails, interpolating the raw three-dimensional nautical chart data using a preset interpolation method; sampling the processed raw three-dimensional nautical chart data according to multiple different preset resolutions, and retaining key navigational elements to obtain multiple three-dimensional nautical chart data with different preset resolutions; dividing the multiple three-dimensional nautical chart data with different resolutions into blocks according to preset latitude and longitude dimensions to obtain multiple block data; wherein the block data carries latitude, longitude, and resolution; acquiring first target block data based on viewpoint information, and rendering and displaying the first target block data; wherein the viewpoint information includes viewpoint height and viewpoint center point, the viewpoint height corresponding to the resolution, and the viewpoint center point corresponding to the latitude and longitude. The method for displaying three-dimensional nautical chart data provided in this embodiment of the invention can improve the rendering and display efficiency of three-dimensional nautical chart data to meet the needs of real-time scenarios such as ship navigation.
[0024] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0025] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0026] Figure 1 This is a flowchart of a method for displaying three-dimensional nautical chart data according to an embodiment of the present invention;
[0027] Figure 2 This is a mapping relationship between viewing angle height and resolution level in one embodiment of the present invention;
[0028] Figure 3 This is a schematic diagram of the structure of a three-dimensional nautical chart data display device according to an embodiment of the present invention;
[0029] Figure 4 This is a schematic diagram of the structure of an electronic device according to an embodiment of the present invention. Detailed Implementation
[0030] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0031] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0032] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.
[0033] In existing technologies, the layered and block-based display methods for 3D data of Geographic Information System (GIS) are mostly geared towards land terrain scenes, and their adaptability to electronic nautical charts is seriously insufficient, resulting in the following defects: poor compatibility of coordinate system and projection; poor data accuracy and integrity; the core contradiction between navigation safety and rendering efficiency cannot be resolved; and insufficient scene adaptability.
[0034] Example 1
[0035] Figure 1 This is a flowchart illustrating a method for displaying three-dimensional nautical chart data according to an embodiment of the present invention. This embodiment is applicable to the rendering and display of three-dimensional nautical charts. The method can be executed by the three-dimensional nautical chart data display device described in this embodiment, which can be implemented using software and / or hardware, such as... Figure 1 As shown, the method specifically includes the following steps:
[0036] S110, acquire raw 3D nautical chart data.
[0037] The original 3D nautical chart data corresponds to a preset sea area and includes longitude, latitude, and marine element information, such as water depth, seabed sediment, and tidal datum. The original 3D nautical chart data can include three types of data: multibeam bathymetry data, satellite altimetry inversion data, and historical nautical chart vector data. The multibeam bathymetry data originates from hydrographic survey vessels, covering important ocean routes, with 2000 sampling points within a 1° longitude interval; the satellite altimetry inversion data covers global sea areas, with 125 sampling points within a 1° longitude interval; and the historical nautical chart vector data contains point and line layers of key navigational elements such as shallow points, obstructions, and navigation marks, marked as "cannot be thinned." The original 3D nautical chart data is large in size; directly loading the entire data would cause severe lag and fail to meet the real-time requirements of shipboard navigation. Therefore, the original 3D nautical chart data needs to be processed according to the scheme in this embodiment.
[0038] S120 uses a dual-continuous preset interval statistical method to verify the integrity of the original three-dimensional nautical chart data.
[0039] The double continuous preset interval can be understood as two consecutive preset intervals, which may include a preset longitude interval and a preset latitude interval. In this embodiment, both the preset longitude interval and the preset latitude interval can be 1°.
[0040] Optionally, the integrity verification of the original three-dimensional nautical chart data using the dual continuous preset interval statistical method can be performed as follows: obtain the number of first data points in the first preset interval and the number of second data points in the second preset interval of the original three-dimensional nautical chart data; wherein, the preset interval includes a preset longitude interval and a preset latitude interval; the first preset interval and the second preset interval are continuous; if the number of first data points and the number of second data points are the same, the integrity verification passes; if the number of first data points is less than the number of second data points, the integrity verification fails.
[0041] The first and second preset intervals can be either the first longitude interval and the second longitude interval of the preset sea area corresponding to the original 3D nautical chart data, or the first latitude interval and the second latitude interval of the preset sea area corresponding to the original 3D nautical chart data. For example, assuming the starting longitude of the sea area corresponding to the original 3D nautical chart data is 114° and the starting latitude is 10°, and the interval is 1°, then the first longitude interval is 114°-115°, the second longitude interval is 115°-116°; the first latitude interval is 10°-11°, and the second latitude interval is 11°-12°.
[0042] In this embodiment, if the number of the first data points and the number of the second data points are the same, it means that there are no missing data points in the original three-dimensional nautical chart data, i.e., the integrity check passes. For example, in the longitude direction, assuming that the number of points in 114°-115° and 115°-116° are both 7200, the integrity check passes, and the resolution of the sea area is 7200.
[0043] In this embodiment, if the number of the first data points is less than the number of the second data points, it indicates that there are missing data points in the original 3D nautical chart data, meaning the integrity check fails. For example, in the latitude direction, there are 3600 points between 10° and 11° and 7200 points between 11° and 12°, so the integrity check fails, and the resolution of this sea area is determined to be 7200. In this case, interpolation processing is needed for this sea area to ensure the resolution meets 7200.
[0044] S130, If the integrity check fails, the original three-dimensional nautical chart data will be interpolated using a preset interpolation method.
[0045] The preset interpolation method is the tidal correction Kriging interpolation method.
[0046] Optionally, the method of interpolating the original three-dimensional nautical chart data using a preset interpolation method can be as follows: obtain the tide table corresponding to the preset sea area and determine the tide correction value based on the tide table; determine the latitude and longitude information of the data point to be inserted based on the second number of data points; obtain the marine element information of the effective data points adjacent to the data point to be inserted based on the latitude and longitude information; perform a weighted summation of the marine element information of the effective data points based on the first weight coefficient, and superimpose the weighted summation result with the tide correction value to obtain the marine element information of the data point to be inserted; wherein, the first weight coefficient is obtained by fitting the topographic features of the preset sea area through a spherical variogram; and insert the data point to be inserted into the original three-dimensional nautical chart data based on the latitude and longitude information.
[0047] Different sea areas correspond to different tide tables. In this embodiment, the tide table corresponding to the sea area is obtained based on its geographical location, and then the tide correction value is calculated based on the theoretical lowest tide level. .
[0048] One method for determining the latitude and longitude information of the data point to be inserted based on the second number of data points is as follows: The second number of data points is used as the resolution of the sea area. Based on this resolution and the latitude and longitude information of the valid data points, the latitude and longitude information of the data point to be inserted is determined, so that the 3D map data reaches this resolution. Here, the valid data points are data points in the original 3D nautical chart data, i.e., not the data points to be inserted.
[0049] In this embodiment, taking seawater depth as an example of an ocean element, the formula for calculating the seawater depth of the data point to be inserted can be expressed as: ; ;in, For data points to be inserted The depth of the seawater; The measured seawater depth values of the n valid data points adjacent to the data point to be inserted; The first weighting coefficient is obtained by fitting the topographic features of the preset sea area using a spherical variogram. This is the tidal correction value. The value range is 8~12.
[0050] In this embodiment, after obtaining the latitude and longitude information and marine element information of each data point to be inserted, the data points to be inserted are inserted into the original three-dimensional nautical chart data so that the resolution of the three-dimensional nautical chart data meets the accuracy requirements.
[0051] In this embodiment, in order to ensure the continuity or smoothness between the inserted data points and the valid data points, it is necessary to verify the inserted data points.
[0052] Optionally, after obtaining the marine feature information of the data point to be inserted, the method further includes: determining the difference between the marine feature information of the data point to be inserted and the marine feature information of adjacent valid data points; if the difference is greater than a set threshold, adjusting the parameters of the spherical variogram to update the first weighting coefficient; performing a weighted summation on the marine feature information of the valid data points based on the updated first weighting coefficient, and superimposing the weighted summation result with the tidal correction value to obtain the updated marine feature information of the data point to be inserted.
[0053] In this embodiment, the marine element information can be seawater depth, and the threshold can be set to 5 meters. First, the difference between the seawater depth of the data point to be inserted and the seawater depth of adjacent valid data points is determined. If the difference is greater than 50 meters, the parameters of the spherical variogram are adjusted, and the topographic features of the preset sea area are fitted using the adjusted spherical variogram to obtain an updated first weighting coefficient. Finally, the seawater depths of the valid data points are weighted and summed based on the updated first weighting coefficient, and the weighted summation result is superimposed with the tidal correction value to obtain the updated seawater depth of the data point to be inserted. In this embodiment, the insertion of data points is validated to ensure the continuity or smoothness between the inserted data points and the valid data points.
[0054] S140 samples the processed original three-dimensional nautical chart data according to multiple different preset resolutions and retains key navigation elements to obtain three-dimensional nautical chart data with multiple preset resolutions.
[0055] Key navigational elements include at least one of the following: shallow points, obstructions, navigational aids, isobaths, and port facilities. Multiple preset resolutions can be understood as multiple different levels of resolution, which can be determined through prior testing. For example, core performance indicators for three different levels (level 6, level 8, and level 10) were tested, and the results are shown in Table 1.
[0056] Table 1
[0057]
[0058] As shown in Table 1, the 6-level layer has a large hierarchical span and severe visual jumps, failing to meet the visual continuity requirements of ship navigation scenarios; the 10-level layer switches too frequently, increasing rendering overhead by 57% and significantly increasing memory usage, resulting in performance waste; the 8-level layer can match the perspective changes in ship navigation from global overview to port pilotage, balancing visual continuity and rendering performance, and is non-obvious. Therefore, in this embodiment, resolutions of 8 levels can be set, and the correspondence between levels and resolutions can be expressed as: ,in, This is the data level number; a larger value indicates more data sampling points, higher resolution, and richer details; r represents the resolution; a default raw layer is also set, representing the true resolution. The first level is... The second level is The third level is The fourth level is The fifth level is The sixth level is The seventh level is The eighth level is For example, the resolution of the 8 levels could be: the first level is... The second level is The third level is The fourth level is The fifth level is Level 6 The seventh level is The eighth level is .
[0059] Optionally, the processed original 3D nautical chart data can be sampled according to multiple different preset resolutions, and key navigation elements can be retained to obtain 3D nautical chart data with multiple preset resolutions. This can be achieved by: for each preset resolution, determining the sampling step size based on the preset resolution and the resolution of the original 3D nautical chart data; sampling the original 3D nautical chart data based on the sampling step size; if key navigation elements are sampled, retaining all data points corresponding to the key navigation elements to obtain 3D nautical chart data with preset resolutions.
[0060] The sampling step size, determined based on the preset resolution and the resolution of the original 3D nautical chart data, can be calculated using the following formula: ;in, For the first Sampling step size at the data level; For the first The resolution of the data level (i.e., the preset resolution); This represents the true resolution of the original 3D nautical chart data. For example, the resolution of the second level. The resolution of the original 3D nautical chart data Calculated That is, one data point is extracted from every 400 original sampling points. In this embodiment, if a key navigational element is sampled, all data points corresponding to the key navigational element are retained. That is, key navigational elements such as shallow points and navigation marks marked as "not thinning" are directly merged into the data of all levels after spatial registration with the raster terrain data, and are always superimposed on the terrain layer during rendering, with a 100% retention rate of key navigational elements.
[0061] S150 divides multiple 3D nautical charts of different resolutions into blocks according to preset latitude and longitude dimensions to obtain multiple block data.
[0062] The data chunks carry latitude and longitude coordinates and resolution; latitude and longitude coordinates indicate the location of the data chunks, and resolution indicates the resolution level corresponding to the data chunks.
[0063] In this embodiment, the preset latitude and longitude dimensions can be determined through pre-test experiments. For example, the core performance indicators of four block intervals of 5°, 10°, 15°, and 20° were tested respectively, and the test results are shown in Table 2.
[0064] Table 2
[0065]
[0066] As shown in Table 2, the excessive number of 5° blocks doubles the addressing time; the large data volume of individual 15° and 20° blocks results in high local loading redundancy and memory waste; the 10° block interval balances loading efficiency, memory usage, addressing speed, and projection distortion, and is therefore non-obvious. Thus, in this embodiment, the preset latitude and longitude size is 10°. For example, the global geographical range of -180° to 180° longitude and -90° to 90° latitude is divided into square latitude and longitude data blocks using a fixed interval of 10 degrees. Longitude starts from -180°, with each 10° block forming a block, resulting in 36 block columns; latitude starts from -90°, with each 10° block forming a block, resulting in 18 block rows. The total global range is planned to be divided into 36 × 18 = 648 blocks, meaning each block is a 10° × 10° area.
[0067] S160: Obtain the first target block data based on the viewpoint information, and render and display the first target block data.
[0068] The viewpoint information includes viewpoint height and viewpoint center point. Viewpoint height corresponds to resolution, and viewpoint center point corresponds to latitude and longitude.
[0069] In this embodiment, the method for obtaining the first target block data based on viewpoint information can be as follows: determining the latitude and longitude range falling within the field of view based on the center point of the viewpoint, determining the resolution level based on the viewpoint height, and determining the first target block data based on the latitude and longitude range and the resolution level. The first target block data can be one or more block data.
[0070] In this embodiment, a mapping relationship between viewing height and resolution levels can be pre-established. For example, Figure 2 This is the mapping relationship between viewing angle height and resolution in the embodiments of the present invention, such as... Figure 2 As shown, high-angle views correspond to coarse-resolution data, and low-angle views correspond to fine-resolution data. The relationship between the angle of view height and the angle of view height level number can be expressed as: ;in, Number the viewpoint height levels; The camera's field of view is in meters, and the field of view level number corresponds one-to-one with the data level number.
[0071] In this embodiment, as the ship sails at sea, the user's perspective will constantly change, so the map data to be displayed also needs to be updated in real time. In order to improve rendering and display efficiency, the data to be displayed can be preloaded.
[0072] Optionally, it also includes: obtaining the ship's speed; determining preloaded block data based on the ship's speed and perspective information; and loading the preloaded block data into a cache.
[0073] Among them, the ship's speed can reflect the speed of visual translation, and the unit is _____. In this embodiment, preloaded data blocks within a preset time period (e.g., 1 second) can be determined based on the ship's speed and perspective information. The formula can be expressed as: ,in, For the predicted preloaded chunks of data in the next time step, The center point of the viewpoint in the viewpoint information. The velocity vector for viewpoint translation (i.e., the ship's speed), in units of ; The preload advance time is set, for example, to 1 second. For example, the ship sails eastward at a constant speed along the channel. The system obtains the translation speed in real time as 0.5° per second. According to the above formula, it calculates and predicts that the field of view will cover the two adjacent blocks of data on the right after 1 second. Then, it asynchronously initiates a request in the background. The preload hit rate reaches 93.2%, and there is no data gap during the navigation.
[0074] Optionally, the cache can use a Least Recently Used (LRU) caching mechanism to determine the cache priority of each data block. Specifically, the cache priority can be calculated using the following formula: ;in, This determines the caching priority for chunked data; a higher value indicates a higher retention priority. This is a visual field correlation index, with 1 for the current field of view, 0.5 for adjacent areas, and 0 for the rest. The frequency metric is calculated based on the number of calls in the last 30 seconds using a normalized method. The resolution metric is used to indicate the data's weight; the higher the data resolution, the greater the weight. For navigation safety indicators, the block containing waterways, ports, and obstructions to navigation is 1, and the rest is 0; , , , These are the weighting coefficients for the four indicators; low-priority data blocks that are out of view and not accessed within 30 seconds are automatically evicted and their memory released.
[0075] Optionally, the rendering and display of the first target block data can be performed as follows: in response to the adjustment of the viewpoint height, the second target block data corresponding to the adjusted viewpoint height is obtained; the viewpoint height during the adjustment process is obtained; a second weighting coefficient is determined based on the viewpoint height during the adjustment process; the first target block data and the second target block data are weighted and summed based on the second weighting coefficient; and the weighted and summed block data is rendered and displayed.
[0076] The resolution of the second target block data corresponds to the adjusted viewing angle height; the viewing angle height during the adjustment process is between the viewing angle height before and after the adjustment, and the viewing angle height during the adjustment process changes continuously with the adjustment operation.
[0077] The formula for calculating the second weighting coefficient can be expressed as: , ; , These are the fusion weights for the first target block data and the second target block data, respectively. The threshold height for level switching; To ensure a smooth transition, the range is fixed at 40% - 5% of the threshold height. For example, when the user slowly zooms in, When the speed decreased from 1100 km to 950 km, it approached the fourth ( ),fifth( Critical threshold of perspective level Meters. The system simultaneously loads the data corresponding to the fourth and fifth layers, and sets the transition interval. Meters, assuming the viewing height becomes H = 1,550,000 meters, calculate the mixed weights: , .
[0078] In this embodiment, taking seawater depth as an example of marine element information, the formula for weighted summation of the first target block data and the second target block data based on the second weighting coefficient can be expressed as: .in, This represents the final rendered seawater depth. , The first and second target data blocks represent the corresponding seawater depths. In this embodiment, the viewing angle changes continuously with the adjustment operation, thus the second weighting coefficient also changes continuously, resulting in a continuously changing fused seawater depth. The final output is a smoothly transitioning image with no visual jumps during layer switching. Throughout this process, the data corresponding to key navigational elements remains clearly displayed without any visual jumps or temporary disappearances due to layer switching, meeting the safety requirements for ship pilotage.
[0079] The technical solution of this embodiment involves acquiring original three-dimensional nautical chart data. This original three-dimensional nautical chart data corresponds to a preset sea area and includes longitude, latitude, and marine element information. The integrity of the original three-dimensional nautical chart data is verified using a dual-continuous preset interval statistical method. If the integrity verification fails, a preset interpolation method is used to interpolate the original three-dimensional nautical chart data. The processed original three-dimensional nautical chart data is sampled according to multiple different preset resolutions, and key navigational elements are retained to obtain multiple three-dimensional nautical chart data with different preset resolutions. The multiple three-dimensional nautical chart data with different resolutions are divided into blocks according to preset latitude and longitude dimensions to obtain multiple block data. Each block data carries latitude, longitude, and resolution. A first target block data is acquired based on viewpoint information, and the first target block data is rendered and displayed. The viewpoint information includes viewpoint height and viewpoint center point; the viewpoint height corresponds to the resolution, and the viewpoint center point corresponds to latitude and longitude. The three-dimensional nautical chart data display method provided by this embodiment can improve the rendering and display efficiency of three-dimensional nautical chart data to meet the needs of real-time scenarios such as ship navigation.
[0080] Example 2
[0081] Figure 3 This is a schematic diagram of the structure of a three-dimensional nautical chart data display device provided in Embodiment 2 of the present invention, as shown below. Figure 3 As shown, the device includes:
[0082] The data acquisition module 310 is used to acquire raw three-dimensional nautical chart data; wherein the raw three-dimensional nautical chart data corresponds to a preset sea area and includes longitude, latitude and marine element information;
[0083] Data verification module 320 is used to verify the integrity of the original three-dimensional nautical chart data using a double continuous preset interval statistical method;
[0084] The interpolation module 330 is used to interpolate the original three-dimensional nautical chart data using a preset interpolation method if the integrity check fails.
[0085] The data sampling module 340 is used to sample the processed original three-dimensional nautical chart data according to multiple different preset resolutions, and retain key navigation elements to obtain three-dimensional nautical chart data with multiple different preset resolutions.
[0086] The segmentation module 350 is used to segment the multiple three-dimensional nautical chart data of different resolutions into blocks according to preset latitude and longitude dimensions to obtain multiple block data; wherein, the block data carries latitude and longitude and resolution;
[0087] Display module 360 is used to acquire first target block data based on view information, and to render and display the first target block data; wherein, the view information includes view height and view center point, the view height corresponds to the resolution, and the view center point corresponds to latitude and longitude.
[0088] Optionally, the data verification module 320 is also used for:
[0089] The method acquires the number of first data points within a first preset interval and the number of second data points within a second preset interval of the original three-dimensional nautical chart data; wherein the preset interval includes a preset longitude interval and a preset latitude interval; the first preset interval and the second preset interval are continuous;
[0090] If the number of the first data points and the number of the second data points are the same, then the integrity check passes;
[0091] If the number of the first data points is less than the number of the second data points, the integrity check fails.
[0092] Optionally, the preset interpolation method is the tidal correction Kriging interpolation method, and the interpolation module 330 is further used for:
[0093] Obtain the tide table corresponding to the preset sea area, and determine the tide correction value based on the tide table;
[0094] The latitude and longitude information of the data points to be inserted is determined based on the second number of data points;
[0095] Based on the latitude and longitude information, marine feature information of valid data points adjacent to the data point to be inserted is obtained; wherein, the valid data points are data points in the original three-dimensional nautical chart data;
[0096] The marine element information of the effective data points is weighted and summed based on the first weighting coefficient, and the weighted summation result is superimposed with the tidal correction value to obtain the marine element information of the data points to be inserted; wherein, the first weighting coefficient is obtained by fitting the topographic features of the preset sea area through a spherical variogram.
[0097] The data points to be inserted are inserted into the original three-dimensional nautical chart data based on the latitude and longitude information.
[0098] Optionally, it also includes: a verification module, used for:
[0099] Determine the difference between the marine feature information of the data point to be inserted and the marine feature information of the adjacent valid data points;
[0100] If the difference is greater than a set threshold, the parameters of the spherical variogram are adjusted to update the first weighting coefficient.
[0101] The marine element information of the effective data points is weighted and summed based on the updated first weight coefficient, and the weighted summation result is superimposed with the tidal correction value to obtain the updated marine element information of the data points to be inserted.
[0102] Optionally, the data sampling module 340 is also used for:
[0103] For each preset resolution, the sampling step size is determined based on the preset resolution and the resolution of the original three-dimensional nautical chart data;
[0104] The original three-dimensional nautical chart data is sampled based on the sampling step size;
[0105] If a key navigation element is sampled, all data points corresponding to the key navigation element are retained to obtain the three-dimensional nautical chart data at the preset resolution.
[0106] Optionally, it also includes: a preload module for:
[0107] Obtain the ship's speed;
[0108] Preloaded block data is determined based on the ship's speed and the perspective information;
[0109] The preloaded chunked data is loaded into the cache.
[0110] Optionally, the display module 360 is also used for:
[0111] In response to the adjustment of the viewing angle height, the second target block data corresponding to the adjusted viewing angle height is obtained; wherein the resolution of the second target block data corresponds to the adjusted viewing angle height.
[0112] Obtain the viewing angle height during the adjustment process; wherein the viewing angle height during the adjustment process is between the viewing angle height before adjustment and the viewing angle height after adjustment, and the viewing angle height during the adjustment process changes continuously with the adjustment operation;
[0113] The second weighting coefficient is determined based on the viewing angle during the adjustment process;
[0114] The first target block data and the second target block data are weighted and summed based on the second weighting coefficient;
[0115] Render and display the weighted summed block data.
[0116] The above-described products can perform the methods provided in any embodiment of the present invention, and have the corresponding functional modules and beneficial effects for performing the methods.
[0117] Example 3
[0118] Figure 4 A schematic diagram of an electronic device 10 that can be used to implement embodiments of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0119] like Figure 4 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory 12 or a random access memory 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the read-only memory 12 or loaded from storage unit 18 into the random access memory 13. The random access memory 13 may also store various programs and data required for the operation of the electronic device 10. The processor 11, read-only memory 12, and random access memory 13 are interconnected via a bus 14. An input / output interface 15 is also connected to the bus 14.
[0120] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0121] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, central processing units, graphics processing units, various special-purpose artificial intelligence computing chips, various processors running machine learning model algorithms, digital signal processors, and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as methods for displaying three-dimensional nautical chart data.
[0122] In some embodiments, the method for displaying three-dimensional nautical chart data may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via read-only memory 12 and / or communication unit 19. When the computer program is loaded into random access memory 13 and executed by processor 11, one or more steps of the method for displaying three-dimensional nautical chart data described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the method for displaying three-dimensional nautical chart data by any other suitable means (e.g., by means of firmware).
[0123] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays, application-specific integrated circuits (ASICs), application-specific standard products (ASICs), systems-on-a-chip (SoCs), payload programmable logic devices, computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0124] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0125] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory, read-only memory, erasable programmable read-only memory, optical fibers, portable compact disk read-only memory, optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0126] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a cathode ray tube or liquid crystal display) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0127] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0128] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to address the shortcomings of traditional physical hosts and virtual private servers, such as high management difficulty and weak business scalability.
[0129] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0130] This invention also provides a computer program product, including a computer program that, when executed by a processor, implements the method for displaying three-dimensional nautical chart data according to any embodiment of the invention.
[0131] In the implementation of a computer program product, computer program code for performing the operations of this invention can be written in one or more programming languages or a combination thereof. Programming languages include object-oriented programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0132] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A method for displaying three-dimensional nautical chart data, characterized in that, include: Acquire raw three-dimensional nautical chart data; wherein the raw three-dimensional nautical chart data corresponds to a preset sea area and includes longitude, latitude and marine element information; The integrity of the original three-dimensional nautical chart data was verified by a double continuous preset interval statistical method. If the integrity check fails, the original three-dimensional nautical chart data will be interpolated using a preset interpolation method. The processed original 3D nautical chart data is sampled according to multiple different preset resolutions, and key navigation elements are retained to obtain 3D nautical chart data with multiple preset resolutions; wherein, the key navigation elements include at least one of the following: shallow points, navigational obstructions, navigation marks, isobaths, and port facilities. Multiple 3D nautical charts with different resolutions are divided into blocks according to preset latitude and longitude dimensions to obtain multiple block data; wherein, the block data carries latitude, longitude and resolution; The first target block data is obtained based on the viewpoint information, and the first target block data is rendered and displayed; wherein, the viewpoint information includes viewpoint height and viewpoint center point, the viewpoint height corresponds to the resolution, and the viewpoint center point corresponds to latitude and longitude.
2. The method according to claim 1, characterized in that, The integrity of the original three-dimensional nautical chart data is verified using a double continuous preset interval statistical method, including: The method acquires the number of first data points within a first preset interval and the number of second data points within a second preset interval of the original three-dimensional nautical chart data; wherein the preset interval includes a preset longitude interval and a preset latitude interval; the first preset interval and the second preset interval are continuous; If the number of the first data points and the number of the second data points are the same, then the integrity check passes; If the number of the first data points is less than the number of the second data points, the integrity check fails.
3. The method according to claim 2, characterized in that, The preset interpolation method is the tidal-corrected Kriging interpolation method. The original three-dimensional nautical chart data is interpolated using this preset interpolation method, including: Obtain the tide table corresponding to the preset sea area, and determine the tide correction value based on the tide table; The latitude and longitude information of the data points to be inserted is determined based on the second number of data points; Based on the latitude and longitude information, marine feature information of valid data points adjacent to the data point to be inserted is obtained; wherein, the valid data points are data points in the original three-dimensional nautical chart data; The marine element information of the effective data points is weighted and summed based on the first weighting coefficient, and the weighted summation result is superimposed with the tidal correction value to obtain the marine element information of the data points to be inserted; wherein, the first weighting coefficient is obtained by fitting the topographic features of the preset sea area through a spherical variogram. The data points to be inserted are inserted into the original three-dimensional nautical chart data based on the latitude and longitude information.
4. The method according to claim 3, characterized in that, After obtaining the marine feature information for the data points to be inserted, the process also includes: Determine the difference between the marine feature information of the data point to be inserted and the marine feature information of the adjacent valid data points; If the difference is greater than a set threshold, the parameters of the spherical variogram are adjusted to update the first weighting coefficient. The marine element information of the effective data points is weighted and summed based on the updated first weight coefficient, and the weighted summation result is superimposed with the tidal correction value to obtain the updated marine element information of the data points to be inserted.
5. The method according to claim 1, characterized in that, The processed original 3D nautical chart data was sampled at multiple preset resolutions, and key navigational elements were retained to obtain 3D nautical chart data at multiple preset resolutions, including: For each preset resolution, the sampling step size is determined based on the preset resolution and the resolution of the original three-dimensional nautical chart data; The original three-dimensional nautical chart data is sampled based on the sampling step size; If a key navigation element is sampled, all data points corresponding to the key navigation element are retained to obtain the three-dimensional nautical chart data at the preset resolution.
6. The method according to claim 1, characterized in that, Also includes: Obtain the ship's speed; Preloaded block data is determined based on the ship's speed and the perspective information; The preloaded chunked data is loaded into the cache.
7. The method according to claim 1, characterized in that, Rendering and displaying the first target block of data includes: In response to the adjustment of the viewing angle height, the second target block data corresponding to the adjusted viewing angle height is obtained; wherein the resolution of the second target block data corresponds to the adjusted viewing angle height. Obtain the viewing angle height during the adjustment process; wherein the viewing angle height during the adjustment process is between the viewing angle height before adjustment and the viewing angle height after adjustment, and the viewing angle height during the adjustment process changes continuously with the adjustment operation; The second weighting coefficient is determined based on the viewing angle during the adjustment process; The first target block data and the second target block data are weighted and summed based on the second weighting coefficient; Render and display the weighted summed block data.
8. A display device for three-dimensional nautical chart data, characterized in that, include: The data acquisition module is used to acquire raw three-dimensional nautical chart data; wherein the raw three-dimensional nautical chart data corresponds to a preset sea area and includes longitude, latitude and marine element information; The data verification module is used to verify the integrity of the original three-dimensional nautical chart data using a double continuous preset interval statistical method. An interpolation module is used to interpolate the original three-dimensional nautical chart data using a preset interpolation method if the integrity check fails. The data sampling module is used to sample the processed original three-dimensional nautical chart data according to multiple different preset resolutions, and retain key navigation elements to obtain three-dimensional nautical chart data with multiple different preset resolutions; wherein, the key navigation elements include at least one of the following: shallow points, navigational obstructions, navigation marks, isobaths, and port facilities. The segmentation module is used to segment multiple 3D nautical chart data of different resolutions into blocks according to preset latitude and longitude dimensions to obtain multiple block data; wherein, the block data carries latitude, longitude and resolution; The display module is used to acquire first target block data based on view information, and to render and display the first target block data; wherein, the view information includes view height and view center point, the view height corresponds to the resolution, and the view center point corresponds to latitude and longitude.
9. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the method for displaying three-dimensional nautical chart data according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that, when executed by a processor, implement the method for displaying three-dimensional nautical chart data as described in any one of claims 1-7.
Citation Information
Patent Citations
Dynamic rendering method, device and equipment for massive ocean element data and medium
CN116028737A
Topographic map visualization method and device, equipment and medium
CN121236318A