A fusion representation method and visualization platform for electronic nautical charts and NetCDF meteorological information

By integrating NetCDF marine meteorological data in electronic charts, building a two-dimensional variable numerical matrix and designing visualization rules, the problem that electronic charts are difficult to meet the information needs of complex marine environments is solved, and the fusion characterization and visualization of multi-source data is realized, which improves the safety and efficiency of intelligent navigation of ships.

CN119295594BActive Publication Date: 2025-05-16SANYA SCI & EDUCATION INNOVATION PARK WUHAN UNIV OF TECH +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411823745.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-12
Publication Date
2025-05-16
Estimated Expiration
2044-12-12

AI Technical Summary

Technical Problem

Existing electronic charts are difficult to fully meet the complex marine environmental information needs of ships' smart navigation, and NetCDF's marine meteorological data visualization technology also has the problem of insufficient data fusion and display efficiency.

Method used

A fusion characterization method of electronic chart and NetCDF meteorological information is proposed. By analyzing and extracting NetCDF marine meteorological variable data, a two-dimensional variable numerical matrix is ​​constructed, a Shape file is created, and SVG symbols and visual representation rules are designed to realize the fusion display of NetCDF marine meteorological data and electronic charts.

Benefits of technology

It realizes the integrated characterization of multi-source heterogeneous navigation environment information and electronic charts, provides theoretical technical support and interactive software application platform for intelligent navigation and digital shipping of ships, and improves navigation safety and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119295594B_ABST
    Figure CN119295594B_ABST
Patent Text Reader

Abstract

The present invention discloses a method and a visualization platform for the fusion representation of electronic charts and NetCDF meteorological information, which belongs to the technical field of electronic charts and NetCDF data visualization, and includes: parsing and extracting variable data to construct a two-dimensional variable numerical matrix; creating a Shape file and designing SVG symbols and visualization representation rules; completing the regularized rendering of the Shape layer to realize the fusion display of NetCDF marine meteorological data and electronic charts; and realizing that the designed NetCDF data visualization method can be interactively applied in the platform. The present invention proposes a method for the fusion representation of electronic charts and NetCDF meteorological information, further designs and constructs a visualization platform, and realizes information fusion representation, which has important application value and practical significance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of electronic nautical chart and NetCDF data visualization, and more specifically, relates to an electronic nautical chart and NetCDF meteorological information fusion representation method and a visualization platform. Background Art

[0002] With the development of digital ocean and meteorological navigation, intelligent ship navigation usually needs to consider complex and changeable marine environment information. Data visualization technology converts massive data into intuitive information, providing strong information support for sailors, thereby ensuring the safety of ship navigation and maximizing target benefits. With the continuous development of my country's new quality productivity, the traditional shipping industry is transforming into a new intelligent and information-based business model, and the development advantages of data visualization and digital application technology are significant.

[0003] As an important part of ship intelligent navigation, the Electronic Chart Display and Information System (ECDIS) is one of the key technologies to ensure ship navigation safety and improve navigation efficiency. However, the data coverage types are limited and it is difficult to fully meet the needs of ship intelligent navigation. The NetCDF data format is widely used in marine meteorological data storage and exchange due to its cross-platform, scalability, and efficient storage and access to large data sets. The visualization technology for NetCDF marine meteorological data has gradually become one of the key research directions.

[0004] Therefore, it is a technical problem that urgently needs to be solved to study data fusion methods for electronic nautical charts and NetCDF marine meteorological data, and to characterize navigation environment information for ship navigation and route design in view of navigation practice, so as to provide route planners with a comprehensive marine environment image. Summary of the invention

[0005] In view of the above defects or improvement needs of the prior art, the present invention proposes a method and a visualization platform for the fusion representation of electronic nautical charts and NetCDF meteorological information, so as to realize the fusion representation of electronic nautical charts and NetCDF marine meteorological information. The electronic nautical chart and NetCDF meteorological information fusion representation visualization platform constructed by the present invention realizes the fusion representation of multi-source heterogeneous navigation environment information and electronic nautical charts, and provides theoretical and technical support and an interactive software application platform for the development of intelligent navigation and digital shipping of ships.

[0006] To achieve the above object, according to one aspect of the present invention, a method for fusion characterization of electronic nautical chart and NetCDF meteorological information is provided, comprising:

[0007] Analyze and extract NetCDF marine meteorological variable data to construct a two-dimensional variable numerical matrix;

[0008] Create a Shape file, read the two-dimensional variable numerical matrix to obtain NetCDF grid point data, transfer the NetCDF grid point data to the characteristic elements of the Shape file, and store the NetCDF marine meteorological variable data as the attribute fields of the characteristic elements;

[0009] Design SVG symbols and visualization rules for key variables of NetCDF marine meteorological variable data;

[0010] The regularized rendering of the Shape layer is completed by the visual representation rules, realizing the fusion display of NetCDF marine meteorological data and electronic nautical charts.

[0011] In some optional implementation schemes, the parsing and extracting of NetCDF marine meteorological variable data to construct a two-dimensional variable numerical matrix includes:

[0012] Divide NetCDF marine meteorological data variables into longitude, latitude, key variables, other variables and custom variables;

[0013] A two-dimensional variable numerical matrix of (n×m, k) is generated by transforming all variables in the NetCDF marine meteorological data into a numerical matrix, where m and n are the number of elements of the one-dimensional variable numerical matrix of longitude and latitude, respectively, and k represents the number of all variables. Each row element of the two-dimensional variable numerical matrix records the data of a single NetCDF grid point, where each grid point data includes longitude, latitude, key variable values, other variables, and custom variables.

[0014] In some optional implementation schemes, the creating of the Shape file, reading the two-dimensional variable numerical matrix to obtain NetCDF grid point data, transferring the NetCDF grid point data to feature elements of the Shape file, and storing the NetCDF marine meteorological variable data as attribute fields of the feature elements include:

[0015] Read all variable information in NetCDF marine meteorological data and transform the two-dimensional variable numerical matrix into single grid point data;

[0016] Divide the two-dimensional variable numerical matrix into several classes according to the sea state level, and store each class as a shape layer;

[0017] Save all grid point data as feature elements into Shape files;

[0018] All variable information in NetCDF marine meteorological data is recorded as attribute fields of characteristic features.

[0019] In some optional implementation schemes, the key variable SVG symbols of the NetCDF marine meteorological variable data are designed, including:

[0020] For vector observation data, the lxml library in Python is used to independently create SVG symbols using XML encoding format.

[0021] In some optional embodiments, the visual representation rule includes:

[0022] For the two-dimensional variable numerical matrix constructed by sea breeze and current vector data, the matrix elements are divided by the key variable values, and multiple Shape files are created using the QgsVectorLayer class. The QgsSvgMarkerSymbolLayer() function is used to obtain the SVG symbol of each Shape layer, and the setSize() and setAngle() functions are used to set the size and steering angle of the symbol respectively.

[0023] Create a rendering symbol marker through QgsMarkerSymbol(), use the function marker.deleteSymbolLayer(0) to delete the default rendering style, and use the function marker.appendSymbolLayer() to pass in the SVG symbol as a layer rendering symbol;

[0024] Use the QgsSingleSymbolRenderer() class function to create a renderer and pass in the rendering symbol to implement layered regular symbol rendering, thereby achieving the visualization effect of the vector logo.

[0025] In some optional embodiments, the visual representation rule includes:

[0026] For the two-dimensional variable numerical matrix constructed by sea surface temperature and sea ice thickness scalar data, divide the two-dimensional variable numerical matrix elements according to the key variable values, create multiple Shape files, and create fill styles through QgsSimpleMarkerSymbolLayer() layers. Use the functions fill.setFillColor(QColor()), fill.setStrokeColor(QColor()) and fill.setSize to set the fill color, boundary line color and fill size respectively;

[0027] Create a rendering symbol symbol through the QgsMarkerSymbol() function, pass the fill style to the rendering symbol according to symbol.changeSymbolLayer(0, fill), and build multiple single renderers through QgsSingleSymbolRenderer() to achieve layered fill rendering, thereby achieving the visualization effect of Shape point layer color mapping.

[0028] In some optional implementation schemes, the Shape layer is rendered in a regularized manner using visual representation rules to achieve fusion display of NetCDF marine meteorological data and electronic nautical charts, including:

[0029] For the characteristic elements at the same level, the CD-TIN modeling method is used to generate Delaunay triangulation of the same type of characteristic feature points, extract the outer boundary nodes of the triangulation, and create line layers and surface layers based on the nodes;

[0030] Use QgsSingleSymbolRenderer() to create a renderer, and use QgsLineSymbolLayer() and QgsFillSymbolLayer() to set the specific rendering rules of the line layer and surface layer respectively, so as to achieve the visualization effect of color mapping of the line layer and surface layer.

[0031] In some optional embodiments, the method further comprises:

