impproc¶
An executable to perform single processing steps.
This has a lot of convenience in terms of the call since you get more help with commands, more control of arguments, control over the order in which things are done, etc, but has the disadvantage of requiring a call/load/write for every step.
You can get a list of commands with impproc -h
For any individual command, you can get more help by running impproc [command] -h
.
Examples¶
A sample workflow might be something like
# make directories for the output
mkdir bandpass hfilt nmo
# Vertical bandpass from 150-450MHz (loading in the raw data with the -gssi flag)
impproc vbp 150 450 -gssi *.DZT -o bandpass/
# do some horizontal filtering on that output
impproc hfilt 1000 2000 bandpass/*.mat -o hfilt
# finally do a conversion to the time domain
impproc nmo 10 hfilt/*.mat -o nmo
The same processing steps can be done without separating the output into different folders. At risk of file clutter, the workflow could be
# Vertical bandpass from 150-450MHz (loading in the raw data with the -gssi flag)
impproc vbp 150 450 -gssi *.DZT
# do some horizontal filtering on that output
impproc hfilt 1000 2000 *_vbp.mat
# finally do a conversion to the time domain
impproc nmo 10 *_hfilt.mat
# Outputs are now sitting around with _vbp_hfilt_nmo before the extension
A similar example, with visualization of the outputs, is here.
Usage¶
usage: impproc [-h]
{hfilt,ahfilt,rev,cat,elev,restack,rgain,agc,vbp,hbp,lp,crop,hcrop,nmo,interp,geolocate,denoise,migrate}
...
Sub-commands:¶
hfilt¶
Horizontally filter the data by subtracting the average trace from a window
impproc hfilt [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
start_trace end_trace fns [fns ...]
Positional Arguments¶
- start_trace
First trace of representative subset
- end_trace
Last trace of representative subset
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
ahfilt¶
Horizontally filter the data adaptively
impproc ahfilt [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
win fns [fns ...]
Positional Arguments¶
- win
Number of traces to include in the moving average
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
rev¶
Reverse the data
impproc rev [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
fns [fns ...]
Positional Arguments¶
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
cat¶
Concatenate the data
impproc cat [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
fns [fns ...]
Positional Arguments¶
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
elev¶
Elevation correct
impproc elev [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
fns [fns ...]
Positional Arguments¶
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
restack¶
Restack to interval
impproc restack [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
traces fns [fns ...]
Positional Arguments¶
- traces
Number of traces to stack. Must be an odd number
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
rgain¶
Add a range gain
impproc rgain [-h] [-slope SLOPE] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
fns [fns ...]
Positional Arguments¶
- fns
The files to process
Named Arguments¶
- -slope
Slope of linear range gain. Default 0.1
Default: 0.1
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
agc¶
Add an automatic gain
impproc agc [-h] [-window WINDOW] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
fns [fns ...]
Positional Arguments¶
- fns
The files to process
Named Arguments¶
- -window
Number of samples to average
Default: 50
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
vbp¶
Vertically bandpass the data
impproc vbp [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
low_MHz high_MHz fns [fns ...]
Positional Arguments¶
- low_MHz
Lowest frequency passed (in MHz)
- high_MHz
Highest frequency passed (in MHz)
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
hbp¶
Horizontally bandpass the data
impproc hbp [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
low high fns [fns ...]
Positional Arguments¶
- low
Lowest frequency passed (in wavelength)
- high
Highest frequency passed (in wavelength)
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
lp¶
Horizontally lowpass the data
impproc lp [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
low fns [fns ...]
Positional Arguments¶
- low
Lowest frequency passed (in wavelength)
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
crop¶
Crop the data in the vertical
impproc crop [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
{top,bottom} {snum,twtt,depth,pretrig} lim fns [fns ...]
Positional Arguments¶
- top_or_bottom
Possible choices: top, bottom
Remove from the top or bottom
- dimension
Possible choices: snum, twtt, depth, pretrig
Set the bound in terms of snum (sample number), twtt (two way travel time in microseconds), depth (m, calculated using the nmo_depth or a light speed of 1.69e8m/s if it doesn’t, or pretrig (the recorded trigger sample)
- lim
The cutoff value
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
hcrop¶
Crop the data in the horizontal
impproc hcrop [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
{left,right} {tnum,dist} lim fns [fns ...]
Positional Arguments¶
- left_or_right
Possible choices: left, right
Remove from the left or right
- dimension
Possible choices: tnum, dist
Set the bound in terms of tnum (trace number, 1 indexed) or dist (distance in km)
- lim
The cutoff value
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
nmo¶
Normal move-out correction
impproc nmo [-h] [--uice UICE] [--uair UAIR]
[--const_firn_offset CONST_FIRN_OFFSET]
[--rho_profile RHO_PROFILE] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
ant_sep fns [fns ...]
Positional Arguments¶
- ant_sep
Antenna separation
- fns
The files to process
Named Arguments¶
- --uice
Speed of light in ice in m/s (default 1.69e8)
Default: 169000000.0
- --uair
Speed of light in air in m/s (default 3.0e8)
Default: 300000000.0
- --const_firn_offset
A constant value added to depth to account for firn. Default None (0.0).
- --rho_profile
Filename for a depth density profile to correct wave velocity.
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
interp¶
Reinterpolate GPS
impproc interp [-h] [--gps_fn GPS_FN] [--offset OFFSET] [--minmove MINMOVE]
[--extrapolate] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
spacing fns [fns ...]
Positional Arguments¶
- spacing
New spacing of radar traces, in meters
- fns
The files to process
Named Arguments¶
- --gps_fn
CSV or mat file containing the GPS information. .csv and .txt files are assumed to be csv, .mat are mat. Default is None–use associated (presumably non-precision) GPS
- --offset
Offset from GPS time to radar time
Default: 0.0
- --minmove
Minimum movement to not be stationary
Default: 0.01
- --extrapolate
Extrapolate GPS data beyond bounds
Default: False
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
geolocate¶
GPS control
impproc geolocate [-h] [--extrapolate] [--guess] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
gps_fn fns [fns ...]
Positional Arguments¶
- gps_fn
CSV or mat file containing the GPS information. .csv and .txt files are assumed to be csv, .mat are mat. Default is None–use associated (presumably non-precision) GPS
- fns
The files to process
Named Arguments¶
- --extrapolate
Extrapolate GPS data beyond bounds
Default: False
- --guess
Guess at offset
Default: False
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
denoise¶
Denoising filter for the data image
impproc denoise [-h] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
vert_win hor_win fns [fns ...]
Positional Arguments¶
- vert_win
Size of filtering window in vertical (number of samples)
- hor_win
Size of filtering window in horizontal (number of traces)
- fns
The files to process
Named Arguments¶
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”
migrate¶
Migration
impproc migrate [-h] [--mtype {stolt,kirch,phsh,tk,sumigtk,sustolt,sumigffd}]
[--vel VEL] [--vel_fn VEL_FN] [--nearfield] [--htaper HTAPER]
[--vtaper VTAPER] [--nxpad NXPAD] [--tmig TMIG]
[--verbose VERBOSE] [-o O]
[--ftype {mat,pe,gssi,stomat,gprMax,gecko,segy,mcords_mat,mcords_nc,UoA_mat,ramac,bsi,delores,osu,ramac}]
fns [fns ...]
Positional Arguments¶
- fns
The files to process
Named Arguments¶
- --mtype
Possible choices: stolt, kirch, phsh, tk, sumigtk, sustolt, sumigffd
Migration routines.
Default: “phsh”
- --vel
Speed of light in dielectric medium m/s default is for ice, 1.69e8)
Default: 169000000.0
- --vel_fn
Filename for inupt velocity array. Column 1: velocities, Column 2: z locations, Column 3: x locations (optional)
- --nearfield
Boolean for nearfield operator in Kirchhoff migration.
Default: False
- --htaper
Number of samples for horizontal taper
Default: 100
- --vtaper
Number of samples for vertical taper
Default: 1000
- --nxpad
Number of traces to pad with zeros for FFT
Default: 100
- --tmig
Times for velocity profile
Default: 0
- --verbose
Print output from SeisUnix migration
Default: 1
- -o
Output to this file (folder if multiple inputs)
- --ftype
Possible choices: mat, pe, gssi, stomat, gprMax, gecko, segy, mcords_mat, mcords_nc, UoA_mat, ramac, bsi, delores, osu, ramac
Type of file to load (default ImpDAR mat)
Default: “mat”