cats
Cluster Analysis of Trimmed Spectrograms: framework for detection and denoising of sparse signals in time-frequency domain.
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 2 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.5%) to scientific vocabulary
Keywords
Repository
Cluster Analysis of Trimmed Spectrograms: framework for detection and denoising of sparse signals in time-frequency domain.
Basic Info
Statistics
- Stars: 11
- Watchers: 4
- Forks: 1
- Open Issues: 0
- Releases: 2
Topics
Metadata Files
README.md
Cluster Analysis of Trimmed Spectrograms (CATS)
CATS is a signal processing technique and framework for detecting and denoising sparse signals in the time-frequency domain. Particularly, very useful for processing earthquakes. This work is still in progress, and the package is under active development. Soon, here will be links to our papers/preprints.
Key features of CATS
- Versatile. Any sparse signals in the time-frequency domain can be localized by CATS.
- Flexible. Fast detection with STFT or more accurate denoising with CWT.
- Fast and accurate. Here will be links to our papers showing this.
- Comprehensive quality control.
- Autotunable parameters with direct physical interpretation.
- Easy visualization of all intermediate workflow steps.
- Collected cluster statistics allow for fine-grained QC and classification of signals.
Installation
To install the package:
1. Short way: pip install git+https://github.com/sgrubas/cats.git
2. Other way:
1. Clone repository: git clone https://github.com/sgrubas/cats.git
2. Open the cats directory: cd cats
3. Install: 1) pip install . or 2) pip install -e . (editable mode)
3. To update: pip install -U git+https://github.com/sgrubas/cats.git
Dependencies
The package was tested on Python 3.9. See other dependencies in requirements.txt.
Tutorials
- Detection of seismic events
- Autotuning CATS detector with Optuna
- Denoising seismic events
- Autotuning CATS denoising with Optuna
Demos:
Signal detection with CATSDetector

Signal denoising with CATSDenoiser and CATSDenoiserCWT


Citation
If you find CATS useful for your research, please cite the repository (CITATION.bib).
Authors
- Serafim Grubas (serafimgrubas@gmail.com, grubas@ualberta.ca)
- Mirko van der Baan
Owner
- Name: Serafim Grubas
- Login: sgrubas
- Kind: user
- Location: Edmonton
- Company: University of Alberta
- Repositories: 2
- Profile: https://github.com/sgrubas
PhD student at University of Alberta
Citation (CITATION.bib)
@software{grubas2025cats,
author = {Serafim Grubas},
title = {CATS: Cluster Analysis of Trimmed Spectrograms},
month = jun,
year = {2025},
publisher = {Zenodo},
journal = {GitHub},
version = {v0.3.0},
doi = {10.5281/zenodo.15627707},
url = {https://doi.org/10.5281/zenodo.15627707}
}
GitHub Events
Total
- Release event: 1
- Watch event: 6
- Delete event: 1
- Push event: 13
- Create event: 1
Last Year
- Release event: 1
- Watch event: 6
- Delete event: 1
- Push event: 13
- Create event: 1