SeisComP/SeisBench interface to enable deep-learning (re)picking in SeisComP


This is a simple deep learning (DL) repicker module for SeisComP based on SeisBench.

Right now, the DL repicker module performs repicking of previously located events. In other words, it looks for picks at known or estimated times in seismograms and tries to determine accurate arrival times or even detect new arrivals. It does not work on continuous streams.

The DL repicker is written in Python and consists of three modules:


This is the communication module that connects to a SeisComP system (messaging) and listens for interesting objects (origins, picks). It writes them to a YAML file, which is then processed by the repicker module.


This is the actual repicker. Whenever the SeisComP client writes out a new YAML file with picks, it will reprocess these picks. The results will in turn be written to a YAML file where they are picked up by


A simple relocator for SeisComP, to be used on the command line. For a given event location it simply reads DL picks from the database and attempts to obtain a reasonable event location, which is then sent to the SeisComP system. It is planned to fully automate this relocation by either running continuously or extending scautoloc to be able to properly process DL picks. Or both.


Build requirements

  • python3-setuptools
  • python3-distutils-extra


To install, you simply run python install. Note: there is no uninstall script.

You need to have installed SeisBench previously.

Authors & Acknowlegements

The DL repicker was written by Joachim Saul and Thomas Bornstein. The software depends heavily on SeisBench, which was written by Jannes Münchmeyer and Jack Wollam.

Reference publications for SeisBench: