Identifying animal species from images using Convolutional Neural Networks (CNNs), data augmentation, and transfer learning for robust classification.
- Overview
- Business Problem
- Dataset
- Tools & Technologies
- Project Structure
- Data Cleaning & Preparation
- Exploratory Data Analysis (EDA)
- Research Questions & Key Findings
- Graphs/Plots
- How to Run This Project
- Author & Contact
This project classifies animals based on image inputs using a deep learning pipeline built with TensorFlow and Keras. It leverages transfer learning with pre-trained models to achieve high accuracy across multiple species, and includes visualizations for performance metrics and prediction confidence
Accurate animal classification is essential for wildlife monitoring, conservation, and educational tools. This project aims to:
- Automate species identification from images
- Reduce manual effort in ecological surveys
- Improve classification accuracy across diverse animal categories
- Enable real-time prediction for deployment in mobile/web apps
- Image dataset stored in /data/ folder with subfolders per class (e.g., lion, elephant, zebra)
- Includes training, validation, and test sets
- Augmented using rotation, zoom, flip, and brightness adjustments
- Python (TensorFlow, Keras, OpenCV, Matplotlib)
- Google Colab (GPU acceleration)
- GitHub
- Streamlit (for deployment)
animal_classification/
โ
โโโ README.md
โโโ .gitignore
โโโ requirements.txt
โโโ Classification of animals.pdf
โ
โโโ notebooks/ # Jupyter notebooks
โ โโโ exploratory_data_analysis.ipynb
โ โโโ animal-img-clsf.ipynb
โ
โโโ summery/
โ โโโ animal_classifier_model.pkl
โ โโโclassification_report.txt
โ
โโโ Outputs/ # visuals file
โ โโโ airborne.png
โ โโโ aquatic.png
- Removed corrupted or mislabeled images
- Resized all images to 224x224 pixels
- Applied data augmentation to balance classes
- Encoded labels and split into train/val/test sets
Class Distribution:
- 10 animal classes with varying image counts
- Balanced using augmentation for minority classes
Image Quality Checks:
- Verified resolution consistency
- Removed grayscale and low-contrast images
Sample Visuals:
- Grid plots of sample images per class
- Distribution bar chart of image counts
- Model Accuracy: Achieved 94.2% accuracy on test set using ResNet50
- Misclassifications: Most confusion between tiger vs. leopard due to similar patterns
- Augmentation Impact: Improved accuracy by 7.5% on minority classes
- Confidence Scores: Average prediction confidence = 0.91
- Real-Time Prediction: Streamlit app delivers <1s prediction latency
- Clone the repository:
git clone https://github.com/SBanditaDas/animal-classification.git-
Open and run notebooks:
animal-img-clsf.ipynb
-
View results:
Check - predictions.csv - classification_report.txt
Sushree Bandita Das