[0032] Design the Matplotlib drawing area sub-docked window QDockWidget, use FigureCanvas as the drawing area of ​​​​matplotlib graphics, and embed it into the QDockWidget window to display the matplotlib drawing graphics in QDockWidget.

[0033] According to another aspect of the present invention, a visualization platform for fusion representation of electronic nautical charts and NetCDF meteorological information is provided, comprising:

[0034] Numerical matrix construction module, used to parse and extract NetCDF marine meteorological variable data to construct a two-dimensional variable numerical matrix;

[0035] The feature element construction module is used to create a Shape file, read the two-dimensional variable numerical matrix to obtain the NetCDF grid point data, transfer the NetCDF grid point data to the feature elements of the Shape file, and store the NetCDF marine meteorological variable data as the attribute fields of the feature elements;

[0036] Visualization rule design module, used to design key variable SVG symbols and visualization representation rules of NetCDF marine meteorological variable data;

[0037] The fusion representation module is used to complete the regular rendering of the Shape layer based on the visual representation rules, and realize the fusion display of NetCDF marine meteorological data and electronic nautical charts.

[0038] According to another aspect of the present invention, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the steps of any one of the above methods are implemented.

[0039] In general, the above technical solutions conceived by the present invention can achieve the following beneficial effects compared with the prior art:

[0040] The present invention constructs a two-dimensional variable numerical matrix by analyzing and extracting variable data; creates a Shape file and designs SVG symbols and visualization representation rules; completes the regularized rendering of the Shape layer, and realizes the fusion display of NetCDF marine meteorological data and electronic charts. The electronic chart and NetCDF marine meteorological information fusion representation visualization platform constructed by the present invention realizes the fusion representation of multi-source heterogeneous navigation environment information and electronic charts, providing theoretical technical support and an interactive software application platform for the development of intelligent ship navigation and digital shipping. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0042] Figure 1 It is a flow chart of a method for integrating electronic nautical chart and NetCDF meteorological information provided by an embodiment of the present invention;

[0043] Figure 2 A method for extracting variable data and constructing a two-dimensional variable numerical matrix is ​​provided in an embodiment of the present invention;

[0044] Figure 3 A NetCDF data and Shape file feature transformation diagram provided by an embodiment of the present invention;

[0045] Figure 4 It is a NetCDF wind field data Shape layer attribute table provided by an embodiment of the present invention;

[0046] Figure 5 It is a NetCDF wind field, flow field data and electronic nautical chart fusion display effect diagram provided by an embodiment of the present invention;

[0047] Figure 6 This is a NetCDF sea surface temperature data and electronic nautical chart fusion display effect diagram provided by an embodiment of the present invention;

[0048] Figure 7 This is a NetCDF wave height data and electronic nautical chart fusion display effect diagram provided by an embodiment of the present invention;

[0049] Figure 8 It is a NetCDF wave height data Shape layer attribute table provided by an embodiment of the present invention;

[0050] Fig. 9 It is a CD-TIN model extraction outer boundary node and NetCDF wave height data color mapping effect diagram provided by an embodiment of the present invention, wherein (a) is a CD-TIN model extraction outer boundary node, (b) is a NetCDF wave height data color mapping effect diagram;

[0051] Fig.10 It is a visualization effect diagram of an electronic nautical chart integrating wind field and flow field data provided by an embodiment of the present invention;

[0052] Fig.11 The present invention provides a flowchart of generating a two-dimensional variable numerical matrix from NetCDF data. DETAILED DESCRIPTION

[0053] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. The components of the embodiments of the present application described and shown in the drawings here can be arranged and designed in various different configurations.

[0054] Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the present application for which protection is sought, but merely represents selected embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.

[0055] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, further definition and explanation thereof is not required in subsequent drawings.

[0056] In the description of the present application, it should be noted that the terms "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc. indicate positions or positional relationships based on the positions or positional relationships shown in the accompanying drawings, or the positions or positional relationships in which the product of the application is usually placed when in use. They are only for the convenience of describing the present application and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific position, be constructed and operated in a specific position, and therefore cannot be understood as a limitation on the present application. In addition, the terms "first", "second", "third", etc. are only used to distinguish the description, and cannot be understood as indicating or implying relative importance.

[0057] In addition, the terms "horizontal", "vertical", "overhanging" and the like do not mean that the components are required to be absolutely horizontal or overhanging, but can be slightly tilted. For example, "horizontal" only means that its direction is more horizontal than "vertical", and does not mean that the structure must be completely horizontal, but can be slightly tilted.

