Method for setting external dynamic noise source positioning scanning switch and storage medium

By using a sparse grid scanning switch method, the problem of low computational efficiency in big data positioning in seismic exploration is solved, achieving efficient dynamic noise source positioning and reducing computational resource consumption and exploration costs.

CN122072369APending Publication Date: 2026-05-22CHINA PETROLEUM & CHEMICAL CORP +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411669092.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-21
Publication Date
2026-05-22

AI Technical Summary

Technical Problem

In seismic exploration, directly scanning each channel to find dynamic objects when processing big data is computationally inefficient and ineffective, failing to meet requirements and resulting in long computation time and wasted resources.

Method used

The sparse grid scanning switch method is adopted. By obtaining the maximum range of the exploration area, the sparse grid energy spectrum and grid scanning switch are set. Sparse shots are randomly selected for energy scanning. The first arrival time from the source to the grid point is calculated, and the grid scanning switch is set to reduce invalid calculations.

Benefits of technology

It improves the efficiency of positioning calculations, ensures positioning results, reduces the consumption of computing resources, and lowers exploration costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122072369A_ABST
    Figure CN122072369A_ABST
Patent Text Reader

Abstract

The invention provides a method for setting an external dynamic noise source positioning scanning switch and a storage medium, and belongs to the technical field of seismic exploration methods. The method comprises the following steps: (1) acquiring a maximum range area of an exploratory area; (2) acquiring a sparse grid energy spectrum and a sparse energy spectrum grid switch array; (3) randomly extracting a part of shots from the seismic data to serve as sparse shots for energy scanning, and setting a grid scanning switch; according to the method, the positioning calculation efficiency is improved, and the positioning effect is ensured, so that the mass data processing efficiency is improved, the calculation resources are saved, and the purposes of reducing the cost and improving the efficiency are achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the technical field of seismic exploration methods, specifically relating to a method and storage medium for setting an external dynamic noise source positioning scanning switch. It can be used not only by researchers and producers for learning, but also in processing and interpreting calculation systems, and even in calculations in engineering geological exploration fields such as coalfields and solid minerals. Background Technology

[0002] In seismic exploration, noise removal first requires locating the position of moving objects. When the amount of data is large, directly scanning all data in a channel-by-channel manner to find objects is very inefficient and may not meet the requirements. Summary of the Invention

[0003] The purpose of this invention is to solve the problems existing in the prior art and provide a method and storage medium for setting an external dynamic noise source positioning scanning switch, which greatly improves the efficiency of big data positioning calculation, ensures positioning effect, reduces calculation time and resources, and saves exploration costs.

[0004] This invention is achieved through the following technical solution:

[0005] A first aspect of the present invention provides a method for setting an external dynamic noise source positioning scanning switch, the method comprising:

[0006] (1) Obtain the maximum area of ​​the exploration zone;

[0007] (2) Obtain the sparse grid energy spectrum and the sparse energy spectrum grid switch array;

[0008] (3) Randomly select a portion of the shots from the seismic data and perform energy scanning as sparse shots, and set the grid scanning switch.

[0009] A further improvement of the present invention is that:

[0010] Step (1) includes the following operations:

[0011] The minimum and maximum values ​​of the X-coordinate and the minimum and maximum values ​​of the Y-coordinate of the maximum range region are PX_Min, PX_Max, PY_Min, and PY_Max, respectively, as detailed below:

[0012] PX_Min = Min(SX_Min,RX_Min),

[0013] PX_Max = Max(SX_Max, RX_Max),

[0014] PY_Min = Min(SY_Min,RY_Min),

[0015] PY_Max=Max(SY_Max,RY_Max);

[0016] Wherein, SX_Min, SX_Max, SY_Min, and SY_Max are the minimum and maximum X-coordinates and the minimum and maximum Y-coordinates of the shot points in the exploration area, respectively; RX_Min, RX_Max, RY_Min, and RY_Max are the minimum and maximum X-coordinates and the minimum and maximum Y-coordinates of the receiver points in the exploration area, respectively.

[0017] A further improvement of the present invention is that:

[0018] Step (2) includes the following operations:

[0019] The scan extension range is determined as (scan_region_w, scan_region_e, scan_region_s, scan_region_n), where scan_region_w, scan_region_e, scan_region_s, and scan_region_n represent: the x-coordinate of the farthest western end of the shot receiver, the x-coordinate of the farthest eastern end of the shot receiver, the y-coordinate of the farthest southern end of the shot receiver, and the y-coordinate of the farthest northern end of the shot receiver, respectively.

[0020] Set the grid scan step size (scan_meshsize);

