Two-dimensional seismic data-based trace header word generalization method, apparatus and device, and medium

By using the generalization method of two-dimensional seismic data based on the generalization of the track header word based on two-dimensional seismic data in the seismic data processing system, the problems of large memory usage and long interaction response time in the existing system are solved, and more efficient seismic data processing is achieved.

CN120104837APending Publication Date: 2025-06-06CHINA PETROLEUM & CHEMICAL CORP +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311664320.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-06
Publication Date
2025-06-06

AI Technical Summary

Technical Problem

When existing seismic data processing systems process large amounts of seismic data, it is difficult to flexibly manage and sort the seismic data header fields, resulting in large memory usage and long interaction response time.

Method used

The generalization method of the trajectory header word based on two-dimensional seismic data is adopted. By defining the generalized trajectory header field data type and building a data model, dynamically registering any type of trajectory header word information, and sorting the seismic trajectory data according to the trajectory header field.

Benefits of technology

It realizes dynamic management and sorting of seismic data header fields without modifying seismic channel sampling data, saving memory usage, reducing sorting time, and improving the efficiency and stability of seismic data processing system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120104837A_ABST
    Figure CN120104837A_ABST
Patent Text Reader

Abstract

The invention provides a trace header word generalization method and device based on two-dimensional seismic data, equipment and a medium. The trace header word generalization method based on the two-dimensional seismic data comprises the following steps: defining a data type; constructing a data model; loading and using a header field; and sorting the seismic trace data according to the trace header fields. According to the method, trace header field information of any type can be dynamically registered according to actual requirements, and the seismic trace data can be quickly sorted according to any trace header field information. And convenience is provided for quick display of the seismic data trace header information and quick sorting of the seismic trace data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the field of geophysical exploration technology, belonging to seismic data processing technology, and is a method, device, equipment and storage medium for generalizing header characters based on two-dimensional seismic data. Background Art

[0002] Seismic data is collected from field seismic exploration. Common seismic data include SEG-Y, a standard tape data format proposed by the Society for Exploration Geophysics (SEG) of the United States. In addition, the SU format used by the open source geophysical data processing system (Seismic Unix) developed by the CWP (Center for WavePhenomena) laboratory of the Colorado School of Mines is also a widely recognized unofficial format. It differs from the SEGY format by only 3,600 bytes in the file header. SEG-Y is mostly used for indoor data transmission, and the carrier is mostly a disk. In fact, for most practitioners, the SEG-Y format is one of the most common formats for seismic data in the oil exploration industry.

[0003] SEG-Y seismic data is generally stored in the SEG-Y file format, which usually consists of a 3200-byte volume header, a 400-byte binary header, and a data body. The data body is organized in units of seismic channels and consists of multiple data channels. Each data channel is divided into two parts: a header and sampled data. In general, the number of sample points of each sampled data channel is the same. When using the header field information of seismic data, all the header fields to be used for each channel are constructed into a structure array and read into the memory. When the amount of data is large, this will not only take up a lot of memory, but also the above header field data structure will fix the number of header fields and the type of each header field, which is not flexible enough. For some scenarios where unknown header field information is needed, it is not convenient to add new header fields. Summary of the invention

[0004] The present invention aims at the characteristics of huge data volume in seismic data processing system, and the scenario that needs real-time interactive display of seismic data header information and sorting of seismic data according to header fields. The present invention provides a generalized management technology of header characters based on two-dimensional seismic data, which can dynamically register any type of header character information according to actual needs, and can sort seismic data according to header fields without modifying the seismic data, thereby saving memory occupied by the seismic data processing system, reducing interactive response time, and improving the efficiency of the seismic data processing system.

[0005] To achieve the above object, the present invention provides a trace header generalization method based on two-dimensional seismic data, comprising:

[0006] Define data types;

[0007] Build data models;

[0008] Load and use header fields;

[0009] Sort seismic trace data by trace header field.

[0010] Furthermore, the defined data type includes:

[0011] Define the data type of the generalized header field RecdHeadField, which is used to set and get the value of any type of header field;

