BirdCLEF-2024 / README.md
abdellatif-laghjaj's picture
Update README.md
3d01235 verified
---
title: BirdCLEF 2024
emoji: πŸ‘
colorFrom: yellow
colorTo: pink
sdk: gradio
sdk_version: 4.36.0
app_file: app.py
pinned: false
---
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
[![Review Assignment Due Date](https://classroom.github.com/assets/deadline-readme-button-24ddc0f5d75046c5622901739e7c5dd533143b0c8e959d652212380cedb1ea36.svg)](https://classroom.github.com/a/rzFn0ERT)
# BirdCLEF 2024: Bird Species Identification from Audio
## Overview
This project is part of the BirdCLEF 2024 competition, focusing on identifying bird species from audio recordings. The
target region is the Western Ghats, a significant biodiversity hotspot in India. The goal is to develop a machine
learning model capable of accurately predicting bird species from audio recordings, with a particular emphasis on
under-studied species.
## Author
This project was created by:
- **Name**: LAGHJAJ ABDELLATIF
- **Email**: [email protected]
## Screenshots
| **Sketch** | **Main App** | **Result** |
|:----------------------------:|:-------------------------:|:-----------------------:|
| ![Sketch](images/sketch.png) | ![Main App](images/1.png) | ![Result](images/2.png) |
## Project Components
1. **Data Collection**
2. **Preprocessing**
3. **Model Training**
4. **Prediction and Visualization**
5. **User Interface**
## Setup Instructions
### Prerequisites
Ensure you have the following installed:
- Python 3.8 or higher
- Required Python packages (specified below)
### Installation
1. Clone the repository:
```bash
git clone https://github.com/ISEF-soft/introduction-to-machine-learning-challenge-abdellatif-laghjaj
cd introduction-to-machine-learning-challenge-abdellatif-laghjaj
```
2. Create and activate a virtual environment:
```bash
python -m venv venv
source venv/bin/activate # On Windows use `venv\Scripts\activate`
```
3. Install the required packages:
```bash
pip install -r requirements.txt
```
### Directory Structure
Ensure your project directory is structured as follows:
```
birdclef2024/
β”‚
β”œβ”€β”€ sounds/
β”‚ β”œβ”€β”€ asbfly.ogg
β”‚ β”œβ”€β”€ bkwsti.ogg
β”‚ └── comros.ogg
β”‚
|── .gitignore
β”œβ”€β”€ model.joblib
β”œβ”€β”€ data.csv
β”œβ”€β”€ app.py
|── main.ipynb
β”œβ”€β”€ README.md
└── requirements.txt
```
### Files Description
- `sounds/`: Directory containing sample audio files.
- `model.joblib`: Pre-trained machine learning model.
- `data.csv`: CSV file containing bird species metadata.
- `app.py`: Main Python script to run the project.
- `main.ipynb`: Jupyter notebook containing the project code.
- `README.md`: This readme file.
- `requirements.txt`: List of Python packages required.
### Running the Project
1. Ensure you have the correct directory structure and all necessary files.
2. Run the `app.py` script to start the Gradio interface:
```bash
python apy.py
```
### Usage
Once the Gradio interface is launched, you can:
- **Upload an audio recording** of a bird to identify the species.
- **Select a sample** from the provided audio files.
The interface will display:
- The **predicted bird species**.
- The **prediction confidence**.
- A **map** showing the location of the recording.
- A **spectrogram** of the audio recording.
## Acknowledgements
This project is based on the BirdCLEF 2024 competition. Special thanks to the organizers and contributors who provided
the dataset and resources.