Combining watershed segmentation and basin filling in civil engineering

By identifying saddle points and merging basins that meet the small degree standard through watershed segmentation, noise is eliminated, and contributors are calculated to determine the contributors of the broken line, the accuracy and efficiency problems of topographic watershed segmentation in civil engineering are solved, and support for real topographic watershed segmentation and physical actions is provided.

CN112862962BActive Publication Date: 2026-05-01DASSAULT SYSTEMES SA
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
DASSAULT SYSTEMES SA
Filing Date
2020-11-27
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

Existing civil engineering methods are inadequate in terms of accuracy, robustness, and efficiency, and fail to provide satisfactory results, especially when dealing with topographic watershed segmentation, where problems such as noise and small basins exist.

Method used

The watershed segmentation method is used to identify saddle points on the terrain. The grid is divided into connected components by the path that ascends in the direction of the local maximum slope and descends in the direction of the steepest slope. Basins that meet the small degree standard are merged and small basins are eliminated. The contributors are calculated to modify the grid to determine the contributors of the polyline.

Benefits of technology

It achieves accurate, robust, and efficient watershed segmentation, eliminates the effects of noise, provides realistic topographic watershed segmentation, and supports the accuracy and efficiency of civil engineering analysis and physical actions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112862962B_ABST
    Figure CN112862962B_ABST
Patent Text Reader

Abstract

The invention relates to a computer-implemented method for civil engineering. The method comprises providing a watershed segmentation of a terrain. The watershed segmentation comprises basins. The method further comprises merging first basins of the watershed segmentation with second basins located downstream of the first basins, respectively, each first basin verifying a smallness criterion.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer programs and systems, and more particularly to methods, systems and programs for use in civil engineering. Background Technology

[0002] The market offers numerous systems and programs for the design, engineering, and manufacturing of objects. CAD is an acronym for Computer-Aided Design, which, for example, refers to software solutions for designing objects. CAE is an acronym for Computer-Aided Engineering, which, for example, refers to software solutions for simulating the physical behavior of future products. CAM is an acronym for Computer-Aided Manufacturing, which, for example, refers to software solutions for defining manufacturing processes and operations. In such computer-aided design systems, graphical user interfaces play a crucial role in technical efficiency. These technologies may be embedded in Product Lifecycle Management (PLM) systems. PLM refers to a business strategy that helps companies share product data, apply common processes, and leverage corporate knowledge to extend product development across the enterprise's concept from concept to the end of the product lifecycle. Dassault Systèmes (traded as CATIA, ENOVIA, and DELMIA) offers PLM solutions that provide an engineering center for organizing product engineering knowledge, a manufacturing center for managing manufacturing engineering knowledge, and an enterprise center that integrates and connects the engineering and manufacturing centers. The entire system provides an open object model that connects products, processes, and resources, enabling dynamic, knowledge-based product creation and decision support, thereby driving optimized product definition, manufacturing preparation, production, and service.

[0003] In this context and other contexts, civil engineering is becoming increasingly important.

[0004] The following are papers and software related to this field, cited below:

[0005] -[1]Attali,D.,Glisse,M.,Hornus,S.,Lazarus,F.,&Morozov,D.(2009).Persistence-sensitive simplification of functions on surfaces in lineartime.TOPOINVIS,9,23-24;

[0006] -[2]Autodesk Civil 3D software;

[0007] -[3]Banchoff,T.(1967).Critical points and curvature for embeddedpolyhedra.Journal of Differential Geometry,1(3-4),245-256;

[0008] -[4]Bentley Power Civil software;

[0009] -[5]BlueMarble GlobalMapper software;

[0010] -[6]Bremer,P.-T.,Hamann,B.,Edelsbrunner,H.,&Pascucci,V.(2004).Atopological hierarchy for functions on triangulated surfaces.Bremer,P-T;Hamann,Bernd;Edelsbrunner,Herbert;Pascucci,Valerio,10(4),385-396;

[0011] -[7] L.,De Floriani,L.,Magillo,P.,&Iuricich,F.(2014).Morphological modeling of terrains and volume data.Springer New York;

[0012] -[8]Danovaro,E.,De Floriani,L.,Magillo,P.,&Mostefa Mesmoudi,M.(2003).Morphology-Driven Simplification and Multiresolution.Proceedings of the 11thACM international symposium on Advances in geographic information systems,63-70;

[0013] -[9]Edelsbrunner,H.,Harer,J.,&Zomorodian,A.(2003).Hierarchical Morse–Smale Complexes for Piecewise Linear 2-Manifolds.Discrete and ComputationalGeometry,30(1),87-107;

[0014] -

[10] Forman,R.(1998).Morse theory for cell complexes;

[0015] -

[11] Gyulassy,A.,Natarajan,V.,Pascucci,V.,&Hamann,B.(2007).Efficientcomputation of Morse-Smale complexes for three-dimensional scalarfunctions.IEEE Transactions on Visualization and Computer Graphics,1440-1447;

[0016] -

[12] Kozlov,D.(2008).Combinatorial Algebraic Topology.Springer;

[0017] -

[13] Matsumoto,Y.(2001).An introduction to Morse Theory.AmericanMathematical Society;

[0018] -

[14] Meyer,F.(1994).Topographic distance and watershed lines.Signalprocessing,38(1),113-125;

[0019] -

[15] Takahashi,S.,Ikeda,T.,Shinagawa,Y.,Kunii,TL,&Ueda,M.(1995).Algorithms for extracting correct critical points and constructingtopological graphs from discrete geographical elevation data.ComputerGraphics Forum,181-192; and

[0020] -

[16] Wolhuter,K.(2015).Geometric Design of Roads Handbook.CRC Press.

[0021] All of these methods lack accuracy and / or robustness and / or efficiency and / or speed, and / or fail to provide satisfactory results.

[0022] Therefore, an improved method for civil engineering is needed. Summary of the Invention

[0023] Therefore, a computer-implemented method for civil engineering is provided. The method includes providing watershed segmentation of the terrain. The watershed segmentation includes basins. The method further includes merging first basins segmented by the watershed with second basins located downstream of the first basins, each of the first basins being validated using a smallness criterion.

[0024] The method may include one or more of the following:

[0025] - The watershed segmentation includes data representing the water trajectory within each basin, and the merging includes: for each first basin merged with the second basin, calculating data representing the water trajectory between the first basin and the second basin;

[0026] - The calculation of data representing the water trajectory between the first basin and the second basin is based on first data representing the water trajectory within the first basin and second data representing the water trajectory within the second basin;

[0027] - The first data includes the path from the outlet of the first basin to the spillway of the first basin, and / or the second data includes the path from the spillway of the first basin to the outlet of the second basin.

[0028] -The merger includes:

[0029] ο Determine an orientation graph with nodes and arcs, where each node represents a basin and each arc represents a connection between a first basin (validating a small-degree criterion) and a second basin located downstream of the first basin, the arc being oriented from a first node representing the first basin to a second node representing the second basin; and

[0030] ο Merge basins corresponding to nodes of the same connected component in the orientation map;

[0031] - The determination of the orientation map includes: exploring basins according to the smallness order of the reward basin smallness, and for each first basin that is explored to verify the smallness standard, creating an arc between the node representing the first basin and the node representing the second basin located downstream of the first basin, the arc being oriented from the node representing the first basin to the node representing the second basin.

[0032] - If the quantization of the smallness of the basin is below a predetermined threshold, the basin verifies the smallness standard;

[0033] - Quantification of basin size includes one or more of the following: quantification of basin depth, quantification of basin area, and / or quantification of basin volume; and / or

[0034] -The terrain is the architectural terrain.

[0035] A computer program is also provided, which includes instructions for performing the method.

[0036] An apparatus is also provided, which includes a data storage medium on which computer programs are recorded.

[0037] The device can be formed or used as a non-transitory computer-readable medium, such as on SaaS (Software as a Service) or other servers, or cloud-based platforms. The device may alternatively include a processor coupled to the data storage medium. Therefore, the device can form wholly or partially of a computer system (e.g., the device is a subsystem of an overall system). The system may further include a graphical user interface coupled to the processor. Attached Figure Description

[0038] Embodiments of the invention will now be described by way of non-limiting examples and with reference to the accompanying drawings, wherein:

[0039] - Figures 1 to 36 This disclosure is shown; and

[0040] - Figure 37 An example of the system is shown. Detailed Implementation

[0041] It provides a computer-based approach to civil engineering.

[0042] In particular, it provided the first computer-implemented method for civil engineering.

[0043] The first method involves providing a grid representing the terrain. The first method also includes calculating watershed segmentation of the terrain based on the grid. The calculation of watershed segmentation includes identifying one or more saddle points on the grid. The calculation of watershed segmentation further includes, for each identified saddle point, identifying a path ascending from the saddle point according to the direction of the local maximum slope around the saddle point and a path descending from the saddle point according to the direction of the steepest slope around the saddle point. The identified ascending paths divide the grid into connected components. The calculation of watershed segmentation further includes, for each identified saddle point, merging each connected component with the saddle point as its base with a connected component including the identified path descending from the saddle point according to the direction of the steepest slope around the saddle point. Merging produces at least a portion of a basin. The first method may be referred to as a "watershed segmentation method".

[0044] The watershed segmentation method constitutes an improvement in civil engineering.

[0045] It is worth noting that the watershed segmentation method allows for the segmentation of a gridded terrain into watersheds, dividing the terrain into one or more basins (hereinafter sometimes simply referred to as "basins") bounded by watershed lines (discussed below). The watershed segmentation method can specifically generate basins and watershed lines for a terrain. For example, identified uplift paths include uplift watershed lines. However, at least some identified uplift paths are not watershed lines. Watershed segmentation of a terrain is objective physical information about the terrain; for example, it can segment the terrain into parts where water flows exhibit similar behavior, i.e., watershed basins. Ultimately, this will allow for the performance of civil engineering analyses and / or the execution of one or more civil engineering-related physical actions on the terrain, as discussed further below.

[0046] Furthermore, watershed segmentation is based on a grid representing the terrain, meaning it's performed directly on the input (i.e., provided) grid without requiring any modifications. Such modifications could indeed degrade the grid quality, affecting how realistically the input grid represents the terrain. Conversely, because the watershed segmentation method avoids this modification, it is accurate and robust, producing relatively realistic terrain watershed segments. Moreover, in terms of the realism of the results, the quality of the watershed segments computed by the watershed segmentation method does not depend on the grid size and / or regularity.

[0047] Furthermore, the watershed segmentation method performs watershed segmentation on a grid that includes one or more saddle points. It is now known from the field of civil engineering itself that a grid representing terrain almost always contains one or more saddle points, just as the terrain would in the real world. Therefore, the watershed segmentation method allows watershed segmentation to be performed on high-quality grids, as the latter include one or more saddle points. Thus, the watershed segmentation method is accurate and can produce realistic watershed segments of the terrain.