[0012] Define the data type ReadHeadDesc that describes the header field, which is used to store the name, type and position of the header field in the header field list RecdHeadFieldList;

[0013] Define the header data type RecdHead to store each header field list RecdHeadFieldList and the address of the starting position of each seismic sampling data in the one-dimensional array RecdData.

[0014] Furthermore, the building of the data model includes:

[0015] Define a one-dimensional array RecdData, read the seismic data SEG-Y file, store all seismic channel sampling data in order into the one-dimensional array RecdData, and save the number of sampling points RecdLen of each seismic data, then the number of seismic data channels RecdNum = RecdData.size() / RecdLen;

[0016] Define the trace header object array RecdHeads, the array length is the number of seismic data traces RecdNum, and the array element is a trace header field object RecdHead;

[0017] Define the hash table ReadHeadDescHash of the trace header field description object. The size of the hash table is the number of seismic trace header fields loaded. The key of the hash table element is the trace header field name, and the corresponding key value is the corresponding trace header field description object RecdHeadDesc.

[0018] Furthermore, loading the header field includes: reading the header field array to be used from the SEG-Y seismic data file, adding each element of the header field array to the end of the header field list RecdHeadFieldList of the header object RecdHead corresponding to the header object array RecdHeads according to the seismic trace index, and setting the name, type and position of the header field in the header field list RecdHeadFieldList to the hash table ReadHeadDescHash of the header field description object.

[0019] Furthermore, using the header field includes: obtaining the position of the field in the header field list RecdHeadFieldList in the hash table ReadHeadDescHash of the header field description object through the header field name, and then accessing the header field list RecdHeadFieldList corresponding to the header object RecdHead in the header object array RecdHeads through the track index.

[0020] Furthermore, the ordering of the seismic trace data by trace header fields includes: constructing an ordered data structure with a one-to-one mapping relationship according to the seismic trace header fields and corresponding seismic trace indexes to be ordered as required.

[0021] Furthermore, the corresponding track header object RecdHead is obtained from the track header object array RecdHeads according to the reordered seismic track index, and then the address of the starting position of the corresponding seismic track sampling data in the one-dimensional array RecdData is obtained from the track header object RecdHead, and finally the sampling data of the corresponding seismic track is obtained from the one-dimensional seismic data array RecdData according to the address, thereby achieving the purpose of sorting the seismic data according to the track header field.

[0022] According to another aspect of the present invention, there is provided a trace header generalization device based on two-dimensional seismic data, comprising:

[0023] Definition module, used to define data types;

[0024] Building modules, used to build data models;

[0025] Load and use modules, used to load and use header fields;

[0026] The sorting module is used to sort the seismic trace data according to the trace header field.

[0027] According to another aspect of the present invention, there is provided an electronic device, the electronic device comprising:

[0028] A memory storing executable instructions;

[0029] A processor runs the executable instructions in the memory to implement the trace header word generalization method based on two-dimensional seismic data.

[0030] According to another aspect of the present invention, a non-transitory computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the method for generalizing trace header characters based on two-dimensional seismic data is implemented.

[0031] The present invention aims at the characteristics of huge data volume in the seismic data processing system, and the need to interactively display seismic data header information in real time and sort, display or process seismic data according to header fields. The method provides a generalized management technology of header characters based on seismic data, which can dynamically register any type of header character information according to actual needs, saving the memory occupied by the seismic data processing system. In addition, the method can directly obtain sorted seismic data without changing the sorting of seismic sampling data, greatly reducing the sorting time of seismic data, improving the efficiency of displaying or calculating seismic data after re-sorting, shortening the interactive response time of the seismic data processing system, and improving the efficiency and stability of the seismic data processing system. BRIEF DESCRIPTION OF THE DRAWINGS

[0032] The above and other objects, features and advantages of the present invention will become more apparent through a more detailed description of exemplary embodiments of the present invention in conjunction with the accompanying drawings, wherein like reference numerals generally represent like components throughout the exemplary embodiments of the present invention.

