This project utilizes both audio and image inputs to identify bird species. By leveraging deep learning models, it can classify birds based on their vocalizations (audio) and appearance (image). The system is implemented using Streamlit for an interactive web-based interface.
- Audio-based Bird Classification: Uses a trained deep learning model to classify birds based on their vocal sounds.
- Image-based Bird Classification: Identifies bird species from images using a CNN-based classifier.
- Pre-trained Model Weights: The repository includes pre-trained model weights for both image and audio classification.
- Streamlit Web Interface: A user-friendly UI to upload images and audio files for classification.
- Clone the repository:
git clone https://github.com/PrakharJain1509/BIRD-SPECIES.git cd BIRD-SPECIES - Create a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
- Install dependencies:
Alternatively, you can install them manually:
pip install -r requirements.txt
pip install streamlit numpy joblib librosa torch timm pandas
After installing the dependencies, you can run the application using:
streamlit run stream.pyThis will launch the web-based interface in your browser.
.
├── README.md
├── stream.py # Streamlit main script
├── audio # Audio processing module
│ ├── audio_main.py
│ ├── new_audio_main.py
│ ├── models_weights # Audio classification model weights
│ ├── data # Contains audio files and metadata
│ │ └── AUDIO_FILES # Directory for audio files
│ ├── listOfBirdNames.txt
│ ├── commonNames.txt
├── image # Image processing module
│ ├── image_main.py
│ ├── new_image_main.py
│ ├── test # Sample test images
│ ├── weights # Image classification model weights
├── Training_Codes # Training scripts for models
│ ├── classification_data # Classification datasets
│ │ ├── blasti
│ │ ├── cmnmyn
│ │ └── piedbu
│ ├── dataset # Processed dataset
│ │ ├── output
│ │ │ ├── test_data
│ │ │ ├── train_data
│ │ ├── test_data
│ │ ├── train_data
│ ├── output
│ │ ├── test_data
│ │ ├── train_data
├── common_names.txt # Common bird names
└── requirements.txt # Dependencies file
- Audio Model:
audio/models_weights/effnet_seg20_80low.ckpt(EfficientNet-based model for audio classification) - Image Model:
image/weights/bird-resnet34.pth(ResNet-34 model for image classification)
- Audio Files: Stored in
audio/data/AUDIO_FILES/ - Image Files: Stored in
image/test/
After providing an image and audio file, the model will return the predicted bird species name.
