Skip to content
Scott Veirs edited this page Jul 31, 2024 · 36 revisions

Welcome to the top-level wiki for Orcasound!

This page should eventually be a brief "table of contents" with links to more-detailed guides. Maybe each section should basically be a succinct summary paragraph and a single image -- both indicating what you'll learn about in the associated guide?

Hot links: 2023 priority projects | community discussions

Add a photo and/or graphics to this home page?

1. Overview: network + community

What is Orcasound?

Orcasound is a hydrophone network in the critical habitat of the endangered Southern Resident killer whales.

Orcasound is an open source community building free hardware and software solutions for bioacoustics and marine conservation.

Orcasound is powered by volunteerism. Some folks are divers, captains, or general volunteers who help their favorite NGO deploy and maintain a new hydrophone. Some are software designers and developers who contribute via hackathons, summer internships, or asynchronous teams. Others are retirees or working professionals who bring expertise in project management, data science, artificial intelligence, or bioacoustics to the table and build innovative new solutions for science and saving soniferous species.

Orcasound is a do-ocracy. If you can build it with open source tools and/or cheap hardware -- and your innovative solution works for science and sustainability -- how you do it (or hack it together) doesn't matter so much to us.

Learn more about our community (code of conduct, organization, governance, resources, funding, acknowledgments, recruiting, Hall of Fame)

2. Onboarding: How can I help?

Add intro here that is beyond what is listed in README.md?

Ideally we want to quickly route incoming volunteers through info here that everyone should have read to be part of a fruitful community, and then custom info to efficiently get them contributing.

How do you want to contribute?

I want to:

  • join the UX Research and Design Team
  • join the Dev & DevOps Team
  • join the Project Management Team
  • help pioneer open hydrophones and marine bioacoustic hardware
  • help maintain and expand the hydrophone network (deployments and maintenance)

3. Administrative guides

Practical technical guidance for monitoring & maintaining currently-deployed Orcasound software, deployments, and analytics.

If you're an Orcasound administrator, or would like to be one, the following sections will lead you to critical how-to information across the Orcasound ecosystem.

3.1 The live-listening web app

The core Orcasound software is a suite of tools that make it easy to listen to live audio streams within any web browser. Because the audio data can be mapped to a date-time, the player in the web app knows the real time of the audio a listener is hearing, so community scientists can use the web app to help to annotate the live audio data.

Orcanode

The Orcanode software generates the live audio stream from a low-cost single-board computer. We are agnostic to the hardware selected, but have mostly tested and deployed on Raspberry Pis (model 3b or 4). The Dockerized code is written in shell script or Python.

The Orcanode wiki covers:

Orcasite

The Orcasite software is a browser-based web app that is deployed via Heroku and pulls audio data from Amazon S3 buckets.

The Orcasite wiki's administrative section covers:

  • How to add a node to the web app
  • How to test a node in dev or beta subdomains of orcasound.net
  • How to add or remove a node from the production subdomain -- live.orcasound.net

3.2 Humans-in-the-loop real time inference system

A long-term goal of the Orcasound web app is to facilitate signal detection in live audio data by an optimal combination of human listeners and Artificial Intelligence agents. To that end we have built a machine learning pipeline that iteratively harvests live audio data that humans find interesting (indicated with a button in v2) and/or that initial models think contain orca sounds. To speed the iterative process, we have also developed annotation tools to more efficiently label our highest-value archived data (see Annotation projects below).

With increasing amounts of labeled data in hand, we have developed and are refining a real time inference system that utilizes a binary classifier to predict if a detected signal is a call of the endangered Southern Resident killer whales (SRKWs), or not. Dubbed "OrcaHello" by the Microsoft hacakthon volunteers who built it, the system is deployed via Azure services working from the raw audio data S3 buckets.

The OrcaHello software is maintained in the aifororcas-livesystem repo.

The aifororcas-livesystem wiki has a (OrcaHello Administration page)[https://github.com/orcasound/aifororcas-livesystem/wiki/Administration] that covers:

  • How to add a node to the real time inference stream
  • How to add or remove OrcaHello moderators (who validate raw detection candidates)
  • How to add or remove OrcaHello subscribers (who receive notifications of confirmed true positives)

3.3 Annotation projects

  • Orca Active Learning GSoC project -- OrcaAL
    • Need to add direct link to administrative documentation...
  • Pod.Cast
    • Need to add direct link to administrative documentation...

3.4 Analytics

  • Orcasound's Google Analytics account
  • UX dashboard
    • Need to write administration documentation, esp after GA4 upgrades...

4. Listening & science guides

Maybe this is more of a catch-all troubleshooting guide or FAQ aimed at concerned community scientists persona? Or a general FAQ broken down by persona?

Concerned community scientist FAQ:

  • Player (Confirm/deny a loop?)

Professional conservation scientist FAQ:

  • Moderation guide (for human or machine detections)

5. How to build your own hydrophone network

A guide for replicating Orcasound for another region or species

So you, too, would like to study and help save a species that makes captivating sounds underwater? Luckily, Orcasound was built from the ground up with your goal in mind. We aspire to provide free access to our hardware and software innovations, and we try hard to document our organization, methods, and materials so you can follow our lead -- or build upon our foundation so we can follow your lead!

This guide will give you some ideas for how to organize a new hydrophone network along with tips on optimal site selection strategies. The scientific questions you seek to answer, management goals, or educational/outreach dreams often can help guide what hardware & software options you choose, and limit startup costs. Once you have a plan, we offer details about where to get tried-and-tested hardware and how to "clone" or "fork" our software repositories and then deploy the code. Mostly our code provides ways of streaming audio data from the ocean through the cloud to your network of listeners (humans and/or machines), but we are also catalyzing new ways to create and share data products, and provide bioacoustic and noise analyses.

Outline (for linked page):

  • Network organization & site selection
  • Hydrophone hardware (acquisition and deployment)
    • How science, management, or education goals can constrain hardware & software options and limit startup costs
    • Orcanode wiki
    • Hydrophone system deployment strategies
  • Open source software
    • Orcanode - audio data streaming code
    • Orcasite - live-listening app for crowdsourced event detection and conservation action
    • OrcaHello - real time inference system for killer whale detection
    • Audio data annotation tools
    • Bioacoustic analysis & data visualization software
      • Audacity
      • Ketos -- analyze with neural networks
      • Koe -- segment and cluster
  • Bioacoustic inspiration (an open Trello board)