[0058] In the description of this application, it should also be noted that, unless otherwise clearly specified and limited, the terms "set", "install", "connect", and "connect" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection, or it can be indirectly connected through an intermediate medium, or it can be the internal communication of two elements. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances.

[0059] In the present application, unless otherwise clearly specified and limited, a first feature being "above" or "below" a second feature may include that the first and second features are in direct contact, or may include that the first and second features are not in direct contact but are in contact through another feature between them. Moreover, a first feature being "above", "above" and "above" a second feature includes that the first feature is directly above and obliquely above the second feature, or simply indicates that the first feature is higher in level than the second feature. A first feature being "below", "below" and "below" a second feature includes that the first feature is directly below and obliquely below the second feature, or simply indicates that the first feature is lower in level than the second feature.

[0060] The features and performance of the present application are further described in detail below in conjunction with the embodiments.

[0061] Example 1

[0062] like Figure 1 As shown, an embodiment of the present invention provides a method for integrating electronic nautical charts and NetCDF meteorological information, including:

[0063] Analyze and extract NetCDF marine meteorological variable data to construct a two-dimensional variable numerical matrix;

[0064] Create a Shape file, transfer the NetCDF grid point data to the characteristic elements of the Shape file, and store the NetCDF marine meteorological variable data as the attribute fields of the characteristic elements;

[0065] Design SVG symbols and visualization rules for key variables of NetCDF marine meteorological variable data;

[0066] Among them, key variables refer to vector or scalar data related to ocean characteristics, such as wind speed, wind direction, current speed, current direction, wave height, wave direction, sea surface temperature, sea surface height, sea ice coverage area fraction, sea ice thickness, and water depth information.

[0067] The Shape layer is rendered in a regularized manner using visual representation rules, realizing the fusion display of NetCDF marine meteorological data and electronic nautical charts.

[0068] The designed NetCDF data visualization method can be interactively applied in the platform.

[0069] In an optional implementation, parsing and extracting variable data to construct a two-dimensional variable numerical matrix includes:

[0070] NetCDF marine meteorological data variables are divided into longitude, latitude, key variables, other variables and custom variables, such as Fig.11 The figure shows a flow chart of generating a two-dimensional variable numerical matrix from NetCDF data variable information. By transforming all variables through a numerical matrix to generate a two-dimensional numerical matrix of (n×m, k) (m and n are the number of one-dimensional numerical matrix elements of longitude and latitude, respectively, and k represents the number of all variables), subsequent visualization methods and model applications are convenient. At the same time, the two-dimensional variable numerical matrix can be stored as a TXT file, called a variable information file, and the variable information can be read and the key variable information can be visualized by calling each row of elements in the TXT file one by one.

[0071] In an optional implementation, a Shape file is created, the NetCDF grid point data is transferred to the characteristic elements of the Shape file, and the data variable information is stored as the attribute fields of the characteristic elements, including:

[0072] By reading all the variable information of NetCDF data and transforming it into a numerical matrix, a two-dimensional variable numerical matrix is ​​obtained. Each row of the matrix records all the information of a single grid point data, including longitude, latitude, key variable values, other variable values, and variable values ​​obtained by custom calculations. All grid point data are transferred to Shape files as feature elements, and the data variable information is recorded as the attribute field of the feature element. The two-dimensional variable numerical matrix is ​​as follows: Figure 2 As shown, the feature transformation relationship is as follows Figure 3 shown.

[0073] In an optional implementation, designing a corresponding SVG symbol includes:

[0074] For vector observation data such as wind, current, and significant wave height, SVG symbols were independently created using the lxml library in Python in XML encoding format. In order to achieve regular rendering of the Shape layer of NetCDF data and integrate it with the electronic nautical chart, specific visualization representation rules were designed to complete the regular rendering of the point layer in the QGIS Python API environment. Considering that ships are easily affected by sea conditions in navigation practice, and when the values ​​of key variables are generally small and the regional differences are large, the vector mark size will be large and the visualization effect will be poor. Therefore, the present invention studies the division of sea condition levels, which are divided into 10 levels (0-9), as shown in Table 1.

[0075] Table 1

[0076]

[0077] In an optional implementation, designing a visualization representation rule includes:

[0078] For vector data such as sea breeze and current, a two-dimensional variable numerical matrix is ​​constructed according to the NetCDF data variable information, and the matrix elements are divided by the key variable values. The QgsVectorLayer class is used to create multiple Shape files, and the QgsSvgMarkerSymbolLayer() function is used to obtain the SVG symbol of each Shape layer. The setSize() and setAngle() functions are used to set the symbol size and steering angle respectively; the rendering symbol marker is created through QgsMarkerSymbol(), and the default rendering style is deleted by the function marker.deleteSymbolLayer(0), and the SVG symbol is passed in as the layer rendering symbol by the function marker.appendSymbolLayer(). Finally, the QgsSingleSymbolRenderer() class function is used to create a renderer and pass in the rendering symbol to realize layer-by-layer regular symbol rendering, thereby achieving the visualization effect of the vector mark.

[0079] In an optional implementation, designing a visualization representation rule includes:

[0080] For scalar data such as sea surface temperature and sea ice thickness, the variable numerical matrix elements are divided according to the key variable values, and multiple Shape files are created. The fill style fill is created by layer through QgsSimpleMarkerSymbolLayer(), and the fill color, boundary line color and fill size are set respectively using the functions fill.setFillColor(QColor()), fill.setStrokeColor(QColor()) and fill.setSize; the rendering symbol symbol is created through the QgsMarkerSymbol() function, and the fill style is passed to the rendering symbol according to symbol.changeSymbolLayer(0, fill). Multiple single renderers are constructed through QgsSingleSymbolRenderer() to realize layer-by-layer fill rendering, thereby realizing the visualization effect of Shape point layer color mapping.

[0081] In an optional implementation scheme, the Shape layer is rendered in a regularized manner to realize the fusion display of NetCDF marine meteorological data and electronic nautical charts, including:

[0082] For the feature elements at the same level, the CD-TIN modeling method is used to generate a Delaunay triangulation network for the feature elements of the same type, extract the outer boundary nodes of the triangulation network, and create line layers (contour lines) and surface layers based on the nodes. Then, QgsSingleSymbolRenderer() is used to create a renderer, and QgsLineSymbolLayer() and QgsFillSymbolLayer() are used to set the specific rendering rules of the line layer and surface layer respectively, thereby achieving the visualization effect of the color mapping of the contour lines and surface layers.

[0083] In an optional embodiment, the NetCDF data visualization method designed to be interactively applied in the platform includes:

[0084] A "Matplotlib drawing area" sub-docked window QDockWidget was designed, FigureCanvas was used as the drawing area for matplotlib graphics, and it was embedded in the QDockWidget window to display matplotlib-drawn graphics in QDockWidget.

[0085] Example 2

[0086] 1. Fusion and visualization of wind and flow field data: To verify the effectiveness of the NetCDF data variable information fusion strategy, wind field, flow field, sea surface temperature, and significant wave height data were taken as examples. By constructing a two-dimensional variable numerical matrix and creating multiple Shape layers according to visualization representation rules, wind feathers, arrow feathers, and arrow SVG symbols were designed, and regular rendering was completed in the QGIS Python API environment to achieve the fusion representation of NetCDF marine meteorological information and electronic nautical charts.

[0087] First, make wind field data slices. The main variables of NetCDF wind field data include longitude, latitude, time, u10 and v10. The longitude range is (0°, 360°). It is necessary to subtract 360 from the value greater than 180 and convert the longitude value to the range of (-180°, 180°E). The latitude range is (-90°, 90°N). The data type is single-precision floating point number and the spatial resolution is 0.75°×0.75°. The time range is [2019-01-01, 2019-01-31], and the daily recording time is [T00:00:00.000000000, T06:00:00.000000000,T12:00:00.000000000,T18:00:00.000000000], the data type is datetime64[ns], which belongs to a type of numpy library, and is accurate to nanoseconds. u10 and v10 represent the horizontal speed and vertical speed respectively, which are single-precision floating-point array data with dimensions of [longitude: 480, latitude: 241, time: 124]. The present invention selects a data slice with a time point of 2019-01-01T06:00:00 and a longitude and latitude range of [(-180°, 180°E), (-90°, 90°N)], extracts each variable and obtains a two-dimensional variable numerical matrix of (115680, 5) through numerical matrix transformation, such as Figure 2 As shown, each row element includes Date, longitude, latitude, u10 and v10. In addition, the synthetic wind speed and wind direction column vector matrices (115680, 1) are calculated through u10 and v10 respectively, which are defined as Speed ​​and Direction variables, and finally a two-dimensional variable numerical matrix (115680, 7) is obtained.