[0033] Figure 1 The figure is a flow chart of the method for generalizing trace header characters based on two-dimensional seismic data according to the present invention.

[0034] Figure 2 A schematic diagram of constructing and using a generalized two-dimensional array model of a header according to an embodiment of the present invention.

[0035] Figure 3 Schematic diagram of the number of bytes occupied by a SEG-Y seismic data file according to an embodiment of the present invention.

[0036] Figure 4 Schematic diagram of a generalized two-dimensional array model of a header according to an embodiment of the present invention. DETAILED DESCRIPTION

[0037] The preferred embodiments of the present invention will be described in more detail below. Although the preferred embodiments of the present invention are described below, it should be understood that the present invention can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to make the present invention more thorough and complete, and to fully convey the scope of the present invention to those skilled in the art.

[0038] Embodiment 1

[0039] In the seismic data processing system, there are often interactive application scenarios that display arbitrary header information of seismic data and sort and display seismic data according to certain header fields. The conventional implementation method is to construct all header fields and seismic data into a structure array. The size of the array is the number of seismic data channels. The elements of the array are the header fields of each seismic data channel and the structure constructed by the seismic data channel. Each seismic data channel and the corresponding header field are accessed through the channel index of the seismic data. This method fixes the number of header fields in the data structure and the type of each header field. It can be applied to scenarios where it is known which header fields to use, but it is not flexible enough for interactive scenarios where it is unknown which header fields to use. For example, the user arbitrarily selects a header field information to be displayed on the seismic profile, and it is impossible to determine in advance which header field the user will select. Because it is not certain which header fields will be used, the safest way is to store all header fields in the above structure array. When the amount of seismic data is large, it will cause unnecessary memory waste.

[0040] The present invention belongs to the technical field of seismic data processing software. In view of the huge amount of data in the seismic data processing system, and the need to interactively display the seismic data header information in real time and sort or process the seismic data according to the header field, the method of the present invention provides a generalized management technology of header characters based on seismic data. The main technical core includes constructing a two-dimensional array data model, managing the header field information and seismic data separately, and dynamically registering any type of header character information according to actual needs, saving the memory occupied by the seismic data processing system. In addition, the method can directly obtain the sorted seismic data without changing the sorting of the seismic sampling data, which greatly reduces the sorting time of the seismic data, improves the efficiency of displaying or calculating the seismic data after re-sorting, shortens the interactive response time of the seismic data processing system, and improves the efficiency and stability of the seismic data processing system.

[0041] like Figure 1 As shown, the present invention provides a generalized management method for trace header words based on two-dimensional seismic data, including: defining data types; building data models; loading and using trace header fields; and sorting seismic trace data according to trace header fields.

[0042] The generalized management method of trace header characters based on two-dimensional seismic data of the present invention can dynamically register any type of trace header character information according to actual needs, and can quickly sort seismic trace data according to any trace header field information, thus facilitating the rapid display of seismic data trace header information and the rapid sorting of seismic trace data.

[0043] Specifically, the main technical core of the present invention is to construct a two-dimensional array data model to manage the header field information and seismic trace data separately.

[0044] Furthermore, defining data types includes: defining a generalized header field data type RecdHeadField, which is used to set and obtain the value of any type of header field; defining a description header field data type ReadHeadDesc, which is used to store the name, type and position of the header field in the header field list RecdHeadFieldList; defining a header data type RecdHead, which is used to store each header field list RecdHeadFieldList and the address of the starting position of each seismic sampling data in the one-dimensional array RecdData.

[0045] Furthermore, constructing a data model includes: defining a one-dimensional array RecdData, reading a seismic data SEG-Y file, storing all seismic trace sampling data in order into the one-dimensional array RecdData, and saving the number of sampling points RecdLen of each seismic data, then the number of seismic data traces RecdNum = RecdData.size() / RecdLen; defining a trace header object array RecdHeads, the array length is the number of seismic data traces RecdNum, and the array element is a trace header field object RecdHead; defining a trace header field description object hash table ReadHeadDescHash, the hash table size is the number of seismic trace header fields loaded, the hash table element keyword is the trace header field name name, and the corresponding key value is the corresponding trace header field description object RecdHeadDesc.