[0021] The sparse grid energy spectrum array is represented by energy_grid[nx,ny], where nx is the number of grid points in the horizontal direction and ny is the number of grid points in the vertical direction; the number of grid points is n_grid = nx * ny;

[0022] Define delta and calculate the actual scan range (scan_x_min, scan_x_max, scan_y_min, scan_y_max) using the following formula:

[0023] scan_x_min=(PX_Min-scan_region_w) / delta;

[0024] scan_x_max=(PX_Max-scan_region_e) / delta;

[0025] scan_y_min=(PY_Min-scan_region_s) / delta;

[0026] scan_y_max=(PY_Max-scan_region_n) / delta;

[0027] nx=(scan_x_max-scan_x_min) / scan_meshsize+1.0;

[0028] ny=(scan_y_max-scan_y_min) / scan_meshsize+1.0;

[0029] The x-direction array dx[i] of energy_grid is equal to scan_x_min + delta*i, i <= nx;

[0030] Y-direction array dy[i]=scan_y_min+delta*i,i<=ny;

[0031] The energy spectrum grid switch array is scan_judgement[nx*ny], with an initial value of 0.0.

[0032] A further improvement of the present invention is that:

[0033] Step (3) includes the following operations:

[0034] (31) The total number of seismic shots is nshot, the array is shotdata[nshot], the shot scan interval is set to dshot, the sparse shot is shotdata[dshot*i], i∈[0,nshot / dshot]; the first arrival time of each trace is calculated based on the coordinates of the shot receivers in the trace head of the sparse shot; the first arrival cut-off time is calculated, then the first arrival is cut off, and the data is stored in the seismic data array after the first arrival is cut off;

[0035] (32) Calculate the first arrival time from the source to the grid point reflection to the receiver point;

[0036] (33) Set the grid scan switch.

[0037] A further improvement of the present invention is that:

[0038] Step (31) involves calculating the first arrival time of each trajectory based on the coordinates of the shot receivers in the sparse shot head.

[0039] The sparse shot is defined as shotdata[j][tnum] = {trceHeader, trceData[ns]}, where j <= i, trceHeader is the track head, trceData is the track data, and ns is the number of sampling points. The total number of tracks in this shot is tnum. Calculate the arrival time chuzhitime[m] for each track, where m represents the m-th track and chuzhitime[m] represents the arrival time of the m-th track.

[0040] chuzhitime[m]=sqart(dsx*dsx+dsy*dsy) / vel*1000 / dt

[0041] Where dsx and dsy represent the distance from the x-coordinate of the source to the x-coordinate of the receiver obtained from trceHeader, respectively, and dsy represents the distance from the y-coordinate of the source to the y-coordinate of the receiver.

[0042] m∈[0,tnum];

[0043] dt is the sampling rate;

[0044] vel represents the speed of seawater.

[0045] A further improvement of the present invention is that:

[0046] The calculation of the initial resection time in step (31) includes:

[0047] The initial resection time qiechutime[m] is calculated using the following formula:

[0048] qiechutime[m] = chuzhitime[m] + win_mute, where win_mute is a custom cut length.

[0049] A further improvement of the present invention is that:

[0050] The operation of removing the first arrival and storing the seismic data array after removing the first arrival in step (31) includes:

[0051] Let the seismic data array after initial arrival be denoted as shotqie[tnum][ns]; initially set shotqie = 0.0;

[0052] When qiechutime[m] < 1, shotqie[m][ns] = shotdata[m][ns];

[0053] When qiechutime[m]>=1, for each sampling point time t, when t>qiechutime[m], shotqie[m][k]=shotdata[m][k], where k∈[qiechutime[m] / dt,ns];

[0054] Finally, the shotqie is backpropagated and then stored in shotqie.

[0055] A further improvement of the present invention is that:

[0056] The operation of step (32) includes:

[0057] The distance dist_frs from the seismic source to the first trace is calculated using the following formula:

[0058] dist_frs=sqrt(dist_frs_x*dist_frs_x+dist_frs_y*dist_frs_y),

[0059] Where, dist_frs_x = first x-coordinate - source x-coordinate,

[0060] dist_frs_y = first y-coordinate - seismic source y-coordinate

[0061] The distance dist_lrs from the seismic source to the last trace is calculated using the following formula:

[0062] dist_lrs=sqrt(dist_lrs_x*dist_lrs_x+dist_lrs_y*dist_lrs_y),

[0063] Where, dist_lrs_x = the x-coordinate of the last trace - the x-coordinate of the seismic source.

[0064] dist_lrs_y = last y-coordinate - seismic source y-coordinate

