Interpolation / reconstruction
Learning objectives
- Describe the trace-interpolation problem and typical sources of missing data
- Compare linear fill, f-k (POCS) and learned (CNN) reconstruction, and say what each assumes
- Identify the gap-size-to-wavelength constraint that limits any interpolation
- Recognise when ML interpolation is worth the training cost
Real seismic data is rarely complete. Dead channels, bad shots, navigation gaps, streamer or cable failures, infrastructure shadows, and planned under-sampling all leave missing traces in otherwise useful gathers. Downstream processing (migration, multiple elimination, AVO) assumes regular sampling; missing traces introduce aliasing, amplitude drops, or failed algorithm convergence. Trace interpolation fills the gaps.
1. The spectrum of interpolators
- Linear / nearest-trace fill. Interpolate each sample from the nearest live neighbours. Cheap, and nearly exact for events that are flat across the gap; once the moveout across a gap exceeds about a third of a period, the separation at which the two blended copies part, it splits a dipping event into two weaker copies.
- Sparse Radon interpolation. Fit events to a parabolic or hyperbolic Radon basis, then resample to the missing trace positions. Handles curved events well if the events are sparse.
- f-x prediction (Spitz interpolation). Assumes each frequency slice is predictable along x, as it is for a few linear events in a window; the prediction filter estimated at unaliased low frequencies interpolates the aliased high ones, which makes it the classical answer to regular decimation. Needs regular sampling, and windows short enough for events to look straight.
- Curvelet / seislet / POCS. Threshold in a transform domain designed to make seismic events sparse; inverse-transform with missing positions filled. The strongest classical family, and at its best when the gaps are irregular.
- CNN-based (U-Net). Train a network on pairs of a gapped gather and its complete original, so it learns to map one to the other. It learns a prior on what seismic events look like from the training data.
2. The widget
Take a complete gather, remove some of its traces, and rebuild them twice from what survives: once by linear interpolation between the nearest live traces, once by f-k POCS, which assumes the gather is made of a few straight events. Both are scored against the complete gather, which neither method sees. Start with the default, 30 % missing at random, and look at the far offsets of the shallow reflection in (b) before you move anything.
In the default state 36 of the 121 traces are missing at random. Linear fill is nearly exact on the flat near offsets, but the worst hole, three traces at 1450 to 1475 m, spans 26 ms of moveout on the shallow reflection, nearly twice the 14 ms at which a blend of the wavelets on its two sides parts into two peaks, and there linear fill splits the event into two weaker copies (look at (d)). Scored on the missing traces only, linear fill reaches 4.5 dB and f-k POCS 13.5 dB, where 0 dB is what a dead trace scores. There is no learned network in the figure: a browser cannot honestly run a trained U-Net, so POCS stands for any method that carries a prior about what events look like.
Now remove every second trace (Regular, 50 %). Linear fill scores 8.8 dB, because no hole is wider than one trace, but f-k POCS drops to 0.0 dB: in (f) the gapped gather has a wrong-dip copy of its spectrum exactly as bright as the signal, POCS keeps both, and on the missing traces they cancel. Remove the same number, 61 traces, at random and POCS recovers to 10.5 dB against 3.6 dB for linear fill. Take fewer at a regular interval, 30 %, and the copy in (f) is 8.2 dB weaker than the signal: POCS scores 22.3 dB, better than the 13.5 dB it reaches on 30 % random gaps, because no hole is wider than one trace. A dead cable (one block of 12 traces at 40 Hz) defeats both: linear fill scores −2.4 dB and f-k POCS −3.0 dB, and in (e) only the two POCS traces at the edges of the block rise above 0 dB. What breaks a method is the largest hole and how the gaps are arranged, not the percentage.
3. The gap-size-to-wavelength constraint
Any interpolator can only reconstruct events that are adequately sampled in the surviving traces. If the trace spacing is and the steepest event (the slowest apparent velocity) has horizontal wavelength , the sampling criterion (Nyquist) must be preserved by the surviving traces, at the highest frequency present, not only at the dominant one. For an event with apparent slowness at frequency , , so the criterion says the moveout across a gap, , must stay under half a period, , up to the top of the band. Compared at the dominant frequency, half a period is only a rule of thumb for a hole, and the figure tests a stricter limit: linear fill splits an event once the moveout across a hole passes the separation at which the two blended copies part, about a third of a period. Removing every second trace doubles and makes steep events alias coherently. Removing the same number at random leaves most gaps small and spreads the aliasing as weak noise across the f-k plane, which sparsity-based methods (POCS, curvelets) can remove. What defeats them is decimation that leaves a coarser regular grid (every second or every fourth trace kept), whose alias copy is as strong as the signal; taking one trace in three or four at a regular spacing leaves weaker copies, and POCS does well. Regular decimation is where f-x prediction is used: its filters, estimated at the unaliased low frequencies, predict the aliased high ones (Spitz, 1991).
ML interpolation bends but does not break this rule: it can recover aliased events that match its training distribution, but it cannot fabricate signal from nothing. Use interpolation to fill small gaps, not to substitute for proper acquisition.
4. Training-data strategy
- Synthetic gathers with known "true" ground truth; apply synthetic gap patterns; train end-to-end.
- Real dense gathers, synthetically gap-ify; this captures real noise and wavelet statistics.
- Self-supervised (Masked Autoencoder): hide random traces, train the network to predict them from context alone. No ground truth needed beyond the original data.
- Domain-specific pre-training + fine-tune: generalist trained on global data + small local fine-tune.
5. Production deployment
- Regularisation step in the processing flow. Reconstruct to a regular grid once, use the filled gather downstream. Same place in the flow as classical interpolation, often with higher fidelity on data like the training set.
- Adaptive integration with migration. Some flows do ML-reconstructed traces only within the migration aperture where they affect the output; outside the aperture, leave gaps as is to save cost.
- Uncertainty flagging. Tag reconstructed traces with lower weights in downstream processing; flag the fact that these are interpolated, not observed.
6. Failure modes to QC
- Event mis-location. CNN shifts an event slightly off its correct position. Symptom: time shift at reconstructed traces relative to neighbours. Fix: overlap patches; cross-validate with held-out traces.
- Hallucination. CNN adds a plausible event that was never in the data. Symptom: new reflectors appearing in the reconstructed gather that aren't in adjacent gathers. Fix: check spatial consistency.
- Amplitude distortion. Reconstructed amplitudes don't match trend. Fix: post-hoc amplitude balancing to match neighbours.
- Domain shift. Model trained on hyperbolic events applied to a field with faults produces wrong geometry across fault planes. Fix: domain-specific fine-tuning.
Every interpolator is limited by how well the surviving traces sample the steepest event (); priors (sparsity, Radon, a trained CNN) stretch that limit only for events and gap patterns that look like what the prior expects, so every reconstructed trace needs residual and uncertainty QC.
Where this goes next
Section 9.4 covers first-break picking, an arrival-time estimation task that has become the canonical success story for ML in seismic processing. Production networks now pick first breaks 100× faster than humans at comparable accuracy, freeing interpreter time for higher-value work.
References
- Yilmaz, Ö. (2001). Seismic Data Analysis (2 vols.). SEG.
- Spitz, S. (1991). Seismic trace interpolation in the F-X domain. Geophysics, 56, 785-794.
- Abma, R., Kabir, N. (2006). 3D interpolation of irregular data with a POCS algorithm. Geophysics, 71, E91-E97.
- Herrmann, F. J., Hennenfent, G. (2008). Non-parametric seismic data recovery with curvelet frames. Geophysical Journal International, 173, 233-248.
- Trad, D. (2009). Five-dimensional interpolation: recovering from acquisition constraints. Geophysics, 74, V123-V132.
- Wang, B., Zhang, N., Lu, W., Wang, J. (2019). Deep-learning-based seismic data interpolation: a preliminary result. Geophysics, 84, V11-V20.