|
<< Click to Display Table of Contents >> Navigation: Migration > Depth velocity builder (horizontal) |
The Depth velocity builder (horizontal) is an interactive depth velocity model-building module that refines interval velocity layer by layer using horizontal velocity analysis (HVA). For each geological layer defined by time horizons, the module performs Kirchhoff pre-stack depth migration (PSDM) into common image gathers (CIGs), then sweeps a range of velocity perturbations and computes depth-domain semblance across the CIG offsets. The velocity that produces the flattest CIG — indicated by the highest semblance — is selected as the optimal interval velocity for that layer.
The workflow is layer-stripping: you process the shallowest layer first, accept the velocity update, then move to the next layer downward. In automatic mode the module selects velocities from the semblance peak without user interaction. In manual (interactive) mode you choose which layer to analyse, inspect the horizontal semblance panels for both the inline and crossline directions, pick or confirm the velocity, and then commit the result. The output is an updated depth velocity model that can be fed back into the next PSDM iteration.
This module requires a pre-existing depth velocity model and a set of time horizons that define the layer boundaries. Well ties can be provided to constrain the velocity analysis near borehole locations. The module supports both 2D and 3D datasets and can run on distributed computing nodes or GPU hardware for large-volume datasets.
The starting depth velocity model (GDepthVelocityItem). This is the velocity gather in the depth domain that the module will refine. It must cover the full survey area and all depth levels you intend to update. Connect the output of a previous depth velocity step or an initial model import here. The grid spacing (DX, DY) of this model is read automatically and shown in the DX / DY parameter fields.
Optional. A GWellsTiesItem containing well log velocity or check-shot data. When connected, borehole velocity measurements constrain the horizontal semblance analysis near well locations, preventing the optimiser from choosing velocities that are geologically inconsistent with hard data. Leave unconnected if no well data is available.
Required. A GHorizonPickingItem defining the layer boundaries used to segment the depth velocity model. Each horizon corresponds to the top of one velocity layer. The number of layers in this picking item determines how many layers the module will process. Connect this from the time horizon picking result or from a previous iteration of this module.
The file handle to the pre-stack seismic data in SEG-Y format (GReadWriteAbstractItem). This is the raw or pre-conditioned pre-stack data that will be migrated to form CIGs. The SEG-Y read parameters (byte locations for inline, crossline, coordinates, offset, etc.) are configured in the SegyReadParams settings group.
The trace header index (GTraceVectorItem) associated with the input SEG-Y data. This provides the spatial geometry — source and receiver coordinates, bin assignments, offsets — needed for the migration engine to position each trace correctly in the subsurface image.
Optional. A post-stack (stacked) seismic section in the time domain. When connected, the module displays the stack alongside the depth-converted sections (inline and crossline) in the graphical views, making it easier to visually compare the time image to the depth image at each iteration. The stack does not affect the velocity analysis calculation.
Optional. A GPointVectorItem defining a polygon or set of boundary points that restrict the velocity analysis to a specific geographic area. Only bins falling inside this boundary will be included in the CIG computation and velocity update. Use this to focus computation on a target zone or to exclude unreliable data at the survey edges.
When enabled (default: on), the module processes all layers sequentially without asking the user to confirm each layer. The semblance peak is used to select the best velocity automatically. When disabled, the module presents a layer selection dialog before each run, allowing you to inspect and manually pick velocities for one layer at a time in the interactive graphical panels. Disable automatic mode for quality control or when manual intervention is required in complex geological areas.
Default: off. Enable for 3D survey datasets. When enabled, the calculation area grid (inline and crossline ranges and steps) becomes active and the module builds CIGs using the full 3D geometry. For 2D surveys, leave this off. Changing this setting updates the calculation bins display on the map panel.
Read-only display field showing the index and name of the layer most recently processed. The format is layer_index - layer_name, for example "2 - Top Cretaceous". This is updated automatically after each layer calculation completes. Use it to track progress during a multi-layer run.
Read-only. The inline grid spacing of the input depth velocity model, in metres (default: 5 m). This value is populated automatically when the depth velocity input is connected. It governs the spatial sampling of the velocity model along the inline direction. Marked as "important" because an incorrect DX value will misalign the migration operator with the model grid and produce artefacts in the CIGs.
Read-only. The crossline grid spacing of the input depth velocity model, in metres (default: 5 m). Populated automatically from the input model. Analogous to DX but in the crossline direction. Both DX and DY must accurately reflect the model grid for the migration to be spatially correct.
The maximum horizontal distance (radius) from an output bin within which input traces are considered during Kirchhoff migration, in metres (default: 1500 m). A larger aperture captures more energy from dipping reflectors and improves imaging of steep dips, but increases computation time. A smaller aperture speeds up processing but may degrade image quality in areas of complex structure. Set this to at least the maximum expected lateral reflector displacement at the target depth.
Read-only. The reference datum elevation in metres (default: 0 m) used as the top of the depth velocity model. This value is inherited from the input depth velocity item and must be consistent across all inputs. If your survey uses a non-zero datum (e.g., for land data with topography), ensure the input velocity model was built to that same datum.
The near-surface reference velocity used to compute travel times from the datum to the first layer, in m/s (default: 1850 m/s). This velocity is applied above the topography or above the first horizon when the datum is non-zero. Set this to a representative value for the weathering layer or water layer in marine surveys (typically 1480–1500 m/s for water).
An integer decimation factor (range 1–100, default: 1) that controls how many depth samples are skipped when constructing travel-time tables. A value of 1 uses every depth sample; a value of 2 uses every second sample, and so on. Increasing this factor reduces memory usage and speeds up the time-table computation at the cost of depth resolution. For exploration-scale targets, values of 2–5 are often acceptable.
Hidden parameter (default: off). When enabled, applies a stretching correction to the migrated CIG amplitudes. This is an advanced option not exposed in standard processing workflows.
Hidden parameter (default: 0%). The percentage stretch applied to CIG amplitudes when Use stretching factor is enabled. Only relevant when the corresponding toggle is active.
Parameter group controlling how the Kirchhoff PSDM migration is performed when forming the common image gathers used for velocity analysis.
The minimum source-receiver offset included in the migrated CIG, in metres (default: 0 m). Traces with offsets below this value are excluded. Use a non-zero minimum to mute the direct wave or to avoid near-offset noise that degrades the semblance calculation.
The maximum source-receiver offset included in the migrated CIG, in metres (default: 3000 m). Increasing this value uses longer offsets that provide more AVO / velocity discrimination, but may include refracted energy or noise. Set this to the maximum usable offset in your dataset.
The offset bin width in the output CIG, in metres (default: 200 m). Traces within each offset bin are summed (partial stack) to improve signal-to-noise before semblance computation. A finer increment provides more offset detail but increases memory and computation. A coarser increment improves noise suppression.
An integer decimation factor (range 1–100, default: 1) applied to the trace density during migration. A value of 1 uses all traces; a value of 2 uses every other trace, and so on. Increasing this value reduces computation time for large datasets at the cost of CIG fold and semblance quality. Use values greater than 1 for a quick QC run before the final analysis.
Controls the strength of the anti-aliasing filter applied to the Kirchhoff migration operator (default: 0, meaning anti-aliasing is inactive). A positive value activates a low-pass filter on the migration operator that suppresses spatial aliasing artefacts in the CIG when the trace spacing is coarse relative to the maximum frequency. Increase this if you see linear noise streaks in the migrated gathers.
The maximum frequency passed by the migration operator, in Hz (default: 150 Hz). Energy above this frequency is not migrated, which reduces aliasing and noise. Set this to the highest meaningful signal frequency in your data. For typical reflection seismic data with a dominant frequency of 30–60 Hz, values of 80–120 Hz are common.
The maximum opening half-angle of the migration operator, in degrees (default: 30°). Traces arriving at angles greater than this value relative to the vertical are excluded from the CIG. This mutes the low-velocity noise cone and overturned-wave energy. Increase for steeply dipping targets or salt flanks; decrease to suppress migration noise in structurally simple areas.
When enabled (default: on), applies the rho (derivative) filter as part of the Kirchhoff migration operator. The rho filter compensates for the 3D geometric spreading effect and produces amplitudes that are proportional to reflection coefficients. Disable only if your data has already been pre-whitened or rho-filtered upstream.
Parameter group defining which bins are included in the velocity analysis and how they are selected.
Determines how the analysis locations (CIG bins) are chosen (default: Well and marker). Three options are available: Well and marker — CIGs are computed at bins nearest to well marker locations, ideal when borehole constraints are available; Wells — CIGs are computed at bins nearest to all connected well positions; Grid — CIGs are computed at a regular inline/crossline grid defined by the First/Last/Step inline and crossline parameters below.
The first inline to include in the analysis grid (default: -1, meaning no limit — use the survey extent). Active only when Analysis by is set to Grid. Set a specific inline number to restrict the analysis to a sub-volume.
The last inline to include in the analysis grid (default: -1, no limit). Active only when Analysis by is set to Grid.
The first crossline to include in the analysis grid (default: -1, no limit). Active only when Analysis by is set to Grid.
The last crossline to include in the analysis grid (default: -1, no limit). Active only when Analysis by is set to Grid.
The spacing between analysis CIG locations in the inline direction, in inline numbers (default: 45). Active only when Analysis by is set to Grid. A value of 45 means one CIG is computed every 45 inlines. Reduce this to increase the spatial density of the velocity analysis; increase it to speed up computation over a coarser grid.
The spacing between analysis CIG locations in the crossline direction, in crossline numbers (default: 45). Analogous to Step along inLine number but in the crossline direction.
Default: on. When enabled, the velocity analysis for each layer is restricted to depth samples that fall within that layer (between its top and bottom horizons). This is the standard layer-stripping mode and ensures that cross-layer contamination does not occur. Disable only for special research workflows.
Default: on. When enabled, analysis bins outside the Bound points vector polygon are excluded. This is effective only when a Bound points vector input is connected. Disable to ignore the boundary and analyse the full survey extent.
Parameter group controlling how depth-domain CIGs are converted to the time domain for display alongside the input time stack.
The sample interval used when converting the depth-domain CIG back to the time domain for the time-domain display panel, in seconds (default: 0.004 s = 4 ms). This should match the sample rate of the input seismic data for the time-domain displays to align correctly with the input stack overlay.
Parameter group defining how the velocity perturbation search is conducted and how the optimal velocity is selected from the semblance panel.
Default: on. When enabled, the velocity analysis of the first (shallowest) layer begins at the topographic surface rather than at the datum. This is important for land surveys with significant topographic relief where the datum may be well above or below the surface. Disable this option only if your data has been fully corrected to a flat datum with no residual topographic effects.
Default: on. When enabled, the velocity search within each layer allows for a vertical velocity gradient (velocity varying with depth within the layer) rather than assuming a constant velocity throughout. This produces more realistic velocity models for thick sedimentary sequences where velocity increases with compaction depth. Disable for thin layers where a gradient would be poorly constrained.
Default: on. When Gradient layer analysis is enabled, this option applies spatial smoothing to the computed velocity gradient across the layer, producing a geologically smooth lateral gradient variation. Disable to preserve the raw picked gradient values without additional smoothing.
Default: off. When enabled, the velocity model is extrapolated from the last analysed layer boundary down to the bottom of the model. Use this if your data does not provide sufficient illumination at depth to build a reliable velocity below the deepest horizon.
The maximum fractional velocity decrease tested during the semblance sweep, expressed as a proportion of the current model velocity (default: 0.10 = 10%). For example, if the current model velocity is 2000 m/s and Deviation V min is 0.10, velocities as low as 1800 m/s will be tested. Increase this value if you suspect the current model is significantly too fast.
The maximum fractional velocity increase tested during the semblance sweep (default: 0.10 = 10%). Together with Deviation V min, these two parameters define the full velocity search range symmetrically about the current model velocity. Wider search ranges improve robustness when the starting model is poor, but increase computation time.
The fractional velocity step size used during the travel-time table (TT) calculation phase of the velocity search (default: 0.05 = 5%). A finer step yields a more precise velocity pick but requires more travel-time table computations. The minimum value is 0.0000001. This step is used for the coarser first-pass search via travel times; the migration step (DVStepMig) may be finer.
The fractional velocity step size used during the PSDM migration phase of the velocity search (default: 0.05 = 5%). Internally, the effective migration step is capped at the travel-time step (DVStepTT) so it is never coarser than the TT step. Use a smaller value to refine the migration-based semblance scan.
The start of the time window used for the grid-based velocity analysis, in seconds (default: 0 s). Active when Analysis by is set to Grid. Defines the top of the depth/time range over which semblance is computed. Set this to the two-way time of the shallowest reflector of interest.
The end of the time window used for the grid-based velocity analysis, in seconds (default: 5 s). Set this to the two-way time of the deepest reflector you wish to analyse.
The time step between successive analysis horizons in the grid-based mode, in seconds (default: 0.5 s = 500 ms). A finer step produces more layers and finer vertical velocity resolution but increases computation time proportionally. The minimum allowed value is 4 ms.
The distance above the layer boundary at which the velocity analysis window begins, in metres (default: 200 m). Together with Shift down, this defines a depth window centred on the layer boundary within which the migrated CIG amplitudes are summed to evaluate semblance for each candidate velocity. Increase this value to include more of the layer in the analysis.
The distance below the layer boundary at which the velocity analysis window ends, in metres (default: 200 m). Together with Shift up, this defines the full depth range of the CIG used for semblance computation at each candidate velocity.
The depth sampling step within the analysis window, in metres (default: 20 m). Defines the vertical spacing at which the CIG is sampled within the Shift up / Shift down window when computing semblance. A finer step provides more samples for averaging but increases computation time.
The distance above the current CIG depth position used for the semblance calculation window, in metres (default: 60 m). This controls the vertical smoothing of the semblance along the depth axis. A larger value produces a smoother semblance panel that is easier to pick but may blur thin-layer velocity contrasts.
The distance below the current CIG depth position used for the semblance calculation window, in metres (default: 20 m). The asymmetric window (60 m up, 20 m down) biases the semblance computation slightly toward the shallower part of each layer, which is appropriate when the semblance panel should reflect the velocity at the layer top rather than its base.
The spatial interpolation method used to spread velocity picks across the full map between analysis bins (default: Voronoi). Three options: Voronoi — nearest-neighbour (each unsampled bin takes the value of its closest CIG); ABOS — an adaptive blended interpolation; Triang — triangulation-based linear interpolation. Voronoi is fast and suitable for well-sampled grids; Triangulation produces smoother lateral transitions; ABOS may handle irregular sampling better.
Parameter group controlling spatial smoothing applied to the horizontal semblance panels displayed in the inline and crossline views. Smoothing helps suppress noise in the semblance image to make the velocity pick clearer.
The lateral smoothing half-width applied to the semblance display, in traces (default: 10 traces). A larger value produces a smoother semblance image along the horizontal (inline/crossline) axis of the display, which can reveal the dominant velocity trend more clearly when the raw semblance is noisy.
The vertical smoothing half-width applied to the semblance display, in samples (default: 10 samples). A larger value smooths the semblance along the depth/velocity axis of the display. Use together with Horizontal window to tune the visual quality of the semblance panel for picking.
Default: on. When enabled, semblance values equal to the Ignore value are excluded from the smoothing computation. This prevents zero-fill or missing-data areas from biasing the smoothed semblance result.
The semblance value treated as a no-data marker during smoothing (default: 0). Cells in the semblance matrix with this exact value are excluded from the smoothing window. Change this only if your semblance data uses a different sentinel value for missing data.
The maximum search radius in pixels used during semblance smoothing (default: 10 pixels). This caps the neighbourhood size for the smoothing kernel. Increase if the horizontal and vertical window values are large and you want the smoothing to propagate further from each cell.
Parameter group controlling how the picked horizon surfaces are interpolated onto a regular output map grid.
The grid step in the X (inline) direction used when building the interpolated horizon map, in metres (default: 200 m, minimum: 1 m). A finer step produces a denser map at the cost of more memory. Match this to the bin spacing of your survey for accurate horizon positioning in the velocity model.
The grid step in the Y (crossline) direction used when building the interpolated horizon map, in metres (default: 200 m, minimum: 1 m). Analogous to Horizon interpolation step X but in the crossline direction.
Parameter group with advanced settings governing how the horizon picking grid (picket) is aligned and rounded to the survey coordinate system.
The internal picket grid step along the X axis, in metres (default: 20 m, range: 1–1000 m). This controls the resolution of the internal horizon representation before interpolation onto the output map grid. Use a value smaller than Horizon interpolation step X.
The internal picket grid step along the Y axis, in metres (default: 20 m, range: 1–1000 m). Analogous to X axis step in the crossline direction.
The constant padding margin added around the survey boundary in the picket grid, in metres (default: 100 m, range: 0–100000 m). This ensures that the interpolated horizon map extends slightly beyond the outermost CIG locations so that edge effects in the velocity model are minimised.
Default: on. When enabled, horizon pick coordinates are snapped to the nearest multiple of the Round factor, aligning picks precisely to the survey grid. This prevents sub-grid positioning errors from propagating into the velocity model. Disable only if you need sub-grid precision in the horizon representation.
The rounding increment in coordinate units (default: 25, range: 1–100000). When Round pickets is enabled, pick coordinates are rounded to the nearest multiple of this value. Set this to match your bin spacing or coordinate grid increment.
Parameter group with advanced options for handling the input seismic data storage. These settings control whether the input SEG-Y is cached locally on the compute node during distributed execution.
Default: on. When enabled, the seismic data is read from a local copy on the compute node rather than over the network during distributed execution. This can significantly improve I/O performance on cluster environments where network file access is slow. The local file path is specified in the Seismic filename parameter below.
The full path to the local copy of the SEG-Y seismic data on the compute node (default: /path_to_file.sgy). Only used when Use local storage is enabled. Set this to the path where the input SEG-Y file has been copied or is mounted on each cluster node.
SEG-Y trace header byte location settings used to read geometry from the input seismic file. Configure the byte positions for inline, crossline, source X/Y, receiver X/Y, offset, and other required header fields to match the SEG-Y file produced by your geometry assignment step.
Selects whether the Kirchhoff migration is executed on the CPU or on a GPU accelerator. GPU execution can provide substantial speed-up for large datasets. GPU mode requires a compatible NVIDIA GPU and appropriate drivers. When running distributed across cluster nodes, each node can independently use its GPU if available.
Settings for distributing the travel-time table computation and migration across multiple cluster nodes. When enabled, the CIG calculation for each layer is split across available nodes, reducing wall-clock time for large 3D surveys.
The minimum number of CIG bins assigned to each distributed processing chunk. Larger chunks reduce scheduling overhead but may cause load imbalance across nodes. Tune this based on the number of analysis bins and the number of available nodes.
Sets the maximum number of CPU threads used on each remote cluster node during distributed execution. Use this to prevent one job from monopolising all cores on a shared node.
A text suffix appended to the distributed job name, used to uniquely identify this processing run on the cluster scheduler. Useful when multiple instances of this module are running concurrently on the same cluster.
When enabled, allows you to specify a CPU core affinity mask via the Affinity parameter, pinning threads to specific cores. This is an advanced performance option for NUMA-aware systems.
The CPU core affinity specification, active only when Set custom affinity is enabled. Consult your system administrator for the correct format for your hardware.
The number of CPU threads used for local (non-distributed) parallel processing. Set this to the number of physical cores available on the workstation. The default is typically auto-detected from the hardware.
Container for pre- and post-execution script options.
An optional shell script executed on the compute node immediately before the module starts processing. Use this to set up environment variables, copy data files to local storage, or mount network shares.
An optional shell script executed on the compute node immediately after the module finishes processing. Use this to clean up temporary files, copy results to a shared location, or send notifications.
When enabled, the module is bypassed during workflow execution and its output is not updated. Use this to temporarily disable the module without disconnecting it from the workflow graph.
The updated depth velocity model produced after all selected layers have been analysed and their velocities updated. This is the primary output to feed into the next PSDM run. It has the same spatial extent and grid as the input depth velocity model but with refined interval velocities in each processed layer.
An intermediate version of the depth velocity model saved after each layer update. This allows you to inspect the evolving model during a multi-layer run without waiting for all layers to complete. It is also useful as a recovery point if the run is interrupted.
The horizontal velocity semblance panel in the inline direction. Displayed as a 2D colour map with inline position on the horizontal axis and velocity perturbation on the vertical axis. High semblance values (bright colours) indicate the velocity at which the migrated CIGs are flattest — i.e., the best-fitting velocity. Use the inline semblance panel to interactively pick velocity corrections in manual mode.
The horizontal velocity semblance panel in the crossline direction. Analogous to the inline semblance but oriented along the crossline axis. In 3D surveys, comparing the inline and crossline semblance panels helps detect azimuthal velocity anisotropy.
A display of the migrated common image gathers arranged in a row for the current layer. Shows all CIGs that have been computed for the selected layer side by side in the depth domain, allowing you to assess the flatness of reflectors across the offset axis and visually judge whether the velocity update has improved the gather alignment.
The CIG gather for the currently selected bin displayed in the time domain. This is the depth-domain CIG converted back to time using the velocity model and sample rate, enabling direct visual comparison with the original time-domain seismic data or the input stack.
The CIG gather for the currently selected bin displayed in the depth domain. Flat reflections in this panel confirm that the current velocity is correct for this bin. Residual moveout (up-curving = too slow; down-curving = too fast) indicates that a velocity correction is needed.
An inline cross-section through the intermediate depth velocity model, displayed as a velocity-versus-depth image. This updates after each layer is processed and shows the progressive evolution of the velocity model during the layer-stripping workflow.
A crossline cross-section through the intermediate depth velocity model. Analogous to the inline intermediate view but oriented along the crossline direction.
An inline cross-section through the input (base) depth velocity model before any updates were applied. Use this as a reference to compare with the updated output model and assess how much each layer has been modified.
A crossline cross-section through the input (base) depth velocity model. Reference display for comparing base and updated velocity models along the crossline direction.
An inline cross-section through the final updated (output) depth velocity model. This is the velocity section to inspect at the end of the run to verify the quality of the updated model before feeding it into the next PSDM iteration.
A crossline cross-section through the final updated depth velocity model. Analogous to Out inline V depth but in the crossline direction.
An inline section of the input stack in the time domain. Displayed alongside the depth-domain velocity sections to allow correlation between time reflectors and depth velocity layer boundaries. Only available when an Input stack is connected.
A crossline section of the input stack in the time domain. Analogous to Stack inline time in the crossline direction.
The input stack converted to the depth domain using the base (input) velocity model, displayed as an inline section. Use this to compare the depth image before and after velocity updating to evaluate how the update improves structural imaging.
The input stack converted to depth using the base velocity model, displayed as a crossline section.
The input stack converted to depth using the updated (output) velocity model, displayed as an inline section. Comparing this with Stack inline V base shows the improvement in the depth image achieved by the velocity update.
The input stack converted to depth using the updated velocity model, displayed as a crossline section.
Commits the currently displayed velocity picks for the active layer into the output depth velocity model. Use this after manually adjusting picks in the semblance panel to apply the updated velocity and rebuild the depth-converted sections for visual QC.
Re-runs the automatic velocity picker for the current layer using the semblance data already computed, without re-running the migration. Use this to reset manual picks back to the automatic semblance peak, or to apply automatic picking after changing the Deviation V or smoothing parameters.
Deletes all velocity picks for the currently active layer only, reverting it to an unpicked state. The picks for other layers are not affected. Use this when you want to redo the analysis for a single layer from scratch.
Deletes all velocity picks across all layers. Use this to start the velocity analysis from scratch. This action cannot be undone — ensure you have saved your work before using this action.
Resets the output (final) depth velocity gather to a copy of the input base model, discarding all velocity updates. Use this to undo all committed layer updates and return the output model to its initial state.
Resets the intermediate velocity gather to the input base model. Useful when the intermediate model has accumulated incorrect layer updates and you want to restart from the base without clearing the final output model.
Moves the selected velocity pick or horizon marker upward in the display panel. Keyboard shortcut: Ctrl + Up. Use the directional move actions to fine-tune pick positions interactively without using the mouse.
Moves the selected pick or marker downward. Keyboard shortcut: Ctrl + Down.
Moves the selected pick or marker to the left (toward lower inline/crossline numbers). Keyboard shortcut: Ctrl + Left.
Moves the selected pick or marker to the right (toward higher inline/crossline numbers). Keyboard shortcut: Ctrl + Right.
Automatically generates the layer boundary horizons from a regular time grid defined by the Grid start time, Grid last time, and Grid step time parameters in the Velocity analysis group. This is useful when no pre-existing horizon picking is available: the module creates flat, evenly spaced horizons in time which can then be used as the layer boundaries for the analysis.
Clears the cached trace header geometry that was loaded from the Input data trace headers input. Use this when you have changed the input geometry (e.g., after re-binning or re-assigning coordinates) and want the module to re-read the geometry from the updated source on the next execution.