A method for extracting shore wave parameters and predicting shore wave height based on airborne static lidar
By equipped with a static lidar scanner and data processing technology, the problem of difficult to obtain the periodic evolution of ocean waves is solved, and refined parameter extraction and efficient wave height prediction are achieved.
Patent Information
- Application Number
- CN202510705509.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-29
- Publication Date
- 2025-08-15
- Estimated Expiration
- 2045-05-29
AI Technical Summary
In the prior art, dynamic lidar scanners are costly and difficult to install, and they cannot effectively obtain the periodic evolution of waves in the wave-breaking area. Static lidar scanners cannot export point cloud data frame by frame, resulting in the inability to obtain the periodic evolution of waves.
The drone is equipped with a static lidar scanner, which is set to the repeated scanning mode. The data processing includes data slitting, denoising and visualization. The wave beam is extracted in combination with the MATLAB program, the DBSCAN algorithm is used to denoise, and the wave wave height prediction is used using the KF-LSTM-Attention model.
Accurately capture the beam state data of the shore waves at custom time intervals, extract the refined shore wave parameters, and realize efficient prediction of waves at high waves through the KF-LSTM-Attention model, which is better than the traditional model prediction results.
Smart Images

Figure CN120259924B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of ocean remote sensing, and in particular relates to a method for extracting shore wave parameters and a method for predicting shore wave height based on an airborne static laser radar. Background Art
[0002] The current method for capturing breaking waves in high resolution uses a dynamic LiDAR scanner placed in the wave-breaking zone for close observation. The data is then exported frame by frame, generating a three-dimensional point cloud of the breaking waves at each moment. Parameters such as maximum wave height, average wave height, significant wave height, number of waves, and wavelength can then be extracted. However, dynamic LiDAR scanners are expensive, difficult and cumbersome to install on fixed platforms in the wave-breaking zone, and placing them on platforms exposed to strong winds and high waves carries a high risk. A low-cost, low-risk method for capturing high-resolution breaking wave data is urgently needed.
[0003] Static LiDAR scanners are significantly cheaper than dynamic scanners and can be mounted on drones, eliminating the need for an observation platform in the ocean, significantly reducing data collection risks. However, due to design limitations, static laser scanners currently cannot generate point cloud data frame by frame. Therefore, if used to scan dynamic waves, the resulting data will be a collection of overlapping point clouds from the entire scanning cycle, failing to capture the wave's cyclical evolution. Summary of the Invention
[0004] One purpose of the present invention is to provide a method for extracting shore wave parameters based on an airborne static lidar, which effectively solves the problem that the periodic evolution morphology of the waves cannot be obtained when using a static lidar scanner to scan dynamic shore waves.
[0005] In order to solve the above technical problems, the technical solution adopted by the present invention is: a method for extracting shore wave parameters based on airborne static laser radar, comprising the following steps: S1, using a UAV equipped with a static laser radar scanner to collect data, setting the static laser radar scanner to repeated scanning mode before takeoff, maneuvering the UAV to fly to the place where the waves break, and scanning in the direction perpendicular to the coastline; S2, exporting the data to the mapping software, and the export format is las data; S3, opening the las data, and exporting the data to txt format, obtaining the geographic coordinates of the point cloud, the scanning angle of the laser radar scanning beam and the vertical ground direction, and the relative time; S4, data segmentation: deleting invalid data, retaining the required data, sorting the required data according to relative time, and sorting the sorted data according to the custom The time interval is cut into multiple new txt files; S5, data extraction: design a MATLAB program to extract wave beams from the txt files cut in step S4; S6, data denoising and visualization: use the DBSCAN algorithm to perform data denoising; S7, wave parameter extraction and environmental influencing factor acquisition, the wave parameters include wave height, maximum wave height, significant wave height, average wave height and number of waves, and the environmental influencing factors include wind stress, water depth and tide level; the wave height extraction method is as follows: select the first 3% of the point clouds of each frame of wave data, calculate the average Z value in the three-dimensional space coordinates (X, Y, Z) as the maximum wave height value of the wave, and at the same time fit the average sea level height. The difference between the maximum wave height value and the average sea level height is the wave height.
[0006] Furthermore, in step S1, the flying altitude of the UAV is 30 meters above the sea surface; the static lidar scanner adopts single-line scanning, the repetition period of the repeated scanning pattern is 0.1 seconds, and the horizontal FOV of the repeated scanning pattern is 70°.
[0007] Furthermore, in step S5, the design idea of the MATLAB program is: for a single txt data, first, set two detection values, one of which is a positive detection value, initially ; The other is a negative detection value, initially ; Then, detect downwards in rows from the column where the scanning angle is located. There are three situations at this time: S51, if the first positive detection value or the first negative detection value is detected, start from the row where the detected value is located and continue to detect downwards. If the first detection value is a positive detection value, the detection is stopped when the next negative detection value is detected; if the first detection value is a negative detection value, the detection is stopped when the next positive detection value is detected, and all rows between the two detection values are extracted; S52, if the next detection value is not detected after the first positive detection value or the first negative detection value is detected, the next detection value is stopped. The numerical value of the value is changed, and the changing rule is: if the detection value to be detected is a negative detection value, the negative detection value is increased by 1, and the detection is restarted from the row where the first positive detection value is located until a negative detection value is detected; if the detection value to be detected is a positive detection value, the positive detection value is reduced by 1, and the detection is restarted from the row where the first negative detection value is located until a positive detection value is detected, and the row between the two detection values is extracted; S53, if no positive detection value or negative detection value is detected in the column where the scanning angle is located, the positive detection value is reduced by 1 and the negative detection value is increased by 1, and steps S51 and S52 are repeated; finally, the row between the two detection values is extracted.
[0008] Furthermore, in step S6, the DBSCAN algorithm is used to perform data denoising, which includes the following steps: S61, extracting point cloud data: loading the las data in step S2 into the data structure; S62, parameter setting: setting the neighborhood radius to 0.1 meters and the minimum number of points to 5 according to the spatial distribution characteristics and noise level of the data; S63, core point search: traverse each point in the data set and calculate the number of neighboring points of each point within the neighborhood radius. If the number of neighboring points is greater than or equal to the minimum number of points, the point is marked as a core point; S64, cluster generation: generating a cluster from a Starting from a core point that has not been visited, the core point is used as the seed point of a new cluster, the cluster is recursively expanded, and all points that are directly density-reachable from the seed point are added to the cluster; if there is a core point among the newly added points in the cluster, the recursive expansion is continued until no new points are added to the cluster; the above process is repeated until all core points have been processed, thereby generating multiple clusters; S65, noise point identification and data denoising: after cluster generation, the remaining points in the data set that have not been assigned to any cluster are noise points, and the noise points are deleted.
[0009] Furthermore, in step S7, the method for extracting the effective wave height is: arranging the wave height sequence measured continuously during the observation period from large to small, and taking the average of the first 1 / 3 wave heights; the method for extracting the number of waves is: traversing the wave height data sorted by time, and comparing the size of each wave height with its adjacent previous wave height and next wave height; if the current wave height is greater than the previous and next points or the current wave height is less than the previous and next points, it is marked as an extreme point; the number of extreme points is the number of waves.
[0010] Another object of the present invention is to provide a method for predicting the wave height of breaking waves based on an airborne static lidar, which effectively solves the problem that the periodic evolution morphology of the waves cannot be obtained when using a static lidar scanner to scan dynamic breaking waves.
[0011] A method for predicting the wave height of breaking waves based on airborne static laser radar is proposed. The wave height, environmental influencing factors and corresponding time extracted by the method for extracting breaking wave parameters based on airborne static laser radar described in the above embodiment are input into the KF-LSTM-Attention model as time series data. The time series data is preprocessed by Kalman filtering, and the processed data is modeled using LSTM. The hierarchical features of the local deep foundation pit monitoring data are mined through the self-attention mechanism. Finally, the predicted values are integrated through a fully connected layer to output the predicted value of the wave height data.
[0012] Furthermore, the Kalman filter describes the dynamic evolution of waves through state-space equations, combines prior knowledge with real-time observations, quantifies the uncertainty of system noise and observation noise with the covariance matrix, and finally outputs the optimal estimate of the wave height signal.
[0013] The working principle of Kalman filtering is divided into the prediction stage and the update stage: When in the prediction stage, the prior state estimate:
[0014] ;
[0015] Where, is the predicted value of the current state, is the state estimate at the previous moment, is the state transition matrix, is the control input matrix, For control input.
[0016] Error covariance estimation:
[0017] ;
[0018] Where, is the covariance, is the predicted error covariance, is the error covariance at the previous moment.
[0019] When in the update phase, the Kalman gain :
[0020] ;
[0021] Where, is the observation matrix, is the covariance matrix.
[0022] Posterior state estimate:
[0023] ;
[0024] Where, is the updated state estimate, For the moment The actual observed value.
[0025] Posterior covariance update:
[0026] ;
[0027] Where, is the updated error covariance, is the identity matrix.
[0028] Furthermore, a multi-layer LSTM network is used to process the Kalman filter , output hidden state sequence ; The LSTM network includes cell state, forget gate, input gate and output gate, which work together to achieve dynamic modeling of timing features.
[0029] Furthermore, the core of the self-attention mechanism lies in using the orthogonal projection of the query, key and value vectors to establish an interactive dependency graph between the units of the input sequence and calculate the correlation strength coefficient between the elements; specifically, feature optimization is achieved through the following three stages: A1. Dynamic weight allocation: Under the multi-head attention architecture, the input sequence is mapped to multiple orthogonal subspaces, and the element correlation scores in each subspace are calculated in parallel; A2. Feature fusion mechanism: The normalized attention weights and value vectors are weightedly aggregated to form a new feature representation that integrates global semantics; A3. Selective focusing strategy: Dynamically enhance the representation strength of key timing nodes through a gating mechanism, while suppressing signal interference in non-critical areas.
[0030] Compared with existing technologies, the present invention offers the following beneficial technical effects: By combining the characteristics of lidar scanning data, the present invention proposes a method for extracting shore wave parameters using a static drone-mounted lidar scanner. This method accurately captures the shore wave beam state data at customizable time intervals from the complex and redundant three-dimensional point cloud data of shore waves scanned by the drone-mounted static lidar scanner, effectively extracting refined shore wave parameters. Furthermore, by incorporating environmental factors such as wind stress, water depth, and tide level, the present invention creatively proposes a KF-LSTM-Attention model to predict shore wave height. Compared to traditional LSTM models, the KF-LSTM-Attention model achieves superior prediction results. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] Figure 1It is the three-dimensional point cloud data (partial) of the original Paianlang scan in Example 1.
[0032] Figure 2 This is a three-dimensional side view of the wave visualization before data denoising in Example 1.
[0033] Figure 3 This is a three-dimensional side view of the wave visualization after data denoising in Example 1.
[0034] Figure 4 This is a diagram showing the prediction effect of the wave height using the traditional LSTM model.
[0035] Figure 5 This is a diagram showing the prediction effect of the wave height of the shore wave using the KF-LSTM-Attention model of the present invention. DETAILED DESCRIPTION
[0036] Example 1: This example selects location A as the data acquisition location. The weather is clear, and visual observation shows clear waves lapping near the shore. The data acquisition equipment is the DJI Zenmuse L2, an airborne high-precision mapping lidar. This integrated frame-type lidar, a high-precision position and orientation system, and a 4 / 3 CMOS visible light mapping camera offer elevation accuracy of 4 cm and planar accuracy of 5 cm. A single flight can cover an area of up to 2.5 square kilometers, with a small spot size and more concentrated energy.
[0037] The DJI Zenmuse L2 payload supports two scanning modes: non-repeating scanning and repeating scanning. (1) Non-repeating scanning is a scanning method unique to Livox, providing a complete, nearly circular field of view (FOV) and better three-dimensional scanning. (2) Repeating scanning uses a flat FOV, similar to traditional line-scan LiDAR, and can obtain more uniform and accurate scanning results.
[0038] This embodiment provides a method for extracting breaking wave parameters based on airborne static LiDAR, including the following steps: S1. Using a drone equipped with a static LiDAR scanner (DJI Zenmuse L2) to collect data. Before takeoff, the static LiDAR scanner is set to repeated scanning mode. The drone is flown to the breaking point of the waves, 30 meters above the sea surface, with the scanning direction perpendicular to the coastline (i.e., the LiDAR beam is parallel to the direction of the breaking waves). The drone hovers for an appropriate period of time and then returns.
[0039] S2. Export the data to the mapping software in the las data format.
[0040] Specifically, remove the memory card from the drone, export the data to the DJI mapping software, select the export format as LAS data in the software, and use CloudCompare software to open the LAS data, such as Figure 1As shown, the displayed LAS data is a superposition of all moments and cannot be exported frame by frame using CloudCompare or other point cloud processing software. Using the default export options in CloudCompare, the data is exported to a txt format. The resulting text file contains the following: X, Y, Z, R, G, B, ScanAngleRank, NumberOfReturns, ReturnNumber, Gpstime, Intensity. X, Y, and Z represent the geographic coordinates of the point cloud; R, G, and B represent the color of the point cloud captured by the visible light mapping camera; ScanAngleRank represents the scanning angle between the LiDAR scanning beam and the ground; NumberOfReturns represents the number of returns (i.e., the total number of reflected signals received after a laser pulse is emitted); ReturnNumber represents the number of returns (i.e., the number of reflections of a laser pulse); Gpstime represents relative time; and Intensity represents the intensity of the return.
[0041] S3. Open the LAS data and export it to a txt format to obtain the geographic coordinates of the point cloud, the scanning angle between the LIDAR scanning beam and the vertical ground direction, and the relative time. The relative time unit is seconds. Scan data within five minutes has a relative time interval of 300 seconds.
[0042] S4. Data segmentation: Delete invalid data, retain required data, sort the required data by relative time, and segment the sorted data into multiple new txt files at 0.2s time intervals.
[0043] Since the data interval is determined by the frequency of the LiDAR scanner (e.g., a 100 Hz LiDAR scanner), the data interval is 0.01s. Data extraction is based on specific needs. In this example, only a 0.2s interval is required to study ocean wave morphology, so 20 lines of data are selected for segmentation.
[0044] Specifically, a program was written using MATLAB to delete invalid data and retain the required data, which were: geographic coordinates (X, Y, Z) of the point cloud, the scanning angle (ScanAngleRank) between the laser radar scanning beam and the direction perpendicular to the ground, and the relative time (Gpstime).
[0045] After the deletion, the txt file still contains about 20 million lines of data, which is still a large amount of data. At this point, we need to use code to sort the data in the txt file from smallest to largest according to GPS time. Because the GPS time interval varies, we split the sorted txt data into new txt files every 30,000 lines. The GPS time interval of each new txt file is about 0.01 seconds.
[0046] S5. Data extraction: Design a MATLAB program to extract the wave beam from the txt file split in step S4.
[0047] After processing in step S4, several txt files containing 30,000 lines are obtained. The difference between the maximum Gpstime and the minimum Gpstime in each txt file is approximately 0.01 seconds. At this time, the Gpstime in each txt file is arranged in order from small to large. Next, data extraction is performed according to ScanAngleRank.
[0048] The DJI Zenmuse L2 LiDAR uses single-line scanning, meaning a single laser beam scans back and forth. The repetition period of the repetitive scan pattern is approximately 0.1 seconds, and the horizontal field of view (FOV) of the repetitive scan pattern is 70°. Scan angles are expressed in degrees, rounded to the nearest integer, with the lens at the apex of the optical instrument and the edges of the maximum visible range of the target image through the lens. Therefore, theoretically, for a complete LiDAR scan beam, the scan angle, sorted by GPStime from smallest to largest, should range from -35° to +35°, with a corresponding point cloud for every 1° of scan angle. The scan angle sequence should be periodic, continuously ranging from -35° to +35°. However, due to factors such as splashing, the actual data contains discontinuities and localized aperiodicity in the scan angles. This means that point cloud data may not exist at a scan angle of -35°, but may exist at a scan angle of 50°; or vice versa. Therefore, if wave beams are extracted periodically according to a fixed threshold, errors are very likely to occur. In order to accurately extract wave beam information and mine fine data, a MATLAB program is designed to extract wave beams from txt files.
[0049] The design idea of the MATLAB program is: for a single txt data, first, set two detection values, one of which is a positive detection value, initially +35; the other is a negative detection value, initially -35; then, detect from the column where the scanning angle is located row by row. At this time, there are three situations: S51. If the first positive detection value or the first negative detection value is detected (the first row of the scanning angle column of each txt file is not necessarily -35 or +35, but any angle between -35 and 35. Therefore, it is necessary to first detect the maximum value of the scanning angle to find the head and tail ends of the wave beam, and then start extracting data. From the head and tail ends to the next head and tail ends, it is a complete wave beam point cloud data), start with the row where the detected value is located and continue to detect. If the first detected value is a positive detection value, stop detecting when the next negative detection value is detected; if the first detected value is a negative detection value, stop detecting when the next positive detection value is detected, and extract all the rows between the two detection values.
[0050] S52. If the next detection value is not detected after the first positive detection value or the first negative detection value is detected, the value of the next detection value is changed. The change rule is: if the detection value to be detected is a negative detection value, the negative detection value is increased by 1, and the detection is restarted from the row where the first positive detection value is located until a negative detection value is detected; if the detection value to be detected is a positive detection value, the positive detection value is reduced by 1, and the detection is restarted from the row where the first negative detection value is located until a positive detection value is detected, and the rows between the two detection values are extracted.
[0051] S53. If no positive or negative detection value is detected in the column where the scanning angle is located, the positive detection value is reduced by 1 and the negative detection value is increased by 1, and steps S51 and S52 are repeated; finally, the row between the two detection values is extracted.
[0052] According to the above logic, the MATLAB program was expanded to batch processing, thereby quickly extracting a large number of txt files. The GPStime interval of the point cloud data in each txt file is about 0.01 seconds, and a total of 1067 wave data points have been generated. The time resolution is already quite high and can fully describe the morphological evolution process of the shore waves.
[0053] S6. Data Denoising and Visualization: As waves advance toward the coastline, they break up, creating large splashes and mist. This causes the data captured by the LiDAR scanner to reflect interference from these factors, rather than the actual wave shape. Therefore, data denoising is necessary to eliminate these errors and obtain accurate wave shape data. To address the characteristics of wave noise data, the DBSCAN algorithm is used for data denoising.
[0054] The method includes the following steps: S61, extracting point cloud data: loading the las data in step S2 into a data structure, such as a NumPy array in Python, to facilitate subsequent calculation and processing.
[0055] S62. Parameter Setting: For LiDAR data, the appropriate neighborhood radius (EPS) value must be determined based on the data's spatial distribution and noise level. If EPS is set too small, many points may be misclassified as noise; if it is set too large, different clusters may be merged. For LiDAR point cloud data with relatively uniform spatial distribution, the applicant has found, after multiple experiments, that an EPS of 0.1m effectively separates different clusters from noise points.
[0056] The minimum number of points (minPts) defines the minimum number of neighbors for a point to qualify as a core point. Generally speaking, if the data point density is high, minPts can be set relatively high; otherwise, it can be set small. For ocean wave LiDAR data, set minPts=5.
[0057] S63, core point search: traverse each point in the data set and calculate the number of neighbor points of each point within the neighborhood radius. If the number of neighbor points is greater than or equal to the minimum number of points, mark the point as a core point.
[0058] Use data structures such as KD-Tree to speed up the neighbor search process and improve computational efficiency. In Python, use the KDTree class in the scikit-learn library to build a KD-Tree data structure, and then use its query_radius method to quickly query the neighbor points within the neighborhood radius of each point.
[0059] S64. Cluster Generation: Starting from an unvisited core point, use the core point as the seed point for a new cluster. Recursively expand the cluster, adding all points directly density-reachable from the seed point (i.e., points within the neighborhood radius of the seed point) to the cluster. If a core point exists among the newly added points to the cluster, recursive expansion continues until no new points are added to the cluster. Repeat this process until all core points have been processed, thereby generating multiple clusters.
[0060] S65, noise point identification and data denoising: After clustering, the remaining points in the data set that are not assigned to any cluster are noise points, and the noise points are deleted. The wave visualization before and after denoising is as follows: Figure 2 and Figure 3 shown.
[0061] S7. Extraction of wave parameters and acquisition of environmental impact factors.
[0062] Wave parameters include wave height, maximum wave height, significant wave height, average wave height, and wave number. Wave height is extracted by selecting the first 3% of point clouds in each frame of wave data and computing the average Z value of their three-dimensional (X, Y, Z) coordinates as the maximum wave height. The average sea level is then fitted, and the difference between the maximum wave height and the average sea level is the wave height.
[0063] In addition to the wave height, more average wave parameters can be extracted by processing the point cloud data, mainly including: (1) Maximum wave height: the maximum value of the wave height during the observation period. (2) Effective wave height: the effective wave height, also known as the 1 / 3 large wave height, arrange the wave height sequence measured continuously during the observation period from large to small, and take the average of the first 1 / 3 wave heights. (3) Average wave height: the average value of the wave height during the observation period. (4) Number of waves: A complete wave cycle is defined as the time it takes for two consecutive wave peaks (or troughs) on the wave profile to pass through a fixed point. The wave height of each frame extracted is arranged according to time. Due to the periodic fluctuation of waves, the wave height also fluctuates periodically. Therefore, the maximum value point can be found in the wave height and time relationship diagram to obtain the number of waves: traverse the wave height data sorted by time, and compare the size of each wave height with its adjacent previous wave height and next wave height; if the current wave height is greater than the previous and next points or the current wave height is less than the previous and next points, it is marked as an extreme point; the number of extreme points is the number of waves.
[0064] The environmental impact factors include wind stress , water depth and tide level. (1) Wind stress : represents the momentum flux at the air-sea interface (centered at the breakup time and averaged over 20 seconds):
[0065] ;
[0066] ;
[0067] in, is the wind stress, is the air density, is the friction speed, is the wind speed at 10m above mean sea level, is the wind stress drag coefficient.
[0068] For (Upper stratosphere) when:
[0069] , ;
[0070] in, is the altitude, is the temperature, is atmospheric pressure.
[0071] For (lower stratosphere) when:
[0072] , .
[0073] For (troposphere) time:
[0074] , .
[0075] Wind speed at 10m above mean sea level :
[0076] ;
[0077] in, express The wind speed at the height,the wind speed at the position where the drone is hovering and scanning,is obtained by the wind speed sensor carried by the drone. Represents the power index, according to different topography, There are different values. According to the "Code for Loads on Building Structures": In offshore areas, islands, coasts and deserts, .
[0078] Wind stress drag coefficient :
[0079] when m / s, ;
[0080] when m / s, .
[0081] (2) Water depth: obtained through multi-beam acquisition.
[0082] (3) Tide level: Tide level information on the data collection date is obtained through the Global Tide Forecast Service Platform.
[0083] (4) Seabed slope at breaking waves: defined as the average seabed slope from the wave breaking location to half a wavelength offshore. The slope is calculated in Arcagis using the water depth data.
[0084] Example 2: A method for predicting the wave height of shore waves based on airborne static lidar. The wave height, environmental influencing factors and corresponding time extracted in Example 1 are input into the KF-LSTM-Attention model as time series data. The time series data is preprocessed using Kalman filtering, and the processed data is modeled using LSTM. The hierarchical features of the local deep foundation pit monitoring data are mined through the self-attention mechanism. Finally, the predicted values are integrated through the fully connected layer to output the predicted value of the wave height data.
[0085] (1) Kalman filtering (KF) is a recursive optimal estimation algorithm based on a state-space model. It iteratively optimizes the estimated value by predicting (state equation) and updating (observation equation). Assuming that the noise follows a Gaussian distribution, the confidence in the observation value is dynamically adjusted through the covariance matrix. It is suitable for linear systems with controllable noise. It is mainly used to dynamically estimate the system state from noisy observation data. Its core idea is to achieve the minimum mean square error of state estimation by combining the system dynamics model with real-time observation data through a two-step prediction-correction mechanism.
[0086] The Kalman filter-based preprocessing method for wave height data can effectively suppress the non-stationary characteristics in the data and reduce random noise interference. In specific implementation, by constructing a dynamic system model and an observation model, the wave height data is regarded as a state quantity with time-varying characteristics, and the recursive prediction-correction mechanism of KF is used to perform real-time optimal estimation of the noise-contaminated signal. The core of this algorithm is to describe the dynamic evolution of waves through state-space equations, combine prior knowledge with real-time observations, quantify the uncertainty of system noise and observation noise with a covariance matrix, and ultimately output the optimal estimate of the wave height signal. The working principle of the Kalman filter can be divided into a prediction phase and an update phase.
[0087] When in the prediction phase, the prior state estimate is:
[0088] ;
[0089] Where, is the predicted value of the current state, is the state estimate at the previous moment, is the state transition matrix, is the control input matrix, For control input.
[0090] Error covariance estimation:
[0091] ;
[0092] Where, is the covariance, is the predicted error covariance, is the error covariance at the previous moment.
[0093] When in the update phase, the Kalman gain :
[0094] ;
[0095] Where, is the observation matrix, is the covariance matrix.
[0096] Posterior state estimate:
[0097] ;
[0098] Where, is the updated state estimate, For the moment The actual observed value.
[0099] Posterior covariance update:
[0100] ;
[0101] Where, is the updated error covariance, is the identity matrix.
[0102] Finally, the optimal result obtained by Kalman filtering As an input value, it can minimize the mean square error of the estimation error to a certain extent.
[0103] (2) Long Short-Term Memory (LSTM) is a deep learning model commonly used to process time series data. Compared with traditional RNNs (recurrent neural networks), LSTM introduces three gates (input gate, forget gate, and output gate). Through the gating mechanism, it captures long-term dependencies and is suitable for modeling nonlinear time series patterns. LSTM can filter information and selectively forget or retain input information, which effectively avoids the vanishing gradient problem and significantly improves the model's ability to capture long-term dependencies.
[0104] Use a multi-layer LSTM network to process the Kalman filter , output hidden state sequence The LSTM network includes cell state, forget gate, input gate and output gate, which work together to achieve dynamic modeling of temporal features.
[0105] I. Cell Status : The core information channel that runs through the time series and is responsible for the storage and transmission of long-term memory.
[0106] II. Forget Gate: Generate Weights through Sigmoid Function , controlling the historical cell state The retention ratio:
[0107] ;
[0108] Where, is the weight matrix; is the bias term; It is the hidden state of the previous moment; is the current input; Represents the Sigmoid activation function, which is used to compress the input value into the range of [0,1].
[0109] III. Input Gate: Input Weight The update ratio is determined by the Sigmoid function:
[0110] ;
[0111] Where, It is the exclusive parameter matrix of the input gate, which performs a linear transformation on the concatenated input and hidden state; is the bias vector, which is used to increase the flexibility of the model and adjust the output.
[0112] candidate cells Depend on The function generates new information candidate values:
[0113] ;
[0114] Where, Represents the weight matrix, which is a learnable parameter matrix used to and The concatenated vector Perform linear transformation; Represents the bias vector, which is a learnable parameter vector. Its function is to translate the result after linear transformation to help the model fit nonlinear relationships more flexibly.
[0115] Combine the forget gate and input gate to update the cell state :
[0116] .
[0117] IV. Output Gate: Output Weight The Sigmoid function controls the current hidden state output ratio:
[0118] ;
[0119] Where, Represents the weight matrix, which is the exclusive parameter matrix of the output gate; Represents the bias vector, which is used to translate the result after linear transformation. By adjusting the threshold, the model can flexibly control the activation degree of the output gate when the input is weak.
[0120] Hidden state Generate output based on the updated cell state:
[0121] .
[0122] (3) Self-Attention is a variant of the attention mechanism, which is commonly used to calculate the correlation between each time step in the input sequence. By calculating the attention weight between each time step and other time steps, the model can perform a weighted summation of the information of the entire sequence. The core of this mechanism is to establish an interactive dependency graph between each unit of the input sequence - using the query ,key ,value The orthogonal projection of the three vectors is used to calculate the correlation strength coefficient between the elements. Specifically, feature optimization is achieved through the following three stages: I. Dynamic weight allocation: Under the multi-head attention architecture, the input sequence is mapped to multiple orthogonal subspaces, and the element correlation scores in each subspace are calculated in parallel (using the dot product similarity metric and dimensionality scaling); II. Feature fusion mechanism: The normalized attention weights (processed by the Softmax function) are weighted and aggregated with the value vector to form a new feature representation that integrates global semantics; III. Selective focus strategy: The representation strength of key timing nodes is dynamically enhanced through a gating mechanism, while suppressing signal interference in non-critical areas. In the process of sequence data processing, the self-attention mechanism can help the model focus on important time steps in the sequence and ignore minor parts.
[0123] Query ,key ,value Mapping:
[0124] ;
[0125] ;
[0126] ;
[0127] Where, is the query weight matrix, is the key weight matrix, is the value weight matrix.
[0128] The wave height, environmental influencing factors (wind stress, water depth, tide level) and corresponding time extracted in Example 1 are input into the KF-LSTM-Attention model and the traditional LSTM model as time series data. The results are as follows: Figure 4 and Figure 5 As shown in the figure, compared with the traditional LSTM model, the KF-LSTM-Attention model provided in this embodiment has greatly improved the prediction effect of the wave height of the shore wave. The root mean square error (RMSE) is reduced from 0.6720m to 0.2434m, and the mean absolute error (MAE) is reduced from 0.5174m to 0.1899m, which proves the superiority of the KF-LSTM-Attention model for wave height prediction.
[0129] Of course, the above description is not a limitation of the present invention, and the present invention is not limited to the above examples. Changes, modifications, additions or substitutions made by technicians in this technical field within the essential scope of the present invention should also fall within the scope of protection of the present invention.
Claims
1. A method for extracting shore wave parameters based on airborne static laser radar, characterized in that: The following steps are involved: S1. Use a drone equipped with a static LiDAR scanner to collect data. Before takeoff, set the static LiDAR scanner to repeated scanning mode. Fly the drone to the wave breaking area, with the scanning direction perpendicular to the coastline. S2. Export the data to the mapping software in the format of las data; S3. Open the LAS data and export it to txt format to obtain the geographic coordinates of the point cloud, the scanning angle between the LIDAR scanning beam and the vertical ground direction, and the relative time. S4. Data segmentation: Delete invalid data, retain required data, sort the required data by relative time, and segment the sorted data into multiple new txt files according to custom time intervals; S5. Data extraction: Design a MATLAB program to extract the wave beam from the txt file split in step S4; S6. Data denoising and visualization: DBSCAN algorithm is used for data denoising; S7, extracting ocean wave parameters and obtaining environmental impact factors, wherein the ocean wave parameters include wave height, maximum wave height, significant wave height, average wave height, and number of waves, and the environmental impact factors include wind stress, water depth, and tide level; The wave height extraction method is as follows: select the first 3% of the point clouds in each frame of wave data, calculate the average Z value in their three-dimensional spatial coordinates (X, Y, Z) as the maximum wave height value, and at the same time fit the average sea level height. The difference between the maximum wave height value and the average sea level height is the wave height.
2. The method for extracting shore wave parameters based on airborne static laser radar according to claim 1, characterized in that: In step S1, the UAV is flown at an altitude of 30 meters above the sea surface; the static lidar scanner adopts single-line scanning, the repetition period of the repeated scanning pattern is 0.1 seconds, and the horizontal FOV of the repeated scanning pattern is 70°.
3. The method for extracting shore wave parameters based on airborne static laser radar according to claim 2, characterized in that: In step S5, the design idea of the MATLAB program is: for a single txt data, first, set two detection values, one of which is a positive detection value, initially ; The other is a negative detection value, initially Then, we check from the column where the scan angle is located to the next row. There are three situations: S51. If the first positive detection value or the first negative detection value is detected, start from the row where the detected value is located and continue to detect downwards. If the first detected detection value is a positive detection value, the detection stops when the next negative detection value is detected downwards; if the first detected detection value is a negative detection value, the detection stops when the next positive detection value is detected downwards, and all rows between the two detection values are extracted; S52. If the next detection value is not detected after the first positive detection value or the first negative detection value is detected, the value of the next detection value is changed, and the change rule is as follows: if the detection value to be detected is a negative detection value, the negative detection value is increased by 1, and the detection is restarted from the row where the first positive detection value is located until a negative detection value is detected; if the detection value to be detected is a positive detection value, the positive detection value is reduced by 1, and the detection is restarted from the row where the first negative detection value is located until a positive detection value is detected, and the rows between the two detection values are extracted; S53. If no positive or negative detection value is detected in the column where the scanning angle is located, the positive detection value is reduced by 1 and the negative detection value is increased by 1, and steps S51 and S52 are repeated; finally, the row between the two detection values is extracted.
4. The method for extracting shore wave parameters based on airborne static laser radar according to claim 3, characterized in that: In step S6, the DBSCAN algorithm is used to perform data denoising, including the following steps: S61, extracting point cloud data: loading the las data in step S2 into the data structure; S62, parameter setting: according to the spatial distribution characteristics and noise level of the data, the neighborhood radius is set to 0.1 meters and the minimum number of points is set to 5; S63, core point search: traverse each point in the data set and calculate the number of neighboring points of each point within the neighborhood radius. If the number of neighboring points is greater than or equal to the minimum number of points, it is marked as a core point; S64, cluster generation: Starting from a core point that has not been visited, use the core point as the seed point of a new cluster, recursively expand the cluster, and add all points that are directly density-reachable from the seed point to the cluster; if there is a core point among the newly added points in the cluster, continue recursively expanding until no new points are added to the cluster; repeat the above process until all core points have been processed, thereby generating multiple clusters; S65, noise point identification and data denoising: After clustering, the remaining points in the data set that are not assigned to any cluster are noise points, and the noise points are deleted.
5. The method for extracting shore wave parameters based on airborne static laser radar according to claim 4, characterized in that: In step S7, the method for extracting the effective wave height is as follows: the wave height sequence continuously measured during the observation period is arranged from large to small, and the average value of the first 1 / 3 wave heights is taken; The method for extracting the number of waves is as follows: traverse the wave height data sorted by time, compare each wave height with its adjacent previous and next wave heights; if the current wave height is greater than the previous and next points or the current wave height is less than the previous and next points, it is marked as an extreme point; The number of extreme points is the number of waves.
6. A method for predicting shore wave height based on airborne static laser radar, characterized in that: The wave height, environmental impact factors and corresponding time extracted by the shore wave parameter extraction method based on airborne static laser radar according to any one of claims 1 to 5 are input into the KF-LSTM-Attention model as time series data, the time series data is preprocessed by Kalman filtering, and the processed data is modeled using LSTM. The hierarchical characteristics of the local deep foundation pit monitoring data are mined through the self-attention mechanism, and finally the predicted values are integrated through the fully connected layer to output the predicted values of the wave height data.
7. The method for predicting the wave height of shore waves based on airborne static laser radar according to claim 6, characterized in that: The Kalman filter describes the dynamic evolution of waves through state-space equations, combines prior knowledge with real-time observations, quantifies the uncertainty of system noise and observation noise using the covariance matrix, and ultimately outputs the optimal estimate of the wave height signal. The working principle of Kalman filtering is divided into the prediction stage and the update stage: When in the prediction stage, the prior state estimate: ; Where, is the predicted value of the current state, is the state estimate at the previous moment, is the state transition matrix, is the control input matrix, is the control input; Error covariance estimation: ; Where, is the covariance, is the predicted error covariance, is the error covariance of the previous moment; When in the update phase, the Kalman gain : ; Where, is the observation matrix, is the covariance matrix; Posterior state estimate: ; Where, is the updated state estimate, For the moment The actual observed value of Posterior covariance update: ; Where, is the updated error covariance, is the identity matrix.
8. The method for predicting shore wave height based on airborne static laser radar according to claim 7, characterized in that: Use a multi-layer LSTM network to process the Kalman filter , output hidden state sequence ; The LSTM network includes cell state, forget gate, input gate and output gate, which work together to achieve dynamic modeling of temporal features.
9. The method for predicting the wave height of breaking waves based on airborne static laser radar according to claim 8, characterized in that: The core of the self-attention mechanism is to use the orthogonal projection of the query, key, and value vectors to build an interactive dependency graph between the units of the input sequence and calculate the correlation strength coefficient between the elements. Specifically, feature optimization is achieved through the following three stages: A1. Dynamic weight allocation: In a multi-head attention architecture, the input sequence is mapped into multiple orthogonal subspaces, and the element relevance scores in each subspace are calculated in parallel. A2. Feature fusion mechanism: Perform weighted aggregation on the normalized attention weights and value vectors to form a new feature representation that integrates global semantics; A3. Selective focusing strategy: Dynamically enhance the representation strength of key timing nodes through the gating mechanism, while suppressing signal interference in non-critical areas.
Citation Information
Patent Citations
Wave breaking zone wave hydrodynamic monitoring method and system based on three-dimensional laser radar
CN113219481A
Method for inverting water depth by using sea surface point cloud of airborne laser radar
CN116449388A