Thursday, 17 October 2013

Marine Processing - Part 7 | Picking Velocities

This sequence of blog posts will build up into a complete description of a 2D marine processing sequence and how it is derived.
No processing sequence is definitive and techniques vary with   time (and software), however the idea is to provide a practical guide for applying seismic processing theory.

The seismic line used is TRV-434 from the Taranaki Basin offshore New Zealand. It is the same marine line used in our basic tutorial dataset.

The data are available from New Zealand Petroleum and Minerals, under the Ministry of Economic Development under the “Open File” System.
The processing sequence developed so far:

  • Reformat from field data (in this case, SEGY)
  • Apply a combined minimum-phase conversion and anti-alias filter
  • Resample to a 4ms sample interval

  • Assign 2D marine geometry; 12.5m CDP spacing and 60 fold gathers
  • QC shots and near trace plots

  • Amplitude recovery using a T2 Spherical divergence correction
  • Amplitude QC and Edit using peak and RMS amplitude displays

  • Swell noise suppression using projective filtering
  • Interpolation to 6.25m group interval, 480 channels to unwrap spatially aliased dips
  • Tau-p transform 500ms robust AGC "wrap", 960 p-values and transform range from -1400ms -1 to +1400 ms-1
  • Tail mute to remove linear arrivals and linear noise
  • Predictive deconvolution: 32ms gap, 480 ms operator
  • Rho filter for low frequency compensation
  • Inverse Tau-p transfrom
  • Interpolation back to 25m group interval, 240 channels

We have now reached a stage where the “pre-processing” of the data is complete, and we have “cleaned” the shot gathers. The next stage is to create a model of the seismic velocities in the sub-surface.

This velocity field will be used in three main ways:
  1. to apply the Normal Moveout Correction, as part for the Common MidPoint (CMP, also called Common Depth Point, CDP) processing approach, and thus improve the signal-to-noise ratio
  2. to help remove the multiples (delayed copies of the primary reflection signals caused by reverberation in the sub-surface)
  3. to focus the seismic energy and form a crisp image - at the moment some of the signal is scattered off the sub-surface geology
For the majority of processing sequences, the velocity field is created iteratively. This allows us to improve velocities for the pre-stack time migration; if there are steep dips we may have to pick velocities again.

I’ll cover velocity analysis in a few different posts – this first part will make use of synthetics and look at some of the issues we are going to face.

The basic mechanics of velocity analysis are broadly similar in all packages. At a given CDP location we test-apply different NMO velocities and review the results in multiple analysis windows. We can then select the appropriate velocity, at a given two-way-time value, that best flattens the hyperbolic reflection in the CDP gather.

The main analysis tools that are used are:

Constant Velocity Gathers (CVG) – the CDP is displayed in a series of panels, each is NMO corrected using a different constant velocity. The user picks the velocity which best flattens the gather at a given two-way-time value.

Constant Velocity Stacks (CVS) – a range of CDPs centred on the analysis location (typically 11 or 19 CDPs) are displayed as panels, each is NMO corrected using a different constant velocity. The user picks the “best” stacked image at each two-way-time value.

Velocity Spectra – a graphical display that shows a measure of trace-to-trace coherence once the NMO at a given velocity correction is applied to the data, creating a contour. This is usually semblance, but can also be stacked amplitude or other coherence measures. The user can then pick a velocity function by focusing on the “bright spots” caused by primary reflections.

A synthetic CDP gather (left) and its semblance spectrum (right). The velocities are displayed at the top of the semblance plot. The first event is at 400ms (TWT) with a velocity of 1480ms-1 (a typical seawater velocity). Stacking velocities generally, although not always, increase with depth

Other techniques for picking velocities include using a predetermined velocity function as a “guide”. Modifying this function, by applying a fixed percentage scaling for example, can be used to create a series of “variable velocity” panels (either stacks or NMO corrected gathers). These functions generally form a “fan” with a narrow range of velocities in the near-surface, and a wider range at depth.

The “variable velocity stacks” (VVS) and “variable velocity gathers” (VVG) are probably the most widely used tools for velocity analysis. There is a small risk that the velocity “fan” can be too narrow (missing the primary velocity trend), however modern tools allow you to recalculate this as a check. Most tools also allow the user to “mix and match” these displays, as well as test-apply velocity functions.

A typical set of velocity analysis displays windows, with semblance based on a “fan” of velocities around a central function (left), variable velocity gathers that match this fan (centre) and an NMO corrected gather with velocities displayed (right). Note how the gathers are over-corrected (up dip) at low velocities, flat on the central function, and under-corrected (down dip) at high velocities

Velocities and Depth
In the near surface, there is a long ray-path difference between the near-offset reflection and the far offset – this means there is a big “moveout difference” between the near and far offsets. At depth, this variation is reduced. As a result, not only is there less moveout difference at depth, the accuracy to which we can determine the velocity also reduces.
In practice this means that while we can get a good stacking velocity at depth quite easily, the velocity we pick for this from location to location could vary a lot in the deep part of the section. This can produce a “saw tooth” appearance for the deeper velocities that won’t impact on the stack, but could cause issues with other processes that use the velocity field.