[0088] like Figure 4As shown in the figure, when creating a Shape layer based on a two-dimensional variable numerical matrix, the matrix elements are divided according to the synthetic wind speed Speed ​​and wind direction Direction. The division basis is: the wind speed threshold of 10.8m / s corresponding to the level 4 sea condition and the wind speed threshold of 17.2m / s corresponding to the level 6 sea condition are used as the first division basis, and the position of the four-quadrant interval of the coordinate system where the wind direction angle is located is used as the second division basis. The matrix elements are divided into 12 categories and stored as 12 Shape layers. When creating a Shape point layer, the attribute field needs to be set according to the variable data type, such as setting the date Date to the string type QVariant.String, and setting other single-precision floating-point data to QVariant.Double. Then, SVG wind feather symbols are created according to the XML format standard. Black wind feathers are used to render shape layer elements with wind speed values ​​less than or equal to 10.8m / s (sea conditions of level 4 and below), blue wind feathers are used to render layer elements with wind speed values ​​between 10.8m / s-17.2m / s (sea conditions of level 5 and 6), and red wind feathers are used to render layer elements with wind speed values ​​greater than 17.2m / s (severe sea conditions of level 7 and above). In the actual rendering process, the QgsSingleSymbolRenderer() class function is used to create a single renderer for each Shape layer, and the QgsSvgMarkerSymbolLayer() is used to obtain the corresponding wind feather symbol. The setSize() and setAngle() are used to set the size and steering angle of the symbol respectively. The steering angles are 45°, 135°, -45° and -135°, respectively, corresponding to the four-quadrant interval positions of the synthetic wind direction angle. The pseudo code of the above wind field data processing method is shown in Table 2.

[0089] Table 2

[0090]

[0091] Based on the PyQGIS development system and PyQt5 development framework, the code is written to achieve regular rendering of wind field data and fusion display with electronic nautical charts, such as Figure 5 As shown, the wind feather points to the direction of the incoming wind; by transferring the NetCDF wind field data to the feature elements of the Shape point layer, the data variable information is stored as the attribute information of the feature elements, and based on the layer feature query function in Qt, all variable information of a single data point in the layer can be queried.

[0092] Produce flow field slice data with a latitude and longitude range of [(90°, 140°E), (-20°, 30°N)], a spatial resolution of 0.08°×0.08°, and a time point of 2020-02-01T21:00:00. The main variables include lat, lon, time, water_u_bottom, and water_v_bottom. water_u_bottom and water_v_bottom are the flow velocities in the horizontal and vertical directions, respectively, and are single-precision floating-point data. Extract all variable information of the slice data, and obtain a two-dimensional variable numerical matrix of (391876,5) through numerical matrix transformation. Define the synthetic velocity Velocity and flow direction Flowdirection variables, and finally calculate and generate a two-dimensional numerical matrix of (391876, 7). When creating a Shape layer based on a numerical matrix, the layer attribute fields include time, lon, lat, water_u_bottom, water_v_bottom, Velocity, and Flowdirection, where time is set to the string type QVariant.String, and other variables are set to QVariant.Double. The numerical matrix elements are divided into layers based on Velocity and Flowdirection. The division basis is: the flow velocity thresholds of 0.1m / s and 0.2m / s are used as one of the division criteria, and the position of the flow direction angle in the four-quadrant interval of the coordinate system is used as the second division basis. The matrix elements are divided into 12 categories and saved as 12 Shape layers. Create arrow feather SVG symbols according to the XML format standard. Black arrow feathers are used to render Shape layer elements with a synthetic flow rate less than 0.1m / s, blue arrow feathers are used to render layer elements corresponding to a synthetic flow rate of 0.1-0.2m / s, and red arrow feathers are used to render layer elements with a synthetic flow rate greater than 0.2m / s. For example Fig.10 Shown is a visualization of the electronic nautical chart integrating wind field and flow field data.

[0093] 2. Sea surface temperature data fusion visualization: Make sea surface temperature NetCDF data slices with a latitude and longitude range of [(-180°, 180°E), (-90°, 90°N)] and a spatial resolution of 0.75°×0.75°. The data variables include time, longitude, latitude and sst, and the sst variable dimension is [longitude: 480, latitude: 241, time:124]. Select the data variable information at 2018-09-01T00:00:00 to construct a two-dimensional variable numerical matrix of (115680, 4). The sst variable unit is Kelvin, which needs to be subtracted by 273.15 and recorded in degrees Celsius (℃). Create 6 Shape layers based on the variable numerical matrix, and the layer division is based on: (a) sst<0; (b) 0≦sst<10; (c) 10≦sst<20; (d) 20≦sst<26; (e) 26≦sst; (f) sst=nan; where nan represents an invalid value. Render the created Shape layers separately, use QgsSimpleMarkerSymbolLayer() to create 6 fill styles, use QgsMarkerSymbol() to create a rendering symbol, pass the fill style to the rendering symbol, and use the QgsSingleSymbolRenderer() class function to build renderers to render the characteristic elements of the 6 layers. For layers (a), (b), (c), (d), and (e), the fill colors are set to dark blue, blue, purple, yellow, and red, respectively. The fill color and border color of layer (f) are set to QColor(255, 255, 255, 0), indicating no fill and no solid line. Figure 6 The figure shows the fusion display effect of NetCDF sea surface temperature data and electronic nautical chart.

