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:
Re-pick Velocities |
In practice, we only get coherent reflections (that are in
the correct lateral position) when the rock layers are flat and
continuous.
One way to think of this is to consider the “zero-offset
normal ray” section. This is where the reflected ray-path between a source and
receiver at the same location at the surface makes a right-angle with the
reflecting layer.
In effect the “zero offset normal ray” section is a stack – we have corrected the source-receiver offset to zero using the NMO correction on a CDP gather, and then stacked (summed) the traces together.
As well as the “ray path” view we can also think of how
waves propagate based on Huygen’s
Principle. Where we have discontinuities (such as faults, or intrusions)
the secondary wavelets used in Huygen’s construction will not fully
constructively or destructively interfere, giving rise to diffractions.
When looking at a stacked section, the key things to
remember are that:
- dipping events will be mispositioned laterally and appear less steep than they really are
- the steeper the dip the greater the degree of mispositioning
- discontinuities (such as faults, or intrusions) will give rise to diffractions
- diffracted events may cross reflected events
In order to resolve these issues we need to migrate the data.
Migration uses a mathematical model to reposition data to
its correct lateral position and collapse diffractions. This usually requires some kind of velocity
model; as computation speeds have improved it has become practical to use
algorithms that can work with more complex – or realistic – velocity
models.
Post stack migrations (of the type shown above) have largely
been replaced by pre-stack migration techniques. In pre-stack migrations the data are formed
into offset planes which are migrated to their near-offset position and time,
which replaces the NMO correction and the migration stage.
In this case the line we are working on has some fairly steep
dips and complex ray-paths; after a couple of rounds of velocity
picking you will have come across some situations where the velocities are
hard to pick; this is because we have
diffracted events (which do not have hyperbolic moveout) as well as dipping
events.
Dipping events cause problems not only because the
reflection hyperbola is distorted, but because the “common mid-point” is
smeared and shifted up-dip.
Pre-stack migration resolves this issue allowing better
velocities to be picked and improved focussing to be obtained on dipping
events. For that reason it is common to create a new velocity field after
pre-stack time migration, and, in some cases, run a second iteration of the
pre-stack time migration with that new velocity model.
Velocities picked on pre-stack time migrated data are a
better approximation to the actual RMS velocity of the sub-surface layers, and
so can be more useful as a starting point for depth conversion.
A good way to understand the migration parameters is to look
at some impulse response functions; this will show you the shape of the
migration operator with different parameters.
You can do this by zeroing all of the traces, and placing some suitable ricker wavelets at
different time values then running migrations.
The parameters we can vary do two things. They serve to speed up the migration (by
limiting the operator in terms of its spatial extent) as well as reduce or
remove artefacts from the data.
The main artefacts we want to eliminate are wavelet stretch, which occurs for the same reason as NMO
stretch which picking velocities, and aliasing of the operator shape. The
operator becomes aliased because (usually) the vertical sampling of the data
(time sample interval converted to distance) is at a much higher resolution
than the horizontal sampling (the CDP spacing).
In this case, we have a 4ms sample interval at a constant
velocity of 1480ms-1, which corresponds to a 2.96m vertical
resolution (remembering we are looking at two-way-time), and the CDP spacing is
12.5m. As a result the operator will be spatially
aliased at high angles.
The main controls we usually have in a pre-stack time migration
are:
Name
|
Description
|
Impact
|
Migration
Aperture, or Range
|
The
horizontal distance that a trace is allowed to migrate. Cuts off the migration operator at a
specific distance, usually from the CDP position of the trace
pre-migration.
|
Reduces how
many input traces contribute to each output trace, and so makes the migration
run faster. Reduces the ability to
image steep dip, deep events.
|
Migration
Angle
|
Limits the
maximum angle of the migration, usually measured from the vertical trace at
the CDP location out to the operator, so that 90 degrees is horizontal.
|
Reduces how
far each trace migrates, so requires less calculation runs more quickly if
applied in the algorithm and not as a mute.
Can act as a way of reducing both stretch and aliasing, and is
approximately the maximum dip to image.
|
Anti-Alias
Filtering
|
Acts to
limit the operator shape where it might become aliased or distorted
spatially; usually has various degrees
(weak, medium, strong) that can be applied
|
Little
impact on speed of migration, as it can be computationally expensive to
compute the limits even though less data is migrated; if applied as a mute can actually slow down
the migration. Avoid artefacts where
you have rapid lateral or vertical velocity gradients, and a single dip value
is inappropriate.
|
Stretch
Muting
|
Acts to
limit the operator if the shape of the wavelet is too distorted in time.
Similar effect to NMO stretch.
|
Reduces
low-frequency artefacts in the shallow-mid portion of the data. May cause the near surface to be muted,
unless there is a “near angle protection” option.
|
Pre-stack time migration is a zero-offset 'image ray' migration. This means the results will
look like data that has zero offset between source and receiver. However, unlike the NMO correction,
these will also be corrected for the dip of any reflectors. In the zero-offset 'image ray' migration, the rays are normal to the surface - not the rock interface.
The results of a pre-stack time migration will be zero-offset
image ray gathers; these will be “flattened gathers” if:
- the input velocity model was correct
- we don’t have to worry about anisotropy
- we don’t have to worry about the ray paths being refracted
In practice, these are all likely to be approximations. The
velocities we supplied came from normal-ray gathers, and so as we identified
earlier they are contaminated by dip.
Beyond 45° or so, we need to start worrying about
anisotropic behaviours; this is where the simple second-order normal moveout equation breaks
down and we must pick
higher order terms and use anisotropic migrations.
Finally, if we have significant refractions as a result of
rapid lateral or vertical velocity gradients, then we need to think about using
a pre-stack
depth migration.
When we examine the gathers after migration we can look at
whether we need to modify or re-
pick the velocities (sometimes called picking
residual moveout or RMO) before making a final stack.
If the residual moveout is large it might be worth using the
new velocity field and running a new migration. This could be another iteration
of the same algorithm, however if there are non-hyperbolic components to the
residual moveout then you might need to consider if it is worth the time and
effort to move to a more sophisticated migration algorithm.