Finding Tiny Earthquakes by Their Fingerprints

Utpal Kumar   7 minute read      

Loading likes…

An earthquake too small to stand out in a continuous seismogram may still resemble a larger, nearby event. Matched filtering uses that resemblance: take an observed earthquake waveform, slide it through the continuous record, and look for a similar waveform at other times.

The useful question is specific: which signals resemble these templates? A strong match is evidence of waveform similarity. Establishing an earthquake, assigning its magnitude, or measuring catalog completeness requires additional checks. A three-station example from the 2018 Nový Kostel swarm makes those distinctions concrete.

What a waveform match measures

Nearby earthquakes with similar mechanisms can produce similar seismograms because they share source, path, site, and instrument effects. The resemblance may extend into the scattered coda. A template therefore contains more information than a single arrival or an energy increase.

At each trial time, normalized cross-correlation compares waveform shape after removing each window’s mean and normalizing its amplitude. The resulting Pearson correlation coefficient ranges from −1 to 1. Values near one indicate similar shapes with the same polarity. A positive amplitude scaling cancels in the normalization; additive noise does not.

Across several stations, the test is stronger: do similar waveforms recur with the same delays between stations? We align the station correlations using the reference earthquake’s timing, then combine them. Gibbons and Ringdal (2006) demonstrated how stacking correlation traces can reveal signals difficult to identify with conventional energy-based detectors. The earlier Earth Inversion cross-correlation tutorial develops the equation and time-shift interpretation.

Twelve hours of a real swarm

The recordings and reference events

The data are twelve hours of vertical-component recordings at NKC, ROHR, and PLN during the May 10, 2018 Nový Kostel swarm in western Bohemia. We use the public waveform file and two reference earthquakes from the ObsPy cross-correlation detector tutorial (ObsPy Development Team, n.d.). Their WEBNET origin times are 14:24:50 and 19:42:08 UTC, with catalog magnitudes ML 2.9 and 2.8, respectively.

A template is a short waveform snippet from a known earthquake at each station. Following the tutorial, we take snippets 2–7 seconds after origin at NKC and ROHR, and 6–12 seconds after origin at PLN. Each of the two reference events therefore supplies a three-station template.

How we searched

We preprocess the recordings before extracting templates: linear detrending, a five-second end taper, and a fourth-order Butterworth high-pass at 1 Hz, applied forward and backward for zero phase. We retain the 100 Hz sampling rate and do not remove instrument responses.

We slide the snippets through the recordings and calculate a correlation at each station, retaining its sign. Each snippet keeps its original time offset from the reference earthquake, so the three stations test the same possible event time. We do not shift stations independently to improve the match. Averaging their three scores with equal weight gives a network correlation trace. Its time axis estimates when a matching earthquake began: a template-based origin-time proxy, rather than an independently determined origin. We search 12:00:30–23:59:30 UTC, leaving margins at the record edges.

Every station’s matching score must exceed 0.5 for a candidate to pass. We require peaks to be at least ten seconds apart to avoid counting nearby peaks separately. If the two templates give detections less than ten seconds apart, we keep the higher score. Detections less than ten seconds from either reference origin are excluded, so finding a template earthquake again does not count as an additional detection.

What we found

In this example we find nine candidates after excluding the template earthquakes. Eight have origin-time proxies within 1.5 seconds of events in the original WEBNET catalog (Institute of Geophysics, Czech Academy of Sciences, n.d.). These are timing associations, not independent event identifications; chance coincidences remain possible during a swarm. The unmatched candidate, near 14:27:51 UTC, remains unvalidated and should not be called a new earthquake.

Three stacked panels: mean signed correlations for templates 1 and 2, with nine non-self candidates and two marked self-matches; below, 404 catalog events and eight timing associations on 10 May 2018.
Figure 1. (a, b) Equal-weight mean signed correlation for each template, plotted as 1 s minimum–maximum envelopes to retain narrow peaks. Dashed lines mark 0.5. Candidates must also exceed 0.5 at every station. Open circles show candidates and crosses excluded template self-matches. (c) Gray stems show catalog events; colored circles identify timing associations, colored by the retained template. Dotted vertical lines in (c) mark the template origins.

One catalog-associated candidate, near 19:41:55 UTC, occurs thirteen seconds before the second reference earthquake. Its catalog magnitude is ML 1.5, compared with ML 2.8 for the template. The mean correlation is 0.680: the waveform shapes remain similar despite the smaller recorded amplitudes.

Observed template and candidate waveforms at NKC, ROHR, and PLN, each normalized by its own RMS. Solid blue and dashed orange traces retain the original fixed station timing.
Figure 2. Template and candidate waveforms, each divided by its own root-mean-square amplitude (RMS). At NKC (a), ROHR (b), and PLN (c), correlations are 0.702, 0.591, and 0.747; candidate-to-template RMS ratios are 0.043, 0.062, and 0.061, respectively. These are filtered-count amplitude ratios, not magnitude estimates.

The catalog contains 404 events in the searched interval, including both references. They differ in location and detectability, whereas these two templates represent selected waveform families. This experiment demonstrates selective recovery; it establishes neither completeness nor improvement over another detector.

Why the detection count changes

Templates determine what the detector recognizes. Changes in source location, mechanism, frequency content, or propagation path can weaken a match even when an earthquake is present. Adding templates broadens the represented families and increases computation. Searching more templates or longer records also creates more opportunities for chance matches. A higher count after expanding the template set does not by itself imply increased seismicity.