[0094] 3. Wave height data fusion visualization: Make NetCDF wave height data slices, the time point is 2018-01-01T03:00:00, the latitude and longitude range is [(45°, 60°E), (-10°, 5°N)], the spatial resolution is 0.25°×0.25°, and the main variables include time, lon, lat, hs, dir, map, lm and t01, among which hs and dir are key variables, representing the significant wave height and wave direction respectively. Extract all variable information in the data, and generate a two-dimensional variable numerical matrix of (3721, 8) according to the numerical matrix transformation calculation. Referring to the classification of sea conditions, the visualization representation rules are designed as follows: the minimum wave height corresponding to the sea conditions of level 4 and level 5, that is, 1.25m and 2.5m, are used as one of the basis for the division of the variable numerical matrix elements, and the position of the four-quadrant interval of the coordinate system where the wave direction angle is located is used as the second basis for the division. Create 12 Shape layers, such as Figure 8 Create SVG arrow symbols of different colors according to the XML format standard and render the Shape layer separately, so that the wave height data can be integrated with the nautical chart in the form of vector symbols, as shown in the figure below. Figure 7 shown.

[0095] In addition, for the same type of Shape layer feature elements, the CD-TIN modeling method is used to construct a plane-constrained triangulated network model. By setting appropriate outer boundary expression parameters, the constructed model boundary conforms to the geometric distribution law of feature points. By traversing all Delaunay triangles in the triangulated network model, the edges that appear only once are extracted, called the outer boundary, and the node coordinates of the outer boundary are obtained in turn. Create line layers (contour lines) and surface layers based on the outer boundary node coordinates, use QgsLineSymbol and QgsFillSymbol to set the rendering symbols of line layers and surface layers, and build a single renderer through QgsSingleSymbolRenderer() to achieve layer rendering, such as Fig. 9 As shown, (a) is the outer boundary node extracted from the CD-TIN model, and (b) is the color mapping effect of the NetCDF wave height data.

[0096] The embodiments described above are part of the embodiments of the present application, rather than all of the embodiments. The detailed description of the embodiments of the present application is not intended to limit the scope of the present application for protection, but merely represents the selected embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present application.

Claims

1. A method for fusion characterization of electronic nautical chart and NetCDF meteorological information, characterized in that: include: Analyze and extract NetCDF marine meteorological variable data to construct a two-dimensional variable numerical matrix; Create a Shape file, read the two-dimensional variable numerical matrix to obtain NetCDF grid point data, transfer the NetCDF grid point data to the characteristic elements of the Shape file, and store the NetCDF marine meteorological variable data as the attribute fields of the characteristic elements; Design SVG symbols and visualization rules for key variables of NetCDF marine meteorological variable data; The Shape layer is rendered in a regularized manner using visual representation rules, realizing the fusion display of NetCDF marine meteorological data and electronic nautical charts; The analysis and extraction of NetCDF marine meteorological variable data to construct a two-dimensional variable numerical matrix includes: Divide NetCDF marine meteorological data variables into longitude, latitude, key variables, other variables and custom variables; All variables in the NetCDF marine meteorological data are transformed into a two-dimensional variable numerical matrix of (n×m, k), where m and n are the number of elements of the longitude and latitude one-dimensional variable numerical matrices, respectively, and k represents the number of all variables. Each row element of the two-dimensional variable numerical matrix records the data of a single NetCDF grid point, where each grid point data includes longitude, latitude, key variable values, other variables, and custom variables. The creating of the Shape file, reading the two-dimensional variable numerical matrix to obtain the NetCDF grid point data, transferring the NetCDF grid point data to the characteristic elements of the Shape file, and storing the NetCDF marine meteorological variable data as the attribute fields of the characteristic elements include: Read all variable information in NetCDF marine meteorological data and transform the two-dimensional variable numerical matrix into single grid point data; Divide the two-dimensional variable numerical matrix into several classes according to the sea state level, and store each class as a shape layer; Save all grid point data as feature elements into Shape files; All variable information in NetCDF marine meteorological data is recorded as attribute fields of characteristic features.