[0065] The distance dist_ws from grid point (i,j) to the seismic source is calculated using the following formula:

[0066] dist_ws=sqrt(dist_ws_x*dist_ws_x+dist_ws_y*dist_ws_y),

[0067] Where, dist_ws_x = grid point x-coordinate - earthquake source x-coordinate,

[0068] dist_ws_y = grid point y-coordinate - earthquake source y-coordinate

[0069] When the distance between a grid point and the receiver point is less than the distance between the last trace and the receiver point, the following operation is performed:

[0070] Define the amplitude preservation time mask_qg and the protection flag mask, where mask=1 indicates protection, mask=0 indicates no protection, and the default mask=1; calculate the grid point time mask_time using the following formula:

[0071] mask_time=(dist_ws+sqrt((dx[m]

[0072] ((dx[m] - firstaxis_r_x) * (dx[m] - firstaxis_r_x) + (dy[m] - firstaxis_r_y) * (dy[m] - firstaxis_r_y)) / vel * 1000.0 / dt

[0073] Where firstaxis_r_x represents the abscissa of the first geophone point, and firstaxis_r_y represents the ordinate of the first geophone point;

[0074] When mask_time < mask_qg, mask = 0;

[0075] When mask_time >= mask_qg, if ((dist_frs_x * dist_ws_x + dist_frs_y * dist_ws_y) / dist_frs > -p_dis2 * dist_frs) and ((dist_lrs_x * dist_ws_x + dist_lrs_y * dist_ws_y) / dist_lrs > -p_dis3 * dist_lrs), then mask = 0; where p_dis2 is the self-set cut-off ratio for the first trace, and p_dis3 is the self-set cut-off ratio for the last trace;

[0076] Calculate the velocity vel_temp of the first arrival of the reflection at the grid point using the following formula:

[0077] vel_temp = vel - vel_k, where vel_k = 10;

[0078] Calculate the first arrival time time from the source to the reflection at the grid point to the geophone point using the following formula, set time[tnum + 2][n_grid] to 0, when mask = 1,

[0079] time[i][j] = (dist_ws + sqrt(dist_wr_x * dist_wr_x + dist_wr_y * dist_wr_y)) / vel_temp * 1000.0 / dt, i ∈ [0, tnum + 2], j ∈ [0, n_grid]

[0080] Where dist_wr_x = the x coordinate of the grid point (i, j) - the x coordinate of the k-th trace,

[0081] dist_wr_y = the y coordinate of the grid point (i, j) - the y coordinate of the k-th trace.

[0082] A further improvement of the present invention lies in:

[0083] The operation in step (33) includes:

[0084] One grid point i corresponds to one Scan_judgmentp[i] value;

[0085] Perform the following operations for each energy spectrum grid point:

[0086] If the initial arrival time time[i][j] > 0.0 for more than half of the grid points, then set Scan_judgment[sm] = 1, sm ∈ [0, nx*ny); otherwise, set Scan_judgment[sm] = 0.

[0087] A second aspect of the present invention provides a computer-readable storage medium storing at least one computer-executable program, which, when executed by the computer, causes the computer to perform steps in a method for setting an external dynamic noise source localization scanning switch according to the present invention.

[0088] Compared with the prior art, the beneficial effects of the present invention are: the present invention improves the efficiency of positioning calculation while ensuring the positioning effect, thereby improving the efficiency of massive data processing, saving computing resources, and achieving the goal of cost reduction and efficiency improvement. Attached Figure Description

[0089] Figure 1 A flowchart illustrating the steps of the method of this invention. Detailed Implementation

[0090] The present invention will now be described in further detail with reference to the accompanying drawings:

[0091] like Figure 1 As shown, the present invention provides a method for setting an external dynamic noise source localization scanning switch. The method first divides the largest range region into a sparse grid, sets a grid scanning switch, selects the scanning grid that meets the conditions, and prepares for the next step of calculation.

[0092] The method of the present invention includes:

[0093] (1) Obtain the maximum range of the exploration area (i.e., the range of seismic data): Based on the minimum and maximum X-coordinates and Y-coordinates (i.e., SX_Min, SX_Max, SY_Min, SY_Max) of the shot points in the exploration area and the minimum and maximum X-coordinates and Y-coordinates (RX_Min, RX_Max, RY_Min, RY_Max) of the receiver points, the maximum range of the exploration area is obtained. The minimum and maximum X-coordinates and Y-coordinates of the maximum range are PX_Min, PX_Max, PY_Min, and PY_Max, respectively.

[0094] PX_Min = Min(SX_Min,RX_Min),

[0095] PX_Max = Max(SX_Max, RX_Max),

[0096] PY_Min = Min(SY_Min,RY_Min),

[0097] PY_Max=Max(SY_Max,RY_Max);

[0098] (2) Obtain the sparse grid energy spectrum and the sparse energy spectrum grid switch array:

[0099] Let `energy_grid` represent the sparse grid energy spectrum, and `scan_judgement` represent the sparse energy spectrum grid switch array. The scan extension range is set according to the exploration area; it can be larger or smaller than the exploration area, ensuring coverage of the object's trajectory region. The scan extension range is represented by `(scan_region_w, scan_region_e, scan_region_s, scan_region_n)`, where `scan_region_w`, `scan_region_e`, `scan_region_s`, and `scan_region_n` represent the x-coordinate of the farthest western end of the shot receiver, the x-coordinate of the farthest eastern end of the shot receiver, the y-coordinate of the farthest southern end of the shot receiver, and the y-coordinate of the farthest northern end of the shot receiver, respectively. Set the grid scan step size `scan_meshsize`. The sparse grid energy spectrum array is represented by `energy_grid[nx, ny]` (where `nx` is the number of grid points in the horizontal direction, and `ny` is the number of grid points in the vertical direction). The number of grid points is n_grid = nx * ny. The actual scanning range is represented by (scan_x_min, scan_x_max, scan_y_min, scan_y_max), where scan_x_min, scan_x_max, scan_y_min, and scan_y_max represent the minimum x-coordinate, maximum x-coordinate, minimum y-coordinate, and maximum y-coordinate of the scanning range, respectively. Define delta and calculate it using the following formula, then round the result to the nearest integer.

[0100] scan_x_min=(PX_Min-scan_region_w) / delta;

[0101] scan_x_max=(PX_Max-scan_region_e) / delta;

[0102] scan_y_min=(PY_Min-scan_region_s) / delta;

[0103] scan_y_max=(PY_Max-scan_region_n) / delta;

[0104] nx=(scan_x_max-scan_x_min) / scan_meshsize+1.0;

[0105] ny=(scan_y_max-scan_y_min) / scan_meshsize+1.0;

[0106] The x-direction array dx[i] of energy_grid is equal to scan_x_min + delta*i, i <= nx;

[0107] Y-direction array dy[i]=scan_y_min+delta*i,i<=ny;

[0108] The energy spectrum grid switch array is scan_judgement[nx*ny] = 0.0, where 0.0 indicates that the initial values ​​of the array are all 0;

[0109] (3) Randomly select a portion of the shots from the seismic data as sparse shots for energy scanning, and set a grid scan switch (i.e., determine whether the sparse energy spectrum grid switch array is turned on or off for scanning), specifically including:

[0110] (31) The total number of seismic shots is nshot, the array is shotdata[nshot], the shot scan interval is set to dshot, and the sparse shot is shotdata[dshot*i], i∈[0,nshot / dshot];

[0111] The first arrival time of each trajectory is calculated based on the coordinates of the shot receivers in the sparse shot path:

[0112] For example, for a sparse shot, shotdata[j][tnum] = {trceHeader, trceData[ns]}, (j <= i, trceHeader is the track head, trceData is the track data, and ns is the number of sampling points), and the total number of tracks in this shot is tnum, calculate the arrival time chuzhitime[m] for each track, where m represents the m-th track and chuzhitime[m] represents the arrival time of the m-th track.

[0113] chuzhitime[m]=sqart(dsx*dsx+dsy*dsy) / vel*1000 / dt, where dsx and dsy represent the distances from the source x-coordinate to the receiver x-coordinate obtained from trceHeader, and dsy represents the distance from the source y-coordinate to the receiver y-coordinate, as detailed below:

[0114] dsx = trceHeader.sx - trceHeader.rx, where sx represents the X coordinate of the shot point, rx represents the X coordinate of the receiver point, trceHeader.sx represents the X coordinate of the shot point extracted from the track head, and so on.

[0115] dsy = trceHeader.sy - trceHeader.ry, where sy represents the Y coordinate of the shot point, ry represents the Y coordinate of the receiver point, trceHeader.sy represents the Y coordinate of the shot point extracted from the head, and so on.

[0116] m∈[0,tnum];

[0117] dt is the sampling rate;

[0118] vel represents the speed of seawater.

[0119] The initial resection time qiechutime[m] is calculated using the following formula:

[0120] qiechutime[m] = chuzhitime[m] + win_mute, where win_mute is a user-defined cut length;

[0121] The first arrival is removed and stored in the seismic data array shotqie[tnum][ns] after removing the first arrival. Initially, shotqie = 0.0, that is, the initial value is 0.

[0122] The operations for removing the first arrival and storing the seismic data array shotqie[tnum][ns] after removing the first arrival include:

[0123] When qiechutime[m] < 1, no cut is performed, i.e., shotqie[m][ns] = shotdata[m][ns].

[0124] When qiechutime[m]>=1, for each sampling point time t, when t>qiechutime[m], shotqie[m][k]=shotdata[m][k], where k∈[qiechutime[m] / dt,ns];

[0125] Finally, perform a back-filter on shotqie and then store it in shotqie;

[0126] (32) Calculate the first arrival time from the source to the grid point, and the reflection time to the receiver point. Store the time in the time log.

[0127] The distance dist_frs from the seismic source to the first trace is calculated using the following formula:

[0128] dist_frs=sqrt(dist_frs_x*dist_frs_x+dist_frs_y*dist_frs_y),

[0129] Where, dist_frs_x = first x-coordinate - source x-coordinate,

[0130] dist_frs_y = first y-coordinate - seismic source y-coordinate

[0131] The distance dist_lrs from the seismic source to the last trace is calculated using the following formula:

[0132] dist_lrs=sqrt(dist_lrs_x*dist_lrs_x+dist_lrs_y*dist_lrs_y),

[0133] Where, dist_lrs_x = the x-coordinate of the last trace - the x-coordinate of the seismic source.

[0134] dist_lrs_y = last y-coordinate - seismic source y-coordinate

[0135] The distance dist_ws from grid point (i,j) to the seismic source is calculated using the following formula:

[0136] dist_ws=sqrt(dist_ws_x*dist_ws_x+dist_ws_y*dist_ws_y),

[0137] Where, dist_ws_x = grid point x-coordinate - earthquake source x-coordinate,

[0138] dist_ws_y = grid point y-coordinate - earthquake source y-coordinate

[0139] When the distance between a grid point and the receiver point is less than the distance between the last trace and the receiver point, the following operation is performed:

[0140] Define the amplitude preservation time mask_qg (based on geophysical knowledge), and the protection flag mask. The default mask = 1 indicates protection, and mask = 0 indicates no protection. Calculate the grid point time mask_time using the following formula:

[0141] mask_time = (dist_ws + sqrt((dx[m]

[0142] - firstaxis_r_x) * (dx[m] - firstaxis_r_x) + (dy[m] - firstaxis_r_y) * (dy[m] - firstaxis_r_y))) / vel * 1000.0 / dt, where firstaxis_r_x represents the abscissa of the first geophone point, and firstaxis_r_y represents the ordinate of the first geophone point;

[0143] When mask_time < mask_qg, mask = 0;

[0144] When mask_time >= mask_qg, if (dist_frs_x * dist_ws_x + dist_frs_y * dist_ws_y) / dist_frs > -p_dis2 * dist_frs and (dist_lrs_x * dist_ws_x + dist_lrs_y * dist_ws_y) / dist_lrs > -p_dis3 * dist_lrs, then mask = 0; where p_dis2 is the self - set excision ratio of the first trace, and p_dis3 is the self - set excision ratio of the last trace.

[0145] Calculate the velocity vel_temp of the first arrival of the grid - point reflection using the following formula:

[0146] vel_temp = vel - vel_k, vel_k = 10;

[0147] Calculate the first arrival time from the source to the grid - point reflection to the geophone using the following formula. Set time[tnum + 2][n_grid] to 0. When mask = 1,

[0148] time[i][j] = (dist_ws + sqrt(dist_wr_x * dist_wr_x + dist_wr_y * dist_wr_y)) / vel_temp * 1000.0 / dt, i ∈ [0, tnum + 2], j ∈ [0, n_grid]

[0149] where dist_wr_x = the x - coordinate of the grid - point (i, j) - the x - coordinate of the k - th trace,

[0150] dist_wr_y = the y - coordinate of the grid - point (i, j) - the y - coordinate of the k - th trace

[0151] The purpose of calculating the initial arrival velocity from the source to the grid point to the detector and the initial arrival time of the reflection from the source to the grid point to the detector is to provide a basis for subsequent judgment.

[0152] (33) Set the grid scan switch:

[0153] Each grid point i corresponds to a Scan_judgmentp[i] value. The following operations are performed for each energy spectrum grid point:

[0154] If the arrival time of more than half of the grid points is time[i][j]>0.0, it indicates that there may be dynamic objects. Therefore, scanning is started, i.e., Scan_judgment[sm]=1 (sm∈[0,nx*ny)). Otherwise, scanning is stopped, i.e., Scan_judgment[sm]=0.

[0155] After setting the grid scan switch, it can be used for subsequent denoising processing. For example, the denoised data D can be obtained using the following formula:

[0156]

[0157] Where f(shotqie) represents the denoising function, which can be any existing denoising function and will not be elaborated here.

[0158] This invention proposes a scanning switch method for locating external dynamic noise sources. The method divides the coverage area of ​​the shot-receiver point of a large data set into a sparse grid. Based on the kinematic characteristics of the noise, the method selects the grid that meets the conditions to start scanning and performs subsequent fine positioning processing. This method can greatly reduce the amount of computation, significantly improve computational efficiency, and save computational costs.

[0159] The embodiments of the present invention are as follows:

[0160] A real shot set seismic data set with 31 shots, shot numbers ∈ [1100, 1131], and 12648 seismic traces was selected. The scanning switch value of the external dynamic noise source was calculated and located using the method of this invention.

[0161] Example 1:

[0162] The first step is to input the seismic shot gather data and obtain the maximum range area values ​​in the x and y directions of the exploration area: PX_Min = 565500.0, PX_Max = 568144.0, PY_Min = 5279661.0, PY_Max = 5285031.0.

[0163] Example 2:

[0164] The second step is to calculate the size of the sparse grid energy spectrum and the size of the sparse energy spectrum grid switch array.

[0165] Define the calculation parameters: scan_region_w = 4200, scan_region_e = 4200, scan_region_s = 4200, scan_region_n = 4200, delta = 50, grid scan step size scan_meshsize = 200, seawater velocity vel = 1400, sampling rate dt = 4000, and the number of sampling points is 1513;

[0166] The calculation yielded:

[0167] scan_x_min = 561300.0;

[0168] scan_x_max = 572300;

[0169] scan_y_min = 5275450;

[0170] scan_y_max = 5289200;

[0171] nx=(572300-561300.0) / 200+1.0=56;

[0172] ny=(5289200-5275450) / 200+1.0=70;

[0173] The energy grid consists of an x-axis array dx = {561300, 561350, 561400, ...} and a y-axis array dy = {5275450, 5275500, 5275550, ...}.

[0174] Set the energy spectrum grid switch array to scan_judgement

[3920] = 0;

[0175] Taking the data from the 1100th shot as an example, after the initial arrival of the raw data is removed, a certain five consecutive sample values ​​of the first trajectory are 0, shotqie[0][0]={……,0,0,0,0,0……}

[0176] After BP filtering, shotqie[0][0]={……,8.252497,6.655072,-1.346933,-10.245925,-3.536838……}

[0177] Calculate the first arrival time from the source to the grid point, reflecting off the source and reaching the receiver, and store it in the time variable.

[0178] The first data point for the 1100th shot, time = {..., 2377.609693, 2364.020519, 2352.553557, 2343.239953, ...}

[0179] Example 3:

[0180] Determine whether a grid scan is performed for each energy spectrum grid point.

[0181] Calculate the grid scan switch value, such as in the first pass of the 1100th shot data.

[0182] Scan_judgment

[15] = 0.000000

[0183] Scan_judgment

[16] =0.000000

[0184] Scan_judgment

[17] =0.000000

[0185] Scan_judgment

[18] =1.000000

[0186] Scan_judgment

[19] =1.000000

[0187] Scan_judgment

[20] = 1.000000

[0188] Scan_judgment

[21] =1.000000

[0189] Scan_judgment

[22] =1.000000

[0190] When locating the position of dynamic objects, those with a value of 0 in the Scan_judgment array are not scanned, which reduces the amount of data to be calculated and improves efficiency.

[0191] Example 4:

[0192] A computer-readable storage medium storing at least one computer-executable program, which, when executed by the computer, causes the computer to perform steps in a method for setting an external dynamic noise source localization scanning switch according to the present invention.

[0193] When suppressing external noise in marine big data, it is essential to accurately locate the movement trajectory of dynamic noise sources. Directly scanning all data channels one by one would incur high computational costs. To improve the efficiency of positioning calculations while ensuring positioning effectiveness, this invention adopts a method of setting a scanning grid switch. This method first locates the possible areas where dynamic objects may appear from a sparse grid, reducing the amount of data for further processing. This improves the efficiency of massive data processing, saves computational resources, and achieves the goal of cost reduction and efficiency improvement.

[0194] The above technical solution is only one embodiment of the present invention. For those skilled in the art, based on the principles disclosed in the present invention, it is easy to make various types of improvements or modifications, and not limited to the technical solutions described in the specific embodiments of the present invention. Therefore, the foregoing description is only preferred and not restrictive.

Claims

1. A method for setting an external dynamic noise source positioning scanning switch, characterized in that: The method includes: (1) Obtain the maximum area of ​​the exploration zone; (2) Obtain the sparse grid energy spectrum and the sparse energy spectrum grid switch array; (3) Randomly select a portion of the shots from the seismic data and perform energy scanning as sparse shots, and set the grid scanning switch.

2. The method for setting an external dynamic noise source positioning and scanning switch according to claim 1, characterized in that: Step (1) includes the following operations: The minimum and maximum values ​​of the X-coordinate and the minimum and maximum values ​​of the Y-coordinate of the maximum range region are PX_Min, PX_Max, PY_Min, and PY_Max, respectively, as detailed below: PX_Min = Min(SX_Min,RX_Min), PX_Max = Max(SX_Max, RX_Max), PY_Min = Min(SY_Min,RY_Min), PY_Max=Max(SY_Max,RY_Max), Wherein, SX_Min, SX_Max, SY_Min, and SY_Max are the minimum and maximum X-coordinates and the minimum and maximum Y-coordinates of the shot points in the exploration area, respectively; RX_Min, RX_Max, RY_Min, and RY_Max are the minimum and maximum X-coordinates and the minimum and maximum Y-coordinates of the receiver points in the exploration area, respectively.

3. The method for setting an external dynamic noise source positioning and scanning switch according to claim 2, characterized in that: Step (2) includes the following operations: The scan extension range is determined as (scan_region_w, scan_region_e, scan_region_s, scan_region_n), where scan_region_w, scan_region_e, scan_region_s, and scan_region_n represent: the x-coordinate of the farthest western end of the shot receiver, the x-coordinate of the farthest eastern end of the shot receiver, the y-coordinate of the farthest southern end of the shot receiver, and the y-coordinate of the farthest northern end of the shot receiver, respectively. Set the grid scan step size (scan_meshsize); The sparse grid energy spectrum array is represented by energy_grid[nx,ny], where nx is the number of grid points in the horizontal direction and ny is the number of grid points in the vertical direction; the number of grid points is n_grid = nx * ny; Define delta and calculate the actual scan range (scan_x_min, scan_x_max, scan_y_min, scan_y_max) using the following formula: scan_x_min=(PX_Min-scan_region_w) / delta; scan_x_max=(PX_Max-scan_region_e) / delta; scan_y_min=(PY_Min-scan_region_s) / delta; scan_y_max=(PY_Max-scan_region_n) / delta; nx=(scan_x_max-scan_x_min) / scan_meshsize+1.0; ny=(scan_y_max-scan_y_min) / scan_meshsize+1.0; The x-direction array dx[i] of energy_grid is equal to scan_x_min + delta*i, i <= nx; Y-direction array dy[i]=scan_y_min+delta*i,i<=ny; The energy spectrum grid switch array is scan_judgement[nx*ny], with an initial value of 0.

0.

4. The method for setting an external dynamic noise source positioning and scanning switch according to claim 3, characterized in that: Step (3) includes the following operations: (31) The total number of seismic shots is nshot, the array is shotdata[nshot], the shot scan interval is set to dshot, the sparse shot is shotdata[dshot*i], i∈[0,nshot / dshot]; the first arrival time of each trace is calculated based on the coordinates of the shot receivers in the trace head of the sparse shot; the first arrival cut-off time is calculated, then the first arrival is cut off, and the data is stored in the seismic data array after the first arrival is cut off; (32) Calculate the first arrival time from the source to the grid point reflection to the receiver point; (33) Set the grid scan switch.

5. The method for setting an external dynamic noise source positioning and scanning switch according to claim 4, characterized in that: Step (31) involves calculating the first arrival time of each trajectory based on the coordinates of the shot receivers in the sparse shot head. The sparse cannon is defined as shotdata[j][tnum] = {trceHeader, trceData[ns]}. Where j <= i, trceHeader is the track head, trceData is the track data, ns is the number of sampling points, the total number of tracks in this shot is tnum, calculate the initial arrival time chuzhitime[m] for each track, where m represents the m-th track, and chuzhitime[m] represents the initial arrival time of the m-th track: chuzhitime[m]=sqart(dsx*dsx+dsy*dsy) / vel*1000 / dt Where dsx and dsy represent the distance from the x-coordinate of the source to the x-coordinate of the receiver obtained from trceHeader, respectively, and dsy represents the distance from the y-coordinate of the source to the y-coordinate of the receiver. m∈[0,tnum]; dt is the sampling rate; vel represents the speed of seawater.

6. The method for setting an external dynamic noise source positioning and scanning switch according to claim 5, characterized in that: The calculation of the initial resection time in step (31) includes: The initial resection time qiechutime[m] is calculated using the following formula: qiechutime[m] = chuzhitime[m] + win_mute, where win_mute is a custom cut length.

7. The method for setting an external dynamic noise source positioning and scanning switch according to claim 6, characterized in that: The operation of removing the first arrival and storing the seismic data array after removing the first arrival in step (31) includes: Let the seismic data array after initial arrival be denoted as shotqie[tnum][ns]; initially set shotqie = 0.0; When qiechutime[m] < 1, shotqie[m][ns] = shotdata[m][ns]; When qiechutime[m] >= 1, for each sampling point time t, when t > qiechutime[m], shotqie[m][k] = shotdata[m][k], where k ∈ [qiechutime[m] / dt, ns]; Finally, perform BP filtering on shotqie and then store it in shotqie.

8. The method for setting an external dynamic noise source positioning and scanning switch according to claim 7, characterized in that: The operations in step (32) include: Calculate the distance dist_frs from the source to the first trace using the following formula: dist_frs = sqrt(dist_frs_x * dist_frs_x + dist_frs_y * dist_frs_y), where dist_frs_x = the x-coordinate of the first trace - the x-coordinate of the source, dist_frs_y = the y-coordinate of the first trace - the y-coordinate of the source, Calculate the distance dist_lrs from the source to the last trace using the following formula: dist_lrs = sqrt(dist_lrs_x * dist_lrs_x + dist_lrs_y * dist_lrs_y), where dist_lrs_x = the x-coordinate of the last trace - the x-coordinate of the source, dist_lrs_y = the y-coordinate of the last trace - the y-coordinate of the source, Calculate the distance dist_ws from the grid point (i, j) to the source using the following formula: dist_ws = sqrt(dist_ws_x * dist_ws_x + dist_ws_y * dist_ws_y), where dist_ws_x = the x-coordinate of the grid point - the x-coordinate of the source, dist_ws_y = the y-coordinate of the grid point - the y-coordinate of the source, When the distance from the grid point to the geophone is less than the distance from the last trace to the geophone, perform the following operations: Define the amplitude-preserving time mask_qg and the protection flag mask. mask = 1 indicates protection, mask = 0 indicates no protection, and the default mask = 1; calculate the grid point time mask_time using the following formula: mask_time = (dist_ws + sqrt((dx[m] -firstaxis_r_x)*(dx[m] - firstaxis_r_x)+(dy[m]-firstaxis_r_y)*(dy[m] -firstaxis_r_y))) / vel*1000.0 / dt where firstaxis_r_x represents the abscissa of the first trace geophone, and firstaxis_r_y represents the ordinate of the first trace geophone; When mask_time < mask_qg, mask = 0; When mask_time >= mask_qg, if (dist_frs_x*dist_ws_x+dist_frs_y*dist_ws_y) / dist_frs is greater than -p_dis2*dist_frs, and (dist_lrs_x*dist_ws_x+dist_lrs_y*dist_ws_y) / dist_lrs is greater than -p_dis3*dist_lrs, then mask = 0; where p_dis2 is the user-defined first cut ratio, and p_dis3 is the user-defined last cut ratio. The initial velocity vel_temp of the reflected light at the grid point is calculated using the following formula: vel_temp=vel-vel_k, where vel_k=10; The first arrival time (time) from the seismic source to the receiver point after reflection from the grid point is calculated using the following formula. Set time[tnum+2][n_grid] to 0. When mask = 1, time[i][j]=(dist_ws+sqrt(dist_wr_x*dist_wr_x+dist_wr_y*dist_wr_y)) / vel_temp*1000.0 / dt,i∈[0,tnum+2],j∈[0,n_grid] Where, dist_wr_x = x-coordinate of grid point (i,j) - x-coordinate of k channels, dist_wr_y = y coordinate of grid point (i,j) - k y coordinates.

9. The method for setting an external dynamic noise source positioning and scanning switch according to claim 8, characterized in that: The operation of step (33) includes: One grid point i corresponds to one Scan_judgmentp[i] value; Perform the following operations for each energy spectrum grid point: If the initial arrival time time[i][j] > 0.0 for more than half of the grid points, then set Scan_judgment[sm] = 1, sm ∈ [0, nx*ny); otherwise, set Scan_judgment[sm] = 0.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores at least one computer-executable program, which, when executed by the computer, causes the computer to perform the steps of the method for setting an external dynamic noise source localization scanning switch as described in any one of claims 1-9.