[0046] Furthermore, loading the header field includes: reading the header field array to be used from the SEG-Y seismic data file, adding each element of the header field array to the end of the header field list RecdHeadFieldList of the header object RecdHead corresponding to the header object array RecdHeads according to the seismic trace index, and setting the name, type and position of the header field in the header field list RecdHeadFieldList to the hash table ReadHeadDescHash of the header field description object.

[0047] Furthermore, using the header field includes: obtaining the position of the field in the header field list RecdHeadFieldList in the hash table ReadHeadDescHash of the header field description object through the header field name, and then accessing the header field list RecdHeadFieldList corresponding to the header object RecdHead in the header object array RecdHeads through the track index.

[0048] Furthermore, sorting the seismic trace data according to the trace header field includes: constructing an ordered data structure with a one-to-one mapping relationship according to the seismic trace header field and the corresponding seismic trace index that need to be sorted.

[0049] Furthermore, the corresponding track header object RecdHead is obtained from the track header object array RecdHeads according to the reordered seismic track index, and then the address of the starting position of the corresponding seismic track sampling data in the one-dimensional array RecdData is obtained from the track header object RecdHead, and finally the sampling data of the corresponding seismic track is obtained from the one-dimensional seismic data array RecdData according to the address.

[0050] Embodiment 2

[0051] like Figure 2 As shown, this embodiment provides a method for constructing and using a header generalized two-dimensional array model.

[0052] The seismic data standard SEG-Y file generally includes three parts. The first part is the EBCDIC file header (3200 bytes), which consists of 40 lines, each line has 80 characters, and is used to store some information describing the seismic data body; the second part is the binary file header (400 bytes), which is used to store some key information describing the SEG-Y file, including the data format of the SEG-Y file, the number of sampling points, the sampling interval, the measurement unit and other information. This information is generally stored in a fixed position in the binary file header; the third part is the actual seismic trace data. Each seismic trace contains 240 bytes of trace header information and seismic trace data. The trace header data generally stores the line number, channel number, number of sampling points, geodetic coordinates and other information corresponding to the seismic trace, but the positions of some key parameters (such as the position of the line number and channel number in the trace header) are not fixed. Figure 3 As shown, a schematic diagram of the number of bytes occupied by a SEG-Y seismic data file according to an embodiment of the present invention is given.

[0053] The method of this embodiment provides a generalized management technology for trace header characters based on seismic data, which can dynamically register any type of trace header character information according to actual needs, and can sort seismic trace data according to the trace header field without modifying the seismic trace data, saving the memory occupied by the seismic data processing system, and improving the efficiency of sorting seismic trace data according to a certain trace header field. The main technical core is to build a two-dimensional array data model to manage the trace header field information and seismic trace data separately. The main method steps are as follows:

[0054] (I) Data type definition

[0055] (1) Define a generalized header field data type RecdHeadField, which can set and get the value of any type of header field, such as int, float, double, etc.

[0056] (2) Define a data type ReadHeadDesc that describes the header field, which is used to store the name, type, and position of the header field in the header field list RecdHeadFieldList;

[0057] (3) Define a header data type RecdHead to store each header field list RecdHeadFieldList and the address of the starting position of each seismic sampling data in the one-dimensional array RecdData. The header field list can dynamically load any header field of any type. The header field type is determined by the class template.

[0058] (II) Data model construction

[0059] (1) Define a one-dimensional array RecdData, read the seismic data SEG-Y file, store all seismic channel sampling data in order into the one-dimensional array RecdData, and save the number of sampling points of each seismic data (the number of sampling points of each seismic data is the same) RecdLen, then the number of seismic data channels RecdNum = RecdData.size() / RecdLen;

[0060] (2) Define a header object array RecdHeads, the length of the array is the number of seismic data channels RecdNum, and the array element is a header field object RecdHead. Assign the address of the starting position of each seismic sampling data channel in the one-dimensional array RecdData to each header field object RecdHead;

