| title: Bird vs Drone Classification | |
| emoji: 🦅🛸 | |
| colorFrom: blue | |
| colorTo: indigo | |
| sdk: docker | |
| app_port: 7860 | |
| pinned: false | |
| # Bird vs Drone Image Classification | |
| An end-to-end deep learning project to classify airborne objects into "Bird" or "Drone" categories using a Convolutional Neural Network (MobileNetV2). | |
| ## Features | |
| - **Deep Learning Model**: MobileNetV2 based architecture for fast and accurate classification. | |
| - **Data Pipeline**: Automated conversion from YOLO detection labels to classification datasets. | |
| - **Web Interface**: Premium glassmorphic UI for real-time inference. | |
| - **Data Augmentation**: Robust training using rotation, flip, and zoom augmentations. | |
| ## Project Structure | |
| - `prepare_data.py`: Prepares the dataset manifests. | |
| - `train_model.py`: Trains the model on a subset of the 20k+ images. | |
| - `app.py`: Flask application for the web interface. | |
| - `templates/` & `static/`: Frontend assets. | |
| - `bird_vs_drone_model.h5`: The trained model weights. | |
| ## Installation | |
| ```bash | |
| pip install -r requirements.txt | |
| ``` | |
| ## Usage | |
| 1. **Prepare Data**: | |
| ```bash | |
| python prepare_data.py | |
| ``` | |
| 2. **Train Model**: | |
| ```bash | |
| python train_model.py | |
| ``` | |
| 3. **Run Web App**: | |
| ```bash | |
| python app.py | |
| ``` | |
| ## Results | |
| The system provides a confidence score and a visual analysis of the uploaded target, distinguishing between natural avian flight and synthetic drone movement. | |