[0048] Furthermore, as mentioned above, the watershed segmentation calculated by the watershed segmentation method is performed directly on a grid that includes one or more saddle points. Therefore, watershed segmentation can handle almost unavoidable saddle points on the grid without modifying the input grid, making the watershed segmentation method both robust and efficient. The watershed segmentation method is implemented by identifying several paths for each identified saddle point, where each path ascends from the saddle point according to the direction of the local maximum slope, and descends from the saddle point according to the direction of the steepest slope. In this way, the watershed segmentation method divides the grid into connected components, each constrained by two defined ascending paths. Specifically, path identification divides the grid into connected components, each corresponding to a connecting portion of the terrain with the saddle point as its base, where water must flow towards the saddle point, or each component corresponds to a connecting portion of the terrain forming the steepest valley descending from the saddle point. It should be understood that water does not stop and remain at the saddle point: it passes through it, eventually reaching the lowest point, which is the lowest point of the basin. The watershed segmentation method then merges each connected component with a saddle point as its base with the steepest valley surrounding that saddle point. This merging results in a single connected component of the grid, which includes the saddle point and represents the connecting portion of the terrain where water must flow downstream and into a unique basin. In other words, a single connected component forms at least a portion of a basin. Since these basin portions are determined for each identified saddle point, watershed segmentation ultimately determines the entire basin that divides the terrain.

[0049] Furthermore, in the example, at least one of the identified saddle points is a degenerate saddle point. Therefore, the watershed segmentation method handles degenerate saddle points, which are frequently present when realistically representing real-world terrain with a mesh. Thus, the watershed segmentation method takes a realistic mesh representation of the terrain as input and outputs a true watershed segmentation of the terrain. Moreover, the watershed segmentation method handles degenerate saddle points without modifying the input mesh, making it particularly robust and efficient.

[0050] It also provides a second computer-based approach to civil engineering.

[0051] The second method involves providing watershed segmentation of the terrain. Watershed segmentation includes basins. The second method also includes merging the first basin segmented by the watershed with a second basin located downstream of the first basin, with each first basin verifying a degree criterion. The second method can be called the "regularization method".

[0052] Regularization methods constitute an improvement approach for civil engineering.

[0053] It is worth noting that this regularization method allows for regularization of the watershed segmentation of the provided terrain. Regularizing the watershed segmentation means merging the basins segmented by the watershed, resulting in a merged basin, also known as a filter basin, where each violates the smallness criterion. In other words, the merge yields a larger filter basin.

[0054] Similar to regularization methods, regularizing the watershed segmentation of a terrain can obviously eliminate (or at least reduce) small basins corresponding to numerical artifacts and / or noise. In other words, depending on how the provided watershed segmentation is calculated, a watershed segmentation can include one or more basins that should not exist in the real world but are numerically present due to numerical artifacts and / or noise. Numerical artifacts and / or noise may arise from physical measurements taken to obtain data about the terrain (which will be discussed further below), such as obtaining a grid representing the terrain. Alternatively or additionally, numerical artifacts and / or noise may correspond to insignificant details about the terrain (e.g., mouse burrows). These basins respect the smallness criterion. Regularization methods filter these basins by merging them into larger basins.

[0055] Alternatively, one or more basins can each validate the smallness criterion because they are small in the real world. However, they are too small for civil engineers to understand, for example, due to their small volume, they have little effect on watercourses and / or other physical phenomena in the terrain. Only larger filtering basins might have this effect. Regularization methods allow for the acquisition of such filtering basins. In other words, regularization methods produce filtered segments that are meaningful to civil engineers.

[0056] In any case, as previously stated, if watershed segmentation constitutes objective physical information that allows for civil engineering analysis and / or one or more civil engineering physical actions, then regularizing the watershed segmentation according to the watershed segmentation method can improve the relevance of this physical information.

[0057] Furthermore, the regularization method does not modify the terrain representation (e.g., the grid) to perform watershed segmentation regularization. It is noteworthy that the regularization method does not modify any basin features in this way, but only merges basins. As discussed previously in the context of watershed segmentation methods, not modifying the terrain representation (e.g., the grid) helps improve the realism of the results produced by the regularization method.

[0058] It also provides a third method for computer-based implementation of civil engineering.

[0059] The third method involves providing a grid representing the terrain and polylines on that grid. The third method also includes calculating contributors to the polylines. The calculation of contributors involves modifying the grid by identifying trenches below the polylines based on the polylines. The calculation of contributors also includes calculating watershed divisions of the terrain based on the modified grid. The calculation of contributors further includes identifying basins including trenches on the modified grid based on the calculated watershed divisions. Contributors correspond to the identified basins. This third method may be referred to as the "contributor calculation method".

[0060] Contributor calculation methods constitute an improvement in civil engineering.

[0061] It is worth noting that the contributor calculation method allows for the calculation of contributors to a polyline, i.e., contributors to two or more points connected by a line segment (i.e., water must flow from and reach the topographic area of ​​the polyline). A polyline can typically represent a topographic alignment, such as a road, railway, passageway, mine, or building. Therefore, contributors constitute objective physical information for civil engineering because they determine the water trajectory flowing through the polyline. This objective physical information can be used to perform civil engineering analysis and / or one or more civil engineering physical actions, as discussed further below.

[0062] Furthermore, the contributor calculation method is performed in three steps: modifying the mesh by creating trenches below the polyline, calculating the basins of the modified mesh by calculating the watershed segmentation of the modified mesh, and identifying the basins in the segmentation corresponding to the contributor. Moreover, these three steps use a single operation to calculate the contributor of the polyline; that is, these steps are performed one at a time, rather than calculating all points (e.g., mesh vertices) of the contributor one after another. This makes the contributor calculation method fast, reliable, efficient, and accurate. Furthermore, the results produced are consistent with those of watershed segmentation. Additionally, the calculation is unaffected by / does not depend on the complexity and / or accuracy of the polyline, making the contributor calculation method more robust and efficient.

[0063] The watershed segmentation method, regularization method, and contributor calculation method can be performed independently of each other. Alternatively, the watershed segmentation method, regularization method, and / or contributor calculation method can be combined. For example, a watershed segmentation provided according to the regularization method can be a watershed segmentation calculated according to the watershed segmentation method. For example, providing a watershed segmentation using the regularization method can include: providing a grid representing the terrain according to the watershed segmentation method; and calculating a watershed segmentation according to the watershed segmentation method, wherein the calculated watershed segmentation is the provided watershed segmentation. Additionally or alternatively, the calculation of a watershed segmentation according to the contributor calculation method can be performed based on the calculation of a watershed segmentation according to the watershed segmentation method.

[0064] Watershed segmentation methods, regularization methods, and / or contributor calculation methods can be integrated into the same civil engineering process, also known as a "civil engineering process." In other words, a civil engineering process includes performing one or more of the following methods: watershed segmentation methods, regularization methods, and / or contributor calculation methods.

[0065] Specifically, the civil engineering process includes providing a grid representing the terrain.

[0066] In the example, the civil engineering process could further include a step of understanding the topography. Understanding the topography could include identifying elements of the terrain, such as ridges and / or valleys. Understanding the topography could begin with the user calculating the slope of the terrain, for example, calculating the slope of each triangle in a grid. Then, understanding the topography could include the user estimating the valleys and ridges. The valleys and ridges provide the user with enough information to initiate calculations for watershed segmentation on a specific portion of the terrain of interest. They also allow the user to infer new information (e.g., estimating the amount of water received by a drainage outlet to determine the size of the drainage system). It is important to note that contributor calculations can substitute for watershed segmentation calculations, for example, when the user is conceptualizing an artwork. If contributor calculations indicate that the drainage system is insufficient, the user can also modify the road alignment: this allows for a loop between artwork conception and water volume estimation.

[0067] The civil engineering process may then include calculating watershed segmentation of the terrain based on a grid, the calculation of which is performed according to a watershed segmentation method. The civil engineering process may then include regularizing the calculated watershed segmentation by merging each first basin of the calculated watershed segmentation with a second basin located downstream of the first basin, each first basin being validated against a smallness criterion; this merging is a merging of the regularization method. Robustness is improved because this filters out small (e.g., shallow) basins from the calculated watershed segmentation.

[0068] Additionally or alternatively, the civil engineering process may include: providing polylines on a grid according to a contributor calculation method; and calculating the contributors to the polylines according to the contributor calculation method. As previously described, contributor calculation includes calculating the watershed segmentation of the terrain based on the modified grid. The calculation of watershed segmentation may include: calculating the initial watershed segmentation of the terrain based on the modified grid according to a watershed segmentation method; and performing regularization on the calculated initial watershed segmentation according to a regularization method. This will be discussed further below.

[0069] Therefore, the civil engineering process generates one or more of the following: watershed segmentation methods calculated by watershed segmentation methods and / or regularized watershed segmentation methods and / or contributors calculated by contributor calculation methods. The civil engineering process may further include displaying the calculated and / or regularized watershed segmentation and / or the calculated contributors. This process thus allows, for example, based on the display, the determination of the trajectory of water flowing through certain parts of the terrain and / or the segmentation of the terrain into parts where water flows have similar behavior. As described below, this allows for the performance of civil engineering analyses on the terrain.

[0070] The civil engineering process may further include performing civil engineering analysis based on calculated and / or regularized watershed segmentation and / or calculated contributors. The civil engineering process may further include performing one or more physical actions based on the civil engineering analysis, the calculated and / or regularized watershed segmentation, and / or the calculated contributors. The calculated and / or regularized watershed segmentation and / or the calculated contributors can be displayed on a computer monitor while the civil engineering analysis and / or one or more physical actions are performed. This allows for guidance for civil engineers during the performance of civil engineering analysis tasks and / or during the performance of one or more physical actions.

[0071] Specifically, each of the calculated and / or normalized watershed segments and each of the calculated contributors forms objective physical information, based on which civil engineering analysis and / or one or more physical actions can be performed, such as displaying the objective physical information. One or more physical actions can also be performed based on civil engineering analysis.

[0072] Civil engineering analysis may include analyzing and / or designing terrain and / or human structures on that terrain based on calculated and / or regularized watershed segmentation and / or calculated contributors (e.g., their representation). Civil engineering may include one or more of the following:

[0073] - Terrain analysis, such as segmentation based on calculated and / or regularized watersheds (e.g., display of them);

[0074] - Determine water flow on the terrain, for example, based on calculated and / or regularized watershed segmentation (e.g., its display);

[0075] - Divide the terrain into watersheds, for example, based on calculated and / or regularized watersheds (e.g., display them);

[0076] - Visualize the terrain regions of a specific area of ​​interest that rainfall will reach, such as planned or existing road alignments, such as contributors calculated based on the specific area of ​​interest (e.g., road alignments), and represent the specific area of ​​interest as a polyline (e.g., road alignments) (e.g., display of it);

[0077] - The dimensions of the drainage tool, which is used to drain one or more ditches in the terrain, such as around roads, railways, passages, mines and / or buildings, such as the contributors calculated based on roads, railways, passages, mines and / or buildings (e.g., their display), with the broken line representing roads, railways, passages, mines and / or buildings;

[0078] - Design one or more stormwater drainage systems, for example, based on calculated and / or regularized watershed segmentation (e.g., display thereof);

[0079] - Design watershed basins for planned or existing road alignments, such as contributors calculated based on road alignments (e.g., their display), with broken lines representing road alignments;

[0080] - Determine the impact of water flow on one or more urban structures on the terrain, for example, based on calculated and / or regularized watershed segmentation for each corresponding urban structure and / or each calculated contributor (e.g., their display), with a broken line representing the corresponding one of the urban structures;

[0081] - Modify the design of human buildings to be constructed on the terrain, such as by calculating and / or regularizing watersheds based on the buildings and / or calculating contributors (e.g., their display), with polylines representing the buildings;

[0082] - Determine the impact of dam construction on the topography, such as calculated and / or normalized watershed divisions based on the dam and / or calculated contributors (e.g., their representation), with the dam represented by a broken line;

[0083] - Determine the impact of dike implantation, for example, based on the calculated and / or regularized watershed segmentation of the dike and / or the calculated contributors (e.g., their display), with the dike represented by a broken line; and / or

[0084] - Determine the impact of water flow on the topography of the mine and / or determine the impact of mine construction on the topography, such as calculated and / or regularized watershed segmentation based on the mine and / or calculated contributors (e.g., their display), with the mine represented by a broken line.

[0085] One or more physical actions may include natural risk management and / or construction and / or maintenance work performed on terrain and / or one or more human-built structures on the terrain based on calculated and / or regularized watershed segmentation, calculated contributors, and / or civil engineering analysis (e.g., its display). One or more physical actions may specifically include one or more of the following:

[0086] - Natural risk management is conducted based on water flow estimates, such as calculated and / or normalized watershed segmentation, calculated contributors, and / or civil engineering analysis. Natural risk management may include determining whether the risks associated with implementing a structure at a given location are acceptable. This may include determining the amount of water received around the given location and comparing it with preventative measures such as dikes and drainage.

[0087] - Construct and / or modify one or more roads, railways, passageways, mines, and / or buildings on the terrain. Construction and / or modification may be based on calculated contributors (e.g., a display of them) for each road, railway, passageway, mine, and / or building, represented by a polyline. Additionally or alternatively, construction and / or modification may be based on the results of a civil engineering analysis. The results may include one or more of the following:

[0088] οGeomorphological analysis,

[0089] ο The water flow rate on the given terrain,

[0090] ο Topography and landforms

[0091] ο The watershed that divides the terrain

[0092] Rainfall will reach areas with roads, railways, passageways, mines, and / or buildings.

[0093] The impact of a given water flow rate on one or more roads, railways, passageways, mines, and / or buildings.

[0094] ο Modified designs for roads, railways, corridors, mines, and / or buildings,

[0095] The impact of constructing a dam on the terrain is determined.

[0096] ο Determined impact of dike installation;

[0097] - Construct and / or modify dams on the terrain. Construction and / or modification may be based on calculated contributors to the dam (e.g., a display of them), with the dam represented by a polyline. Additionally or alternatively, construction and / or modification may be based on the results of a civil engineering analysis. The results may include one or more of the following:

[0098] οGeomorphological analysis,

[0099] ο The water flow rate on the given terrain,

[0100] ο Topography and landforms

[0101] ο The watershed that divides the terrain

[0102] The impact of constructing a dam on the terrain is determined.

[0103] The impact of a defined dike installation or drainage system,

[0104] - Construction and / or modification of road alignment. Construction and / or modification may be based on the calculated contributors to the road alignment (e.g., a display of them), with the road alignment represented by a polyline. Additionally or alternatively, construction and / or modification may be based on the results of a civil engineering analysis. The results may include one or more of the following:

[0105] οGeomorphological analysis,

[0106] ο The water flow rate on the given terrain,

[0107] ο Topography and landforms

[0108] ο The watershed that divides the terrain

[0109] Rainfall will reach the area where roads are aligned.

[0110] ο A watershed basin designed for road alignment.

[0111] The impact of a determined water flow rate on road alignment.

[0112] The impact of constructing a dam on the terrain is determined.

[0113] ο Determined impact of dike installation;

[0114] - Construct and / or modify the mine on the terrain. Construction and / or modification may be based on calculated contributors to the mine (e.g., a display of them), with the mine represented by a polyline. Additionally or alternatively, construction and / or modification may be based on the results of a civil engineering analysis. The results may include one or more of the following:

[0115] οGeomorphological analysis,

[0116] ο The water flow rate on the given terrain,

[0117] ο Topography and landforms

[0118] ο The watershed that divides the terrain

[0119] Rainfall reached the area of ​​the mine.

[0120] The modified mine design.

[0121] The impact of the confirmed dike installation,

[0122] The impact of constructing a dam on the terrain is determined.

[0123] The impact of a determined water flow rate on the mine and / or the impact of mine construction on the topography;

[0124] - Terrain modification, such as around human-built structures on the terrain. Terrain modification can be based on calculated and / or regularized watershed segments (e.g., their display). Additionally or alternatively, the terrain can be based on the results of civil engineering analysis. The results may include one or more of the following:

[0125] οGeomorphological analysis,

[0126] ο The water flow rate on the given terrain,

[0127] ο Topography and landforms

[0128] ο The watershed that divides the terrain

[0129] The impact of a determined water flow rate on a building.

[0130] The modified architectural design.

[0131] The impact of constructing a dam on the terrain is determined.

[0132] ο Determined impact of dike installation;

[0133] - Construct one or more water management systems on the terrain. This construction may be based on calculated and / or regularized watershed divisions (e.g., their display). Additionally or alternatively, the construction may be based on the results of civil engineering analysis. The results may include one or more of the following:

[0134] οGeomorphological analysis,

[0135] ο The water flow rate on the given terrain,

[0136] ο Topography and landforms

[0137] ο The watershed that divides the terrain

[0138] A large drainage tool used to drain one or more ditches in the terrain.

[0139] ο Design one or more rainwater drainage systems,

[0140] The impact of a given water flow rate on one or more structures in the terrain.

[0141] The impact of constructing a dam on the terrain is determined.

[0142] ο Determined impact of dike implantation; and / or

[0143] - Construct one or more drainage systems on the terrain. This construction may be based on calculated and / or regularized watershed divisions (e.g., their display). Additionally or alternatively, construction may be based on the results of a civil engineering analysis. The results may include one or more of the following:

[0144] οGeomorphological analysis,

[0145] ο The water flow rate on the given terrain,

[0146] ο Topography and landforms

[0147] ο The watershed that divides the terrain

[0148] A large drainage tool used to drain one or more ditches in the terrain.

[0149] ο Design one or more rainwater drainage systems,

[0150] The impact of a given water flow rate on one or more structures in the terrain.

[0151] The impact of constructing a dam on the terrain is determined.

[0152] The impact of the determined dike implantation.

[0153] This method and process are used in civil engineering.

[0154] As is well known, civil engineering is an engineering field encompassing transportation vehicles and works of art, including public works such as roads, bridges, passageways, dams, airports, sewage treatment systems, pipelines, structural components of buildings, and railways. Therefore, each of the methods and processes involves determining and / or calculating objective physical information (i.e., watershed segmentation, regularized watershed segmentation, and / or contributors) on the terrain involved in the civil engineering. Each of these methods and processes also falls within the field of terrain analysis and geometric simulation, as they can determine the trajectory of water flowing through certain parts of the terrain and / or segment the terrain into sections where water flows exhibit similar behavior.

[0155] In the context of this disclosure, topography is part of the Earth's soil surface. Topography has a ground form. In the context of this disclosure, topography is impermeable, meaning that water flows only on the surface of the topography without any infiltration. Impermeable topography is generally considered in civil engineering methods for several objective physical reasons. For example, in urban environments, the topography is at least partially urbanized, and most of the soil becomes impermeable due to the permanent covering of the soil surface with impermeable materials. Even in non-urban environments, the soil's ability to absorb water is exhausted under heavy rainfall: since water can no longer seep into the ground, the soil is considered impermeable.

[0156] Each terrain feature in this article can be a built terrain. Built terrain includes the following:

[0157] - Including one or more man-made structures, such as roads, bridges, passageways, mines, dams, airports, sewage treatment systems, pipelines, buildings, structural components of buildings and / or railways; and / or

[0158] - To construct one or more human structures on it, such as roads, bridges, passageways, mines, dams, airports, sewage treatment systems, pipelines, buildings, structural components of buildings and / or railways, for example based on civil engineering analysis.

[0159] Each terrain feature in this paper is represented by a discrete geometric figure. In other words, the civil engineering methods in this paper are all performed on a discrete geometric representation of the terrain. Each of the civil engineering methods and processes in this paper may specifically include providing a geometric representation of the terrain. For example, the watershed segmentation method and the contributor calculation method both include providing a grid representing the terrain as a discrete geometric representation of the terrain.

[0160] A discrete geometric representation of terrain is a data structure comprising a discrete set of data. Each data point represents a corresponding geometric entity of the terrain (e.g., a point, a surface). Each geometric entity represents a corresponding location of the terrain (in other words, a corresponding portion of the soil surface). The set of geometric entities (i.e., a union or juxtaposition) fully represents the terrain. In the examples, any discrete geometric representation in this paper may include more than 1,000,000 such data points. The discrete geometric representation can be two-dimensional or three-dimensional.

[0161] The discrete geometric representation of the terrain can be a mesh, where each geometric entity is a mesh element, such as a tile or a face. Any mesh in this paper can be a 3D mesh or a 3D grid. Any mesh in this paper can be regular or irregular (i.e., whether it consists of faces of the same type). Any mesh in this paper can be a polygonal mesh, such as a triangular mesh, where the mesh faces are triangles, each triangle is defined by the mesh boundary, and each mesh edge is defined by the mesh vertices. Any mesh in this paper can be obtained from a point cloud, for example, by triangulation of the point cloud (e.g., using Delaunay triangulation).

[0162] Any grid representing the terrain in this paper can be derived from (i.e., can be determined based on) for example, physical measurements performed on the terrain during the reconstruction process. The reconstruction process may include one or more lidar surveys of the terrain, as is known in the field of civil engineering itself. As is known in the field of civil engineering itself, the reconstruction process may additionally or alternatively include one or more surveys performed by triangulation of portions of the terrain. The reconstruction process may alternatively or additionally include performing photogrammetry on the terrain, as is known in the field of civil engineering itself. Lidar surveys, surveys by triangulation and / or photogrammetry can produce point clouds representing the terrain, and the reconstruction process may further include triangulation of the point clouds to obtain a grid. As is known in the field of civil engineering itself, any grid representing the terrain in this paper can be a digital elevation model. Additionally or alternatively, any grid representing the terrain in this paper can be a 3D triangular grid that can be parameterized by a 2D subset D of the Oxy plane. In other words, the projection of the grid triangles results in triangulation of the domain D, meaning there are no overhanging triangles in the grid.

[0163] Both watershed segmentation methods and contributor computation methods involve providing a grid representing the terrain. Providing a grid representing the terrain can include, for example, constructing the grid by performing a reconstruction process as previously discussed. Alternatively, providing the grid can include retrieving the grid from (e.g., a distant) memory that has already been stored in memory after its construction.

[0164] Information relating to watercourses in the terrain (such as watershed divisions or contributors) constitutes objective physical information for civil engineering, upon which civil engineers can perform civil engineering analyses and / or one or more physical actions as described above. Concepts related to watercourses will now be discussed.

[0165] The elevation of terrain can be encapsulated by a height function f, which is defined on a discrete geometric representation of the terrain and takes real values. The value of f at a point in the discrete geometric representation corresponds to the elevation at that point. Note that when f is differentiable, its gradient is a vector representing the steepest slope at each point.

[0166] If there exists a unique downward path from A to B in a discrete geometric representation, and for any point P on this path, the tangent vector at point P is collinear with the slope vector grad(f(P)), then the discrete geometric representation is said to be a flow from point A to point B. In other words, the path follows a maximum downward (also called a "descent") slope. This path can be called a streamline.

[0167] A watershed basin (also simply a "basin") in a topographical representation is represented in a discrete geometric figure by a set of points that flow towards the same point. This point represents the basin's outlet and is a local minimum of the elevation function. In other words, a watershed basin is the point of attraction for water flow caused by the opposite direction of the gradient of the elevation function. As a result of watershed segmentation performed using a watershed segmentation method, the basin's boundary is represented on the discrete geometry by watershed lines. Watershed lines separate the water flows, so any pair of points on either side of the watershed line will generate two paths, each leading to a different outlet. It should be noted that in the example where the terrain is represented by a triangular mesh, the basin's boundary is a polyline, and each polyline may or may not pass through a mesh triangle.

[0168] The contributors to a subset S of the discrete geometric representation of the terrain are the set of points from which paths of the terrain will reach point S; that is, from which water will flow to point S. For example, the contributors to a local minimum of the height function are the watershed basins associated with that outlet.

[0169] In the context of this disclosure, watershed segmentation of a terrain is the division of a discrete geometric representation of the terrain into discrete geometric representations, each representing a corresponding basin of the terrain. The boundary of each corresponding portion is a watershed line representing the respective basin of the corresponding portion, and indicates the boundary of the respective basin. Any watershed segmentation herein may further include data representing one or more physical properties within the watershed segmented basin. Such physical properties may, for example, be water tracks within each basin segmented by the watershed.

[0170] Basin depth is the height difference between the spillway (i.e., the lowest saddle point on the basin boundary, where "lowest" means having a small elevation) and the outlet. This quantity represents the maximum water level that the basin can hold before flooding occurs in the downstream basin. Basin volume is the volume of solid matter defined by the basin downwards and by the horizontal plane containing the lowest saddle point on the basin boundary upwards.

[0171] Figure 1 An example of topography 10 is shown. This topography includes a watershed basin 12 with an outlet 14 and a spillway 16. The double arrow 18 indicates the depth of the watershed basin 12.

[0172] We will now discuss watershed segmentation methods further.

[0173] "Computing watershed segmentation of terrain based on a grid" refers to determining the watershed lines of a terrain by calculating their representations on a provided grid. Equivalently, "computing watershed segmentation of terrain" refers to determining the watershed basins of a terrain by calculating their representations on a provided grid. Therefore, the calculation of watershed segmentation takes the provided grid as input and determines the segmentation of the terrain into watershed basins by calculating the representations of the watershed lines on the grid. In other words, the watershed segmentation method outputs a portion of the grid representing the corresponding watershed basin (e.g., a set of faces, such as triangles).

[0174] The calculation of watershed segmentation involves identifying one or more saddle points on a grid. A saddle point on the grid is a vertex representing a saddle point in the terrain. A saddle point in the terrain is defined as a point with at least two local maximum descending directions and at least two local maximum ascending directions, around which the soil surface forms, for example, a saddle or mountain path. This is in... Figure 2 As shown in the diagram. In the case of a saddle point on a regular surface, the descent direction is opposite, and the ascent direction is also opposite. This is not usually the case for a saddle point on a triangular surface.

[0175] In the watershed segmentation example, the mesh is a 3D triangular mesh with triangles, edges, and vertices. In these examples, the saddle points of the mesh can be defined as follows: The star shape of a mesh vertex V is the set of triangles and edges containing V (i.e., V is the vertex of these triangles and edges): the star shape of V is denoted as St(V). The upper star shape of vertex V (and the lower star shape, respectively) is the set of simplexes of the star shape St(V), so that the value of f at any vertex other than V is greater than (and less than) f(V, respectively). In other words, if for any vertex W of s different from V, f(W) > f(V), then the simplex s ∈ St(V) belongs to the upper star shape. Figure 3 A portion of a mesh is shown in an example of the watershed segmentation method, which includes vertices v. Figure 3 The star shape 30 of V is shown. Figure 4 The same portion of the mesh is shown, and link 40 of vertex v is also shown. Since the terrain is represented by a triangular mesh in these examples, the height function is piecewise linear (PL).

[0176] In these examples, the critical points of the grid are defined using the previously cited concepts of upper and lower stars (see previously cited reference [3], which is incorporated herein by reference). Specifically, a regular point that is not a critical point is a vertex for which the upper and lower stars are formed by exactly one connected component. A local minimum is a vertex for which the lower star is empty (the upper star consists of a single connected component). A local maximum is a vertex for which the lower star is empty (the upper star consists of a single connected component). A saddle point is a critical point of the elevation function and is a vertex for which the lower and upper stars consist of at least two connected components. Equivalently, it is a critical point of the elevation function, which is neither a local minimum nor a local maximum.

[0177] Figures 5 to 10 These concepts are shown, with the upper star shadowed and the lower star unshadowed. Figure 5 The vertex and its incident edge are shown. Figure 6 This shows the case where the vertex is the critical bottom (local minimum). Figure 7 This illustrates the case where the vertex is a critical apex (local maximum). Figure 8 This illustrates the case where the vertex is a regular vertex. Figure 9 This illustrates the case where the vertex is a regular saddle point. Figure 10 This illustrates the case where the vertices are monkey saddle-shaped (the upper and lower stars have tree-connected components).

[0178] The identification of one or more saddle points can be performed using any known method suitable for identifying saddle points on a mesh. In the example where the mesh is a 3D triangular mesh, the identification of one or more saddle points may include determining whether a vertex is a saddle point for each vertex of the mesh. Determining whether a vertex is a saddle point may include:

[0179] - The lower star shape and upper star shape of a vertex are calculated by comparing the heights of its adjacent vertices; and

[0180] - If the calculated lower star has at least two connected components and the calculated upper star has at least two connected components, then the vertex is determined to be a saddle point.

[0181] If a vertex is an interior vertex of the mesh (i.e., not a boundary vertex), then analyzing only the lower star of the vertex is sufficient, as it is the complement of the upper star on the direction circle (discussed below), and both have the same number of related components. In this case, determining whether a vertex is a saddle point if it is an interior vertex of the mesh may include:

[0182] - The lower star shape of a vertex is calculated by comparing the heights of its adjacent vertices; and

[0183] - If the calculated lower star shape has at least two connected components, then the vertex is determined as a saddle point.

[0184] This does not apply if the vertex is a boundary vertex of the mesh.

[0185] Whether a vertex is a saddle point can be determined by executing an algorithm, which can be called the "determine whether vertex V is a saddle point" algorithm. This algorithm is described by the following pseudocode:

[0186] Start the algorithm (determine if vertex V is a saddle point)

[0187] - The lower star shape Lo(V) of vertex V is calculated by comparing the z-coordinates of adjacent vertices.

[0188] -If Lo(V) has at least 2 connected components

[0189] Returns true

[0190] otherwise

[0191] Return false

[0192] Termination Algorithm

[0193] It should be understood that the watershed segmentation method can identify all saddle points in the mesh, or at least a portion thereof. In the example, the watershed segmentation method identifies all saddle points in the mesh.

[0194] In the example, at least one of the identified saddle points is a degenerate saddle point. A degenerate saddle point on the mesh is a vertex of the mesh, representing a degenerate saddle point of the terrain. A degenerate saddle point of the terrain is a point where the soil surface bends upward in at least two directions and downward in at least three other directions. In practice, if the saddle point corresponds to an interior vertex of the mesh, there are three local maximum descent directions around the saddle point. In the example of the watershed segmentation method, an interior degenerate saddle point on the mesh is a saddle point on the mesh for which the lower star shape comprises at least three connected components and the upper star shape comprises at least three connected components.

[0195] The calculation of watershed segmentation also includes, for each identified saddle point, identifying the path ascending from the saddle point according to the direction of the local maximum slope around the saddle point. The path ascending from the saddle point is a path on the grid that starts at the saddle point and ascends along the grid such that the elevation increases along the path until the path reaches an endpoint on a basin boundary or topographic boundary. For example, the endpoint may correspond to a local maximum of the elevation function and / or may be on a grid boundary. The path ascends from the saddle point to the endpoint according to the direction of the local maximum slope. This means that when reaching the endpoint, the path tends to follow the location of the maximum slope. In other words, the path begins at the saddle point by ascending along a local maximum slope around the saddle point (there may be many such local maximum slopes) and then tends to always ascend according to the steepest direction of ascent. It should be noted that the identified ascending paths can be any path on the grid; that is, they do not have to follow grid edges and can cross grid faces. The identification of ascending paths can be performed by any known method suitable for this purpose.

[0196] In the examples, identifying the path ascending from the saddle point involves determining the local maximum of the slope around the saddle point. In these examples, each corresponding path among the paths ascending from the saddle point is guided according to the determined local maximum of the slope. This is an efficient way to identify the ascending path because it ensures that the ascending path starts from the saddle point in the steepest possible direction.

[0197] As previously mentioned, each ascending path begins at a saddle point by ascending along a locally maximum slope around the saddle point, and there may be multiple such locally maximum slopes. In these examples, path identification involves determining these locally maximum slopes by identifying the local maxima around the saddle point. Identifying the locally maximum slope means finding the steepest ascending direction at the saddle point. Identifying the locally maximum slope may include calculating the radial slope around the saddle point, i.e., calculating the ascending direction extending radially around the saddle point. Identifying the locally maximum slope may further include determining the locally maximum of the calculated radial slope around the saddle point, such that in the example, the determined locally maximum slope around the saddle point is also the locally maximum radial slope around the saddle point. This improves the simplicity and efficiency of the watershed segmentation method.

[0198] In the examples, identifying the path ascending from the saddle point involves projecting the mesh elements including the saddle point onto a plane. In these examples, the radial slope around the saddle point is the direction angle of the projection of the saddle point onto the plane. These examples will now be discussed.

[0199] In these examples, the mesh can be parameterized by a 2D subset of the Oxy plane (i.e., the plane to which mesh elements are projected), which is the domain. In other words, the projection of mesh elements (such as mesh tiles or faces like triangles) causes the meshing of a 2D subset. In these examples, the mesh is a 3D triangular mesh (i.e., the mesh elements are triangles) and can be parameterized by a 2D subset of the Oxy plane, which is the domain. In these examples, the projection of triangles causes triangulation of the domain, meaning there are no overhanging triangles in the 3D triangular mesh.

[0200] Projected mesh elements may include parameterizations computed through a 2D subset. Additionally or alternatively, projected mesh elements may include providing parameterizations, for example, by retrieving them from memory that has been computed and stored (e.g., at a distance). In any case, the projection of mesh elements onto the Oxy plane produces a 2D subset or at least a portion of a 2D subset, including projections of mesh elements containing saddle points.

[0201] Saddle points, as part of the projected mesh elements, are also projected onto the plane. Therefore, the projection of a saddle point is a 2D point of a 2D subset, which is the pole of the polar coordinate system of the parameterized plane. The orientation angle around the saddle point is an angle in polar coordinates, thus belonging to [0, 2π]. Therefore, the radial slope around the saddle point is a function of the orientation angle, which is any function that takes the orientation angle (i.e., belonging to [0, 2π]) as input and outputs a slope in the direction of the orientation angle. The output slope in the direction of the orientation angle is the radial slope in the direction of the orientation angle. Therefore, the watershed segmentation method determines the direction of the local maximum slope around the saddle point in an efficient, robust, and simple manner by simplifying this determination to a simple and reliable calculation of the local maximum of the orientation angle function.

[0202] As previously discussed, watershed segmentation methods include determining the local maximum of the radial slope, for example, based on any known method for determining the local maximum of a function used to determine the direction angle.

[0203] The step of identifying each path ascending from the saddle point may further include: after determining each direction of the local maximum slope, calculating each path starting from the saddle point according to one direction of the local maximum slope, and ascending according to that steepest ascent slope until the endpoint, as discussed earlier. The calculation of each path can be performed using any method that enables the calculation of the steepest ascent path starting from a given point P on the grid.

[0204] Now let's discuss an example of this method. In this example, the mesh is a 3D triangular mesh. In this example, the watershed segmentation method takes any point in the mesh as input and calculates the path of ascent starting from that point according to the steepest direction of ascent. This can be performed by executing the following algorithm, which can be called the "calculate ascent path from point P" algorithm, and is described by the following pseudocode:

[0205] Start the algorithm (calculate the ascending path from point P).

[0206] When (P is not the maximum value and P is not on the terrain boundary)

[0207] -If P is inside triangle T

[0208] ○ Move P along the steepest upward direction until you reach the boundary point of T.

[0209] -If P is inside the edge, e = [v1, v2]

[0210] ○If e is a ridge

[0211] ■ Move P to the topmost end of e

[0212] Otherwise, let triangles T1 and T2 share the same value e, and let T1 be an upward-facing triangle.

[0213] ■ Move P along the steepest upward direction in T1 until it reaches a point on the boundary of T1.

[0214] -If P is a vertex

[0215] Consider all slopes around P (which could be slopes on triangles with P as their boundary; or slopes of sides with P as one of their ends), and determine the entity s with the maximum ascending slope.

[0216] ■If s is an edge→move P to the topmost end of s

[0217] ■If s is a triangle → move P along the steepest ascending direction in T1 until it reaches a point on the boundary of s.

[0218] Termination Algorithm

[0219] Figures 11 to 14 Different types of descent motion are shown. Figure 11 The descent motion from inside the triangle is shown. Figure 12 It shows the downward motion along the ridge. Figure 13 The diagram illustrates the descent through the triangle. Figure 14 The descent motion from the grid vertex is shown.

[0220] It should be understood that the calculation of each ascending path may include: when P is a saddle point and for each steepest ascending direction around P, applying the above algorithm, thereby calculating each path ascending from P according to the steepest ascending direction.

[0221] The calculation of watershed segmentation also includes: for each identified saddle point, identifying the path descending from the saddle point according to the direction of the steepest slope around the saddle point. "The path descending from the saddle point according to the direction of the steepest slope around the saddle point" refers to "the steepest descent path around / from the saddle point." The path descending from the saddle point according to the direction of the steepest slope around the saddle point can also be called the steepest descent valley around the saddle point. The steepest descent is such that, by following it, any water droplet will flow towards a local minimum critical point of the elevation function and / or a point located on the topographic boundary.

[0222] Identifying a path descending from a saddle point based on the direction of the steepest slope around the saddle point can include calculating the global minimum of the slope around the saddle point. The global minimum of the slope is, for example, the global minimum of the radial slope around the saddle point, and calculating it can include determining the global minimum of the radial slope around the saddle point. Determining the global minimum of the radial slope can be done by projecting the mesh elements including the saddle point onto a plane and calculating the global minimum of the direction angle function around the saddle point, as previously discussed. Identifying a path descending from a saddle point based on the direction of the steepest slope can include calculating a path starting from the saddle point based on the steepest descent direction (e.g., the direction of the minimum radial slope around the saddle point) and always descending from the saddle point based on the steepest possible descent direction.

[0223] In the examples, there are two steepest descent valleys near the saddle point (i.e., the same unit vector). In these examples, identifying the path descending from the saddle point may involve applying a symbolic perturbation to the mesh (but without modifying the geometry) and determining the lowest unit vector between the two valleys, i.e., the unit vector corresponding to the valley with the steepest descent around the saddle point. Determining whether the first unit vector is lower than the second unit vector involves comparing the z-coordinates of the first and second unit vectors. If they are equal, determining whether the first unit vector is lower than the second unit vector involves then comparing the x-coordinates of the two vectors, and then comparing the y-coordinates if the x-coordinates are equal.

[0224] For each identified saddle point, the identified ascending paths divide at least a portion of the mesh into connected components. The identified ascending paths all intersect at the saddle point, and each connected component is a connection portion of the mesh defined by two identified ascending paths and containing no other identified ascending paths. All ascending paths identified for all identified saddle points completely divide the mesh into such connected components.

[0225] In the example, the identification of the path ascending from the saddle point includes: for each mesh element that includes the saddle point and at least two local maxima of the radial slope, retrieving from the pair of local maxima of the at least two local maxima of the radial slope a pair of local maxima whose directions form the maximum angle in the projection of the mesh element. The respective directions of the local maxima of this pair produce one of the connected components. These examples will now be discussed further.

[0226] In these examples, each mesh element containing a saddle point is projected onto a plane, as previously described. Then, as previously discussed, path identification involves determining each direction angle corresponding to a local maximum of the radial slope in the projection of the saddle point onto the plane. Each projected mesh element does not contain a local maximum of the radial slope, for example, if the mesh element belongs to the lower star shape of the saddle point, or does not contain one or more local maximums of the radial slope, for example, if the mesh element belongs to the upper star shape of the saddle point. For each mesh element containing at least two local maximums of the radial slope, the watershed segmentation method retrieves the two local maximums of the radial slope, which correspond to the two corresponding direction angles forming the maximum angle in the projection of the mesh element. This angle is the largest of all angles formed by the pairs of the respective direction angles. The identified ascending paths rising from the saddle point according to the two directions corresponding to these two local maximums of the radial slope intersect at the saddle point. They also form boundaries between the two adjacent components of the divided mesh, respectively. This holds true for each projected mesh element containing at least two local maximums of the radial slope.

[0227] In other words, for each identified saddle point, the identified ascent path divides at least a portion of the mesh into connected components, each defined by one of the following:

[0228] - A pair of ascending paths, each ascending from the saddle point based on the two direction angles that form the maximum angle in the same projected mesh element.

[0229] - An ascending path belonging to this pair of ascending paths, and another ascending path belonging to another pair of such ascending paths, or

[0230] - An ascending path belonging to such a pair of ascending paths, and another ascending path ascending from the saddle point according to the direction angle corresponding to the local maximum of the unique radial slope of the projected mesh element.

[0231] All identified ascending paths intersect at saddle points. Each connected component has no other identified ascending paths besides the path that defines the connected component. All paths identified for all identified saddle points completely divide the mesh into such connected components.

[0232] In the example, the retrieval of pairs forming the maximum angle involves searching for the first local maximum and the last local maximum of the radial slope based on the trigonometric function order or inverse trigonometric function order in the projection of the mesh elements. This improves the simplicity, efficiency, and robustness of the watershed segmentation method because it ensures that pairs are retrieved by simply moving angularly around the projection of the saddle point in the projection of the mesh elements to retrieve the first and last local maximums of the radial slope. These retrieved first and last local maximums form the retrieved pairs.

[0233] It should be understood that path identification is performed for each identified saddle point. All these identified ascending paths completely divide the mesh into connected components. The watershed segmentation method then further includes, for each identified saddle point, merging each connected component whose base is the saddle point with a connected component comprising an identified path descending from the saddle point according to the direction of the steepest slope around the saddle point. This merging produces at least a portion of the basin.

[0234] Merging connected components means connecting connected components to form a connected component of the grid. For each identified saddle point, the merged connected components thus form a connected component of the grid, which represents at least a portion of the basin. The identified ascending paths are such that the formed connected component is defined by ascending paths rising from the saddle point according to the direction of the local maximum slope around the saddle point. These ascending paths ensure that any water droplet on at least a portion of the basin represented by the connected component will necessarily flow towards the basin's outlet.

[0235] Merging is performed iteratively on all identified saddle points. For each identified saddle point, the corresponding merging results in connected components of the mesh that form at least a portion of a basin. It should be understood that at least a portion of a basin can be within a basin. Alternatively, it can be included within a strict portion of a basin by merging connected components defined by other ascending paths identified for other identified saddle points to produce a basin or at least other portions of a basin. In other words, due to the merging of all identified saddle points, as a result of all these mergings, watershed segmentation ultimately produces connected components of the mesh, each connected component representing a complete basin. These complete basins form the watershed segmentation of the terrain.

[0236] We will now discuss examples of merging. In these examples, the term "merging" can be understood not as merging for a given identified saddle point, but as a combination of all merges performed for all identified saddle points, as described earlier.

[0237] In these examples, merging involves defining a graph with nodes representing connected components and arcs representing the connections between two connected components. In these examples, merging also includes extracting the connected components of the graph. Each connected component of the graph represents a basin in the terrain. This is a robust and efficient way to merge connected components to produce watershed-divided basins.

[0238] Each node in the graph represents a connected component within a grid. Determining the graph may include assigning nodes to connected components. The identified ascending path is such that the lowest point of the connected component is a saddle point or a local minimum of height, for each connected component. Determining the graph may also include creating arcs, each arc connecting two nodes representing two connected components, and each arc representing a connection between two connected components. Creating an arc may include: for each node representing a connected component with a saddle point as its base, creating an arc between that node and a node representing a connected component of the grid located below the saddle point and including an identified path descending from the saddle point in a direction with the steepest slope around the saddle point. Thus, in the example, each node representing a connected component with a saddle point as its base is connected by an arc in the graph to a node representing a connected component of the grid located below the saddle point and including an identified path descending from the saddle point in a direction with the steepest slope around the saddle point. The connected component of the grid located below the saddle point and including an identified path descending from the saddle point in a direction with the steepest slope around the saddle point is unique.

[0239] In the examples, the calculation of watershed segmentation according to the watershed segmentation method is performed by executing the algorithm now discussed. The algorithms for these examples are described by the following pseudocode:

[0240] Starting Algorithm (calculating watershed segmentation of the terrain based on a grid, where the watershed segmentation is given by the basin boundary):

[0241] ○ Determine all saddle points according to the algorithm for "determining whether vertex V is a saddle point";

[0242] ○ Determine the local maximum θ of the slope around each saddle point V. i Therefore, consider the slope around V as a function of θ (called the radial slope), which represents any direction angle in the Oxy plane between [0, 2π] around V.

[0243] ○ For any saddle point V, calculate the global minimum of the radial slope function (which is an angle): the direction that will cause the steepest descent valley, denoted as val;

[0244] For each connected component Cc of the upper star shape of V, apply the following procedure:

[0245] ○ If there is only one local maximum θ within Cci According to the algorithm of "calculating the ascent path from point P", the ascent path is calculated starting from V, with the starting direction of the ascent path being θ. i Provided.

[0246] Otherwise, using the trigonometric function order around V (counter-clockwise), retrieve the first and last local maximum θ of the radial slope. f and θ l This is limited to the Cc component. Then, starting from V along the initial direction θ f and θ l Calculate the ascending path;

[0247] All these paths divide the terrain into connected components, which form the nodes of the graph G. The base point of each node is any one of the following:

[0248] ■ Degraded saddle points

[0249] ■Local minimum value;

[0250] In the first case, create an arc between the node and the node corresponding to the unique valley val of the degenerate saddle point.

[0251] The resulting basin is given by the connected components of the graph G.

[0252] According to the algorithm described above, all water reaching vertex V (starting from the connected components of the upper star) will flow through valley val and remain in the same basin.

[0253] Figure 15 and Figure 16 The algorithm described above is illustrated. Figure 15 The diagram shows the degenerate saddle point (corresponding to the center of the circle), its steepest descent valley val, the three connected components of the upper star 150, 152, and 154, and for each of them, the first and last orientation angles θ. f and θ l . Figure 16 The results of merging around the saddle point are shown (each basin 160, 162, 164 has a different gray shading).

[0254] The algorithm above is effective, especially because it doesn't require browsing all mesh vertices, but only saddle points. Therefore, the computational complexity depends on the number of saddle points, not the number of mesh vertices. Similar to the algorithm above, subdividing the mesh into triangles has little impact on computation time. In particular, doubling the number of triangles with the same geometry does not double the computation time. The algorithm is also accurate because the basin boundary is not constrained by terrain edges and follows the steepest upward direction.

[0255] In the example with a triangular mesh, during the watershed segmentation calculation, triangles intersected by the ascending watershed line are segmented, and the resulting fragments are associated with the basins produced as output. Therefore, in these examples, the watershed segmentation method does not necessarily follow the mesh edges when identifying paths, which makes the watershed segmentation method robust and ensures relatively accurate results.

[0256] In all cases, the calculated watershed segmentation is accurate because it conforms to the trajectory of water: the watershed segmentation method truly ensures that any trajectory of any water droplet located within a given basin eventually reaches the basin's outlet. Furthermore, the watershed segmentation method does not require any modification to the input terrain (i.e., the provided mesh), such as by adding and / or deleting vertices and / or by changing vertex coordinates. In particular, watershed segmentation does not require segmenting degenerate saddle points into regular saddle points, making the watershed segmentation method particularly robust.

[0257] The watershed segmentation method may further include displaying the calculated watershed segmentation on a computer monitor. As previously mentioned, displaying the calculated watershed segmentation allows for the performance of civil engineering analyses and / or one or more physical actions based on the displayed calculated watershed segmentation.

[0258] We will now discuss regularization methods further.

[0259] Regularization methods include providing watershed divisions of the terrain. Watershed divisions include basins. The concept of watershed divisions has been discussed previously and will not be discussed further.

[0260] Providing a watershed segment may include calculating the watershed segment using any known method. For example, providing a watershed segment may include calculating the watershed segment according to a watershed segmentation method as previously discussed. Alternatively, providing a watershed segment may include retrieving the watershed segment from a (e.g., distant) memory where the watershed segment has been stored after its calculation (e.g., according to a watershed segmentation method).

[0261] The regularization method also includes merging first basins segmented by the watershed with second basins downstream of the first basin, each of the first basins validating the minority criterion. This means that the regularization method will explore (e.g., all) the watershed-segmented basins and merge each first basin found validating the minority criterion with a second basin located downstream of the first basin. The second basin is a downstream basin of the first basin, i.e., a basin adjacent to the first basin via its spillway. This allows each small basin (i.e., in terms of the minority criterion) to be merged with the downstream second basin, ultimately resulting in regularized watershed segmentation: the merged watershed segmentation contains only large basins or relatively only large basins, i.e., each large basin violates the minority criterion. It should be understood that the second basin and / or the merged basins can also be first basins validating the minority criterion, in which case they are also merged with downstream basins. Therefore, each basin in a regularized watershed segmentation is the result of merging two or more provided watershed-segmented basins.

[0262] A basin that meets the smallness criterion is a relatively small basin. In the example, this means the basin is so small that it is irrelevant to a civil engineer, for example, when performing a civil engineering analysis. Additionally, or alternatively, this might mean that the basin corresponds to numerical artifacts and / or noise within a watershed segment, but does not exist in the real world.

[0263] In the example, if the quantization of basin size is below a predetermined threshold, the basin validates the size criterion. The predetermined threshold can be a user-defined threshold (e.g., a civil engineer), defined before the regularization method is executed. This allows merging segmented first basins that are too small to exist in the real world and / or too small to be relevant to a civil engineer. The quantization of size can be any value representing basin size. In the example, the quantization of basin size includes one or more of the quantization of basin depth, basin area, and / or basin volume. If the quantization of basin size is a quantization of basin depth, the threshold can be on the order of meters (e.g., for a model of the entire terrain) or decimeters (e.g., for a city model). If the quantization of basin size is a quantization of basin area, the threshold can be on the order of square meters. If quantifying basin size is equivalent to quantifying basin volume, the threshold order of magnitude could be cubic meters (e.g., in levee studies) or less (e.g., in drainage studies, since civil engineers would later be interested in the rate at which the basin fills). Quantifying basin depth can be a basin depth value, i.e., the value of the basin's depth. Quantifying basin area can be a basin area value, i.e., the value of the basin's area. Quantifying basin volume can be a basin volume value, i.e., the value of the basin's volume.

[0264] The merger will now be discussed further.

[0265] Merging can be performed iteratively, meaning it can include iteratively exploring the basins segmented by the watershed. Merging can iteratively determine the basins to be explored, which are first basins used to verify the smallness criterion. Each identified first basin is merged (e.g., connected) with a second basin, which is a downstream basin of the first basin. It should be understood that the second basin can also be a first basin used to verify the smallness criterion; in this case, the second basin is also merged with its downstream second basins during merging.

[0266] In the examples, merging involves determining a directed graph with nodes and arcs. Each node represents a basin. Each arc represents a connection between a first basin, verified by a degree criterion, and a second basin located downstream of the first basin. The arc is directed from a first node representing the first basin to a second node representing the second basin. In these examples, merging also includes merging basins corresponding to nodes of the same connected components of the directed graph. This graph can be a directed acyclic graph (hereinafter referred to as a "DAG").

[0267] Determining the orientation of the graph and merging the first and second basins by combining basins corresponding to nodes of the same connected components in the graph is an efficient and robust way to perform the merging and thus regularize the provided watershed segmentation. It is worth noting that the graph forms a data structure that effectively captures the arrangement of small basins relative to each other, i.e., which basin is upstream or downstream of another. In fact, the nodes of the connected components of the graph represent a set of basins, which are:

[0268] - They are separated by two downstream units; and

[0269] - Each in the group that validates the smallness standard is located downstream of the corresponding first basin, except for the most upstream basin in the group.

[0270] This is equivalent to saying that these basins form a DAG, indicating the order in which the basins are connected to each other.

[0271] Therefore, merging basins corresponding to nodes of the same connected components in the graph can effectively generate basins divided by regular watersheds, which violates the smallness standard.

[0272] In the examples, determining the orientation graph involves exploring basins according to the smallness order of the reward basin smallness. In these examples, determining the orientation graph also includes: for each first basin explored to validate the smallness criterion, creating an arc between the node representing the first basin and the node representing a second basin downstream of the first basin. The arc is oriented from the node representing the first basin to the node representing the second basin. Before creating the arc, the determination may include: for each explored basin, creating a node in the graph representing the basin. In all cases, the graph resulting from the creation of the arc is a DAG.

[0273] The smaller degree order is the order in which basins are rewarded for reducing their smaller degree. In other words, if one basin is smaller than another, that basin is prioritized over the other in the smaller degree order. Therefore, exploring basins in the smaller degree order involves: first exploring the smallest basin divided by the provided watershed, then exploring the smallest basin among the unexplored basins divided by the provided watershed, then exploring the smallest basin among the unexplored basins divided by the provided watershed, and so on, until all basins divided by the provided watershed have been explored. Exploring basins may include: for each basin, calculating the previously discussed basin smaller degree, for example, by calculating the basin's depth, area, or volume. Exploring basins may further include classifying basins based on the quantification of the increase in smaller degree, for example, by classifying basins according to the increase in depth (depth order in the smaller degree order), according to the increase in area (area order in the smaller degree order), or according to the increase in volume (volume order in the smaller degree order). Then, exploring basins can include exploring (e.g., visiting) categorized basins in order of degree.

[0274] Exploring basins based on degree order is an efficient and robust approach that ensures that each connected component of the graph represents a set of basins that are paired downstream of each other and located downstream of the corresponding first basin in the set, validating the degree criterion, except for the most upstream basin in the set. Therefore, merging basins within each corresponding set effectively produces the corresponding basins divided by a regularized watershed.

[0275] In the examples, watershed segmentation includes data representing the water trajectory within each basin. In these examples, merging includes: for each first basin merged with a second basin, calculating data representing the water trajectory between the first and second basins. Therefore, in addition to regularizing the provided watershed segmentation, this regularization method can also derive the water trajectory within each basin of the regularized watershed segmentation. Thus, the regularized watershed segmentation output by the regularization method can be used to understand the water trajectory and / or visualize the impact of any earthwork on hydrodynamics, which is highly relevant to civil engineering. Alternatively, the regularization method can regularize the provided watershed segmentation and update the water trajectory accordingly and simultaneously.

[0276] Data representing the trajectory within a basin can be any data representing the trajectory of any water flow within the basin, such as one or more paths within the basin. In the example, one or more paths include a path from the basin's outlet to the basin's spillway, also known as an "extended upflow path," and / or a path from the spillway of an upstream basin to the basin's outlet, also known as an "extended downflow path." Data representing the water trajectory between the first and second basins can be any data representing the trajectory of any water flow flowing from the first basin into the second basin, and can be calculated based on data representing the water trajectories within the first and second basins.

[0277] The calculation of data representing the water trajectory between the first and second basins can be based on first data representing the water trajectory within the first basin and second data representing the water trajectory within the second basin (e.g., these can be used as inputs). This improves the accuracy of the water trajectory calculation between the first and second basins. In the example, the first data includes an extended upward path from the outlet of the first basin to the spillway of the first basin, and / or the second data includes an extended downward path from the outlet of the first basin to the spillway of the second basin.

[0278] In the examples, the first data includes an extended upward path from the outlet of the first basin to the spillway of the first basin, and the second data includes an extended downward path from the spillway of the first basin to the outlet of the second basin. In these examples, the calculation of data representing the water trajectory between the first and second basins can take the extended upward and extended downward paths as input and output a path, which can be called an "extended path," corresponding to the concatenation of the extended upward and extended downward paths. In other words, the extended path connects the outlet of the first basin to the spillway of the first basin according to the extended upward path, and then connects the spillway of the first basin to the outlet of the second basin according to the extended downward path. Since this is the result of merging the first basin with the downstream second basin, it can be ensured that any waterway reaching the former outlet (i.e., the watershed-divided outlet) can be extended until reaching the outlet of the filtered basin (i.e., the regularized watershed-divided basin). This trajectory of droplets toward the filtered (i.e., regularized) watershed-divided outlet forms the extended path. The extended paths constitute objective physical information, especially information related to civil engineering.

[0279] The normalization method may further include displaying the normalized watershed segment on a computer monitor. As previously described, displaying the normalized watershed segment allows for the performance of civil engineering analyses and / or one or more physical actions based on the displayed normalized watershed segment.

[0280] Now let's discuss examples of regularization methods.

[0281] In this example, the provided watershed segmentation contains numerous shallow basins, which impair the readability of the results. This is in Figure 7 The image shows a screenshot of the provided watershed segmentation displayed on a computer monitor. Users (such as civil engineers) may find it difficult to understand the water's trajectory and cannot visualize the impact of any earthwork on the hydrodynamics based on the provided watershed segmentation.

[0282] In this example, merging involves exploring the basins in order of degree, as described previously. Exploration includes classifying the original basins (i.e., the basins divided by the provided watershed) by increasing depth (area, volume, etc.). Exploration also includes creating a directed acyclic graph (DAG) with nodes representing the initial basins.

[0283] Then, sorted by increasing depth (area and volume respectively), for each basin B, the exploration involves creating a directional arc in the graph connecting B towards its downstream basin B'. Simultaneously, the exploration involves associating two paths to this arc, these two paths being referred to as extension paths P. 上升 and P 下降 :P 上升From B's exit O B To the spillway of B, P 下降 The spillway from B to B' is marked as O. B’ . Figure 19 These paths are shown.

[0284] Then, the basin sets in each connected component of the graph are merged into so-called filtered basins, thus forming a regularized (i.e., filtered) watershed segmentation. The remaining (i.e., filtered) basins have a depth greater than a given threshold. Figure 20 It shows the merger Figure 19 The remaining basins after basins B and B'.

[0285] In this example, the merge is performed by executing the algorithm described in the following pseudocode:

[0286] Start Algorithm

[0287] Create an empty DAG;

[0288] For each initial basin, create a corresponding vertex in the DAG;

[0289] ○ Classify basins according to their increased depth;

[0290] ○ Following this order, when the depth of basin B (area and volume) is lower than the user-specified predefined threshold:

[0291] Let c be the spillway of B. c lies on a broken line shared by B and its downstream basin B'. Add an arc from B to B' in the DAG;

[0292] Let o be the exit of B, and o' be the exit of B'. Calculate the two extended paths P. 上升 and P 下降 ;

[0293] ○ Create a new empty watershed partition to store the filtered basin:

[0294] For each connected component in the DAG, create a new basin as the union of all the initial basins in the connected component.

[0295] Termination Algorithm

[0296] Figure 18 The above algorithm is shown for merging. Figure 17 The segmentation result, where the depth threshold is equal to 0.5mm. Figure 21 It shows in Figure 19 The calculated water trajectory between the first basin B and the second basin B'. Figure 22 and Figure 23 The merging based on the above algorithm is further illustrated. Figure 22 The provided watershed divides the two basins. Note that Basin 1 has a smaller depth and meets the minimum degree criterion. Figure 23 The effect of the merger is shown: only one basin remains after the merger.

[0297] In this example, the merged watercourse trajectory and watershed segmentation remain consistent. Regardless of the user-given depth threshold eps (even if eps = 0), the basin still includes any path that originates from and leads to the basin's outlet (or ground edge). Therefore, when eps > 0, the merged basin still forms a new segment of the terrain, validating the previous properties. This is in Figure 24 As shown in the figure, Figure 24 The image shows the trajectory of the original water (stopping when it reaches the outlet), and... Figure 25 As shown in the figure, Figure 25 The diagram shows the extended path calculated using eps=1m.

[0298] We will now discuss the contributor calculation method further.

[0299] The contributor calculation method includes providing a grid representing the terrain. The provision of the terrain-representing grid has already been discussed previously and will not be discussed further. The contributor calculation method also includes providing polylines on the grid.

[0300] A polyline is a line formed by the vertices and edges of a grid, with each edge connecting two of the vertices. Providing a polyline can include, for example, defining the polyline on a grid, such as through graphical user interaction. For example, the grid can be displayed on a computer monitor, and the user can define lines by graphically interacting with the monitor, for example, using a touch or haptic device. The user can, for example, draw lines or select the vertices and / or edges of lines. Alternatively, when a grid is provided, the polyline may already be defined on the grid. In this case, the polyline is set with the grid. A polyline can represent a structure on the terrain, which can be a constructed terrain. For example, a polyline can represent a road, railway, passageway, building, or mine.

[0301] The contributor calculation method also includes calculating contributors to a polyline. As mentioned earlier, a contributor is the set of points from which water in the grid will necessarily flow to a point on the polyline. Polylines can be connected and / or opened or closed. Contributors can be calculated in either case, making the contributor calculation method more robust.

[0302] The contributor's computation involves modifying the mesh by determining the grooves beneath the polylines. In other words, the modified mesh is identical to the provided mesh, except that the polylines are replaced by grooves beneath them. In the example, the mesh modification involves transforming (e.g., deforming, mapping) the polylines into the grooves, for example, by continuously bending the polylines. For example, continuously bending the polylines could include lowering the height coordinates of the points on the polyline such that there exists only one local minimum height along the groove, and all points in the groove are below the original mesh vertices. For example, if the polyline has 2N points, the height coordinates on the groove decrease from point 0 to point N-1, and then increase from point N to point 2N-1. The groove is part of the mesh that essentially has the shape of a groove, such as a U-shape or V-shape beneath the polyline.

[0303] In the examples, each point on the polyline corresponds to a point on the trench. In other words, the modification lies in mapping the polyline to the trench. For example, the mapping could include mapping each vertex of the polyline to a corresponding vertex of the trench, where each vertex of the polyline belongs to a provided mesh and the vertex belongs to a modified mesh. In these examples, the height of each point in the trench is lower than that of the corresponding point on the polyline. In other words, the mapping reduces the height of the points (e.g., vertices) of the polyline to transform them into trenches. This is a simple, reliable, and efficient way to determine trenches.

[0304] Now let's discuss an example of modifying a mesh. In this example, the modification involves applying a mapping to the vertices of a polyline that lowers the height of those vertices, thus transforming them into vertices of a groove, and thus converting the polyline into a groove. In this example, the modification is performed by executing the following algorithm, which can be called the "modify the height of a polyline's points" algorithm, and is described by the following pseudocode:

[0305] Start the algorithm (modify the height of points on the polyline).

[0306] -Let z min The lowest z-coordinate on all grid vertices

[0307] Let N be the number of vertices of the polyline.

[0308] -From i=1 to N / 2

[0309] ○ Change the z-coordinate of the i-th vertex along the polyline.

[0310] -From i = (N / 2) + 1 to N

[0311] ○ Change the z-coordinate of the i-th vertex along the polyline.

[0312] Termination Algorithm

[0313] In the example, only one point in the trench has a local minimum height. In other words, the mesh modification results in only one point in the trench (e.g., only one vertex) having the minimum height among all points (e.g., vertices) in the trench. This ultimately improves the robustness of watershed segmentation computation as well as the robustness of basin identification, including the mesh, which will be discussed below.

[0314] The computation of the polyline contributors also includes calculating the watershed segmentation of the terrain based on the modified mesh. In other words, the watershed segmentation computation takes the modified mesh as input and outputs the watershed segmentation of the terrain from the input modified mesh. The watershed segmentation computation can be performed according to any method used for mesh-based watershed segmentation computation. In the example, the watershed segmentation computation includes applying a watershed segmentation method as previously discussed. In this case, the watershed segmentation computation benefits from the improvements in accuracy, efficiency, and robustness provided by the previously discussed watershed segmentation methods.

[0315] In the examples, the calculation of watershed segmentation includes, for example, calculating the initial watershed segmentation of the terrain based on the modified grid by applying a watershed segmentation method. In these examples, the calculation of watershed segmentation also includes, for example, performing regularization on the calculated initial watershed segmentation by applying a regularization method. This allows for basin identification on the regularized (i.e., filtered) watershed segmentation, which was initially calculated based on the modified grid. In effect, this removes basins from the initial watershed segmentation that are very small, for example, with very small depth, area, and / or volume values, such that they correspond to numerical artifacts and / or noise in calculating the initial watershed segmentation and / or are irrelevant from a civil engineering perspective. Ultimately, the identification of basins including trenches is improved because, for the reasons stated above, it is ensured that the identified basins will not correspond to basins so small that they should be discarded and not identified. Furthermore, in the examples, the identified basins produced by regularization are larger than those identified without regularization. Therefore, these examples produce computed contributors that are larger and / or more relevant to the civil engineer. This contributor can be referred to as the "extended" contributor.

[0316] In any case, the calculation of watershed segmentation results in dividing the modified mesh into multiple parts, each representing a basin segmented by the calculated watershed. Due to its shape (e.g., because the trench includes only one local minimum of height), the trench is included in a basin with a point in the mesh as its outlet. The contributor's calculation further includes: identifying basins including trenches on the modified mesh based on the calculated watershed segmentation. In other words, identifying basins where trenches are included and which have points in the mesh as their outlets among the basins segmented by the calculated watershed, and identifying such basins. In other words, the identified basins including trenches are basins that include trenches and have points in the mesh as their outlets. In the example, only one point in the trench is a local minimum of height, and the identified basin has that local minimum of height as its outlet.

[0317] The identified basins correspond to contributors. This means that the identified basins belonging to the modified mesh correspond to the portions of the provided mesh that represent contributors. Specifically, the identified basins include trenches and another portion of the modified mesh (e.g., the union of trenches and another portion of the modified mesh). This other portion is identical in both the modified mesh and the provided mesh. The contributor then comprises polylines and the other portion (e.g., the union of polylines and the other portion). In the example, the calculation of contributors also includes modifying the basins by transforming the trenches back to polylines. Since the trenches are transformed back to polylines, the modified basins resulting from this modification are contributors. In other words, the modified basins consist of polylines and the other portion, and are therefore contributors. Transforming trenches back to polylines means reversing the modification of the mesh, resulting in the trenches being determined based on the polylines. For example, if the polylines have already been mapped onto the trenches by the modification described above, transforming back means applying the inverse mapping to the trenches to map them back to the polylines.

[0318] Now let's discuss an example of contributor computation. In this example, the mesh is a 3D triangular mesh. In this example, contributor computation is performed by executing the following algorithm (described by the following pseudocode):

[0319] Start Algorithm

[0320] To calculate the contributors to the polyline represented as P, copy the initial terrain (i.e., the provided grid) and then subdivide it by points S. i The triangle P is represented by point S. i - Insert a copy of the terrain (i.e., the modified mesh) (denoted as M'). Note that the copy of the terrain mesh is hidden from the user and is for internal purposes only.

[0321] Then, the z-coordinate of the insertion point is modified by applying the "modify the height of points on the polyline" algorithm to populate the following attributes:

[0322] ○ Each point S i The height of all of them is lower than any point in the original terrain.

[0323] ○S i Only one point is a local minimum of the elevation function (this local minimum will become the outlet of the basin):

[0324] A polyline whose vertices have been modified to fill previous properties is a groove.

[0325] Then, the watershed division is calculated on this modified terrain. The contributors to the polyline are determined by the basin, with the basin outlet located on the gully (i.e., the gully is point S). i one).

[0326] - Extract the mesh of the basin and then recover the z-coordinates of the points located on the trenches. This results in a mesh that is a subset of the initial terrain. The resulting mesh is precisely the contributor, and any path starting from a point included in the result will cross the target polyline.

[0327] Termination Algorithm

[0328] Figures 26 to 36 The above algorithm has been shown, and it will now be discussed.

[0329] Figure 26 The terrain and the polyline 260 on the terrain are shown. Figure 27 The defined trench 270 is shown. Figure 28 The diagram shows the identified basin 280, segmented by the watershed calculated on the modified grid. Figure 29 The contributors 290 are shown in the calculation of the polyline retrieved by restoring the coordinates.

[0330] Figure 30 The terrain is shown, along with a broken line 300 representing a line on the terrain. Figure 31 A cross-sectional view of the trench 310 on the modified grid of the terrain is shown. Figure 32 The basin 320 (in the watershed segment of the calculated modified grid) is shown. Figure 32 (Circled in the middle). The outlet of the identified basin is located at... Figure 31 On the groove 310. Figure 33 It shows Figure 30 The calculated contributors to the 300-fold line are 330.

[0331] As mentioned earlier, the calculation of watershed segmentation may include: calculating an initial watershed segmentation according to the watershed segmentation method, and regularizing the initial watershed segmentation by applying a regularization method. The resulting calculated segmentation still contains basins whose outlets are located on trenches, and these basins induce extended contributors (contributors for which topological filtering has been applied), which is a result of topological filtering (i.e., regularization). This means that any extended path starting from a point contained in the extended contributors will traverse the input polyline. Figure 34 This shows the calculation in this way. Figure 30 The 300-fold extension contributor to the broken line. Figure 34 The extended contributors to several values ​​of the depth threshold used when performing the regularization method are shown: 0.5m (340, red), 1m (350, dark pink), and 2m (360, light pink).

[0332] The algorithm above is particularly efficient and accurate. It's worth noting that it uses the single operation previously discussed to compute the contributors to the polyline and is unaffected by the complexity of the polyline (in this example, only the number of critical points matters). The algorithm above is particularly robust and efficient compared to methods that sample the polyline into points, compute the contributor for each point, and then compute the union of all these contributors. The Boolean union of all contributors to the sampled points is indeed not equal to the contributors to the polyline. In fact, a point flowing towards the polyline can be found from the Boolean union. This is in... Figure 35 and Figure 36 As shown in the image. Figure 36 The contributors to the polyline calculated using the algorithm described above are shown. Figure 36 The union of contributors to the sampling points on the broken line is shown.

[0333] Contributor calculation methods may also include displaying contributors as a polyline on a computer monitor. As previously mentioned, displaying contributors allows for the performance of civil engineering analyses and / or one or more physical actions based on the displayed contributors.

[0334] Watershed segmentation, regularization, and contributor calculation are methods implemented using computers.

[0335] This means that the steps (or essentially all steps) of the method are executed by at least one computer or any similar system. Therefore, the execution of the steps by a computer may be fully automatic or semi-automatic. In the example, at least some steps of the method may be triggered through user-computer interaction. The required level of user-computer interaction may depend on the anticipated level of automation and be balanced with the need to fulfill the user's intentions. In the example, this level may be user-defined and / or predefined.

[0336] A typical example of a computer implementation of the method is to execute it using a system suitable for this purpose. This system may include a processor coupled to memory and a graphical user interface (GUI) on which a computer program is recorded, containing instructions for performing the method. The memory may also store a database. The memory is any hardware suitable for such storage and may comprise several physically distinct sections (e.g., one for the program and possibly another for the database).

[0337] Figure 37 An example of a system is shown, where the system is a client computer system, such as a user's workstation.

[0338] The client computer in this example includes a central processing unit (CPU) 1010 connected to an internal communication bus 1000, and random access memory (RAM) 1070 also connected to the bus. The client computer is also provided with a graphics processing unit (GPU) 1110 associated with video random access memory 1100 connected to the bus. The video RAM 1100 is also referred to in the art as a frame buffer. A mass storage device controller 1020 manages access to a mass storage device (e.g., a hard disk drive 1030). Mass storage devices suitable for tangibly representing computer program instructions and data include all forms of non-volatile memory, including, for example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices; disks, such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks 1040. Any of the above can be supplemented or incorporated by a specially designed ASIC (Application-Specific Integrated Circuit). A network adapter 1050 manages access to a network 1060. The client computer may also include a haptic device 1090, such as a cursor control device, a keyboard, etc. A cursor control device is used on the client computer to allow the user to selectively position the cursor at any desired location on the monitor 1080. Furthermore, the cursor control device allows the user to select various commands and input control signals. The cursor control device includes multiple signal generating devices for inputting control signals to the system. Typically, the cursor control device can be a mouse, with buttons used to generate signals. Alternatively or additionally, the client computer system may include a sensitive pad and / or a sensitive screen.

[0339] Any computer program described herein may include computer-executable instructions, including means for causing the system described above to perform one or more of the watershed segmentation method, regularization method, and / or contributor calculation method. The program may be recorded on any data storage medium, including the system's memory. The program may be implemented, for example, as digital electronic circuitry or computer hardware, firmware, software, or a combination thereof. The program may be implemented as a means tangibly embodied in a machine-readable storage device for execution by a programmable processor, such as a product. Method steps may be performed by a programmable processor executing a program of instructions to perform the function of the method by manipulating input data and generating output. Thus, the processor may be programmable and coupled to receive data and instructions from the data storage system, at least one input device, and at least one output device, and to send data and instructions to the data storage system, at least one input device, and at least one output device. If desired, the application may be implemented in a high-level procedural or object-oriented programming language, or assembly or machine language. In any case, the language may be a compiled language or an interpreted language. The program may be a complete installer or updater. In any case, the application of the program on the system will generate instructions for performing one or more of the watershed segmentation method, regularization method, and / or contributor calculation method.

Claims

1. A computer-implemented method for civil engineering, the method comprising: Provides a watershed segmentation of the terrain, the watershed segmentation including basins; and The first basins divided by the watershed are merged with the second basins located downstream of the first basins, and each of the first basins is verified against a small-scale standard. The merging includes: A directional graph is determined with nodes and arcs, each node representing a basin, and each arc representing a connection between a first basin verifying the smallness criterion and a second basin located downstream of the first basin, the second basin being adjacent to the first basin via a spillway of the first basin. The arcs are oriented from a first node representing the first basin to a second node representing the second basin. The determination of the directional graph includes: exploring the basins according to a smallness order of reward basin smallness, wherein if one basin is smaller than another, that basin precedes the other in the smallness order; and for each explored first basin verifying the smallness criterion, creating an arc between a node representing the first basin and a node representing the second basin located downstream of the first basin, the arcs being oriented from a node representing the first basin to a node representing the second basin; and Merge basins corresponding to nodes of the same connected component in the orientation map.

2. The method according to claim 1, wherein, The watershed segmentation includes data representing the water trajectory within each basin, and the merging includes: for each first basin merged with a second basin, calculating data representing the water trajectory between the first basin and the second basin.

3. The method according to claim 2, wherein, The calculation of the data representing the water trajectory between the first basin and the second basin is based on first data representing the water trajectory within the first basin and second data representing the water trajectory within the second basin.

4. The method according to claim 3, wherein, The first data includes the path from the outlet of the first basin to the spillway of the first basin, and / or the second data includes the path from the spillway of the first basin to the outlet of the second basin.

5. The method according to any one of claims 1 to 4, wherein, If the quantization of the smallness of a basin is below a predetermined threshold, then the basin verifies the smallness standard.

6. The method according to claim 5, wherein, The quantization of the degree of the basin includes one or more of the quantization of the basin's depth, the quantization of the basin's area, and / or the quantization of the basin's volume.

7. The method according to any one of claims 1 to 4, wherein, The terrain referred to is architectural terrain.

8. A computer program product comprising instructions for performing the method according to any one of claims 1 to 7.

9. An apparatus for merging watershed-divided basins, comprising a data storage medium thereon having instructions for performing the method according to any one of claims 1 to 7.

10. The device of claim 9, further comprising a processor coupled to the data storage medium.

Citation Information

Patent Citations

  • Rapid parallelization method of totally-distributed type watershed eco-hydrology model

    CN103164190A

  • Automatic extraction method for urban road network information of high resolution remote sensing image

    CN107958183A