Impact on velocity resolution and accuracy with two-way-time. The green ray-paths correspond to the far offset, and the pink ray-paths to the near offset (left). For a shallow event these ray-paths are very different, but at depth they converge. As a result, on the gather (centre) we see less moveout-difference with depth, making it harder to accurately determine the velocity and giving larger “bright spots” on the semblance spectra (right)

NMO Stretch
In the first 1500ms of the data and where the velocities are low, you will have very large NMO corrections – so large that the correction at the top and base of an event can be very different. This “stretches” seismic events and in doing so creates artificially low frequencies that need to be addressed; otherwise it will reduce the frequency of the stacked image.

We can address this in two ways: (i) using a “stretch mute percentage” which removes the stretched part of the wavelet once it has been distorted too much, or (ii) by manually picking a mute. You need to be aware of how the data is being muted while you are picking velocities.

A synthetic CDP gather (left) with NMO applied (right). Note now the reflection signal “smears” at far offsets, especially in the shallow part of the section where the NMO correction is the largest – this is “NMO stretch”. It arises when the NMO correction at the top of the reflection signal is significantly larger than that at the bottom of the reflection

Accuracy with Offset
The NMO equation is an approximation. As a result its accuracy decreases with increasing offset; meaning it’s harder to flatten gathers at far offsets. By adding a fourth order term to the equation (in addition to the second-order velocity term) the accuracy of the reflection moveout can be improved, allowing you to pick velocities at those far offsets.

A gather with offsets from 100m to 3075m (left). A gather with doubled offsets, from 200m to 6150m (right). The doubled spectra on the right show improved sensitivity at depth, as a result of the larger offset. However the large NMO correction and stretch factors distort the semblance in the shallow

Other Signals
The synthetic we are using is of course very “clean” – there are only reflections (and white noise) present, with no other signals to complicate velocity picking. In practice, even just adding in sea-floor multiples can make the primary velocities much more difficult to pick. 

A more complex synthetic including seafloor multiples, with no NMO correction applied (left), the correct primary NMO correction applied (centre), and the semblance spectrum (right). Note how the multiples, with a lower velocity, remain under-corrected on the centre panel  

Picking Velocities on Line TRV-434
The line we are working with has a water depth that corresponds to about 80ms TWT; this means short-period multiples as well as inter-bed multiples. The data is also not flat, so the shapes of the reflection hyperbolae will be distorted. Finally, we can also expect some distorted velocities from the diffractions, which will give high velocity anomalies.

A few tips when picking:
  • pick velocity control points no closer than 100ms TWT apart; closer than this it can be hard to ensure that you are not “cycle” skipping, and the interval velocities calculated between points as a QC check start to become unstable
  • seismic velocities almost always increase with depth. You can get small inversions, and with a near-constant velocity (such as in the near-surface sediments in deeper water) these are not worth worrying about. Large inversions usually require a big step down in interval velocity, and you need to consider what geology could produce that change
  • very large velocity “kicks” up or down probably indicate some kind of non-reflection signal.  Multiples give a low velocity trend, and diffractions will give an abnormally high velocity
  • look at the stacks carefully when picking to make sure you are looking at a primary reflection
We typically pick velocities at a fixed increment – say 2km or 4km – and interpolate. This works reasonably well, but where the geology varies rapidly (e.g. a submarine canyon), a tighter increment over that area may be more suitable.

On this line, there is a sedimentary sequence on the low CDP end of the line down to around 3000ms TWT, where we start to lose velocity sensitivity. Under this the velocities are faster. On the high CDP end the structure is more complex, with a metamorphic basement thrust fault block that has been pushed over the sedimentary packages.The complexity of the line makes it challenging, especially when there is still multiple contamination.

When picking velocities you may also be able to generate an “NMO Stretch Mute” to remove the worst of the NMO stretch distortions; ideally you should do this in conjunction with your velocities, although you can pick it separately on NMO corrected CDP gathers.
I’ll discuss how to check and edit your velocities in another post, but for now, here’s the kind of stacked section you should be aiming at with these data:

Two stacks of TRV434, using a single velocity function (above) and picked velocities (below). Both have a 120% stretch mute applied; note the improved resolution and reduction in low-frequent, reverberant multiples using the picked velocities 

By: Guy Maslen


  1. Hello,

    Thanks for the tuto, it is very clear.

    I am actually working with Claritas, and I would like to do a velocity analysis on a receiver gather in order to have an idea on the stack velocities. I know that those velocities won't be correct as my reflectors are maybe not flat but I would like to try. In this case, I have a series of one-fold CMP gathers and I am not sure that It works with Claritas. I tried to enter in the header "CDP=shot_peg", but my shot peg doesn t increase per one and also "CDP=1", it didn t really work.

    Do you think that it would be possible to do it ?


    1. That should be possible - you need to use the receiver station header (REC_PEG), and set up the cdp-trace counter (so SHOTID into CDPTRACE); I'd suggest then creating spectra from with the VELSPEC module and picking in the seismic viewer SV.

      If you have any issues with the geometry just mail - we've done this a lot with things like ocean bottom seismometer data, so its all petty straight forwards and they can walk you through the steps.



Total Pageviews