--- 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**: abdelatiflaghjaj@gmail.com ## 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.