KVP: Multiscale kurtosis phase picking
Kurtosis-Value-Picker (KVP) is a seismic phase picker based on kurtosis that produces picks with spectral information. It filters input traces using a family of Ricker wavelet frames to apply the wavelet transform (FIR filter), achieving narrowband picking resolution. The full algorithm is described in detail by the corresponding publication.
Citation
B-CSI implementation and Python package
Our implementation revolves around the KVP class, which
aims to provide a simple and intuitive interface to the algorithm.
Instances of this class store all picking parameters to run the full
algorithm on any data fed to them.
Picking results are stored on instances of the KVPOutput
class. This class provides access to picked phases, available as POSIX
timestamps or time in seconds from the start of the input data. Optionally,
this class can also expose copies of both filtered and characteristic
function (CF) traces. This should be done carefully, as running the algorithm
iterativelly over many data may quickly fill all available memory on your
workstation.
Memory optimizations
The package tries to be smart about memory usage. KVP instances
will try to reuse their already allocated memory during a previous run and
will only reallocate if necessary. This is all handled internally. In
particular, the performance boost when all inputs have the exact same
length (e.g. DAS) is massive.