Content uploaded by Christos Kastrisios
Author content
All content in this area was uploaded by Christos Kastrisios on Jun 25, 2018
Content may be subject to copyright.
Proceedings, 7th International Conference on Cartography and GIS, 18-23 June 2018, Sozopol, Bulgaria
ISSN: 1314-0604, Eds: Bandrova T., Konečný M.
569
ALGORITHMIC IMPLEMENTATION OF THE TRIANGLE TEST
FOR THE VALIDATION OF CHARTED SOUNDINGS
Christos Kastrisios1 and Brian Calder2
1 Ph.D., Christos, Kastrisios
University of New Hampshire,
Center for Coastal & Ocean Mapping/NOAA-UNH Joint Hydrographic Center
24 Colovos Road, Durham, NH, 03824, USA
Tel: +1-603-862-0618, Fax: +1-603-862-0839, Christos.Kastrisios@unh.edu
2 Ph.D., Brian, Calder
University of New Hampshire,
Center for Coastal & Ocean Mapping/NOAA-UNH Joint Hydrographic Center
24 Colovos Road, Durham, NH, 03824, USA
Tel: +1-603-862-0526, Fax: +1-603-862-0839, brc@ccom.unh.edu
Abstract
The selection of soundings to be shown on nautical charts is one of the most important and complicated tasks in
nautical cartography. From the vast number of source soundings the cartographer is called to select all those important
for the safety of navigation and to verify the “shoal biased” pattern of selection against the source soundings. A long-
term goal of the cartographic community has been the automation of the tasks involved in nautical chart production,
including that of the selection and validation of charted soundings. With the aim to contribute to that effort, this paper
presents an implementation of the triangle test for the automated validation of selected soundings which has improved
performance on the detection of shoals near depth curves and coastlines.
Keywords: Sounding selection, Data generalization, Nautical cartography, Computer cartography, Analytical
cartography, Delaunay triangulation.
INTRODUCTION
The nautical chart “is a special-purpose map specifically designed to meet the requirements of marine navigation,
showing depths of water, nature of bottom, elevations, configuration and characteristics of coast, dangers and aids to
navigation” (IHO, 1994). The nautical chart is one of the fundamental tools in navigation used by mariners to plan and
safely execute voyages. Due to its importance in navigation, the charts for the intended voyage are a mandatory carriage
requirement (IMO, 2000) for compliance with Chapter V of the convention for the Safety of Life at Sea (SOLAS).
Charts are issued by the authorized national hydrographic office (or other relevant government institution) supported by
the standards published by the International Hydrographic Organization (IHO).
The nautical chart, as with every other map product regardless of how detailed it is, is an abstract representation of the
real world. The selection of features for inclusion on charts and their representation is driven by the purpose and the
scale of the chart (e.g., berthing, approach, coastal). Two of the most important features always shown on charts are
those of depth curves and soundings which are used for the representation of the submarine relief.
The charted depth curves and soundings are derived from a more detailed dataset, either the survey data or a larger scale
chart, with generalization. The cartographer generates the depth curves by generalizing the depth contours delineated on
the source data, and then selects the soundings that complement the generalized curves in maintaining and emphasizing
the morphological details and characteristic features of the seafloor. The final step is the validation of the “shoal biased”
pattern of selection which is achieved with the “triangular method of selection”, where (IHO, 2017):
1. No actual sounding (hereinafter: source sounding) exists within a triangle of selected soundings which is less
than the least of any of the soundings defining the edges of the triangle (hereinafter: triangle test); and
2. No source sounding exists between two adjacent selected soundings forming an edge of the triangle which is
less than the lesser of the two selected soundings (hereinafter: edge test).
Proceedings, 7th International Conference on Cartography and GIS, 18-23 June 2018, Sozopol, Bulgaria
ISSN: 1314-0604, Eds: Bandrova T., Konečný M.
570
To perform the above tests, the cartographer typically generates a network of non-overlapping triangles for the set of
selected soundings, i.e., a Triangulated Irregular Network (TIN). There are many ways for generating a TIN from a set
of planar points, however it makes more sense for the cartographer -and the mariner, who mentally performs the
triangulation in order to interpolate depths in the area- to form triangles from near rather than distant soundings and to
refrain from creating “skinny” triangles. Clearly, paraphrasing Tobler’s first law of geography (Tobler, 1970), near
soundings are more related than distant soundings and that must be taken into consideration for the triangulation. The
triangulation that reduces skinny triangles is that described by Delaunay (1934) characterized by the empty circle
criterion. Another advantage of Delaunay triangulation is that the topology of the triangulation is unique for a given set
of generating points, with the exception of degeneracy which occurs in the presence of four or more co-circular points.
The selection and validation of charted soundings is a process tedious, time consuming and prone to human error. To
date, many advances have been made towards the automation of those and other generalization tasks (e.g., Zoraster and
Bayer, 1992; Tsoulos and Stefanakis, 1997; Du et al., 2001; Zhang and Guilbert, 2011; Wilson et al., 2016; SCALGO,
2017). These efforts have significantly improved the cartographers’ work and have transitioned nautical charting from a
manual to a semi-automated process consisting of tools that require some level of human involvement. For some of the
generalization tasks involved in nautical cartography it is questionable whether automation can replace human thought
processes (see e.g., Ungvári et al., 2013), but concerning the validation of selected soundings a fully automated solution
seems feasible.
In the context of a developing project that includes the study of features portrayed on published nautical charts and the
software implementation of long-standing cartographic practices of hydrographic offices, this paper presents an
algorithmic implementation of the triangle test for the validation of selected soundings. For the triangulation and the
validation process, the proposed implementation incorporates the entirety of the available bathymetric information
which, as this paper presents in the following sections, results in increased performance near and within depth curves
and coastlines.
IMPLEMENTATION & RESULTS
This Section presents the algorithmic implementation of the triangle test in the Python programming language utiling
the computational geometry structures of Delaunay triangulation and its dual the Voronoi diagram. For the evaluation of
the proposed solution a case study is used with data provided by the NOAA/Office of Coast Survey covering an area of
58km2. The dataset comprises of 407 selected soundings for validation, 175 closed and floating depth curves and
coastlines, and 28,516 source soundings (it is noted that modifications have been made to the latter so that the various
cases described within this section can be examined).
1. Import the selected soundings and the features that will be used for the validation (Figure 1). In detail:
a. The selected soundings to be validated.
b. The linear features that are used for the representation of the bottom configuration and the adjacent coastal
areas, e.g., depth curves and coastlines (hereinafter: curves).
c. The source soundings.
2. Determine the succession of depth curves in the area for later use. For the dataset of step (1b) the succession of
curves is 0m, 5.4m, 9.1m, 18.2m, 91.4m, and 182.8m (it is noted that these values are the metric equivalent
with decimeter precision of the charted curves in US standard units, i.e., 0ft, 18ft, 30ft, 60ft, 300ft, and 600ft).
3. Extract the vertices forming the curves of (1b). The extracted vertices must inherit the depth and id information
of their curve of origin.
4. Merge vertices of step (3) with the selected soundings of (1a). The resulting point features dataset constitutes
the set of generators for the Delaunay and Voronoi tessellations.
5. Generate the Delaunay triangulation for the set of generators (Figure 1).
Proceedings, 7th International Conference on Cartography and GIS, 18-23 June 2018, Sozopol, Bulgaria
ISSN: 1314-0604, Eds: Bandrova T., Konečný M.
571
Figure 1: The input features and the Delaunay triangulation for the set of selected soundings and the vertices
forming the depth curves and coastlines.
6. Select the Delaunay triangles that contain source soundings (the purpose of this step is to reduce the number of
spatial queries in the following steps).
7. Iterate through the subset of Delaunay triangles and for each triangle Di do the following:
a. Select the source soundings within Di (Figure 2).
b. Compare the depth of the selected survey soundings to the least depth value dmin of the three generators
(i.e., the three Delaunay vertices) of Di (e.g., in the case of the triangle of Figure 2, dmin = 66.3m). When a
source sounding si is shoaler than dmin, examine the id of the curve of origin for the three Delaunay
vertices of the Di:
(1) If all three vertices do not have the same id of origin (i.e., they do not comprise part of the same
curve), si is shoaler than what the mariner would expect by interpolating the depth information in
the area and, therefore, si is stored in a dataset containing the confirmed shoals (hereinafter: flags).
For example, the soundings 56.7m and 61.8m are two confirmed flags (these are shown in red in
Figure 2).
(2) If all three vertices have the same id of origin (i.e., they comprise part of the same curve), the
triangle Di is “flat” and further investigation is required to determine whether si is an actual flag
(hereinafter: candidate flag). It is noted that a triangle is “flat” when all three vertices defining the
triangle have the same depth value but within the context of this work the term is used specifically
for the triangles generated by vertices extracted from the same curve. As shown in Figure 3, flat
triangles can be generated on both sides of a curve; soundings within triangles on the shallow-
water side of a curve (cyan “SW” area in Figure 3) are expected to be shoaler than the depth value
of the curve (but may also be deeper), whereas soundings on its deep-water side (yellow “DW”
area) must only be deeper. The source sounding si, along with the id of curve of origin, is stored in
a dataset containing candidate flags.
Proceedings, 7th International Conference on Cartography and GIS, 18-23 June 2018, Sozopol, Bulgaria
ISSN: 1314-0604, Eds: Bandrova T., Konečný M.
572
Figure 2: Within each triangle, the triangle test identifies the source soundings that are shoaler than
what the mariner would expect by interpolating the depth values of the three vertices defining the
triangle.
Figure 3: Shoal soundings within flat triangles require further investigation in terms of their location
relatively to the curve before characterizing them as actual flags.
8. Generate the Voronoi diagram for the set of generators of step (4). The resulting Voronoi polygons will be
used for the evaluation of candidate flags found in step [7b(2)].
9. Split Voronoi polygons by the polylines of step (1b). After splitting the Voronoi polygons generated in step
(8), polygons on one side of a curve can be selected and the location of the candidate flags of step [7b(2)]
relative to the curve can be examined.
Proceedings, 7th International Conference on Cartography and GIS, 18-23 June 2018, Sozopol, Bulgaria
ISSN: 1314-0604, Eds: Bandrova T., Konečný M.
573
10. Evaluate the candidate flags of step [7b(2)] for their position relative to the curves that generated the flat
triangles. The candidate soundings on the shallow-water side of the polyline are, as previously explained,
expected to be shoaler than the curves’s assigned depth value and will not be flagged, whereas those on the
deep-water side of the curve will be flagged. In detail, for each id of curve in the list of candidate flags, the
algorithm performs the following:
a. Select the split Voronoi polygons of step (9) on the shallow-water side of the corresponding curve.
b. Select the candidate soundings within the selected Voronoi polygons. Remove the soundings in the
selection from the list of candidate flags, except those shoaler than the depth of the next shoaler polyline
in the chart [based on the succession of depth curves determined in step (4)]. These soundings indicate a
discontinuity of the succession of depth curves in the area and must be brought to the attention of the user
for the digitization of the respective curve. Figure 4 illustrates the results of the validation for the flat
triangles of Figure 3. The candidate soundings in grey color are not flags, the one in red (17.5m) is located
on the wrong side of the curve and therefore is flagged, whereas the sounding in orange (8.6m) is located
on the shallow-water side of the curve but, due to the absence of a depth curve 9.1m surrounding it,
constitutes a warning for the cartographer.
Figure 4: A confirmed flag (17.5m) on the deep-water side of a curve and a warning on the shallow-water
side of it (8.6m) The sounding 8.6m is returned as “warning” to the user due to the absence of a contour
9.1m surrounding the sounding.
11. For the remaining candidate flag soundings (if any), the procedure described in step (10) is repeated, but,
instead of the Voronooi polygons, the Delaunay triangles generated in step (5) are now utilized. With the
Voronoi approach described in step (10) candidate flags on the shallow-water side of the curve under
investigation but not within the Voronoi polygons generated by that curve (thus within the Voronoi polygon of
a selected sounding) would not be selected and evaluated. With the completion of this step, all candidate flags
of step [7b(2)] will have been evaluated.
12. Export results, i.e., the source soundings that are shoaler than what the mariner would expect with interpolating
the bathymetric information in the area (i.e., confirmed flags) and the warning soundings which imply the
discontinuity of depth curves in the area (Figure 5).
Proceedings, 7th International Conference on Cartography and GIS, 18-23 June 2018, Sozopol, Bulgaria
ISSN: 1314-0604, Eds: Bandrova T., Konečný M.
574
Figure 5: The confirmed flags and warning for the study area.
DISCUSSION & FUTURE WORK
The direction of the curves constitutes a constraint for the current implementation. More prescisely, it is
assumed that curves have been digitized so that the deep water lies on the left side of the curves in traversal
order and the shallow water (or land) on the right side. The direction of the digitization is important for the
distinction between deep-water and shallow-water in the evaluation of candidate flags. However, in future
implementation the direction of each curve will be determined prior to the evaluation of candidate soundings
and will no longer constitute a constraint.
With incorporating the entirety of the available bathymetric information, as this is derived from the selected
soundings and the vertices forming the depth curves and coastlines, the soundings shoaler than what the
mariner would expect and the soundings indicating the discontinuity of depth curves in the area are succesfully
identified and flagged (Figure 5). Moreover, as illustrated in Figure 6, the current implementation eliminates
false errors near and within curves which would be found utilizing the selected soundings only (Figure 6a) or
the selected soundings and part of the bathymetric information from curves (Figure 6b). However, the
evaluation of selected and source soundings near the limits of the area in question remains unsatisfactory. In
future work, the charted soundings from the adjoining charts will be used for the evaluation and validation of
the selected soundings in the studied area.
Proceedings, 7th International Conference on Cartography and GIS, 18-23 June 2018, Sozopol, Bulgaria
ISSN: 1314-0604, Eds: Bandrova T., Konečný M.
575
Figure 6: (a) The triangle test using only the selected soundings for the triangulation, (b) The triangle test with
incorporating part of the bathymetric information from contours, and (c) the proposed implementation which
incorporates all the available bathymetric information from the selected soundings, depth curves, and coastlines.
As described in the Introduction, a shoal biased pattern of soundings selection is achieved through the triangle
and edge tests. The implementation of the edge test and other validation tests that are necessary to achieve the
overarching principle that no depths shoaler than the mariner would expect by interpolating the depth in any
position from the charted soundings and curves, will be considered in the future.
CONCLUSION
This paper presented the implementation of the triangle test for the validation of the soundings selected by the
cartographer to be shown on the nautical chart. For the triangulation, besides the selected soundings, the vertices
forming the depth curves and coastlines in the area are utilized. By incorporating the bathymetric information from the
depth curves and coastlines, the proposed solution detects shoals and eliminates false positives near and within curves,
thereby increasing significantly the areas that are automatically validated. Lastly, this paper discussed the constrains of
the current implementation and the way forward towards a fully automated solution for the validation of soundings
including the areas near the limits of the surveyed area.
AKNOWLEDGEMENTS
This work is supported by the National Oceanic and Atmospheric Administration grant NA15NOS4000200.
REFERENCES
Delaunay, B., 1934. Sur la sphère vide, Izvestia Akademii Nauk SSSR, Otdelenie Matematicheskikh i Estestvennykh Nauk, 7:793–
800.
Du J., Lu, Y., Zhai, J., 2001. A Model of Sounding Generalization Based on Recognition of Terrain Features. In: Proceedings of the
20th International Cartographic Conference, ICC, Beijing, China, August 6 - 10.
IHO, 1994. Hydrographic Dictionary, Special Publication No. 32, Ed. 5, 1994, IHO, Monaco.
IHO, 2017. Regulations of the IHO for international (INT) charts and chart specifications of the IHO, Publication S-4, ed. 4.7.0, July
2017, IHO, Monaco.
IMO, 2000. Adoption of Amendments to the International Convention for the Safety of Life at Sea (SOLAS), 1974, Revision to
Chapter V – Safety of Navigation, IMO Resolution MSC.99(73), adopted on 5 December, 2000. IMO, London.
Peters, R., H. Ledoux, and M. Meijers, 2013. Generation and generalization of safe depth-contours for hydrographic charts using a
surface-based approach. In Proceedings of the 16th Workshop of the ICA Commission on Generalisation and Multiple
Representation, Dresden, Germany.
SCALGO, 2017. SCALGO Nautical Documentation, Release 1.17.0, Scalable Algorithmics, Aarhus, Denmark.
Proceedings, 7th International Conference on Cartography and GIS, 18-23 June 2018, Sozopol, Bulgaria
ISSN: 1314-0604, Eds: Bandrova T., Konečný M.
576
Tobler, W., (1970) "A computer movie simulating urban growth in the Detroit region". Economic Geography, 46 (Supplement): 234-
240.
Tsoulos, L. and Stefanakis, K., 1997. Sounding selection for nautical charts: An expert system approach. In: Proceeding of 18th
ICC[C], Stockholm, 1997, 2021-2028.
Ungvári, Z., Agárdi, N. and Zentai, L., 2013. A Comparison of Methods for Automatic Generalization of Contour Lines Generated
from Digital Elevation Models, 16th ICA Workshop, ICA Commission on Generalisation and Multiple Representation, Dresden.
United Nations International Convention for the Safety of Life at Sea (signed 1 November 1974, entered into force 25 May 1980)
1184 U.N.T.S. 278; 1978 Protocol Relating to the International Convention for the Safety of Life at Sea (signed 17 February 1978,
entered into force 1 May 1981) [1983] ATS 28; Protocol Relating to the International Convention for the Safety of Life at Sea,
(signed 11 November 1988, entered into force 3 February 2000) [2000] ATS 3.
Wilson, M., Masetti, G., Calder, B., 2016. NOAA QC Tools: Origin, Development, and Future. 2016 Canadian Hydrographic
Conference. Canadian Hydrographic Association, Halifax, Nova Scotia, Canada.
Zhang, X. and Guilbert, E., 2011. A multi-agent system approach for feature-driven generalization of isobathymetric line. Advances
in Cartography and GIScience. Volume 1, pages 477-495.
Zoraster, S. and Bayer, S., 1992. Automated cartographic sounding selection. International Hydrographic Review, Monaco, LXIX
(1).
BIOGRAPHY
Christos Kastrisios graduated from the Hellenic Naval Academy (HNA) in 2001 with a B.Sc. in Naval Science. After
his graduation he served aboard frigate HS Aegean and submarines HS Protefs and HS Poseidon, mostly as the
navigator and sonar officer, and participated in several deployments at sea. In 2008 he was appointed to the Hellenic
Navy Hydrographic Service where he served in various positions. He holds a master’s degree in GIS from the
University of Maryland at College Park and a Ph.D. in Cartography from the National Technical University of Athens
(NTUA) for his work on the scientific aspects of the Law of the Sea Convention. From 2014 to 2017 he worked as a
part-time lecturer in GIS and Cartography at the HNA and NTUA. In September 2017 he started employment at the
CCOM/JHC as a post-doc researcher focusing on data generalization and computer nautical cartography.
Brian Calder is the CCOM/JHC’s Associate Director. He has a Ph.D. in Electrical and Electronic Engineering,
completing his thesis on Bayesian methods in Sidescan Sonar processing in 1997. Since then he has worked on a
number of signal processing problems, including real-time grain size analysis, seismic processing, and wave-field
modeling for shallow seismic applications. His research interests include methods for error modeling, propagation and
visualization, and adaptive sonar backscatter modeling. His work has focused on developing methods for textural
analysis of seafloor sonar data, as well as exploring innovative approaches to target detection and seafloor property
extraction. Dr. Calder is currently focusing on statistically robust automated data cleaning approaches and tracing
uncertainty in hydrographic data.