Online demos

SEG-Y Reader

 SEG-Y is a widely used format for storing seismic trace data, defined by the Society of Exploration Geophysicists publication "Digital Tape Standards" ( Open Inventor Toolkit provides an SEG-Y reader for loading seismic traces, lines, and volumes. The reader supports all sizes of integer and float data, and can correctly determine the number of samples per trace in most cases. The reader also allows specifying custom byte offsets in trace headers to import datasets that do not follow standard SEG-Y encoding.

In some cases, information such as line numbers and crossline numbers will be stored in non-standard locations in the header. Applications can specify the byte position of values within the header using the setSegyTraceHeaderBytePosition() method.

Information about the range of inline / crossline numbers and the range of time values can be queried using the getInlineRange()getCrosslineRange() and getZRange() methods.

Applications can also use this class to open a SEGY file and extract information from the file without actually loading all the data. To get the SEGY text file header call getSegyTextHeader(). To get the SEGY binary file header call getSegyFileHeader(). To get the header of a specific trace call getSegyTraceHeader(). To get the values in a specific trace call getSegyTraceData().

In most cases, the SEG-Y reader can automatically detect:

  • The number of traces per line is not uniform (missing traces).
  • The length of traces is not uniform (missing samples).
  • The values in the file need to be byte-swapped (for example the data was written on a "big-endian" machine and is being read on a "little-endian" machine)
  • Floating-point values were written in IEEE or IBM format (the format field in the SEG-Y header should specify this but is not always correct).

If the SEGY reader fails to read the file correctly, you can set various environment variables to specify correct handling for the above conditions.  You can also debug the reading process by setting:

  • IVVR_SEGY_DEBUG=1 This outputs information about what the reader is actually doing.
  • IVVR_SEGY_DUMP=filename This requests that information from the file and trace headers be written to the specified file while processing the SEGY data file.

Learn more | Online Demo | Product demo name: RemoteViz Seismic Volume