An electronic chart dynamic element automatic labeling method
By employing a dynamic feature automatic labeling method that utilizes multi-source data processing and priority ranking, the problems of overlapping and visual stability in dynamic feature labeling within electronic nautical chart systems have been resolved, thereby improving navigation safety and the effectiveness of information display.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHANGHAI ANXIN INFORMATION TECH CO LTD
- Filing Date
- 2026-01-21
- Publication Date
- 2026-06-05
AI Technical Summary
Existing electronic chart systems suffer from overlapping and occlusion, poor visual stability, and information overload when annotating dynamic elements, especially in densely populated sea areas and when targets are moving, leading to increased navigation safety risks.
By standardizing and integrating multi-source data, prioritizing, merging and filtering, and smoothing the difference, automatic annotation of dynamic elements is achieved, reducing annotation overlap and screen jitter, and improving visual stability.
It effectively reduces label overlap, improves visual stability, reduces information redundancy, and ensures navigation safety, making it suitable for various maritime scenarios.
Smart Images

Figure CN121561013B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of nautical display technology, and in particular to a method for automatically annotating dynamic elements of electronic nautical charts. Background Technology
[0002] Electronic chart information systems are navigation automation systems that have emerged with the rapid development of computer technology. They integrate electronic chart data files, dedicated software, control and display equipment, and external sensors, and can provide core navigation functions such as route design, operation, marking, and inspection. They have gradually replaced paper charts and become the core navigation equipment in modern navigation.
[0003] According to the definition of the International Hydrographic Organization, electronic chart information systems need to integrate static geographic information (such as channels, water depth, fixed navigation marks, and sea topography) and dynamic element information (such as ships, mobile buoys, and temporary control areas). Among them, dynamic elements have the core characteristic of "continuously changing with time / space / operational status", and their real-time and accurate labeling directly determines navigation safety and navigation efficiency.
[0004] Current electronic chart systems have certain technical deficiencies in dynamic feature annotation. In densely populated sea areas, text annotations of multiple vessels can easily overlap and obscure each other, making it difficult for crew members to identify key target information and increasing the risk of collision. Furthermore, when a target turns or changes speed, the annotations will circle or shift violently with the target's movement, resulting in poor visual stability and making it difficult for crew members to continuously track the target. In small-scale views at the open sea, annotation overload is likely to occur, while in large-scale views near the coast, key target annotations may be missed. Summary of the Invention
[0005] To address the aforementioned technical problems, this application provides a method for automatically labeling dynamic elements on electronic nautical charts.
[0006] An automatic annotation method for dynamic features on electronic nautical charts includes the following steps:
[0007] S1: Collect multi-source data required for labeling dynamic elements in real time according to the update cycle, and preprocess the multi-source data to obtain standardized fused data;
[0008] S2: Extract the core attributes of dynamic elements based on the standardized fused data;
[0009] S3: Define the annotation style and prioritize based on the core attributes to generate differentiated initial annotations that distinguish the dynamic elements and their corresponding priorities;
[0010] S4: Identify overlapping initial labels and merge or filter them based on the chart zoom level;
[0011] S5: Perform smooth interpolation between the initial annotation position and the corresponding annotation position in the previous frame, and draw the annotation on the electronic chart based on the interpolation result.
[0012] By standardizing and integrating multi-source data, prioritizing and sorting, and merging, filtering, and smoothing the difference, it can significantly reduce label overlap and screen jitter, improve visual stability, reduce display redundancy and avoid information overload, effectively ensure navigation safety, and is applicable to various maritime scenarios such as nearshore, open sea, and busy waterways, making it highly practical.
[0013] Optionally, step S3 includes:
[0014] Identify the set of dynamic elements that need to be labeled within the target sea area;
[0015] Calculate the corresponding priority score for each dynamic element in the dynamic element set;
[0016] Based on the priority score, dynamic elements are assigned corresponding priorities, and the highest priority target has the right to be displayed as the top-level label.
[0017] The dynamic elements include ships, mobile buoys, and temporary control zones; the multi-source data includes AIS data, radar data, official data streams, and user input data; and the core attributes include dynamic element type information, dynamic element movement location information, control zone coordinates, and effective time.
[0018] Optionally, step S4 includes:
[0019] Under the current chart zoom level, identify the initial label groups that have overlapping conflicts;
[0020] Select the highest priority initial label from the initial label group as the display label;
[0021] Using the displayed label as the center, a virtual circle is generated with a specified number of pixels as the radius, and N candidate points are generated evenly on the virtual circle.
[0022] The candidate point is displayed in a smaller scale, showing the other initial labels in the initial label group that have the lowest display cost, excluding the highest priority initial label. The positional relationship between the other initial labels and the displayed labels is the same as in reality.
[0023] Optionally, the display label includes motion direction information, and several new candidate points with a defined maximum overlap ratio are generated on the arc segment following the virtual circle in the opposite direction to the motion direction of the display label.
[0024] Optionally, the display annotation further includes an associated annotation box and a leader line, the configuration of which is dynamically set according to the principle of minimum conflict.
[0025] Optionally, the method for calculating the display cost includes:
[0026] The display cost is obtained based on the occlusion cost, association cost, stability cost, and preference cost of the dynamic element to be displayed corresponding to the candidate point, as well as its straight-line distance from the center.
[0027] The occlusion cost is obtained based on the degree of overlap between the initial and associated bounding boxes of other initial labels at that location and the initial and associated bounding boxes of other static features of the same or higher priority.
[0028] The associated cost is obtained based on the length of the leader of the associated annotation box and the change in the angle between it and the body;
[0029] The stability cost is obtained based on the distance of positional change relative to other initial annotations in the previous frame;
[0030] The preference cost is obtained based on the basic cost corresponding to the relationship between the candidate point and the center position.
[0031] Optionally, the process of obtaining the priority score includes:
[0032] Calculate the type score based on the dynamic element type information;
[0033] Calculate the risk score based on the dynamic element's position information, including reaction collision risk, velocity, and acceleration.
[0034] The risk probability of entering the controlled area is calculated based on the dynamic element movement location information, the coordinates of the controlled area, and the effective time.
[0035] The priority score is obtained by weighting the type score, the risk score, and the risk probability.
[0036] Optionally, the update cycle is set with a default value;
[0037] When either the risk score or the risk probability exceeds a specified threshold, a default value reduction decision is triggered.
[0038] Optionally, step S3 includes:
[0039] The maximum number of dynamic elements to be displayed is automatically configured based on the current chart zoom level, and redundant low-priority dynamic element display tasks are filtered out according to the priority score.
[0040] Optionally, step S3 includes:
[0041] If the difference in priority scores between the first two high-priority dynamic elements in the dynamic element set is less than a specified score, then the initial label of the second-priority dynamic element is blurred and placed below the display label.
[0042] In summary, this application includes at least one of the following beneficial technical effects:
[0043] This application significantly reduces label overlap and screen jitter by standardizing and prioritizing multi-source data fusion, as well as merging, filtering, and smoothing difference processing, thereby improving visual stability, reducing display redundancy and avoiding information overload, and effectively ensuring navigation safety. It is applicable to various maritime scenarios such as nearshore, open sea, and busy waterways, and is highly practical. Attached Figure Description
[0044] Figure 1 This is a flowchart illustrating the automatic annotation method for dynamic elements of electronic nautical charts in this application. Detailed Implementation
[0045] The embodiments of this application are described in detail below, and examples of the embodiments are shown in the accompanying drawings.
[0046] In the description of this specification, the references to "certain embodiments," "one embodiment," "some embodiments," "illustrative embodiment," "example," "specific example," or "some examples" refer to specific features, structures, materials, or characteristics described in connection with the described embodiment or example, which are included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.
[0047] This application discloses a method for automatically labeling dynamic elements on electronic nautical charts, referring to... Figure 1 This includes the following steps:
[0048] S1: Collect multi-source data required for labeling dynamic elements in real time according to the default update cycle (e.g., 1 second). Dynamic elements include ships, moving buoys, and temporary control areas. Multi-source data includes dynamic information (latitude and longitude, speed, heading, ship name, etc.) and static information (ship length, ship width, ship type) from AIS data, radar data (target points and tracks extracted through radar signal processing), official data streams (received official navigation warnings and temporary control area information), and user input data (temporary areas and annotations manually labeled by the driver).
[0049] The multi-source data is cleaned and denoised to remove signal jumps, clutter, and other abnormal information. Data of different formats are standardized, such as converting various location data into a unified coordinate system. The location data of all ships, control zones, and avoidance zones are converted into the WGS84 coordinate system and aligned based on timestamps (the time error of all data is controlled within 0.1 seconds). The radar-collected tracks of small fishing boats are associated with AIS data (the Euclidean distance between the two positions is 3 meters, ≤5 meters threshold) to confirm that the fishing boat is a new target and integrate it into the ship dataset. The time and location information of official control zones and user-marked avoidance zones are associated to ensure no spatiotemporal conflicts.
[0050] S2: Extract the core attributes of dynamic elements based on standardized fused data; the core attributes include dynamic element type information (such as cruise ship, merchant ship, fishing boat), dynamic element movement location information (location information, movement speed, movement acceleration and movement direction), and control zone coordinates and effective time;
[0051] S3: Define the labeling style (which can be assigned according to the dynamic element type information, such as solid triangle, hollow triangle, rhombus, color, etc.) and prioritize based on core attributes to generate differentiated initial labels that distinguish dynamic elements and their corresponding priorities.
[0052] Specific methods may include:
[0053] Identify the set of dynamic elements that need to be labeled within the target sea area;
[0054] Calculate the corresponding priority score for each dynamic feature in the dynamic feature set. ;
[0055] The process of obtaining priority scores includes:
[0056] Calculate type score based on dynamic element type information. The score can be directly obtained according to the pre-configured score (100 points for the ship itself, 80 points for dangerous goods ships, 60 points for fishing boats, and 50 points for ordinary merchant ships).
[0057] Calculate the reaction collision risk (negatively correlated with CPA value) and risk scores based on the dynamic element's position information, as well as its velocity and acceleration. (Positively correlated with collision risk, speed, and acceleration, with collision risk having a greater weight).
[0058] Calculate the risk probability of entering the controlled area based on the dynamic location information of the elements, the coordinates of the controlled area, and the effective time. (Negatively correlated with the distance between the dynamic element and the edge of the controlled area, and correlated with the arrival time of the dynamic element at its current speed to reach the edge of the controlled area; the closer the arrival time is to the effective time, the higher the risk probability.) The larger the value, the more likely it is to be used if the effective time has expired (then the preset maximum value will be used).
[0059] Score by type Risk Score and risk probability Weighted scores are used to obtain priority scores. , , , The weights sum to 1 are the weight values. This represents a timestamp; when either the risk score or the risk probability exceeds the corresponding specified threshold, a default value reduction decision is triggered, which can temporarily adjust the update cycle to 0.2s.
[0060] Then, priority can be assigned to dynamic elements according to priority scores, and the highest priority target has the right to be displayed at the top level.
[0061] S4: Identify overlapping initial labels and merge or filter them based on the chart zoom level;
[0062] For example, the maximum number of dynamic features to be displayed can be automatically configured based on the current chart zoom level, and redundant low-priority dynamic feature display tasks can be filtered out according to priority scores, thus achieving the filtering display of initial labels. If the difference in priority scores between the first two high-priority dynamic features in the dynamic feature set is less than 20 points, the initial label of the second-priority dynamic feature is blurred and placed below the displayed labels, thus achieving the merging display of initial labels.
[0063] Specifically, step S4 includes:
[0064] Given the current chart zoom level and the style of the initial markers already determined, the overlap between the initial markers is iterated, and initial markers with an overlap rate greater than 50% are grouped together into a single initial marker group.
[0065] The initial label with the highest priority score in the initial label group is selected as the display label. The display label includes motion direction information, associated label boxes, and leaders. The configuration of associated label boxes and leaders is dynamically set according to the principle of minimum conflict. Specifically, the associated label boxes can be regarded as particles with repulsive force, and the anchor points generated by the leaders can be regarded as sources of gravity. By simulating physical forces, they can automatically reach a balanced layout.
[0066] Specifically, a virtual circle is generated with the displayed annotation as the center and a specified number of pixels as the radius. Eight or 16 candidate points are generated evenly on the virtual circle. The candidate points are used as loading points for other initial annotations located at the center position. Annotations loaded on the candidate points are generally displayed in a smaller size. Leaders and associated annotation boxes can be shown or hidden according to priority. If a low-priority annotation conflicts with a high-priority annotation in generating leader lines and associated annotation boxes, it can be hidden.
[0067] When selecting candidate points from other initial labels for loading, since only one candidate point is loaded, the display cost of the corresponding dynamic feature to be displayed needs to be calculated first, and finally the initial label of the dynamic feature with the lowest display cost is selected and loaded onto the corresponding candidate point.
[0068] Taking two dynamic elements with costs A and B, both located at the center 1 o'clock position as an example, if A is greater than B, then the candidate point located at the center 1 o'clock position will only load and display the dynamic element with cost B, while the dynamic element with cost A can be filtered out.
[0069] In addition, the movement trend of the display marker or the main body can be considered. Several new candidate points can be generated on the arc segment of the virtual circle that follows the movement direction of the display marker in the opposite direction. A certain maximum overlap ratio is allowed between the new candidate points. Dynamic elements located behind the movement of the display marker or the main body can be filtered according to the display cost. On the one hand, the new candidate points are in the place where the observer's line of sight naturally follows, which is conducive to the observation table and its labeling is more stable. On the other hand, they can be displayed as early as possible when there are large changes in the movement of the dynamic elements behind, which is conducive to monitoring and early warning.
[0070] Specifically, display cost The calculation methods include:
[0071] The display cost is obtained based on the occlusion cost, association cost, stability cost, and preference cost of the dynamic element to be displayed corresponding to the candidate point, as well as its straight-line distance from the center.
[0072] The occlusion cost is determined based on the degree of overlap between the initial and associated bounding boxes of other initial labels at that location and the initial and associated bounding boxes of other static features of the same or higher priority.
[0073] The associated cost is obtained based on the length of the leader of the associated annotation box and the magnitude of the change in its angle with the body;
[0074] Stability cost is obtained based on the distance of positional change from other initial annotations in the previous frame;
[0075] Preference cost is obtained based on the basic cost corresponding to the relationship between candidate points and center positions.
[0076]
[0077] in, express The display cost of the dynamic element with time sequence number i. The overlapping area is... This represents the total area of the initial and associated annotation boxes of the static feature. Degree of overlap in reactions; The preference cost (greater than 1) is selected based on the type of dynamic element and is a fixed value. Generally, the preference cost equals the base cost. If the corresponding candidate point is in a better position (on the right side of the center), the preference cost can be set to 0.9 times the base cost. For stability reasons, the position is compared with the previous frame; the greater the position change, the lower the position. The larger; To mitigate associated costs, the length and angle of the leads are adjusted adaptively based on the principle of minimum conflict. We pre-set a specified length and angle according to the overall requirements and compare the actual lead length and angle with these settings. The greater the difference, the higher the associated costs. This reflects the actual distance between the candidate point and the center of the dynamic element to be displayed. The smaller the actual distance, the better. The smaller.
[0078] S5: Perform smooth interpolation between the initial annotation position and the corresponding annotation position in the previous frame. Specifically, the Kalman filter algorithm can be used to draw the annotation on the electronic chart based on the interpolation result.
[0079] Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of this application.
Claims
1. A method for automatically labeling dynamic elements on electronic nautical charts, characterized in that, Includes the following steps: S1: Collect multi-source data required for labeling dynamic elements in real time according to the update cycle, and preprocess the multi-source data to obtain standardized fused data; S2: Extract the core attributes of dynamic elements based on the standardized fused data; S3: Define the labeling style of dynamic elements and prioritize the dynamic elements based on the core attributes, and generate differentiated initial labels that distinguish the dynamic elements and their corresponding priorities. S4: Identify overlapping initial labels and merge or filter them based on the chart zoom level; S5: Perform smooth interpolation between the initial annotation position and the corresponding annotation position in the previous frame, and draw the annotation on the electronic chart based on the interpolation result; Step S4 includes: Under the current chart zoom level, identify the initial label groups that have overlapping conflicts; Select the highest priority initial label from the initial label group as the display label; Using the displayed label as the center, a virtual circle is generated with a specified number of pixels as the radius, and N candidate points are generated evenly on the virtual circle. The candidate point is displayed in a smaller scale, showing the other initial labels in the initial label group that have the lowest display cost, excluding the highest priority initial label. The positional relationship between the other initial labels and the displayed labels is the same as the actual positional relationship. The display annotation also includes an associated annotation box and a leader line, and the configuration of the associated annotation box and the leader line is dynamically set according to the principle of minimum conflict. The method for calculating the display cost includes: The display cost is obtained based on the occlusion cost, association cost, stability cost, and preference cost of the dynamic element to be displayed corresponding to the candidate point, as well as its straight-line distance from the center. The occlusion cost is obtained based on the degree of overlap between the initial and associated bounding boxes of other initial labels at that location and the initial and associated bounding boxes of other static features of the same or higher priority. The associated cost is obtained based on the length of the leader of the associated annotation box and the change in the angle between it and the body; The stability cost is obtained based on the distance of positional change relative to other initial annotations in the previous frame; The preference cost is obtained based on the basic cost corresponding to the relationship between the candidate point and the center position.
2. The method for automatic annotation of dynamic elements on electronic nautical charts according to claim 1, characterized in that, Step S3 includes: Identify the set of dynamic elements that need to be labeled within the target sea area; Calculate the corresponding priority score for each dynamic element in the dynamic element set; Based on the priority score, dynamic elements are assigned corresponding priorities, and the highest priority target has the right to be displayed as the top-level label. The dynamic elements include ships, mobile buoys, and temporary control zones; the multi-source data includes AIS data, radar data, official data streams, and user input data; and the core attributes include dynamic element type information, dynamic element movement location information, and control zone coordinates and effective time.
3. The method for automatic annotation of dynamic elements on electronic nautical charts according to claim 1, characterized in that, The display annotation includes motion direction information, and several new candidate points with a limited maximum overlap ratio are generated on the arc segment following the virtual circle in the opposite direction to the motion direction of the display annotation.
4. The method for automatic annotation of dynamic elements on electronic nautical charts according to claim 2, characterized in that, The process of obtaining the priority score includes: Calculate the type score based on the dynamic element type information; Calculate the risk score based on the dynamic element's position information, including reaction collision risk, speed, and acceleration. The risk probability of entering the controlled area is calculated based on the dynamic element movement location information, the coordinates of the controlled area, and the effective time. The priority score is obtained by weighting the type score, the risk score, and the risk probability.
5. The method for automatic annotation of dynamic elements on electronic nautical charts according to claim 4, characterized in that, The update cycle is set with a default value; When either the risk score or the risk probability exceeds a specified threshold, a default value reduction decision is triggered.
6. The method for automatic annotation of dynamic elements on electronic nautical charts according to claim 2, characterized in that, Step S4 includes: The maximum number of dynamic elements to be displayed is automatically configured based on the current chart zoom level, and redundant low-priority dynamic element display tasks are filtered out according to the priority score.
7. The method for automatic annotation of dynamic elements on electronic nautical charts according to claim 2, characterized in that, Step S4 includes: If the difference in priority scores between the first two high-priority dynamic elements in the dynamic element set is less than a specified score, then the initial label of the second-priority dynamic element is blurred and placed below the display label.