Bioacoustic processing and Pied tamarin (Saguinus bicolor) vocalization detector.
Project description
🐒 Sauim Detector
sauim-detector is a Python command-line tool for bioacoustic processing and automatic detection of Pied tamarin (Saguinus bicolor) vocalizations. It uses a pre-trained bird vocalization embedding model and a custom One-Class SVM classifier trained to detect the target species.
Quick tutorial: Watch on YouTube
Installation
Create and activate a Python 3.12 environment. This step is recommended to keep dependencies isolated; the environment name can be anything:
conda create -n sauim python=3.12 pip
conda activate sauim
python -m pip install --upgrade pip
Install the released package from PyPI:
python -m pip install sauim-detector
For local development, clone the repository and install the package in editable mode:
git clone https://github.com/juancolonna/Sauim.git
cd Sauim
python -m pip install -e ./sauim-detector
The package requires Python >=3.12,<3.13. TensorFlow and TensorFlow Hub compatibility is sensitive to Python and setuptools versions, so the project pins setuptools<82.
Usage
Run the detector from the repository root:
sauim-detector records/Mindu_Saguinus_bicolor_02.02.19-000.wav
By default, detections are printed to the terminal in JSON format.
Save detections as an Audacity label file:
sauim-detector records/Mindu_Saguinus_bicolor_02.02.19-000.wav --save-detections
Save the processed audio used by the detector:
sauim-detector records/Mindu_Saguinus_bicolor_02.02.19-000.wav --save-audio
Use both options together:
sauim-detector records/Mindu_Saguinus_bicolor_02.02.19-000.wav --save-detections --save-audio
Outputs
With --save-detections, the CLI writes an Audacity-compatible label file next to the input audio:
start_time end_time label
0.00 7.20 Pied tamarin
10.00 15.50 Pied tamarin
20.00 30.80 Pied tamarin
These labels can be imported into Audacity with File > Import > Labels....
Without --save-detections, the CLI prints JSON detections to stdout. Each detection includes:
species: common namescientific: scientific nameconfidence: One-Class SVM decision score, not a calibrated probabilitystart_time: detection start time in secondsend_time: detection end time in seconds
Example:
[
{
"species": "Pied tamarin",
"scientific": "Saguinus bicolor",
"confidence": 0.003421,
"start_time": 12.0,
"end_time": 17.0
}
]
Notes
- Input files must be
.wavfiles. - Audio is loaded at 32 kHz.
- The classifier only detects the target species, Pied tamarin (Saguinus bicolor).
- The
confidencefield is the raw OCSVM decision score. Positive scores are detections; negative scores are rejected before output. - Labels should be manually validated in Audacity.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sauim_detector-0.1.3a0.tar.gz.
File metadata
- Download URL: sauim_detector-0.1.3a0.tar.gz
- Upload date:
- Size: 74.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f35bc4b9d149d0cc1357874aa16edb14032c5fc55dc4e46418f7adc97bc7eade
|
|
| MD5 |
d378e3e39b94e9cc0109fee6289636ac
|
|
| BLAKE2b-256 |
e9407793a25e93660de5992ca95cb10068f0d0846bca3e9c41c5f2ce8503ba42
|
File details
Details for the file sauim_detector-0.1.3a0-py3-none-any.whl.
File metadata
- Download URL: sauim_detector-0.1.3a0-py3-none-any.whl
- Upload date:
- Size: 74.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4ffafff41ad9bcb03f41fb8c664009b7adac991009f3f4c5e97c13c9095c0d24
|
|
| MD5 |
88d0af08194cc04e32fd476fba82a47e
|
|
| BLAKE2b-256 |
845e916ebe38054ba9b4d7f7c6181882ae7ae009831de751357751ee8071c964
|