SEG-Y traces and associated navigation from Sweeney and others (2015), Pendleton and others (2016), and Coastal Planning & Engineering (2014) were loaded into Kingdom Suite 2017. SEG-Y data from USGS field activities 1974-004-FA and 1975-003-FA using navigation obtained from the USGS Coastal and Marine Hazards and Resources Program data server (
https://cmgds.marine.usgs.gov/) were also loaded to Kingdom Suite. These SEG-Y files were created from 300-dpi grayscale TIFFs that were cropped and resampled in Adobe Photoshop, so that each pixel width was equal to a trace and each pixel height was equal to a time sample. The time of day in the navigation files were used to calculate trace numbers on the basis of shot-time intervals (0.5 seconds). These TIFFs were converted to SEG-Y files by tif2segy, a script that utilizes Seismic Unix and Netpbm image tools. The script was as follows:
#!/bin/csh
# Converts an 8-bit greyscale TIFF file to a segy file
# Assumes that there is one pixel horizontally for each trace
# and 1 pixel vertically for each time sample.
# Assumes the sample interval in the resulting segy file
# is 4ms (i.e. 250 samples or pixels per second)
#
# Author: Andrew MacRae, (Andrew.MacRae at SMU.CA)
# usage:
# tif2segy filename.tif
# output will be put in filename.segy
set tiffile = $1
if ( !( -e "$tiffile" ) ) then
echo "tif2segy -- convert a TIFF image file to a SEGY file"
echo "By Andrew MacRae, and the authors of NetPBM and Seismic Unix"
echo
echo "Usage: tif2segy filename.tif"
echo
echo "Input file should be a TIFF file with the content of the seismic plot"
echo "(i.e. no labels or annotation -- only the data) with 1 pixel per "
echo "trace horizontally, and one pixel per sample vertically."
echo "The number of traces and number of samples are calculated from the image size."
echo "Output is placed in filename.segy."
echo
echo "The program assumes that the "netpbm" image tools and "Seismic Unix""
echo "are already in the command path."
exit(1)
else
echo "tif2segy -- convert a TIFF image file to a SEGY file"
echo "By Andrew MacRae, and the authors of NetPBM and Seismic Unix"
echo
endif
if( `which tifftopnm | cut -f 1 -d ' '` == 'no' ) then
echo "Could not find the NetPBM tools (e.g., tifftopnm)."
echo "You need to install them, or put them into your command path."
exit(1)
endif
if( `which suaddhead | cut -f 1 -d ' '` == 'no' ) then
echo "Could not find Seismic Unix."
echo "You need to install it, or put the programs into your command path."
exit(1)
endif
# sample interval -- 4000 = 4 milliseconds
set interval = 125
# get size of image:
# horizontal pixels -> number of traces
# vertical pixels -> number of samples
set traces = `tifftopnm < $tiffile | pnmfile | cut -f 3 -d ' ' -s`
set samples = `tifftopnm < $tiffile | pnmfile | cut -f 5 -d ' ' -s`
echo image file $tiffile has $traces horizontal pixels which will become "traces"
# convert image to byte values and invert values (tifftopnm and pnminvert)
# rotate and flip to Seismic Unix standard trace-sample orientation
# (pnmflip), chop off PGM image header (tail), reformat data from
# 8-bit character values to floating point (recast), and then
# add trace headers and insert sample interval (suaddhead and
# sushw). Output to Seismic Unix data file (.su file)
tifftopnm < $tiffile | pnminvert | pnmflip -r90 -tb | tail +4 | recast in=uchar out=float | suaddhead ns=$samples ftn=0 | sushw key=dt a=$interval > $tiffile:r.su
# create binary and EBCDIC headers
segyhdrs < $tiffile:r.su
# default header is not needed
rm header
# write out a 40-line, 80 character/line header to be converted to EBCDIC
# get the name of the file, without a .tif ending
set linename = $tiffile:r
echo "C " > tif2segy_header
# This will output a line with the linename (derived from the filename)
# and then truncate the line to 80 characters
# Please modify this header to describe your data.
echo "C Line from file: " $linename " Field Activity 1975-003-FA Uniboom " | cut -c1-79 >> tif2segy_header
echo "C " >> tif2segy_header
echo "C This SEGY file was created by David Foster " >> tif2segy_header
echo "C " >> tif2segy_header
echo "C " >> tif2segy_header
echo "C File was converted using tif2segy, netpbm, and Seismic Unix " >> tif2segy_header
echo "C Author of tif2segy script is Andrew MacRae (andrew.macrae at smu.ca) " >> tif2segy_header
set i = 0
while ($i < 32 )
echo "C " >> tif2segy_header
set i = ($i + 1)
end
# write a SEGY file using headers and Seismic Unix file. Include 'endian=0' if using a little endian machine.
segywrite tape=$tiffile:r.segy bfile=binary hfile=tif2segy_header endian=0 < $tiffile:r.su
# leave cleanup to the user, in case they want to review the
# Seismic Unix files
echo "Cleaning up temporary files: tif2segy_header, binary, and" $tiffile:r.su
rm tif2segy_header
rm binary
#rm $tiffile:r.su
exit(0)
The contact person for this and all subsequent processing steps below is David S. Foster.