Downloads · 30 days
16
4% of all-time downloads
ryroeu/satnogs-signal-classifier
satnogs-signal-classifier is a image classification model from ryroeu. Use it when you need a label for an image. It is set up for transformers. The card lists the license as mit.
ResNet-18 fine-tuned to classify SatNOGS waterfall spectrograms as signal vs no-signal (narrowband FSK/GFSK cubesat telemetry). A read-only triage aid — it suggests, it does not auto-vet.
Downloads · 30 days
16
4% of all-time downloads
All-time downloads
407
Public
Parameters
11.2M
89.5 MB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors44.8 MB · 100%
From the Hugging Face model README
ResNet-18 fine-tuned to classify SatNOGS waterfall spectrograms as signal vs no-signal (narrowband FSK/GFSK cubesat telemetry). A read-only triage aid — it suggests, it does not auto-vet.
Inputs are cropped to the spectrogram region (colorbar + axes removed), which re-centers the signal.
Held-out test set (436 observations) combining two axes held out of training: an entirely unseen satellite (FrontierSat) plus held-out ground stations whose noise/RFI fingerprint is kept out of training:
| Metric | Model | Classical baseline |
|---|---|---|
| ROC-AUC | 0.827 | 0.570 |
| PR-AUC | 0.829 | 0.557 |
| precision@10 | 1.000 | 0.600 |
Cross-satellite generalization (held-out FrontierSat, 240 obs, never trained on): ROC-AUC 0.772. By mode: GFSK 0.93, FSK 0.92, FSK AX.100 Mode 5 0.79.
0 = without-signal, 1 = with-signal; predict P(with-signal) = softmax index 1.
Trained on gold human waterfall_status vettings — never the decode-based observation status.
Dataset: ryroeu/satnogs-signal-waterfalls — 4 train satellites (OTP-2, CUBEBEL-2, AEPEX, CatSat), held-out satellite FrontierSat; ~1,189 gold waterfalls, cropped to the spectrogram.
from transformers import pipeline
clf = pipeline("image-classification", model="ryroeu/satnogs-signal-classifier")
clf("waterfall.png")