2. The method according to claim 1, characterized in that The key variable SVG symbols of NetCDF marine meteorological variable data are designed, including: For vector observation data, the lxml library in Python is used to independently create SVG symbols using XML encoding format.

3. The method according to claim 2, characterized in that The visualization representation rules include: For the two-dimensional variable numerical matrix constructed by sea breeze and current vector data, the matrix elements are divided by the key variable values, and multiple Shape files are created using the QgsVectorLayer class. The QgsSvgMarkerSymbolLayer() function is used to obtain the SVG symbol of each Shape layer, and the setSize() and setAngle() functions are used to set the size and steering angle of the symbol respectively. Create a rendering symbol marker through QgsMarkerSymbol(), use the function marker.deleteSymbolLayer(0) to delete the default rendering style, and use the function marker.appendSymbolLayer() to pass in the SVG symbol as a layer rendering symbol; Use the QgsSingleSymbolRenderer() class function to create a renderer and pass in the rendering symbol to implement layered regular symbol rendering, thereby achieving the visualization effect of the vector logo.

4. The method according to claim 2, characterized in that: The visualization representation rules include: For the two-dimensional variable numerical matrix constructed by sea surface temperature and sea ice thickness scalar data, divide the two-dimensional variable numerical matrix elements according to the key variable values, create multiple Shape files, and create fill styles through QgsSimpleMarkerSymbolLayer() layers. Use the functions fill.setFillColor(QColor()), fill.setStrokeColor(QColor()) and fill.setSize to set the fill color, boundary line color and fill size respectively; Create a rendering symbol symbol through the QgsMarkerSymbol() function, pass the fill style to the rendering symbol according to symbol.changeSymbolLayer(0, fill), and build multiple single renderers through QgsSingleSymbolRenderer() to achieve layered fill rendering, thereby achieving the visualization effect of Shape point layer color mapping.

5. The method according to claim 3 or 4, characterized in that: The Shape layer is rendered in a regularized manner using the visualization representation rules to realize the fusion display of NetCDF marine meteorological data and electronic nautical charts, including: For the characteristic elements at the same level, the CD-TIN modeling method is used to generate Delaunay triangulation of the same type of characteristic feature points, extract the outer boundary nodes of the triangulation, and create line layers and surface layers based on the nodes; Use QgsSingleSymbolRenderer() to create a renderer, and use QgsLineSymbolLayer() and QgsFillSymbolLayer() to set the specific rendering rules of the line layer and surface layer respectively, so as to achieve the visualization effect of color mapping of the line layer and surface layer.

6. The method according to claim 1, characterized in that The method further comprises: Design the Matplotlib drawing area sub-docked window QDockWidget, use FigureCanvas as the drawing area of ​​​​matplotlib graphics, and embed it into the QDockWidget window to display the matplotlib drawing graphics in QDockWidget.

7. A visualization platform for the fusion representation of electronic nautical charts and NetCDF meteorological information, characterized in that: include: Numerical matrix building module, used to classify NetCDF marine weather data variables into longitude, latitude, key variables, other variables and custom variables; All variables in the NetCDF marine meteorological data are transformed into a two-dimensional variable numerical matrix of (n×m, k), where m and n are the number of elements of the longitude and latitude one-dimensional variable numerical matrices, respectively, and k represents the number of all variables. Each row element of the two-dimensional variable numerical matrix records the data of a single NetCDF grid point, where each grid point data includes longitude, latitude, key variable values, other variables, and custom variables. The feature element construction module is used to read all variable information in NetCDF marine meteorological data, transform the two-dimensional variable numerical matrix into a single grid point data after numerical matrix transformation; divide the two-dimensional variable numerical matrix into several classes according to the sea state level, and store each class as a shape layer; transfer all grid point data as feature elements to Shape files; record all variable information in NetCDF marine meteorological data as attribute fields of feature elements; Visualization rule design module, used to design key variable SVG symbols and visualization representation rules of NetCDF marine meteorological variable data; The fusion representation module is used to complete the regular rendering of the Shape layer based on the visual representation rules, and realize the fusion display of NetCDF marine meteorological data and electronic nautical charts.

8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Electronic chart analysis display method based on PyQGIS development system

    CN115994234A

  • Visualization method and device for marine hydro meteorological data and medium

    CN116912441A