Wave separation (NN-Residual)

Description

This module runs a pretrained neural-network model over a full 3D seismic volume to separate the wavefield into the component of interest and its residual, producing a new output dataset with unwanted energy removed. Because a full volume can be very large, the survey is broken into overlapping inline/crossline patches that are sent through the network individually (and can be distributed across a compute cluster), then blended back together into a seamless output volume. Use this module when a data-driven, learned separation is preferable to a conventional model-based filter, for example for attenuating complex or hard-to-model noise that a classical filter would struggle to distinguish from signal.

Input data

SEG-Y input file

The seismic volume to be processed. Traces are read directly from this dataset tile by tile as the module works through the survey, rather than being loaded as a single in-memory gather.

Trace headers

The trace header collection describing the positions, offsets and other attributes of the traces to be processed. It is used to determine each trace's inline/crossline location and offset so traces can be assigned to the correct spatial patch.

Bin grid

The survey's inline/crossline bin grid definition, used to establish the spatial extent and coordinate system of the volume so that inline/crossline patches can be laid out consistently across the survey.

Gather index

The index that groups the input traces into gathers, used together with the trace headers and bin grid to organize the volume for tiled processing.

Parameters

Output file name (without extension)

Base name (no file extension) for the new internal dataset that will hold the separated wavefield. The module creates an internal project volume using this name; if processing is interrupted and restarted with the same name, previously completed tiles are detected and are not recomputed.

Default: none — a name must be supplied before the flow can run.

Patch Configuration

Patch size IL/XL

Size, in traces, of the square inline x crossline patch fed to the neural network at one time; this also sets the size of the processing tiles used to divide the survey. Larger patches give the network more spatial context to recognize coherent patterns and can reduce the total number of tile boundaries, but increase memory use and run time per patch; smaller patches process faster and use less memory but give the network less lateral context.

Default: 80 traces (range 1 to 2048).

Patch size T

Length, in time samples, of the time window given to the neural network for each patch. A longer window gives the network more temporal context to recognize full wavelet shapes and wave trains, at the cost of more compute per patch; too short a window may cut across events and reduce the network's ability to distinguish signal from noise.

Default: 80 samples (range 1 to 16384).

Overlap %

Percentage overlap between neighboring patches. The extra overlap gives each patch additional spatial context around its edges and lets adjacent results be blended together (weighted averaging) when the volume is reassembled, which reduces visible seams at tile boundaries. A higher percentage gives smoother, more seamless results at the cost of extra compute, since the overlapping area is processed more than once; a lower percentage runs faster but may leave subtle boundary artifacts between tiles.

Default: 15% (range 0 to 90%).

Processing Configuration

Start time

Start, in seconds, of the time interval over which the neural network is applied. Samples earlier than this time are set to zero in the output, so only the interval between Start time and End time is processed and preserved. Set this to the top of the time range where the wave type you want to separate actually occurs, for example just above the target reflection or noise interval.

Default: 0.0 seconds (range 0.0 to 100.0 seconds).

End time

End, in seconds, of the time interval over which the neural network is applied. Samples later than this time are set to zero in the output, matching the behavior of Start time. Set this to cover the full time range of interest; processing outside [Start time, End time] is not passed through, it is discarded.

Default: 5.0 seconds (range 0.001 to 100.0 seconds).

Use FP16 for memory optimization

When enabled, tile data is compressed to half-precision (16-bit) floating point before being exchanged between processing tasks, reducing the memory and network bandwidth needed for very large volumes or distributed runs, at the cost of a small loss of numerical precision. Enable it if you are processing a very large survey or running short on memory; leave it disabled when maximum numerical accuracy is required.

Default: off (disabled).

Output data

Separated wavefield volume

A new dataset, named from Output file name, containing the wavefield estimated by the neural network for the interval between Start time and End time. It has the same trace geometry as the input over the traces that were processed; samples outside the processed time window, and traces beyond the offsets considered per bin, are written as zero.

References

Zhang, K., Zuo, W., Chen, Y., Meng, D. and Zhang, L., 2017, Beyond a Gaussian denoiser: Residual learning of deep CNN for image denoising: IEEE Transactions on Image Processing, 26, 3142-3155.