System, Method, and Recording Medium for Detecting Underwater Seaweed and Quantifying Its Volume Based on Multibeam Echo Sounder Water Column Data
Patent Information
- Application Number
- KR1020260139382
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2026-07-28
- Publication Date
- 2026-09-22
- Estimated Expiration
- 2046-07-28
Smart Images

Figure R1020260139382_ABST
Abstract
Description
Technology Field
[0001] The present invention relates to a system for detecting and quantifying the volume of underwater seaweed based on multibeam water column data, a method thereof, and a recording medium thereof. More specifically, the invention relates to a system for detecting and quantifying the volume of underwater seaweed based on multibeam water column data that visualizes water column data acquired by a Multibeam Echo Sounder (MBES) in real time and quantifies the spatial distribution and volume of seabed seaweed through a user interaction-based detection workflow, as well as a recording medium thereof. Background Technology
[0003] Seabed seaweed communities (such as seagrass and kelp) serve as key habitats for marine ecosystems, playing roles in carbon sequestration, water purification, and fish spawning. Precisely identifying their distribution and biomass is essential for marine environmental monitoring and the establishment of resource management policies.
[0004] However, traditional survey methods utilizing scuba diving, underwater cameras, and remotely operated vehicles (ROVs) have fundamental limitations in ensuring spatial continuity and repeated monitoring of extensive sea areas.
[0005] The multibeam echo sounder is a device that surveys the seafloor with a wide swath and high spatial resolution, and with the recent expansion of its ability to record water column data, it has become possible to detect scatterers within the water column in three dimensions.
[0006] The order data records the time-series backscatter intensity for all beams of each ping, and visualizing it in the form of a Fan Plot allows for an intuitive view of the cross-sectional distribution of underwater scatterers.
[0008] However, conventional technology has the following problems.
[0009] First, existing commercial software (Fledermaus WCI, SonarScope, QPS Qimera, etc.) has low accessibility due to the high cost of licenses.
[0010] Second, open source tools (MB-System, echopype, etc.) lack interactive ROI editing features specialized for algae detection, automatic polygon propagation by ping unit, real-time 3D voxel rendering, and volume quantification features.
[0011] Third, existing automatic detection algorithms have inherent problems of false detection and missing detection in real-sea environments where background scattering levels fluctuate, and semi-automatic approaches that reflect researchers' field knowledge are impossible.
[0012] Fourth, an integrated workflow for generating a 3D continuous point cloud from 2D cross-sectional ping data and quantifying volume is not provided.
[0014] For reference, it appears that no patents for detecting and visualizing underwater seaweed colonies have been proposed to date.
[0015] However, patents for detecting schools of fish have been disclosed, such as registered patent 1009236680000 (2009.10.20) "Fishing simulation method and fishing simulation execution method and fishing simulator" and registered patent 1004810890000 (2005.03.25) "Simulation device for fish school finder and method thereof". The problem to be solved
[0017] The present invention is an invention developed to solve the problem that no technology has been proposed to detect and visualize seaweed colonies in this way. It aims to provide a system for detecting and quantifying the volume of underwater seaweed based on multibeam water column data, which visualizes HDF5 water column data from a multibeam echo sounder in real-time using a Fan Plot, detects seaweed by editing a polygonal ROI set by the user, and integrates a multi-stage filtering pipeline, generation of a 3D point cloud through linear interpolation between pings, voxel-based volume quantification, high-quality 3D rendering, and standard format export. means of solving the problem
[0019] The underwater seaweed detection and volume quantification system based on multi-beam water column data according to the present invention for solving the above problems
[0020] As a system for processing water column HDF5 data acquired by a Multibeam Echo Sounder (MBES),
[0021] A data management module that loads amplitude, transverse coordinate (X), depth coordinate (Z), UTM coordinate, heading, and ping number from order data in HDF5 format, and converts transverse-depth coordinates (X, Z) into UTM absolute coordinates through rotation transformation using the heading;
[0022] A Fan Plot visualization module comprising: an adaptive grid rendering function that converts order data of each ping loaded into the above data management module into a 2D grid of the transverse-depth plane and renders it in real-time as a Fan Plot, and dynamically adjusts the grid resolution according to the viewport magnification ratio; and an ROI editing function that generates an arbitrary polygonal ROI with user mouse input and automatically propagates the polygonal ROI to adjacent pings when the ping moves;
[0023] A multi-stage filtering pipeline module that sequentially performs amplitude range filtering, Ray-casting vectorization-based Point-in-Polygon discrimination, intensity percentile filtering, Otsu automatic threshold determination, morphological closing operation, and DBSCAN clustering on order data loaded into the above data management module;
[0024] A 3D analysis module that performs KDTree-based nearest neighbor matching between sets of filtered adjacent ping result points in the order data filtered by the above pipeline module, generates a 3D point cloud through linear interpolation, and estimates volume through uniform voxel grid transformation; and
[0025] It is characterized by including an output module that outputs filtering points, interpolation point clouds, voxel meshes, and volume statistics of the pipeline module and analysis module in CSV, PLY, and OBJ formats.
[0027] The method for detecting underwater seaweed and quantifying its volume based on multi-beam water column data according to the present invention
[0028] As a computer-executed multibeam water column data-based underwater seaweed detection and volume quantification method,
[0029] (S10) A step of loading HDF5 format order data acquired from a Multi-Beam Echo Sounder (MBES), and converting the transverse-depth coordinates to UTM absolute coordinates by rotating the order data using the heading angle;
[0030] (S20) A step of converting the order data of each ping from the order data loaded in the above (S10) into a 2D grid and rendering it in real-time as a Fan Plot;
[0031] (S30) A step of generating a polygon ROI in the Fan Plot rendered in step (S20) using the user's mouse input, and automatically propagating the polygon to an adjacent ping when the ping moves;
[0032] (S40) A step of extracting target points by sequentially applying an amplitude range filter, Point-in-Polygon discrimination, intensity percentile filter, Otsu automatic threshold determination, morphological closing operation, and DBSCAN clustering to the order data loaded in the above step (S20);
[0033] (S50) A step of generating a 3D point cloud by using the target point extracted in step (S30) above to perform KDTree nearest neighbor matching and linear interpolation between the extracted points of adjacent pings;
[0034] (S60) A step of converting the 3D point cloud generated in step (S50) into a uniform voxel grid and estimating the volume; and
[0035] (S70) A step of exporting the result data of the above steps (S40), (S50), and (S40) in CSV, PLY, or OBJ formats;
[0036] It is characterized by including Effects of the invention
[0038] The system and method for detecting underwater seaweed and quantifying its volume based on multi-beam water column data according to the present invention has the effect of reducing false detections caused by background noise by approximately 68%. In addition, the automatic propagation function between polygonal pings allows for the efficient selection of the same target across multiple consecutive pings, thereby significantly reducing work time. Furthermore, by generating a continuous 3D point cloud from ping-unit 2D cross-sectional data and quantifying the volume based on voxels, it can be directly utilized for estimating the biomass of seaweed. It operates in a Python-based open-source environment, ensuring high accessibility, and also ensures interoperability with external analysis tools such as CloudCompare. Brief explanation of the drawing
[0040] FIG. 1 is a configuration diagram of a system for detecting and quantifying the volume of underwater seaweed based on multi-beam water column data according to the present invention. Figure 2 is a flowchart of the Fan Plot grid mapping algorithm. Figure 3 is a diagram of the automatic propagation process between polygon ROI editing and ping. Figure 4 is a block diagram of a multi-stage filtering pipeline. Figure 5 is a conceptual diagram of linear interpolation between KDTree-based pings. Fig. 6 shows the voxelization and pyvista 3D rendering results (4-way view). Figure 7 shows the Fan Plot and 3D point cloud as the results of the actual sea experiment. FIG. 8 is a flowchart of a method for detecting and quantifying the volume of underwater seaweed based on multi-beam water column data according to the present invention. Specific details for implementing the invention
[0041] Hereinafter, the system and method for detecting and quantifying the volume of underwater seaweed based on multi-beam water column data according to the present invention will be described in more detail with reference to the drawings.
[0043] Before describing in more detail the system and method for detecting and quantifying the volume of underwater algae based on multi-beam water column data according to the present invention,
[0044] The present invention is capable of various modifications and may take various forms, and embodiments (aspects or examples) are to be described in detail in the text. However, this is not intended to limit the present invention to the specific disclosed forms, and it should be understood that it includes all modifications, equivalents, and substitutions that fall within the spirit and scope of the invention.
[0046] As shown in FIG. 1, the underwater algae detection and volume quantification system based on multi-beam water column data according to the present invention includes a data management module (10), a Fan Plot visualization module (20), a multi-stage filtering pipeline module (30), a three-dimensional analysis module (40), and an output module (50).
[0048] 1. Data management module (10) (WCDataManager)
[0049] The above data management module (10) acquires and manages water column HDF5 data from the multi-beam echo sounder (MBES).
[0050] A Multibeam Echo Sounder (MBES) transmits sound waves (multibeams) tens to hundreds of times per second and receives the transmitted sound waves reflected back. This single multibeam transmission is called a ping, and a single ping consists of hundreds of sound waves (beams).
[0051] HDF5 data consists of the beam's amplitude, lateral coordinate (X), depth coordinate (Z), UTM east (utm_x), UTM north (utm_y), UTM depth (utm_z), heading (θ), and ping number (ping_numbers) for each ping.
[0052] The heading (θ) is the direction the ship is facing, that is, the direction the bow is heading, the transverse coordinate (X) is the distance to the left and right relative to the ship, and the UTM coordinate represents the actual position on Earth, not the coordinate relative to the ship.
[0054] The conversion from transverse-depth coordinates (X, Z) to UTM absolute coordinates (utm_x, utm_y, utm_z) is performed as a rotational transformation that takes into account the heading angle (θ).
[0055] Since converting ship reference coordinates (θ, X, Z) to UTM absolute coordinates (utm_x, utm_y, utm_z) is a widely used general technique, a detailed explanation of it is omitted.
[0056] Various data produced and provided to the user by the present invention may be provided based on ship-reference coordinates (θ, X, Z) or may be provided as UTM absolute coordinates (utm_x, utm_y, utm_z). That is, depending on the user's choice, various data is provided as ship-reference coordinates (θ, X, Z) or UTM absolute coordinates (utm_x, utm_y, utm_z).
[0058] In consecutive pings, the amplitudes of beams corresponding to the same point differ slightly, but momentary spikes may occur, and these spikes are highly likely to be noise. Therefore, moving average smoothing is used to mitigate the noise.
[0059] Moving average smoothing over consecutive pings applies a window size (W). The window size (W) can be 3, 5, 7, etc. For example, with a window size (W) of 3, the average of the amplitudes of the ping and the pings before and after it becomes the amplitude of the ping.
[0060] Here, the smoothed amplitude value is used only for rendering, and the original amplitude is used for filtering decisions.
[0061] In rendering, amplitude is smoothed to ensure a smooth display on the screen, while in filtering, the original amplitude is used to maintain data accuracy. In other words, amplitude smoothing enhances the visual quality of the data, whereas the accuracy of the filtering algorithm is guaranteed by preserving the original data.
[0063] For reference, 'reception strength' refers to the intensity of a beam reflected and received, but it can also refer to the point where the beam was reflected—that is, a specific point. Whether it refers to intensity or a specific point can be determined from the context.
[0065] 2. Fan Plot Visualization Module (20) (FanPlotWidget)
[0066] The above Fan Plot visualization module (20) converts the order data of each ping loaded into the above management module (10) into a grid with a resolution of Nx (e.g., 450 (horizontal direction)) × Ny (e.g., 500 (depth direction)) and displays (i.e., renders) it on the screen.
[0067] Here, the Fan Plot is a two-dimensional image representing the water flow data of one ping on the XZ plane. The reflection data of multiple beams emitted from the MBES is visualized in the form of a fan.
[0069] The above Fan Plot visualization module (20) can dynamically adjust the grid resolution according to the magnification ratio set by the user.
[0070] By dynamically adjusting the grid resolution between 1x and 2x of the base resolution according to the magnification ratio, the visual clarity of detailed structures can be improved when magnified.
[0072] The above Fan Plot visualization module (20) has an ROI editing function and an auto-copy function.
[0074] Through the ROI editing function, the user can set an arbitrary polygon ROI by specifying vertices with a mouse click in the Fan Plot image. The user sets the exploration interest region as the ROI. The vertex coordinates of the completed polygon are stored in a dictionary data structure with the ping index as the key.
[0076] The auto-copy function automatically copies the polygonal ROI of the previous ping to the current ping when moving the ping, supporting continuous selection of the same target across consecutive pings.
[0077] When a polygonal ROI is set, if the auto-copy function is enabled when moving pings, the polygonal ROI of the previous ping is automatically propagated to the next ping.
[0078] Users do not need to set a polygon ROI for every mapping ping; they can simply enable the auto-copy function and make slight modifications to the copied polygon ROI for the next ping.
[0080] Figure 2 shows an example of a Fan Plot image, and Figure 3 shows the editing (setting) and automatic propagation process of a polygonal ROI.
[0082] 3. Filtering pipeline module (30) (TargetFilterPipeline)
[0083] The filtering pipeline module (30) sequentially performs the following six steps on the order data loaded from the management module (10). Here, the order data may use ship-based coordinates (θ, X, Z) and may also use UTM absolute coordinates (utm_x, utm_y, utm_z).
[0084] The filtering pipeline module (30) keeps the search target (target) from the order data and removes the rest.
[0086] (1) Amplitude range filter:
[0087] The above Amplitude range filter retains received amplitudes within the valid range among the received data amplitudes, and removes received amplitudes outside the valid range.
[0088] The effective range is set by adding an error range (e.g., -20% to +20%) to the average reception strength of the target object (e.g., seaweed).
[0090] (2) Point-in-Polygon identification:
[0091] The above Point-in-Polygon determination uses a Ray-casting algorithm to determine whether each received amplitude filtered by the Amplitude range filter is inside or outside the set polygon ROI. In other words, it retains only the received amplitudes located inside the polygon ROI.
[0092] A virtual straight line is created passing through the received strength of the beam to be identified. If the straight lines on either side of the beam intersect the boundary of the polygonal ROI once, the beam is considered to be inside the polygonal ROI; if the straight lines on either side do not intersect the boundary of the polygonal ROI or intersect twice, the beam is considered to be outside the polygonal ROI.
[0094] (3) Intensity percentile filter:
[0095] The intensity percentile filter selects the upper p % or higher amplitudes among the amplitudes determined to be inside the polygon ROI through the above Point-in-Polygon determination. It removes amplitudes below p %.
[0097] (4) Automatic determination of Otsu threshold:
[0098] The Otsu method is applied to the amplitude histogram of the point (i.e., beam) selected in the above intensity percentile filter to automatically determine the optimal binary threshold.
[0099] The Otsu binary threshold is a criterion value that binary classifies amplitude data into two classes: "background" and "signal".
[0100] An amplitude above the threshold will be a reflected signal from the target object (e.g., seaweed), and an amplitude below the threshold will correspond to a reflected signal from noise or the background (rocks, sand, etc. on the seabed).
[0101] The binary threshold can be determined using the following Equations 1 and 2.
[0102] [Formula 1]
[0103]
[0104] [Equation 2]
[0105]
[0106] Here, t is a threshold candidate, is the prior probability of class k (the proportion of total points belonging to class k), is the average amplitude of points belonging to class k, is the variance between classes at the threshold t, is the finally determined optimal binary threshold.
[0108] (5) Morphological processing:
[0109] A binary closing operation is applied to the selected points (i.e., the received strength of the beam) converted into grid coordinates to connect discontinuous points and remove small holes.
[0110] Receive data is essentially an incomplete set of points. Due to reasons such as points failing to pass the Otsu threshold in sections with weak reception strength being dropped, and physical gaps existing between beams, the data appears as holes or breaks even though the object is actually continuous. This is compensated for through morphological processing.
[0111] For example, in a 3×3 area, if only points (1,3) and (3,2) are discontinuous points (no reception strength), they are treated as continuous points (reception strength assigned).
[0113] (6) DBSCAN Clustering:
[0114] DBSCAN clustering groups valid points that are close together into a single cluster and removes isolated valid points as noise. The process is as follows. For reference, a valid point refers to a point where a signal strength exists.
[0115] First, select an arbitrary valid point (a point with signal strength) and check how many valid points exist within a certain radius of that point. If the number of neighboring valid points exceeds a certain threshold, that point becomes a core point, and a new cluster is initiated.
[0116] Second, core points and neighbor points are added to the same cluster. The added neighbor points are also checked to see if they are core points; if they are, those neighbors are added to the cluster as well. This process is repeated until further expansion is no longer possible.
[0117] Third, if the cluster no longer grows, move to another point that has not yet been visited and start exploring a new cluster.
[0118] Fourth, after checking all points, points that do not belong to any cluster are classified as noise and removed.
[0120] Applying DBSCAN clustering can generate multiple clusters of varying sizes. Among these, only the top K clusters with the highest number of points are retained as the final result. This is because small clusters with few points are highly likely to be sonar beam reflection artifacts or residual noise rather than actual targets for search.
[0122] Figure 4 shows the process of filtering order data in 6 steps in the pipeline module (30).
[0124] 4. 3rd dimension analysis module (40)
[0125] The above 3D analysis module (40) generates 3D data from each 2D ping data (reception strength) filtered through the pipeline using a KDTree-based nearest neighbor matching technique.
[0126] Here, the KDTree (K-Dimensional Tree) is an algorithm that finds the nearest neighbor very quickly. For example, if there is a point 'A' in Ping_100, there may be multiple points in the next Ping_101. The KDTree is an algorithm that very quickly identifies which point is closest to A. Using the KDTree significantly increases search speed, enabling real-time processing.
[0127] Just because the nearest point has been found does not mean that the entire space between them is filled. Intermediate coordinates are generated by connecting the two points with a straight line, and intermediate points are created using linear interpolation.
[0128] Connecting all pings where intermediate points are generated results in a set of 3D points, that is, a 3D point cloud.
[0129] Figure 5 shows the concept of linear interpolation between pings based on KDTree.
[0131] The generated 3D point cloud is converted into a uniform voxel grid of size S_vox.
[0132] A point cloud consists only of points. It is difficult to calculate volume using only points. Therefore, space is divided into small cubes. Each of these small cubes is called a voxel. A voxel can be considered the pixel in 3D.
[0133] Volume estimation is supported by three methods: the voxel integration method, which multiplies the number of occupied voxels by the cube of the voxel size; the convex hull method using SciPy ConvexHull; and the non-convex estimation method using AlphaShape.
[0134] The voxel integration method calculates the total volume by multiplying the volume of a single voxel by the quantity of the voxels.
[0135] A convex hull is the smallest convex polygon (2D) or convex polyhedron (3D) that completely encloses a given set of points. Intuitively, it can be understood as the outline formed when a rubber band is tightly wound around all points. When estimating volume, the entire internal space enclosed by the convex hull is calculated as the volume of the cluster. Although the calculation is simple and stable, it has the disadvantage of being overestimated compared to the actual volume if the cluster is concave or has a hole.
[0136] Alpha Shape is a method designed to compensate for the shortcomings of convex hulls, and it is a generalized hull capable of representing even concave boundaries using the parameter a (alpha). Intuitively, it is the shape formed by connecting the boundaries that a circle (2D) or sphere (3D) with a radius of 1 / a cannot pass through when rolled around a set of points. When estimating volume, the space enclosed by the Alpha Shape is calculated as the volume, and it yields a volume close to the actual shape even when the cluster has a concave shape, such as a C-shape or a U-shape. Here, the parameter a can be linked to the DBSCAN value (radius) (e.g., a=1 / e) or automatically calculated based on the average distance between points.
[0138] The above 3D analysis module (40) generates a voxel mesh by placing and merging a box mesh at each voxel location using the PyVista library, and automatically generates high-quality rendering images in four directions (iso, top, front, and side) by applying an off-screen rendering method, a Key·Fill·Back 3-point lighting system, and a spherical coordinate system-based camera placement.
[0139] While conventional 3D rendering outputs directly to the monitor screen, off-screen rendering performs rendering solely within memory without displaying it on the screen, saving it directly as an image file. Since it can automatically generate high-resolution images without a user interface, it is suitable for batch processing or automated report generation.
[0140] Rendering is performed without a display device using PyVista's pv.Plotter(off_screen=True). High-quality images are ensured by explicitly specifying the output resolution (e.g., 1920*080 pixels or 300 DPI or higher). The rendering result is saved in PNG or TIFF format.
[0142] To 3D visualize the cluster points selected by DBSCAN, a cubic box mesh is placed at each point location and merged into a single integrated mesh. Since each point is represented as a small box, a 3D structure stacked like Lego blocks is created as a result.
[0143] The size of each box is set to be equal to the voxel resolution (grid spacing) to prevent gaps between meshes.
[0144] Place pv.Box() at each point coordinate and merge them into a single mesh using merge().
[0145] The reception amplitude or cluster ID is assigned as a scalar value to each box and utilized for color mapping.
[0146] Vertical exaggeration is applied to the vertical direction (depth axis) to process the structure of shallow water layers so that they can be visually identified.
[0148] The 3-point lighting system (Key, Fill, Back Light) is a standard lighting technique used in film and broadcast production, and when applied to 3D rendering, it can clearly express the three-dimensionality and contours of objects.
[0149] The Key Light is the brightest light source that illuminates the main shape and surface of an object. It is placed at a 45-degree angle to the right of the front relative to the camera, and its intensity is set to the highest level. A white light source can be used.
[0150] The Fill Light softens the shadows created by the Key Light. Place it on the opposite side (left) from the camera and set its intensity to about 50% of the Key Light. A slightly cool light source can be used.
[0151] Backlighting illuminates an object from the upper rear to separate the boundary from the background and emphasize the contours. Set the intensity to approximately 75% of the Key Light. A slightly warm light source may be used.
[0152] If the camera position is defined in a spherical coordinate system (azimuth f, elevation θ, distance r), a consistent view can be mathematically reproduced from any direction.
[0153] The iso view is f=45 degrees, θ=35 degrees, the top view is f=0 degrees, θ=90 degrees, the front view is f=0 degrees, θ=0 degrees, and the side view is f=90 degrees, θ=0 degrees.
[0154] The camera distance r is automatically calculated as a multiple (e.g., 2.5 times) of the diagonal length of the cluster bounding box so that the entire cluster fits within the frame regardless of the cluster size.
[0155] In each view, set camera.focal_point to the cluster centroid coordinates.
[0157] Figure 6 shows an example of a four-way view as a result of voxelization and PyVista 3D rendering.
[0159] 5. Output module (50) (ExportManager)
[0160] It supports filtering points by ping (UTM + dB, CSV), interpolation points (UTM + amplitude, CSV), volume and area summary statistics (CSV), polygon vertex coordinates (CSV), interpolation and filter point clouds (PLY, CloudCompare compatible), voxel cube mesh (OBJ+MTL, CloudCompare and Blender compatible), and 4-directional voxel rendered images (PNG).
[0162] 6. Example
[0163] When applied to data acquired from the seaweed distribution area of the South Coast using a small survey vessel equipped with R2Sonic 2026 (450kHz) MBES (total 2,000 pings, maximum 2,000 samples per beam), it was possible to perform real-time search at over 30fps with an average single ping rendering time of 32ms at a grid resolution of 450×500.
[0164] False detections caused by background noise were reduced by approximately 68% through a multi-stage filtering pipeline (3,412 inside ROI → 1,089 final), a total of 8,740 interpolation points were generated using inter-ping interpolation (n_step = 4), and the seaweed colony volume of 0.382 m³ was estimated using 3,052 voxels at a voxel size of 0.05 m.
[0166] Figure 7 shows the experimental results of an actual sea area, [A] Fan Plot, [B] 3D point cloud, [C] 3D point cloud expressed in UTM coordinates, [D] change in the number of points for 6 filtering steps, [E] volume estimation by voxel integration method, volume estimation by convex hull method and volume estimation by Alpha Shape, and [F] shows the Fan Plot rendering performance at low resolution, basic resolution and high resolution.
[0168] Referring to FIG. 8, the underwater seaweed detection and volume quantification method based on multi-beam water column data according to the present invention
[0169] As a computer-executed multibeam water column data-based underwater seaweed detection and volume quantification method,
[0170] (S10) A step of loading HDF5 format order data acquired from a Multi-Beam Echo Sounder (MBES), and converting the transverse-depth coordinates to UTM absolute coordinates by rotating the order data using the heading angle;
[0171] (S20) A step of converting the order data of each ping from the order data loaded in step (S10) into a 2D grid and rendering it in real-time as a Fan Plot;
[0172] (S30) A step of generating a polygon ROI in the Fan Plot rendered in step (S20) using the user's mouse input, and automatically propagating the polygon to an adjacent ping when the ping moves;
[0173] (S40) A step of extracting target points by sequentially applying a reception intensity (amplitude) range filter, Point-in-Polygon discrimination, intensity percentile filter, Otsu automatic threshold determination, morphological closing operation, and DBSCAN clustering to the order data loaded in the above step (S10);
[0174] (S50) A step of generating a 3D point cloud by using the target point extracted in step (S40) above to perform KDTree nearest neighbor matching and linear interpolation between the extracted points of adjacent pings;
[0175] (S60) A step of converting the 3D point cloud generated in step (S50) into a uniform voxel grid and estimating the volume; and
[0176] (S70) A step of exporting the result data of the above steps (S40), (S50), and (S40) in CSV, PLY, and OBJ formats; is included.
[0178] The method according to the present invention can be sufficiently understood from the system according to the present invention described above, so a detailed description is omitted.
[0179] The method according to the present invention may be implemented on a computer-readable recording medium that records a program for execution on a computer.
[0181] In describing the present invention above, a system and method for detecting and quantifying the volume of underwater algae based on multi-beam water column data having a specific structure have been described with reference to the attached drawings; however, the present invention is susceptible to various modifications and changes by those skilled in the art, and such modifications and changes should be interpreted as falling within the scope of protection of the present invention. Explanation of the symbols
[0183] 10 : Management Module 20 : Visualization Module 30 : Pipeline Module 40 : Analysis Module 50 : Output module
Claims
Claim 1 A system for processing water column HDF5 data acquired by a Multibeam Echo Sounder (MBES), comprising: a data management module that loads amplitude, transverse coordinates (X), depth coordinates (Z), UTM coordinates, heading, and ping number from water column data in HDF5 format, and converts transverse-depth coordinates (X, Z) into UTM absolute coordinates through rotation transformation using heading; a Fan Plot visualization module that includes an adaptive grid rendering function that converts the water column data of each ping loaded in the data management module into a 2D grid of the transverse-depth plane and renders it in real-time as a Fan Plot, and dynamically adjusts the grid resolution according to the viewport magnification ratio, and an ROI editing function that generates an arbitrary polygonal ROI via user mouse input and automatically propagates the polygonal ROI to adjacent pings when the ping moves; and the water column data loaded in the data management module based on an amplitude range filter, Ray-casting vectorization A multi-beam water column data-based underwater seaweed detection and volume quantification system characterized by comprising: a multi-stage filtering pipeline module that sequentially performs point-in-polygon discrimination, intensity percentile filtering, Otsu automatic threshold determination, morphological closing operation, and DBSCAN clustering; a 3D analysis module that performs KDTree-based nearest neighbor matching between sets of filtered result points of adjacent pings in water column data filtered by the pipeline module, generates a 3D point cloud through linear interpolation, and estimates volume through uniform voxel grid transformation; and an output module that outputs filtering points, interpolated point clouds, voxel meshes, and volume statistics of the pipeline module and the analysis module in CSV, PLY, and OBJ formats. Claim 2 A system for detecting and quantifying the volume of underwater seaweed based on multibeam water column data, wherein the ROI editing function of the Fan Plot visualization module stores the vertex coordinates of the completed polygon in a dictionary data structure with a ping index as a key, and when the auto-copy function is activated, automatically copies the polygon of the previous ping to the current ping when moving the ping to support continuous selection of the same target across consecutive pings. Claim 3 A multi-beam water column data-based underwater seaweed detection and volume quantification system according to claim 1, wherein the adaptive grid rendering function improves the visual clarity of detailed structures when magnified by dynamically adjusting the grid resolution between 1x and 2x of the base resolution according to the viewport magnification ratio. Claim 4 A system for detecting and quantifying the volume of underwater seaweed based on multibeam water column data, characterized in that, in claim 1, the Fan Plot visualization module uses a received amplitude with moving average smoothing applied for rendering, and the multistage filtering pipeline module uses the original received amplitude to ensure the reproducibility of the filter result. Claim 5 A system for detecting and quantifying the volume of underwater seaweed based on multibeam water column data, characterized in that, in claim 1, the 3D analysis module calculates and provides the volume of a 3D point cloud using one or more of three methods: voxel integration, convex hull method using SciPy ConvexHull, and non-convex estimation method using Alpha Shape. Claim 6 A system for detecting and quantifying the volume of underwater algae based on multi-beam water column data, characterized in that the 3D analysis module generates a voxel mesh by placing and merging a box mesh at each voxel location using the pyvista library, and automatically generates high-quality rendering images in four directions (iso, top, front, and side) by applying an off-screen rendering method, a Key·Fill·Back 3-point lighting system, and a spherical coordinate system-based camera placement. Claim 7 A method for detecting underwater seaweed and quantifying its volume based on multibeam water tone data executed by a computer, comprising: (S10) loading water tone data in HDF5 format acquired from a multibeam echo sounder (MBES) and converting the transverse-depth coordinates to UTM absolute coordinates by a rotational transformation using the heading angle in the water tone data; (S20) converting the water tone data of each ping in the water tone data loaded in step (S10) into a 2D grid and rendering it in real-time as a Fan Plot; (S30) generating a polygonal ROI in the Fan Plot rendered in step (S20) by user mouse input and automatically propagating the polygon to adjacent pings when the ping moves; (S40) sequentially applying an amplitude range filter, Point-in-Polygon discrimination, intensity percentile filter, Otsu automatic threshold determination, morphological closing operation, and DBSCAN clustering to the water tone data loaded in step (S10) to determine target points A method for detecting and quantifying the volume of underwater seaweed based on multi-beam water column data, characterized by comprising: a step of extracting; (S50) a step of generating a 3D point cloud by KDTree nearest neighbor matching and linear interpolation between the extracted points of adjacent pings using the target points extracted in step (S40); (S60) a step of converting the 3D point cloud generated in step (S50) into a uniform voxel grid and estimating the volume; and (S70) a step of exporting the result data of steps (S40), (S50), and (S40) in CSV, PLY, or OBJ formats. Claim 8 A computer-readable recording medium having a program for executing the method of paragraph 7 on a computer.
Citation Information
Patent Citations
System and a method for visualizing submarine topology in 3D and providing a 3D submarine topology service
KR1020080036717A
Multimission and multispectral sonar
US20170315236A1