DroneVSBird is a machine learning web application that distinguishes between drones and birds in images using Histogram of Oriented Gradients (HOG) features and Support Vector Machine (SVM) classification. The project includes both a Flask backend API and a PHP frontend web interface, achieving 98.7% accuracy on the test set after hyperparameter tuning.
- Image Classification: Upload images through a web interface for instant drone/bird classification
- High Accuracy Model: Achieved 98.7% accuracy using SVM with HOG feature extraction
- Data Augmentation: Improved model robustness with augmented training datasets
- Multiple Classifiers: Evaluated and compared different machine learning models
- Docker Support: Easy deployment with Docker Compose for both frontend and backend
Tech Stack
- Backend: Python (Flask), PHP
- ML Libraries: scikit-learn, OpenCV, NumPy, Pandas, SciPy
- Frontend: HTML, CSS, JavaScript, PHP
- Tools: Jupyter Notebook, Docker, Git
- Deployment: Docker Compose
Screenshots
Web Interface

Classification Results

Installation
Option 1: Docker (Recommended)
The easiest way to run DroneVSBird is using Docker, which sets up both the Flask backend and PHP frontend automatically:
git clone https://github.com/JoshuaGlaZ/drone-vs-bird.git
cd drone-vs-bird
docker-compose up --buildAccess the application:
- Flask Backend API: http://localhost:5000
- PHP Frontend Web Interface: http://localhost:8085
Option 2: Local Development
Backend Setup
git clone https://github.com/JoshuaGlaZ/drone-vs-bird.git
cd drone-vs-bird
pip install -r requirements.txt
python app.pyFrontend Setup
# Using PHP's built-in server
php -S localhost:8085- Navigate to http://localhost:8085
- Click "Choose File" and select an image of a drone or bird
- The system will process the image and display the result (Drone or Bird)