A reproducible scientific workflow that runs Orca whale call detection on hydrophone audio from Puget Sound, powered by the Orcasound project and the Pegasus Workflow Management System.
This experiment downloads audio recordings from hydrophone sensors deployed at three locations in Washington state (San Juan Island, Point Bush, and Port Townsend), converts them to spectrograms, and runs a pre-trained FastAI model to classify Orca calls. The workflow is orchestrated by Kiso and runs on VMs provisioned with Vagrant.
Important
The experiment can't be run on ARM-based machines.
- Python 3.9+
- Vagrant — used to provision VMs for the experiment
- VirtualBox — the VM backend
- 16 CPU cores and 16 GB RAM — required by the default experiment configuration
Install the Kiso CLI and Vagrant support:
pip install kiso[vagrant]The experiment is driven by experiment.yml in the root of this repository. It defines the deployment topology, VM resources, and which workflow to run. You can inspect and validate your configuration before running:
kiso checkTo change the number of VMs, VM size, or network settings, edit the sites[].resources section of experiment.yml.
# Provision and set up the VMs
kiso up
# Run the Orca call detection workflow
kiso run
# Tear down the provisioned VMs when done
kiso downAfter kiso run completes:
- Pegasus submit directories are written to the output directory. Each submit directory contains a
statistics/subdirectory withpegasus-statisticsoutput. - Experiment outputs are placed at the destination defined in
experiment.yml.
- Orcasound — the open-source hydrophone network this experiment is based on
- Orca Hello — the real-time Orca notification system
- Pegasus Workflow Management System — scientific workflow management system used to orchestrate the experiment
- EnOSlib — experiment engine for provisioning and configuring distributed testbed environments
Kiso is funded by the National Science Foundation (NSF) under award 2403051.
Apache 2.0 © Pegasus ISI