[0061] (3) Define a hash table ReadHeadDescHash of header field description objects. The size of the hash table is the number of seismic header fields loaded. The key of the hash table element is the header field name, and the corresponding key value is the corresponding header field description object RecdHeadDesc.

[0062] Figure 4 A schematic diagram of a generalized two-dimensional array model of a trace header according to an embodiment of the present invention is given.

[0063] (III) Loading and using header fields

[0064] Read the required trace header field array from the SEG-Y seismic data file, and add each element of the trace header field array to the end of the trace header field list RecdHeadFieldList of the trace header object RecdHeads corresponding to the trace header object according to the seismic trace index, and set the name, type and position of the trace header field in the trace header field list RecdHeadFieldList to the hash table ReadHeadDescHash of the trace header field description object.

[0065] This method can dynamically load any type of header field into the data model when used, which is more flexible than conventional methods and occupies memory space according to actual needs, saving system resources.

[0066] (IV) Use of header fields

[0067] When using the header field, you only need to obtain the position of the field in the header field list RecdHeadFieldList through the header field name in the hash table ReadHeadDescHash of the header field description object, and then access the header field list RecdHeadFieldList of the corresponding header object RecdHead in the header object array RecdHeads through the track index.

[0068] (V) Seismic trace data sorted by trace header field

[0069] (1) Based on the seismic trace header fields that need to be sorted and the corresponding seismic trace indexes, an ordered data structure with a one-to-one mapping relationship is constructed. At this time, the seismic trace indexes are no longer in the previous order, but are arranged in the order after the selected trace header fields are sorted;

[0070] (2) Obtain the corresponding track header object RecdHead from the track header object array RecdHeads according to the reordered seismic track index, then obtain the address of the starting position of the corresponding seismic track sampling data in the one-dimensional array RecdData from the track header object RecdHead, and finally obtain the sampling data of the corresponding seismic track from the one-dimensional seismic data array RecdData according to the address for processing.

[0071] The method of this embodiment can directly obtain sorted seismic trace data without changing the sorting of seismic trace sampling data, thereby reducing the time for sorting seismic trace data and improving the efficiency of displaying or calculating seismic trace data after re-sorting.

[0072] Embodiment 3

[0073] This embodiment provides a trace header generalization device based on two-dimensional seismic data, including:

[0074] Definition module, used to define data types;

[0075] Building modules, used to build data models;

[0076] Load and use modules, used to load and use header fields;

[0077] The sorting module is used to sort the seismic trace data according to the trace header field.

[0078] The device of this embodiment constructs a two-dimensional array data model to manage the header field information and the seismic channel data separately. It can dynamically register any type of header word information according to actual needs, saving the memory occupied by the seismic data processing system, and can directly obtain the sorted seismic channel data without changing the sorting of the seismic channel sampling data, which greatly reduces the sorting time of the seismic channel data, improves the efficiency of displaying or calculating the seismic channel data after re-sorting, shortens the interactive response time of the seismic data processing system, and improves the efficiency and stability of the seismic data processing system.

[0079] Embodiment 4

[0080] This embodiment provides an electronic device according to another aspect of the present invention, the electronic device comprising:

[0081] A memory storing executable instructions;

[0082] A processor runs the executable instructions in the memory to implement the trace header word generalization method based on two-dimensional seismic data.

[0083] Embodiment 5

[0084] This embodiment provides a non-transitory computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the trace header word generalization method based on two-dimensional seismic data is implemented.

[0085] The above-mentioned computer-readable storage media include, but are not limited to: optical storage media (e.g., CD-ROM and DVD), magneto-optical storage media (e.g., MO), magnetic storage media (e.g., magnetic tape or mobile hard disk), media with built-in rewritable non-volatile memory (e.g., memory card) and media with built-in ROM (e.g., ROM box).

