Skip to content

DomanskiFilip/AI-Drone-Detection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Drone Detection Dataset - Classification Project

Python Jupyter Google Colab Kaggle OpenCV NumPy Pandas Machine Learning

A machine learning project for classifying aerial objects into three categories: Birds, Drones, and Aeroplanes using image data from Kaggle.

Overview

This project processes and prepares aerial imagery data for classification tasks. It downloads datasets from Kaggle, processes images, and uses them for machine learning model training to distinguish between birds, drones, and airplanes.

Features

  • Automated Kaggle dataset downloading
  • Image preprocessing and normalization
  • Standardized image resizing
  • Data visualization capabilities

Classifiers used:

  • AdaBoost
  • Decision Tree
  • Euclidean Distance
  • Extra Trees
  • Gaussian Naive Bayes
  • Gradient Boosting
  • K-NN
  • Linear SVC
  • Logistic Regression
  • Multi-Layer Perceptron
  • Passive Aggressive classifier
  • Random Forest
  • sklearns SGDClassifier

We evaluate the classifiers using:

  • Recall – Of all actual positive cases, how many did it correctly detect.
  • Precision – Of all predicted positive cases, how many were actually positive.
  • Accuracy – What fraction of total predictions were correct.
  • F1 Score – What the balance between precision and recall is.
  • R2 – Measure the variance in data explained by the model.
  • RMSE – Measure the root squared error.
  • MAE – Measure the average absolute error.
  • MSE – Measure the average squared error.

Our results can be found in results.md

Prerequisites

Before running this project, ensure you have:

  • Python 3.8 or higher
  • Google Colab account (or Jupyter Notebook environment)
  • Kaggle account with API credentials

Setup Instructions

1. Get Kaggle API Credentials

  1. Go to kaggle.com/settings
  2. Scroll to API section
  3. Click Create New API Token
  4. Download kaggle.json (contains your username and key)

2. Configure Credentials in Google Colab

  1. Open your notebook in Google Colab
  2. Click the 🔑 Secrets icon in the left sidebar
  3. Add two secrets:
    • Name: KAGGLE_USERNAME | Value: Your Kaggle username
    • Name: KAGGLE_KEY | Value: Your Kaggle API key
  4. Toggle notebook access ON for both secrets

3.1. Run the Notebook (OPTION 1)

Execute the cells in order

3.2. Run the python project files (OPTION 2)

  • Clone the repository to your local machine:
git clone https://github.com/DomanskiFilip/AI-Drone-Detection.git
cd AI-Drone-Detection
  • Install required dependencies:
pip install -r requirements.txt
  • Run the main script:
 python main.py
  • Run visualization script:
 python visualize.py

Dataset

This project uses datasets from Kaggle:

Drone Detection Dataset

  • Source: maryamlsgumel/drone-detection-dataset
  • Categories: Birds, Drones, Aeroplanes
  • Authors: Maryam Lawan salisu, Aminu Musa

Label Mapping

{
  'Birds': 1,
  'Drones': 2,
  'Aeroplanes': 3
}

Co-Authors of the ML Project

Note: This project is for educational and research purposes. Ensure you comply with Kaggle's terms of service and dataset licenses when using the data.

About

Ml recognition system in python identifying birds planes and drones from jpeg and png pictures

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors