Seismic data processing method and apparatus
By employing multi-threaded parallel processing and a three-level data processing method, the problem of noise interference in submarine seismic data was solved, enabling efficient and accurate data differentiation and transmission, and improving the efficiency and accuracy of marine seismic data processing.
Patent Information
- Application Number
- CN202511446562.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-11
- Publication Date
- 2026-02-10
- Estimated Expiration
- 2045-10-11
AI Technical Summary
In submarine seismic data processing, noise data generated by ocean currents, biological activity, and equipment interference leads to low efficiency and accuracy in seismic signal processing, and large-scale data volumes make it difficult to guarantee low-latency data transmission.
The raw seismic data is acquired using a multi-threaded parallel processing approach and undergoes three levels of data processing, including time alignment, spatial dual-station mutual recognition, and data compression. It distinguishes between valid seismic event data and environmental noise data and transmits the data through lossless and lossy compression.
It improves the efficiency and accuracy of seismic data processing, reduces data transmission latency, effectively distinguishes between valid and noisy seismic data, and enhances the overall quality of data processing.
Smart Images

Figure CN120908877B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of marine earthquake monitoring, and in particular to a method and apparatus for earthquake data processing. Background Technology
[0002] With the vigorous development of the marine economy and the rapid growth in demand for marine resource development, the acquisition and processing of submarine seismic data has become an important technology for monitoring and scientific research analysis of marine geological activity.
[0003] However, due to the complexity of the seabed, noise data generated by ocean currents, biological activities, and equipment interference can affect seismic signals. Related technologies lack sufficient means to process noise data, resulting in a large amount of invalid or low-quality noise data affecting the processing of seismic data. Furthermore, it is difficult to ensure low latency during data transmission for large-scale data volumes, ultimately leading to low efficiency and accuracy in processing seismic data.
[0004] This paper provides a method to improve the efficiency and accuracy of seismic data processing, addressing a problem that urgently needs to be solved in this field. Summary of the Invention
[0005] This application provides a seismic data processing method and apparatus, which can improve the efficiency and accuracy of seismic data processing.
[0006] In a first aspect, embodiments of this application provide a seismic data processing method, including:
[0007] Obtain raw earthquake data;
[0008] The raw seismic data is subjected to three levels of data processing to obtain compressed seismic data;
[0009] Output the compressed seismic data.
[0010] In one possible implementation, acquiring the raw seismic data includes:
[0011] The raw seismic data is obtained by extracting seismic data from at least one preset station using a multi-threaded parallel processing method. The station includes at least one station, and the thread corresponds one-to-one with the station.
[0012] In one possible implementation, after acquiring the raw seismic data, the method further includes:
[0013] The seismic data corresponding to each station is divided into one or more data blocks corresponding to each station;
[0014] The data block is parsed to obtain the attribute information corresponding to the data block;
[0015] The attribute information corresponding to the data block is packaged to obtain a data packet in a preset format.
[0016] In one possible implementation, the three-level data processing of the raw seismic data to obtain compressed seismic data includes:
[0017] Identify the data packets corresponding to each site;
[0018] The data packets corresponding to each station undergo a first-level time alignment process to remove data in the low-confidence intervals of the data packets;
[0019] For any two data packets corresponding to any two stations, the data packets undergo a second-level processing of space dual-station mutual recognition to determine the type of the data packets, wherein the type of the data packets includes valid seismic event data and environmental noise data;
[0020] The effective seismic event data undergoes a third-level processing step of lossless compression to obtain compressed seismic data.
[0021] In one possible implementation, it also includes:
[0022] The environmental noise data is subjected to lossy compression processing to obtain compressed environmental noise data;
[0023] Output the compressed environmental noise data.
[0024] In one possible implementation, the attribute information includes an extracted timestamp;
[0025] Accordingly, the first-level processing of timing alignment of the data packets corresponding to each station to remove data in the low-confidence intervals of the data packets includes:
[0026] The data packets corresponding to each station are divided into preset time windows to obtain time series data for each station in each time window.
[0027] Within each time window, one time series data is designated as the first time series data, and each time series data other than the first time series data is designated as the second time series data.
[0028] Align each second time series data with the first time series data to obtain the extraction timestamp repetition rate corresponding to each second time series data;
[0029] The second time series data whose corresponding extraction timestamp repetition rate is less than the first preset value are determined as the data in the low confidence interval.
[0030] In one possible implementation, the second-level processing of spatial dual-site mutual recognition for data packets corresponding to any two stations to determine the type of the data packet includes:
[0031] Obtain the actual time delay of the seismic waves in the data packet between any two stations;
[0032] Determine the spatial distance between the two stations and the wave velocity of the first arrival wave of the earthquake;
[0033] The time delay range of the seismic wave between the two stations is determined by the spatial distance between the two stations and the wave velocity of the first arrival wave.
[0034] If the actual delay is within a preset proportion of the delay range, the seismic wave in the data packet is determined to be a valid seismic wave signal; otherwise, the seismic wave in the data packet is determined to be an invalid seismic wave signal.
[0035] Determine the signal energy ratio between the two stations;
[0036] If the signal energy ratio is within a preset range, the seismic wave in the data packet is determined to be a valid seismic event; otherwise, the seismic event corresponding to the data packet is determined to be an invalid seismic event.
[0037] If the seismic wave in the data packet is a valid seismic wave signal and the corresponding seismic event is a valid seismic event, then the data packet is determined to be valid seismic event data.
[0038] If the seismic wave in the data packet is an invalid seismic wave signal, and the corresponding seismic event is an invalid seismic event, then the data packet is identified as environmental noise data.
[0039] In one possible implementation, each station includes at least one channel, and the attribute information further includes a station number and a channel number;
[0040] Correspondingly, it also includes:
[0041] Based on the station number and channel number, create a topic queue corresponding to each channel under each station;
[0042] Compressed seismic data or compressed environmental noise data are distributed to the subject queue of the corresponding channel under the corresponding station according to the corresponding station number and channel number;
[0043] In one possible implementation, outputting the compressed seismic data or the compressed ambient noise data includes:
[0044] The compressed seismic data or compressed environmental noise data are output according to the corresponding topic queues.
[0045] Secondly, this application provides a seismic data processing apparatus, comprising:
[0046] The data acquisition and parsing module is used to acquire raw seismic data;
[0047] The three-level data processing module is used to perform three-level data processing on the raw seismic data to obtain compressed seismic data;
[0048] The data buffer distribution module is used to output the compressed seismic data.
[0049] Thirdly, this application provides a computer device, including: a memory and a processor;
[0050] The memory stores computer-executed instructions;
[0051] The processor executes computer execution instructions stored in the memory, causing the processor to perform the method described above.
[0052] Fourthly, this application provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the method described above.
[0053] Fifthly, this application provides a computer program product, including a computer program that, when executed by a processor, implements the method described above.
[0054] The seismic data processing method and apparatus provided in this application perform three-level data processing on the raw seismic data to obtain compressed seismic data from the raw seismic data, and then outputs the compressed seismic data. This application can effectively distinguish seismic data from other data, and by transmitting it in a compressed form, it can improve the processing efficiency and accuracy of seismic data. Attached Figure Description
[0055] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0056] Figure 1 This application provides a schematic diagram of the scenario.
[0057] Figure 2 Flowchart of the seismic data processing method provided in this application Figure 1 ;
[0058] Figure 3 Flowchart of the seismic data processing method provided in this application Figure 2 ;
[0059] Figure 4 Flowchart of the seismic data processing method provided in this application Figure 3 ;
[0060] Figure 5 The processing flow of a three-level data processing module is shown as an example.
[0061] Figure 6 Flowchart of the seismic data processing method provided in this application Figure 4 ;
[0062] Figure 7 Flowchart of the seismic data processing method provided in this application Figure 5 ;
[0063] Figure 8 Flowchart of the seismic data processing method provided in this application Figure 6 ;
[0064] Figure 9 Flowchart of the seismic data processing method provided in this application Figure 7 ;
[0065] Figure 10 A schematic diagram of the seismic data processing device provided in this application;
[0066] Figure 11 A schematic diagram of the structure of the computer device provided in this application.
[0067] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0068] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0069] Figure 1 The scenario diagram provided for this application is as follows: Figure 1As shown, the scenario in this application includes a seabed seismometer, a buoy, and network access equipment, a seismic data processing system, a server, and a display terminal within the seismological bureau. The seabed seismometer is responsible for collecting seismic monitoring data from the seabed. The seismometer includes a velocity meter, an accelerometer, and a hydrophone, supporting simultaneous acquisition of three-axis velocity, three-axis acceleration, and underwater acoustic signals. This data is then transmitted via a dynamic cable to a buoy at sea. The buoy can choose to send the seismic monitoring data to the seismological bureau via satellite communication or mobile base station communication. The seismological bureau receives the seismic monitoring data through a network access device, which can be a Virtual Private Network (VPN) device. The data is then connected to the seismic data processing system, which can be a real-time digital seismic network information processing and automatic earthquake reporting system (Jopens), including modules for seismic data monitoring and archiving, earthquake early warning, and intensity rapid reporting. The server obtains the seismic monitoring data from the Jopens system, processes the data, and finally sends the processed data to the display terminal for display.
[0070] Regarding server type selection, servers can include physical servers, virtual servers, cloud servers, and high-performance computing cluster servers. Physical servers offer high performance and high reliability, making them suitable for processing large amounts of real-time data and ideal for earthquake data processing centers requiring high computing power and low latency. Virtual servers offer high flexibility, dynamically adjusting resources as needed, making them suitable for testing environments or scenarios requiring rapid expansion. Cloud servers provide elastic resources, global distribution, and high availability, making them suitable for earthquake monitoring systems requiring global data collection and analysis. High-performance computing cluster servers can handle complex computational tasks, such as earthquake simulation and big data analysis, making them suitable for research institutions requiring complex earthquake simulation and analysis. Regarding display device selection, display devices can include desktop computer screens, cloud server displays, television screens, video walls, laptops, tablets, smartphones, augmented reality (AR) devices, and virtual reality (VR) devices. The choice of appropriate server and display terminal depends on specific application requirements, budget, and technical capabilities. A comprehensive earthquake data processing system typically combines multiple types of servers and terminals to meet different functional requirements and usage scenarios.
[0071] However, due to the complexity of the seabed, noise data generated by ocean currents, biological activities, and equipment interference can affect seismic signals. The relevant technologies are insufficient in processing noise data, resulting in a large amount of invalid or low-quality noise data affecting the processing of seismic data, leading to low processing efficiency and accuracy.
[0072] The seismic data processing method provided in this application performs three-level data processing on the raw seismic data to obtain compressed seismic data and compressed environmental noise data, and then outputs the compressed seismic data. This application can effectively distinguish seismic data from other data, and by transmitting it in a compressed form, it can improve the processing efficiency and accuracy of seismic data.
[0073] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0074] Figure 2 Flowchart of the seismic data processing method provided in this application Figure 1 ,like Figure 2 As shown, it includes:
[0075] S201. Obtain raw seismic data.
[0076] Based on the scenario example, the executing entity of this application is Figure 1 The example server can be divided into a data acquisition and parsing module, a three-level data processing module, and a data buffering and distribution module. Earthquake monitoring data acquired from the Jopens system can be identified as raw earthquake data. Optionally, the server's acquisition and parsing module can obtain raw earthquake data based on the Jopens system's real-time waveform data stream service. Alternatively, it can use preset functions, such as the `requests.get` method, to call the Jopens system's real-time waveform data stream service to obtain raw earthquake data as a continuous data stream. The format of the raw earthquake data can be the Mini SEED (Mini Standard for Me Exchange of Earthquake Data).
[0077] S202. Perform three-level data processing on the raw seismic data to obtain compressed seismic data.
[0078] Based on a scenario example, the raw seismic data includes interference data generated between devices, marine environmental noise data, and valid seismic event data. The three-level data processing includes time-series alignment, space-based dual-station mutual recognition event identification, and data compression and transmission. Time-series alignment removes data with excessively large time-series differences from the raw seismic data, identifying it as interference data. Removing interference data ensures the consistency of the time series among seismic data and the accuracy of subsequent seismic data analysis. Space-based dual-station mutual recognition event identification determines whether the seismic data represents valid seismic events, thus dividing the raw seismic data into valid seismic event data and environmental noise data. Data compression and transmission compresses the valid seismic event data before transmission, accelerating the data transmission rate. Optionally, the server can employ a three-level data processing module to perform three levels of data processing on the raw seismic data.
[0079] S203. Output the compressed seismic data.
[0080] In a scenario example, the server's data buffering and distribution module can output compressed seismic data. Specifically, it can send the compressed seismic data to a display terminal for display, enabling relevant personnel to monitor the seismic data. Furthermore, the compressed seismic data can be displayed on the terminal in a visual format, such as as waveforms. Visualization refers to the methods and technologies of converting data into graphics or images for display on a screen and enabling interactive processing.
[0081] Based on the method provided in this example, compressed seismic data can be obtained from the raw seismic data. This effectively distinguishes valid seismic data from other data and transmits it in compressed form, outputting the valid seismic data. This reduces data transmission latency and ultimately improves the efficiency and accuracy of seismic data processing.
[0082] Optionally, S201 includes:
[0083] The raw seismic data is obtained by extracting seismic data from at least one preset station using a multi-threaded parallel processing method. The station includes at least one station, and the thread corresponds one-to-one with the station.
[0084] Based on the scenario example, the Jopens system can include at least one site, and each site typically includes two stations, one for storing strong-motion data and the other for storing seismic data from the corresponding site. This example uses two sites, meaning the Jopens system includes four stations. Multiple threads can be created using the threading library, with each thread acquiring seismic data from one station. Therefore, the data acquisition and parsing module can create four threads to acquire the corresponding seismic data from the four stations in parallel, and then use the acquired seismic data from the four stations as the raw seismic data. Based on the method provided in this example, each thread is responsible for acquiring seismic data from one station. By acquiring seismic data from multiple stations through multi-threaded parallel processing, the efficiency of seismic data acquisition can be improved.
[0085] Optional, Figure 3 Flowchart of the seismic data processing method provided in this application Figure 2 Following S201, it also includes:
[0086] S301. Divide the seismic data corresponding to each station into one or more data blocks for each station.
[0087] In this scenario example, we'll still use a multi-threaded parallel processing approach. Each thread is responsible for processing the seismic data from its corresponding station. The seismic data can be divided into blocks to improve processing efficiency. For example, the iter-content method can be used to iterate through the data stream in 512-byte units to obtain the segmented data blocks.
[0088] S302. The data block is parsed to obtain the attribute information corresponding to the data block.
[0089] Based on the scenario example, the read method of the obspy library can be used to parse the data block obtained above to obtain the attribute information corresponding to the data block. The attribute information of the data block includes: extraction timestamp, station number, channel number, sampling rate, and vibration data, etc.
[0090] S303. Package the attribute information corresponding to the data block to obtain a data packet in a preset format.
[0091] With the example scenario, JavaScript Object Notation (JSON) is a lightweight data interchange format that is easy for humans to read and write, and also easy for machines to parse and generate. Therefore, optionally, attribute information can be packaged into a JSON format data packet.
[0092] Based on the method provided in this example, raw seismic data can be divided into multiple data blocks, and the attribute information of each data block can be packaged into a JSON format data packet, which can facilitate subsequent analysis of seismic data.
[0093] Optional, Figure 4 Flowchart of the seismic data processing method provided in this application Figure 3 ,like Figure 4 As shown, S202 includes:
[0094] S401. Determine the data packets corresponding to each site.
[0095] Based on the scenario example and the above content, taking two sites as an example, each site includes two stations, so the data packets of seismic data corresponding to the four stations within the two sites can be obtained respectively.
[0096] S402. Perform the first-level processing of timing alignment on the data packets corresponding to each station to remove data in the low-confidence intervals of the data packets.
[0097] Combined with scenario examples, Figure 5 The processing flow of the three-level data processing module is shown in the example below. Figure 5 As shown, the three-level data processing module first acquires the data packets of seismic data corresponding to the four stations. Then, the three-level data processing module performs time-series alignment processing on the data packets of the four stations to obtain data in the low confidence interval. Data in the low confidence interval refers to data packets whose time-series difference from the other three data packets is too large. Therefore, such data packets can be removed to ensure the consistency of the data time-series. Data with excessive time-series differences can be identified as interference data. Removing interference data also ensures the accuracy of subsequent seismic data analysis.
[0098] S403. For any two data packets corresponding to stations, perform a second-level processing of space dual-station mutual recognition on the data packets to determine the type of the data packets, wherein the type of the data packets includes valid seismic event data and environmental noise data.
[0099] Combined with scenario examples, Figure 5 After completing the timing alignment of each data packet, the third-level data processing module uses bi-site mutual recognition in space to determine whether the data packet type is a valid seismic event. Bi-site mutual recognition refers to the mutual recognition and filtering of seismic wave signals between data packets from two different stations to determine whether the data packet is valid seismic event data or environmental noise data. For example, if there are stations A and B, and data packet 1 belongs to station A and data packet 2 belongs to station B, then data packets 1 and 2 can be mutually recognized and filtered to determine their types.
[0100] S404. Perform a third-level processing step on the effective seismic event data to obtain compressed seismic data.
[0101] Combined with scenario examples, Figure 5 After the first and second levels of processing described above, the third-level data processing module can divide each data packet into valid earthquake event data and environmental noise data. The third level of processing refers to compressing the valid earthquake event data and environmental noise data separately.
[0102] First, for valid seismic event data, lossless compression is performed using the Zstandard algorithm to obtain compressed seismic data. Specifically, entropy coding is used to compress the information, and probability distribution modeling is performed on the symbol stream to generate compact codes. Let the symbol set be... The probability of each symbol appearing is ,satisfy The formula for calculating entropy is expressed as the first formula below:
[0103] First formula:
[0104] In practice, a compression function is used, with the input being a data block representing the vibration data portion. At the same time, determine the compression level. The compression function is as follows:
[0105] .
[0106] Compression levels A higher level indicates a greater compression ratio. For effective seismic event data, level 3 can be used to ensure a balance between velocity and compression ratio.
[0107] Based on the method provided in this example, seismic data can be processed in three levels to effectively distinguish between valid seismic data and environmental noise data, thereby improving the efficiency and accuracy of seismic data processing. Furthermore, lossless compression processing of valid seismic data can further improve the efficiency of data transmission.
[0108] Optional, Figure 6 Flowchart of the seismic data processing method provided in this application Figure 4 ,like Figure 6 As shown, it also includes:
[0109] S601. Perform lossy compression processing on the environmental noise data to obtain compressed environmental noise data.
[0110] Combined with scenario examples, Figure 5 The third level of processing also includes compressing the environmental noise data to obtain compressed environmental noise data;
[0111] For environmental noise data, lossy compression can be used. Downsampling can reduce the number of sampling points per unit time by 50%. The LZ4 compression algorithm is then used to process the downsampled data blocks. The compression function is as follows:
[0112]
[0113] The compression level is set to 9 to maximize the data compression rate.
[0114] S602, Output the compressed environmental noise data.
[0115] Based on a scenario example, the server's data buffer distribution module can simultaneously send compressed environmental noise data and compressed seismic data to the display terminal, enabling the display terminal to differentiate between the two. The compressed environmental noise data can also be displayed using a visual display method.
[0116] Based on the method provided in this example, lossy compression with a high compression ratio is used for environmental noise data to significantly reduce bandwidth usage, improve data transmission efficiency, and distinguish between compressed seismic data and compressed environmental noise data for effective differentiation.
[0117] Optional, Figure 7 Flowchart of the seismic data processing method provided in this application Figure 5 The attribute information includes the extracted timestamp;
[0118] Accordingly, such as Figure 7 As shown, S402 includes:
[0119] S701. Divide the data packets corresponding to each station into preset time windows to obtain the time series data corresponding to each station in each time window.
[0120] Taking a scenario example with two sites, each site including two stations, the time window can be determined according to the actual situation. In this example, a 5-second time window can be selected. Specifically, the event windows are aggregated according to the 5-second event window to obtain four time series. Then, based on the extraction timestamp attribute information corresponding to the data packet, the set of timestamps corresponding to each time series within each window period is determined.
[0121] S702. In each time window, one time series data is determined as the first time series data, and each time series data other than the first time series data is determined as the second time series data.
[0122] Based on the scenario example, any one of the four time series can be selected as the base time series. The base time series can be determined as the first time series data, and then the other three time series can be determined as the second time series data.
[0123] S703. Align each second time series data with the first time series data to obtain the extraction timestamp repetition rate corresponding to each second time series data.
[0124] With a scenario example, the Dynamic Time Warping (DTW) algorithm can be used to align each second time series data point with the first time series data point to calculate the timestamp repetition rate between each second time series data point and the first time series data point.
[0125] Specifically, if the first time series data is defined as X, and the second time series data is defined as Y, then... , DTW-based calculation and The distance between them is shown in the second formula below:
[0126] Second formula:
[0127] in, for and The distance between them , , .
[0128] Let the time interval of the first time series data be... The time interval of the second time series data is The timestamp overlap between the second time series data and the first time series data is shown in the third formula below:
[0129] Third formula:
[0130] in, This represents the timestamp overlap between the second and first time series data. The timestamp repetition rate is shown in the fourth formula below:
[0131] Fourth formula:
[0132] Where r is the timestamp repetition rate between the second time series data and the first time series data.
[0133] S704. The second time series data with a corresponding extraction timestamp repetition rate less than the first preset value is determined as the data in the low confidence interval.
[0134] Based on the scenario example, the first preset value can be determined according to the actual situation. Optionally, in this example, the first preset value can be set to 90%. The timestamp repetition rate between each second time series data and the first time series data can be calculated according to the second to fourth formulas above. The second time series data with a timestamp repetition rate of less than 90% with the first time series data is determined as data in the low confidence interval.
[0135] Based on the method provided in this example, data in the low-confidence intervals of the corresponding seismic data packets can be identified, so as to accurately remove data in the low-confidence intervals and ensure the temporal consistency of the seismic data.
[0136] Optional, Figure 8 Flowchart of the seismic data processing method provided in this application Figure 6 ,like Figure 8 As shown, S403 includes:
[0137] S801. Obtain the actual time delay of the seismic wave between any two stations in the data packet.
[0138] Based on the scenario example, the actual time delay of the seismic waves arriving at the two stations is determined by extracting the timestamps from the data packets corresponding to the two stations.
[0139] S802. Determine the spatial distance between the two stations and the wave velocity of the first arrival wave of the earthquake.
[0140] Using a scenario example, the distance between two stations is obtained and can be denoted as D. Based on the marine geological model, the P-wave, or first arrival wave velocity, is defined and can be denoted as V. Based on the first arrival wave velocity, the maximum and minimum wave velocities are estimated and denoted as Vmax and Vmin, respectively.
[0141] S803. Determine the time delay range of the seismic wave between the two stations based on the spatial distance between the two stations and the wave velocity of the first arrival wave.
[0142] Based on the scenario example, the latency range can be determined by the spatial distance D between the two stations, as well as Vmax and Vmin. Specifically, if the latency range is denoted as Δt, then the maximum value of Δt is the ratio between D and Vmin, and the minimum value of Δt is the ratio between D and Vmax.
[0143] S804. If the actual delay is within a preset proportion of the delay range, the seismic wave in the data packet is determined to be a valid seismic wave signal; otherwise, the seismic wave in the data packet is determined to be an invalid seismic wave signal.
[0144] Based on the scenario example, the preset ratio can be determined according to the actual situation. For example, in this example, the preset ratio is set to ±20%. Then it is necessary to determine whether the actual latency is within ±20% of the latency range. If the actual latency is denoted as Δta, then it is necessary to determine whether the following fifth formula holds true:
[0145] Fifth Formula:
[0146] If the actual time delay Δta of the seismic wave in the data packet between the two stations satisfies the fifth formula above, then the seismic wave is determined to be a valid seismic wave signal. If the actual time delay Δta of the seismic wave in the data packet between the two stations does not satisfy the fifth formula above, then the seismic wave is determined to be an invalid seismic wave signal.
[0147] S805. Determine the signal energy ratio between the two stations.
[0148] In a scenario example, each station includes multiple channels. First, the signal energy corresponding to each channel within two stations can be calculated. Then, the signal energy of all channels within a station is summed to obtain the total signal energy of that station. Finally, the total signal energy of the two stations is compared to obtain the signal energy ratio between the two stations. For example, for channel i, the seismic data of channel i is... Then the signal energy corresponding to channel i can be calculated using the following sixth formula:
[0149] Sixth Formula:
[0150] Using the sixth formula above, the signal energy corresponding to each channel within the station can be obtained. Then, by superimposing the signal energy corresponding to each channel within the station, the total signal energy of the two stations can be recorded as E1 and E2 respectively. The signal energy ratio between the two stations is the ratio between E1 and E2.
[0151] S806. If the signal energy ratio is within a preset range, the seismic wave in the data packet is determined as a valid seismic event; otherwise, the seismic event corresponding to the data packet is determined as an invalid seismic event.
[0152] Based on the scenario example, the signal-to-energy ratio can be determined within a preset range according to the actual situation. In this example, the preset range is set to 0.3-2.8. When the signal-to-energy ratio between two stations is within the range of 0.3-2.8, the seismic waves in the data packet can be determined as valid seismic events. Conversely, if the signal-to-energy ratio between two stations is not within the range of 0.3-2.8, the seismic waves in the data packet can be determined as invalid seismic events.
[0153] S807. If the seismic wave in the data packet is a valid seismic wave signal and the corresponding seismic event is a valid seismic event, then the data packet is determined to be valid seismic event data.
[0154] Based on the scenario example and the two judgment conditions mentioned above, when the seismic waves in the data packet simultaneously meet the criteria of being a valid seismic wave signal and a valid seismic event, the seismic waves in the data packet can be determined to be valid seismic event data.
[0155] S808. If the seismic wave in the data packet is an invalid seismic wave signal and the corresponding seismic event is an invalid seismic event, then the data packet is determined to be noise data.
[0156] Based on scenario examples, data in the data packet other than valid earthquake event data can be identified as noise data.
[0157] The method provided in this example can accurately distinguish between valid seismic event data and noisy data.
[0158] Figure 9 Flowchart of the seismic data processing method provided in this application Figure 7 Each station includes at least one channel, and the attribute information also includes the station number and the channel number;
[0159] Accordingly, such as Figure 9 As shown, it also includes:
[0160] S901. Based on the station number and channel number, create a topic queue corresponding to each channel under each station.
[0161] In a scenario example, the data buffering and distribution module can buffer the data after three levels of data processing in a message middleware, such as Kafka. Kafka employs efficient sequential disk read / write and zero-copy technology, capable of handling large amounts of message data and boasting a high throughput of hundreds of thousands of messages per machine. Its high throughput ensures rapid reading and writing of earthquake monitoring data, preventing data backlog and guaranteeing real-time performance during data aggregation. Data cached in Kafka can be distributed to different topics according to different data types. In this example, topics can be created based on station number and channel number, with each channel under each station creating an independent topic.
[0162] S902. Distribute the compressed seismic data or compressed environmental noise data to the subject queue of the corresponding channel under the corresponding station according to the corresponding station number and channel number.
[0163] In a scenario example, the data buffer distribution module first initializes by configuring the Kafka address. Then, based on the Kafka address, it distributes the seismic data from each channel to the corresponding topic in Kafka to differentiate the seismic data. Furthermore, each topic can be further divided into multiple partitions. A partition is a physical storage unit, and messages within a partition are ordered, with each message having a unique offset. The existence of partitions enables Kafka to achieve horizontal scaling, improving the system's throughput and concurrent processing capabilities.
[0164] Based on the method provided in this example, using Kafka as a message middleware can leverage Kafka's high throughput to ensure rapid reading and writing of earthquake monitoring data, preventing data backlog and thus guaranteeing the real-time performance of earthquake monitoring data aggregation.
[0165] Optionally, outputting the compressed seismic data or the compressed environmental noise data includes:
[0166] The compressed seismic data or compressed environmental noise data are displayed separately according to their corresponding topic queues.
[0167] Using a scenario example, the data buffer distribution module creates a waveform display channel for each channel of each station on the display terminal. The data structure employs a first-in, first-out (FIFO) queue to update the seismic waveforms. The module distributes data from different themes to the corresponding waveform display channels. Using the Echarts component library, the data is converted into line graphs. When the channel queue reaches its maximum length, the oldest data is popped out, allowing the latest data to be displayed, thus updating the seismic waveforms. Ultimately, this achieves the aggregation and visualization of multi-site, multi-source seismic monitoring data on the terminal.
[0168] Figure 10 A schematic diagram of the structure of the seismic data processing device provided in this application is shown below. Figure 10 As shown, it includes:
[0169] Data acquisition and parsing module 101 is used to acquire raw seismic data;
[0170] The third-level data processing module 102 is used to perform third-level data processing on the raw seismic data to obtain compressed seismic data.
[0171] The data buffer distribution module 103 is used to output the compressed seismic data.
[0172] Optionally, the data acquisition and parsing module 101 is specifically used to extract seismic data from at least one preset station using a multi-threaded parallel processing method to obtain the raw seismic data, wherein the station includes at least one station, and the thread corresponds one-to-one with the station.
[0173] Optionally, the three-level data processing module 102 is also used to divide the seismic data corresponding to each station to obtain one or more data blocks corresponding to each station.
[0174] The third-level data processing module 102 is also used to parse the data block to obtain the attribute information corresponding to the data block;
[0175] The third-level data processing module 102 is also used to package the attribute information corresponding to the data block to obtain a data packet in a preset format.
[0176] Optionally, a three-level data processing module 102 is used to determine the data packets corresponding to each site;
[0177] The third-level data processing module 102 is specifically used to perform first-level processing of time-series alignment on the data packets corresponding to each station, so as to remove data in the low-confidence interval of the data packets;
[0178] The third-level data processing module 102 is further used to perform second-level processing of spatial dual-station mutual recognition on data packets corresponding to any two stations, so as to determine the type of data packets, wherein the type of data packets includes valid seismic event data and environmental noise data;
[0179] The third-level data processing module 102 is specifically used for the third-level processing of lossless compression of the effective seismic event data to obtain compressed seismic data.
[0180] The third-level data processing module 102 is also used to perform lossy compression processing on the environmental noise data to obtain compressed environmental noise data.
[0181] The data buffer distribution module 103 is also used to output the compressed environmental noise data.
[0182] Optionally, the attribute information includes the extracted timestamp;
[0183] Accordingly, the third-level data processing module 102 is also specifically used to divide the data packets corresponding to each station into preset time windows to obtain the time series data corresponding to each station in each time window.
[0184] The third-level data processing module 102 is further configured to, within each time window, determine one of the time series data as the first time series data and determine each time series data other than the first time series data as the second time series data.
[0185] The third-level data processing module 102 is further used to align each second time series data with the first time series data to obtain the extraction timestamp repetition rate corresponding to each second time series data.
[0186] The third-level data processing module 102 is further used to determine the second time series data with a corresponding extraction timestamp repetition rate less than a first preset value as the data in the low confidence interval.
[0187] Optionally, the third-level data processing module 102 is further used to obtain the actual time delay of the seismic wave in the data packet between any two stations;
[0188] The third-level data processing module 102 is also specifically used to determine the spatial distance between the two stations and the wave velocity of the first arrival wave of the earthquake;
[0189] The third-level data processing module 102 is specifically used to determine the time delay range of the seismic wave between the two stations based on the spatial distance between the two stations and the wave velocity of the first arrival wave.
[0190] The third-level data processing module 102 is further configured to determine the seismic wave in the data packet as a valid seismic wave signal if the actual delay is within a preset proportion of the delay range, and otherwise determine the seismic wave in the data packet as an invalid seismic wave signal.
[0191] The third-level data processing module 102 is also specifically used to determine the signal energy ratio between the two stations;
[0192] The third-level data processing module 102 is further configured to determine the seismic wave in the data packet as a valid seismic event if the signal energy ratio is within a preset range, and otherwise determine the seismic event corresponding to the data packet as an invalid seismic event.
[0193] The third-level data processing module 102 is further used to determine the data packet as valid earthquake event data if the seismic wave in the data packet is a valid seismic wave signal and the corresponding earthquake event is a valid earthquake event.
[0194] The third-level data processing module 102 is further configured to determine the data packet as environmental noise data if the seismic wave in the data packet is an invalid seismic wave signal and the corresponding seismic event is an invalid seismic event.
[0195] Optionally, each station includes at least one channel, and the attribute information also includes a station number and a channel number;
[0196] Accordingly, the three-level data processing module 102 is also used to create a topic queue corresponding to each channel under each station based on the station number and channel number;
[0197] The third-level data processing module 102 is also used to distribute compressed seismic data or compressed environmental noise data to the subject queue of the corresponding channel under the corresponding station according to the corresponding station number and channel number.
[0198] Optionally, the three-level data processing module 102 is further used to obtain the corresponding compressed seismic data or compressed environmental noise data from different topic queues, and to distinguish and display the compressed environmental seismic data or compressed environmental noise data according to the corresponding topic queues.
[0199] The seismic data processing device provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.
[0200] Figure 11 A schematic diagram of the structure of the computer device provided in this application. Figure 11 As shown, the computer device 50 provided in this embodiment includes at least one processor 501 and a memory 502. Optionally, the computer device 50 further includes a communication component 503. The processor 501, memory 502, and communication component 503 are connected via a bus.
[0201] In a specific implementation, at least one processor 501 executes computer execution instructions stored in memory 502, causing at least one processor 501 to perform the above-described method.
[0202] The specific implementation process of processor 501 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0203] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0204] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0205] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0206] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0207] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0208] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0209] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0210] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0211] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0212] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0213] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0214] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0215] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.
Claims
1. A seismic data processing method, characterized in that, include: A multi-threaded parallel processing method is used to extract seismic data from at least one preset station to obtain raw seismic data. The station includes at least one station, and the thread corresponds one-to-one with the station. The seismic data corresponding to each station is divided into one or more data blocks for each station; the data blocks are parsed to obtain the attribute information corresponding to the data blocks; the attribute information corresponding to the data blocks is packaged to obtain a data packet in a preset format. The data packets corresponding to each station are determined; a first-level processing step of time alignment is performed on the data packets corresponding to each station to remove data in low-confidence intervals; for data packets corresponding to any two stations, a second-level processing step of spatial dual-station mutual recognition is performed to determine the type of the data packets, wherein the type of the data packets includes valid seismic event data and environmental noise data; a third-level processing step of lossless compression is performed on the valid seismic event data to obtain compressed seismic data. Output the compressed seismic data.
2. The method according to claim 1, characterized in that, Also includes: The environmental noise data is subjected to lossy compression processing to obtain compressed environmental noise data; Output the compressed environmental noise data.
3. The method according to claim 1, characterized in that, The attribute information includes the extraction timestamp; Accordingly, the first-level processing of timing alignment of the data packets corresponding to each station to remove data in the low-confidence intervals of the data packets includes: The data packets corresponding to each station are divided into preset time windows to obtain time series data for each station in each time window. Within each time window, one time series data is designated as the first time series data, and each time series data other than the first time series data is designated as the second time series data. Align each second time series data with the first time series data to obtain the extraction timestamp repetition rate corresponding to each second time series data; The second time series data whose corresponding extraction timestamp repetition rate is less than the first preset value are determined as the data in the low confidence interval.
4. The method according to claim 1, characterized in that, For any two data packets corresponding to different stations, the second-level processing of spatial dual-station mutual recognition is performed on the data packets to determine the type of the data packets, including: Obtain the actual time delay of the seismic waves in the data packet between any two stations; Determine the spatial distance between the two stations and the wave velocity of the first arrival wave of the earthquake; The time delay range of the seismic wave between the two stations is determined by the spatial distance between the two stations and the wave velocity of the first arrival wave. If the actual delay is within a preset proportion of the delay range, the seismic wave in the data packet is determined to be a valid seismic wave signal; otherwise, the seismic wave in the data packet is determined to be an invalid seismic wave signal. Determine the signal energy ratio between the two stations; If the signal energy ratio is within a preset range, the seismic wave in the data packet is determined to be a valid seismic event; otherwise, the seismic event corresponding to the data packet is determined to be an invalid seismic event. If the seismic wave in the data packet is a valid seismic wave signal and the corresponding seismic event is a valid seismic event, then the data packet is determined to be valid seismic event data. If the seismic wave in the data packet is an invalid seismic wave signal, and the corresponding seismic event is an invalid seismic event, then the data packet is identified as environmental noise data.
5. The method according to any one of claims 1-4, characterized in that, Each station includes at least one channel, and the attribute information also includes the station number and the channel number; Correspondingly, it also includes: Based on the station number and channel number, create a topic queue corresponding to each channel under each station; Compressed seismic data or compressed environmental noise data are distributed to the subject queue of the corresponding channel under the corresponding station according to the corresponding station number and channel number.
6. The method according to claim 5, characterized in that, The output of the compressed seismic data or the compressed environmental noise data includes: The compressed seismic data or compressed environmental noise data are output according to the corresponding topic queues.
7. A seismic data processing device, characterized in that, include: The data acquisition and parsing module is used to extract seismic data from at least one preset station using a multi-threaded parallel processing method to obtain raw seismic data. The station includes at least one station, and the thread corresponds one-to-one with the station. The three-level data processing module is used to divide the seismic data corresponding to each station into one or more data blocks for each station; parse the data blocks to obtain the attribute information corresponding to the data blocks; package the attribute information corresponding to the data blocks to obtain data packets in a preset format; determine the data packets corresponding to each station; perform a first-level processing of time-series alignment on the data packets corresponding to each station to remove data in the low-confidence intervals of the data packets; for data packets corresponding to any two stations, perform a second-level processing of spatial dual-station mutual recognition on the data packets to determine the type of the data packets, wherein the type of the data packets includes valid seismic event data and environmental noise data; and perform a third-level processing of lossless compression on the valid seismic event data to obtain compressed seismic data. The data buffer distribution module is used to output the compressed seismic data.
Citation Information
Patent Citations
Mine cable-node-free seismograph data recovery and preprocessing method
CN119001831A