Machine learning algorithm to identify the presence and location of birds.
Created by Gonzalo Uribarri at Dynamical Systems Lab
This project has two main objectives:
- Detect the presence of given bird species in audio data gathered by one microphone in the field. In this case, we will focus on "Chingolos" (Zonotrichia capensis). First version available
- Detect the presence and location of individuals of a specific bird species in audio data collected by an array of microphones in the field. Under Development
- It generates a challenging dataset of '.wav' files combining the vocalizations of the target bird species with real recordings from birds in natural ambients and wind.
- It reads and preprocesses the data using Torchaudio.
- It trains a deep 1D-convolutional Neural Network for the classification task.
- It evaluates the results and saves the model for usage.
- Loads the vocalizations of the target bird species, real recordings from birds in natural ambients and wind sound.
- The birds and ambient sounds are located in a simple virtual open field environment.
- It computes the sound arriving at each microphone in the array.
- It generates a dataset of '.wav' files with a number of channels equal to the number of microphones in the array.
- It reads and preprocesses the data using Torchaudio.
- It trains a deep 1D-convolutional Neural Network for the classification task (Detection) and the regression task (localization).
- It evaluates the results and saves the model for usage.
You have to locate your .wav files corresponding to the bird vocalizations on "/train" and "/test" folders. You can find vocalization of a given bird species in Xeno-Canto https://www.xeno-canto.org/.
We use a Kaggle dataset of sounds to get ambient sound and wind sound. Notice you will have to locate your "kaggle.json" API token on your root folder (to create and download your kaggle API token follow this instructions https://www.kaggle.com/docs/api).