[0086] In summary, the present invention provides a generalized management technology for header characters based on two-dimensional seismic data, which can dynamically register any type of header character information according to actual needs, and can sort the seismic data according to the header field without modifying the seismic data, thereby saving the memory occupied by the seismic data processing system and improving the efficiency of sorting the seismic data according to a certain header field.

[0087] The embodiments of the present invention have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and changes will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments.

Claims

1. A generalization method for trace header characters based on 2D seismic data. It is characterized in that include: Define data types; Build data models; Load and use header fields; Sort seismic trace data by trace header field.

2. The trace header generalization method based on two-dimensional seismic data according to claim 1, It is characterized in that The defined data types include: Define the data type of the generalized header field RecdHeadField, which is used to set and get the value of any type of header field; Define the data type ReadHeadDesc that describes the header field, which is used to store the name, type and position of the header field in the header field list RecdHeadFieldList; Define the header data type RecdHead to store each header field list RecdHeadFieldList and the address of the starting position of each seismic sampling data in the one-dimensional array RecdData.

3. The trace header generalization method based on two-dimensional seismic data according to claim 2, It is characterized in that The constructing of the data model comprises: Define a one-dimensional array RecdData, read the seismic data SEG-Y file, store all seismic channel sampling data in order into the one-dimensional array RecdData, and save the number of sampling points RecdLen of each seismic data, then the number of seismic data channels RecdNum = RecdData.size() / RecdLen; Define the trace header object array RecdHeads, the array length is the number of seismic data traces RecdNum, and the array element is a trace header field object RecdHead; Define the hash table ReadHeadDescHash of the trace header field description object. The size of the hash table is the number of seismic trace header fields loaded. The key of the hash table element is the trace header field name, and the corresponding key value is the corresponding trace header field description object RecdHeadDesc.

4. The trace header generalization method based on two-dimensional seismic data according to claim 3, It is characterized in that Loading the header field includes: reading the header field array to be used from the SEG-Y seismic data file, adding each element of the header field array to the end of the header field list RecdHeadFieldList of the header object RecdHead corresponding to the header object array RecdHeads according to the seismic trace index, and setting the name, type and position of the header field in the header field list RecdHeadFieldList to the hash table ReadHeadDescHash of the header field description object.

5. The trace header generalization method based on two-dimensional seismic data according to claim 4, It is characterized in that Using the header field includes: obtaining the position of the field in the header field list RecdHeadFieldList in the hash table ReadHeadDescHash of the header field description object through the header field name, and then accessing the header field list RecdHeadFieldList of the corresponding header object RecdHead in the header object array RecdHeads through the track index.

6. The trace header generalization method based on two-dimensional seismic data according to claim 5, It is characterized in that The method of sorting the seismic trace data by trace header fields includes: constructing an ordered data structure with a one-to-one mapping relationship according to the seismic trace header fields and corresponding seismic trace indexes that need to be sorted.

7. The trace header generalization method based on two-dimensional seismic data according to claim 6, It is characterized in that The method further includes obtaining the corresponding track header object RecdHead from the track header object array RecdHeads according to the reordered seismic track index, and then obtaining the address of the starting position of the corresponding seismic track sampling data in the one-dimensional array RecdData from the track header object RecdHead, and finally obtaining the sampling data of the corresponding seismic track from the one-dimensional seismic data array RecdData according to the address, thereby achieving the purpose of sorting the seismic data according to the track header field.

8. A trace header generalization device based on two-dimensional seismic data, It is characterized in that include: Definition module, used to define data types; Building modules, used to build data models; Load and use modules, used to load and use header fields; The sorting module is used to sort the seismic trace data according to the trace header field.

9. An electronic device, It is characterized in that The electronic device comprises: A memory storing executable instructions; A processor, wherein the processor runs the executable instructions in the memory to implement the trace header word generalization method based on two-dimensional seismic data as described in any one of claims 1-7.

10. A non-transitory computer-readable storage medium having a computer program stored thereon, It is characterized in that When the computer program is executed by a processor, the method for generalizing trace header characters based on two-dimensional seismic data as described in any one of claims 1 to 7 is implemented.