Journal of Applied Geophysics 123 (2015) 18–29
Contents lists available at ScienceDirect
Journal of Applied Geophysics journal homepage: www.elsevier.com/locate/jappgeo
Borehole seismic data processing and interpretation: New free software Mohammed Farfour, Wang Jung Yoon ⁎ Geophysical Prospecting Lab, Energy and Resources Engineering Department, Chonnam University, YongBong Dong, Gwangju 500-757, South Korea
a r t i c l e
i n f o
Article history: Received 6 July 2015 Received in revised form 12 August 2015 Accepted 18 September 2015 Available online 26 September 2015 Keywords: VSP Data processing Interpretation MATLAB
a b s t r a c t Vertical Seismic Profile (VSP) surveying is a vital tool in subsurface imaging and reservoir characterization. The technique allows geophysicists to infer critical information that cannot be obtained otherwise. MVSP is a new MATLAB tool with a graphical user interface (GUI) for VSP shot modeling, data processing, and interpretation. The software handles VSP data from the loading and preprocessing stages to the final stage of corridor plotting and integration with well and seismic data. Several seismic and signal processing toolboxes are integrated and modified to suit and enrich the processing and display packages. The main motivation behind the development of the software is to provide new geoscientists and students in the geoscience fields with free software that brings together all VSP modules in one easy-to-use package. The software has several modules that allow the user to test, process, compare, visualize, and produce publication-quality results. The software is developed as a standalone MATLAB application that requires only MATLAB Compiler Runtime (MCR) to run with full functionality. We present a detailed description of MVSP and use the software to create synthetic VSP data. The data are then processed using different available tools. Next, real data are loaded and fully processed using the software. The data are then integrated with well data for more detailed analysis and interpretation. In order to evaluate the software processing flow accuracy, the same data are processed using commercial software. Comparison of the processing results shows that MVSP is able to process VSP data as efficiently as commercial software packages currently used in industry, and provides similar high-quality processed data. Published by Elsevier B.V.
1. Introduction VSP surveying is a vital tool in subsurface imaging and reservoir characterization. The technique has made significant advances since the 1930s, when geophysicists lowered the first geophone down a borehole to better investigate rock velocity. VSPs allow geophysicists to infer critical information that cannot be obtained otherwise. With VSPs, geophysicists can record waves traveling both down into the earth (direct and downgoing multiples) and back toward the surface (primaries and upgoing multiples). They add the depth dimension to seismic data, which enables several approaches to velocity estimation and deconvolution (Oristaglio, 1985). Borehole seismic measurements have also overcome difficulties faced by both seismic processers and interpreters. They provide direct access to the measurement of attenuation (Q), estimation of geometric divergence, identification of multiples, correction of well data and their integration with seismic data, and the phase analysis of seismic data (Campbell et al., 2005). Most analyses of geophysical data involve the application of sophisticated and multistage processing and inversion. This particularly applies to VSP data processing and interpretation. However, as most of ⁎ Corresponding author. E-mail address:
[email protected] (W.J. Yoon).
http://dx.doi.org/10.1016/j.jappgeo.2015.09.023 0926-9851/Published by Elsevier B.V.
VSP data processing software packages are used for industrial and commercial purposes, the use of such packages can be difficult for students and geoscientists in the education and research fields. An affordable software package that includes the main VSP processing and interpretation tools would help facilitate technology transfer and train graduate students and newly graduated geoscientists. It is worth noting that DSISoft (Beaty et al. 2002), developed at the Geological Survey of Canada, is known to be the first free software developed for VSP data processing. The software is written in MATLAB. However, the package is provided in the form of scripts and functions that require advanced knowledge of the MATLAB programming language. Furthermore, the user needs to invoke special plotting functions at every processing step, making quality control (QC) of the sequence a time-consuming and error-prone process. MVSP is free software, developed to complement the work described in Beaty et al. 2002. The package comprises tools with interactive GUIs for loading and editing data in different formats (Segy, SU, Mat, LAS), data processing, comparison, visualization, and interpretation. In this paper, we present a detailed description of the software. The software is used to create synthetic VSP data, and a full processing sequence is applied to the data. Real data are then processed using MVSP. The processing results are analyzed and compared with results from commercial software.
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
19
Table 1 List of available modules in MVSP. Module
Description
Project 1. New 2. Save session 3. Open project
Creates new project Saves project Restores saved project
Files 1. Import Segy data 2. Import SU data 3. Import Mat data (DSI) 4. Import well data (LAS) 5. View Segy 6. Delete selected file 7. Delete all 8. View trace header 9. Import trace header 10. View file header 11. Import file header
Imports Segy data and converts them to DSI format Imports SU data and converts them to DSI format Imports Mat data Imports well data Displays Segy data and checks headers Deletes file selected by user Deletes all files in workspace or variables list Opens trace header in Excel file for editing Imports trace header from Excel file Opens file header in Excel file Imports file header from Excel file
Processing 1. AGC 2. Energy balance 3. True amplitude recovery 4. BP filter 5. Predictive Decon. 6. Wiener Decon. 7. FK filtering 8. Median 9. Trim statics 10. Top muting 11. Bottom muting
Performs AGC Performs energy balancing Compensates for amplitude attenuation Performs band-pass filtering Performs predictive deconvolution Performs Wiener deconvolution Performs FK filtering Performs median filtering Performs residual static corrections Mutes noise before first breaks Mutes noise after time picks
Tools 1. Separate components 2. First breaks picking 3. Time picking 4. Flattening 5. Unflattening 6. Subtraction 7. Outside corridor 8. Inside corridor 9. Stacking 10. Comparing corridors 11. Compare datasets 12. Calculate attenuation (Q) 13. Static corrections 14. Frequency analysis 15. Corridors
Separates different x, y, and z components Picks and interpolates first break times from first to last trace Picks event and interpolates between picks Flattens data at defined time t(s) Flattens data to field record time and to two-way-time Removes undesired data from input data Produces outside corridor (header word) Produces inside corridor (header word) Stacks VSP section and displays in (n) repeated traces Compares corridors Compares datasets Calculates Q factor from VSP Calculates true vertical depth, time–depth function, and velocities; displays survey geometry (KB) Calculates and displays frequency content of traces Defines corridors for muting and stacking
Interpretation 1. Composite plot 2. Velocities 3. Compare datasets 4. Calculate Vp/Vs
Integrates VSP section, corridor stacks, and well logs Calculates velocities Compares different datasets Calculates Vp to Vs ratio
Modeling 1. Velocity model 2. Synthetic seismogram 3. Ray tracing
Creates velocity model Creates synthetic seismogram using defined velocity model Calculates and displays ray tracing
View 1. Wiggle plot 2. Image plot 3. First break 4. Double plot 5. Multiple plot
Displays data in wiggle form Displays data in image form Displays first break on VSP section Displays two VSP sections Displays three VSP sections
Export data 1. Segy format 2. SU format 3. Mat file
Exports Mat data in Segy format Exports Mat data in SU format Exports data as Mat file
2. MATLAB GUI The use of MATLAB (short for Matrix Laboratory) in research and educational applications is rapidly increasing. The program provides a rich
technical computing environment that combines numerical computation, visualization, and a higher-level programming language. A GUI is a software environment in which information is arranged on a computer screen in a way that makes the program easy to understand
20
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
Table 2 List of most important header keywords needed for MVSP to process and convert data from and to DSI format. Significance
Number in trace header
Original trace number Field file ID (FFID) CDP number Recording component Trace status Number of traces in record Trace number within record First break pick times Pick times 1 Pick times 2 Pick times 3 Pick times 4 Elevation static shift Shot receiver offset Source Y Source X Source elevation Receiver Y Receiver X Receiver elevation Source to borehole receiver distance Datum elevation (KB) Horizontal offset Shot depth
1 2 3 4 6 12 13 15 16 17 18 19 20 28 29 31 33 35 37 39 40 39 51 53 54
and use by employing icons, menus, and a mouse, rather than using text and programs written in a high-level language that is often not easily understood except by programmers. In MVSP, much care has been taken to bring together all modules necessary for VSP data processing and interpretation, and to produce packages that will help the user visualize, process, and interpret VSP data and perform QC on different processes in a step-by-step manner. The results can be integrated with well data (e.g., sonic, gamma ray, and resistivity logs) and correlated with surface seismic data for more advanced interpretation purposes. The program was created in MATLAB 2010b under the Windows operating system, and was designed as a stand-alone application so that only MATLAB Compiler Runtime (MCR), which is distributed free of charge, is needed for full software functionality. 3. MVSP: MATLAB VSP data processing and interpretation software Free and open-source seismic processing software provides a lowcost alternative to commercial software, and with appropriately directed development, an ability to adapt to changing research needs. The best-known examples of such software are the Stanford Exploration Project (SEP) software, Madagascar, and Seismic Unix, a free reflection processing system developed at the Colorado School of Mines. Seismic Unix has been broadly used in research and teaching seismology, and also in smaller-scale seismic processing in the industry. In the Windows environment, efforts were made to exploit the MATLAB programming
Fig. 1. Typical VSP data processing flow.
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
21
Fig. 2. Synthetic VSP shot generated using FD modeling package before and after AGC.
language, graphics capabilities, and visualization to develop free toolboxes for seismic data processing, modeling, and interpretation (Margrave, 2003). However, most of the toolboxes are Unix-like
command-based programs that require advanced programming skills. To allow larger communities to benefit from these useful packages, extensive efforts have been made to build user-friendly
Fig. 3. Raw data (left) along with flattened downgoing waves (middle) and upgoing waves flattened at pseudo-two-way time (right).
22
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
Fig. 4. Raw data after extraction from Segy file.
Fig. 5. Automatic Gain Control (AGC) conducted to display different signals involved in raw data.
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
23
Fig. 6. Raw data after energy balancing to correct data for amplitude variations due to source–receiver changes and geometric spreading. Each trace is normalized according to its first break amplitude.
interfaces that would relieve users (or at least new users) of the task of scripting, and simplify learning by bringing all the available tools and documentation to the user's mouse and fingertips.
MVSP was developed to integrate several free and open toolboxes originally intended for signal processing and seismic data processing. The programs in these toolboxes have been modified with new
Fig. 7. Vertical seismic profile (VSP) geometry derived from header. Time–depth function (middle) and average velocity (right) derived from true vertical depth and time picking.
24
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
Fig. 8. Data after using first break time picks to flatten downgoing waves (left) and extracted downgoing waves obtained after 11-trace median filtering (right).
functions and programs to improve the performance and flow of the software, and enrich its applications. In Table 1, the available modules are introduced. Note that the software adapts the DSISoft data
structure proposed by Beaty et al. (2002). New interactive loading modules were developed, and new functions were written to help improve the interaction between different modules and to convert
Fig. 9. Upgoing waves with noise filtered out from data after median filtering (left) and after being placed into pseudo-two-way travel time (right).
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
Fig. 10. Defined corridor highlighted in red. (For interpretation of the references to color in this figure legend, the reader is referred to the web version of this article.)
Fig. 11. Outside (left) and inside (right) corridors after corridor muting.
25
26
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
4. Application to synthetic data A synthetic dataset was created using the finite difference modeling package in the software. Fig. 1 displays a typical workflow for VSP data processing and interpretation that can be run using MVSP. First, automatic gain control (AGC) and energy balancing were conducted to correct the data for decay with time, and improve data visibility (Fig. 2). The first break times were then picked and stored in header word 15. The time picks were used to flatten the downgoing wave fields and prepare them for filtering. Residual static corrections were performed to improve the alignment of the flattened data. The downgoing waves were filtered using an 11-trace median filter, and subtracted from the data. Only upgoing waves and noise remained. The filtered data were flattened by doubling the first break time to place the data in pseudotwo-way time. Then, a 7-trace median filter was implemented to remove the remaining undesired signals from the data. The upgoing and downgoing waves extracted from the data are shown in Fig. 3. Finally, outside and inside corridors were produced and stacked for interpretation purposes, and different velocities were calculated at different depths.
5. Application to real data
Fig. 12. Traces from stacking outside corridor (left) and section (right).
datasets from and to the DSI format. Table 2 lists the most important header words that are necessary for the conversion. The DSI format comprises a structured variable with a “.fh” extension for the file header, a “.th” extension for the trace header, and a “.dat” extension for the seismic traces. The file header is a cell array of arbitrary length containing information pertaining to the whole file. The trace header and data parts of the variable are cell arrays, where each cell represents a record. Each record contains a matrix of seismic traces where each column is a separate trace, and a matrix of corresponding trace headers. The trace headers contain information specific to each trace. Modules and parameters are assigned descriptive names to ease data processing and manipulation. The user is not required to learn the details of the MATLAB source coding and programming to process the data. Data from different sources can be imported and visualized before and after every processing step to select the optimum parameters. Processing tests can be run on-the-fly. Once appropriate parameters are set, data can be saved in the workspace or exported to an external file or folder. The variables listed in the workspace are updated automatically and can be refreshed by the user from time to time. In addition, with the help of the data comparison module, internal data can be compared with themselves or with data from third-party programs in terms of frequency, amplitude, and phase. Furthermore, as visualization is crucial in VSP data processing, several tools and plotting options are available. Some examples are presented in the following sections. After the processing is completed, the project can be saved so that all processed data and open figures can be restored, and work can be resumed later. This feature helps save the user's time and effort. Individual files can be saved in DSI Mat, Segy, or SU formats for later use.
A Segy-formatted dataset was loaded into the software for processing and interpretation (Fig. 4). The data were first separated from the horizontal components and subjected to AGC to visualize the different signals present in the VSP raw section (Fig. 5). After energy balancing, first break picking and top muting were carried out to remove noise that arrived before the first breaks (Fig. 6). The source and receiver coordinates were extracted from the trace header in order to perform static corrections and calculate the true vertical depths of the receivers. The depths, along with the first break times stored in the file header, were deployed to calculate the time–depth function and different velocities (e.g., average and interval) (Fig. 7). The downgoing wavefields were then flattened to ease their separation from the upgoing waves (Fig. 8). Similarly, using doubled first break times, upgoing waves with remaining noise were flattened to two-way time (Fig. 9). After several tests, an 11-trace median filter was applied to the upgoing data to remove tube waves and random noise. In addition, some high-frequency noise was attenuated using band-pass frequency filtering. The inside and outside corridors were carefully defined (Fig. 10). Fig. 11 shows data after corridor muting. Note that there are two corridor picking options. The user can define the upper and lower limits by semi-automatic picking, or just double the first break picks, and give the corridor width measured in seconds. The corridors were stacked and duplicated 15 times, as shown in Fig. 12. A comparison of the corridor stacks is commonly used for recognizing multiples embedded in the data. Fig. 13 displays the raw data with the extracted downgoing and upgoing waves. Note that the processing flow detailed earlier is just an example; in fact, the user can select and run other processing tools to build a workflow that helps produce results with better quality and resolution (e.g., f-k filtering, Wiener deconvolution). Fig. 14 shows the filtering of tube waves and random noise using FK filter by passing only the flattened signal. In order to assess the software processing flow and results accuracy, the same data were processed using widely used commercial software. Once the processing was fully completed, the resulting upgoing waves, as well as the corridor stacks, were loaded into MVSP for comparison. The amplitude, frequency, and phase analyses were run on sections from both software packages (Fig. 15). The analyses demonstrated that the sections, as well as the stacks, correlate very well with one another. Furthermore, for a more detailed interpretation, the VSP section and corridor stack were plotted along with well data in a composite plot. The
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
Fig. 13. Raw data (left) along with extracted downgoing (middle) and upgoing wave sections.
Fig. 14. Data before and after FK-filtering. Random noise and tube wave are eliminated.
27
28
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
Fig. 15. Comparison of MVSP-processed data (right) with data processed using commercial software (left).
Fig. 16. Integration of vertical seismic profile (VSP) section with corridor stack repeated 15 times (left), and well logging data.
M. Farfour, W.J. Yoon / Journal of Applied Geophysics 123 (2015) 18–29
targeted events were annotated in the VSP data according to well logging data and borehole lithology (Fig. 16). 6. Conclusion and future work MVSP is a new and free VSP data processing and interpretation software. The software is a stand-alone MATLAB application that needs only MATLAB Compiler Runtime (MCR) to run. A variety of tools, plots, and interactive graphics are put at the user's disposal to facilitate learning of borehole seismic fundamentals and data manipulation. In order to enrich the MVSP applications, we are currently working on VSP inversion for acoustic impedance. Experience showed that performing VSP inversion to extract acoustic impedance can help predict the properties of geological layers beneath depths where common well logging data are not recorded. For this purpose, recursive impedance and Bayesian inversion techniques will be incorporated. In addition, the user will be able to load seismic surface data and integrate them with VSP and well logging data in more effective ways and for more quantitative interpretations.
29
Acknowledgments We would like to thank Thomas Mejer Hansen, John D'Errico, MathWorks, and the Consortium for Research in Elastic Wave Exploration Seismology (CREWES) for their contributions. We thank also Geophysical Exploration & Development Corporation (GEDCO) for providing the data. Our thanks go also to the Korean Government for their support under the BK21 Plus program. References Beaty, K.S., Perron, G., Kay, I., Adam, E., 2002. DSISoft — a MATLAB VSP data processing package. Comput. Geosci. 28 (4), 501–511. Campbell, A., Fryer, A., Wakeman, S., 2005. Vertical seismic profiles—more than just a corridor stack. Lead. Edge 24 (7), 694–697. Margrave, G.F., 2003. Numerical Methods of Exploration Seismology with Algorithms in MATLAB. Oristaglio, M., 1985. A guide to current uses of vertical seismic profiles. Geophysics 50 (12), 2473–2479.