Larger applications can achieve substantial gains. Ross et al. (2019) used template matching to build a Southern California catalog of 1.81 million earthquakes, roughly ten times the comparison catalog. That result depended on the regional archive and processing effort. FAST, introduced by Yoon et al. (2015), instead searches compact fingerprints for similar waveform segments without a preselected earthquake template. Our example uses conventional waveform cross-correlation.

The threshold also changes the answer. Requiring every station to exceed 0.3 gives 52 non-self candidates, including 33 catalog associations. At 0.4, the counts are 20 and 18; at 0.6, only two remain, both associated. Unmatched candidates are not necessarily false detections, so these counts do not measure a false-alarm rate.

Two stacked panels: candidate counts, catalog timing associations, and a zero-count station-time-offset control across thresholds 0.3 to 0.8; below, magnitudes of 402 non-template catalog events and eight associations at threshold 0.5.
Figure 3. (a) Counts versus the required correlation at every station; the vertical line marks 0.5. The control shifts observed station correlations by 0, 120, and 240 seconds, discarding the first 240 seconds. This breaks station coincidence. One realization, with no candidates here, cannot calibrate a false-alarm rate. (b) Catalog magnitudes for all 402 non-template events and the eight timing associations at threshold 0.5, in 0.3-unit bins. Both panels exclude times less than ten seconds from either template origin.

A threshold of 0.5 is a processing choice, not a probability that a candidate is an earthquake. Its effect depends on window length, filtering, noise, station coverage, and template quality. Median-absolute-deviation thresholds can adapt to background correlation, but their multipliers still need calibration. Check the implementation’s centering and MAD definition. Requiring every station to pass prevents a high network mean from hiding a poor match, but can reject a real event when one station is noisy.

What still needs validation

Self-matches check processing and alignment. Other candidates need waveform review and, ideally, additional stations or independent picks and association.

The template-based event time also needs care. Fine sampling does not guarantee equivalent absolute timing accuracy, and this calculation does not locate a hypocenter. Precise relative timing and relocation need their own checks.

Normalized correlation is not a magnitude estimator: normalization removes positive amplitude scaling. Relative amplitudes can support magnitude estimation for sufficiently similar events, but source spectra, instrument gain, noise, and path differences require calibration. Here, magnitudes come from the catalog, not from correlation height or uncalibrated amplitude ratios.

From an example to a catalog

A useful matched-filter catalog documents template selection, preprocessing, station availability, thresholds, exclusions, and validation together. EQcorrscan provides tools for template construction, detection, and subsequent analysis (Chamberlain et al., 2018); ObsPy supports compact, reproducible demonstrations such as this one. The goal is to resolve an earthquake family’s activity while making the detector’s selectivity explicit.

Data and reproducibility

The accompanying script, results, detection CSV, and figures record the run and input-file checksums. Reproduction downloads the ObsPy waveform example and original WEBNET catalog. The catalog reports whole-second times, so agreement does not establish subsecond absolute accuracy. No independent relocation was performed.

View the reproducibility repository on GitHub for the Python scripts, setup instructions, results, detection CSV, and figures.

AI assistance was used to research sources, draft this article, and execute the accompanying reproducible analysis. The reported measurements come from the supplied public waveform data.

References

Chamberlain, C. J., Hopp, C. J., Boese, C. M., Warren-Smith, E., Chambers, D., Chu, S. X., Michailos, K., & Townend, J. (2018). EQcorrscan: Repeating and near-repeating earthquake detection and analysis in Python. Seismological Research Letters, 89(1), 173–181. https://doi.org/10.1785/0220170151

Gibbons, S. J., & Ringdal, F. (2006). The detection of low magnitude seismic events using array-based waveform correlation. Geophysical Journal International, 165(1), 149–166. https://doi.org/10.1111/j.1365-246X.2006.02865.x

Institute of Geophysics, Czech Academy of Sciences. (n.d.). WEBNET earthquake catalog, 2018 [Data set]. Official catalog

ObsPy Development Team. (n.d.). Cross-correlation detector. Official tutorial and waveform source

Ross, Z. E., Trugman, D. T., Hauksson, E., & Shearer, P. M. (2019). Searching for hidden earthquakes in Southern California. Science, 364(6442), 767–771. https://doi.org/10.1126/science.aaw6888

Yoon, C. E., O’Reilly, O., Bergen, K. J., & Beroza, G. C. (2015). Earthquake detection through computationally efficient similarity search. Science Advances, 1(11), e1501057. https://doi.org/10.1126/sciadv.1501057

KEEP THE CURIOSITY GOING

Found this article useful?

A little appreciation goes a long way.

Loading likes…

Disclaimer of liability

The information provided by the Earth Inversion is made available for educational purposes only.

Whilst we endeavor to keep the information up-to-date and correct. Earth Inversion makes no representations or warranties of any kind, express or implied about the completeness, accuracy, reliability, suitability or availability with respect to the website or the information, products, services or related graphics content on the website for any purpose.

UNDER NO CIRCUMSTANCE SHALL WE HAVE ANY LIABILITY TO YOU FOR ANY LOSS OR DAMAGE OF ANY KIND INCURRED AS A RESULT OF THE USE OF THE SITE OR RELIANCE ON ANY INFORMATION PROVIDED ON THE SITE. ANY RELIANCE YOU PLACED ON SUCH MATERIAL IS THEREFORE STRICTLY AT YOUR OWN RISK.


Leave a comment