https://github.com/agneya-1402/aircraft_detector
This project implements an Aircraft Detector using YOLOv8 to detect aircraft in images. The dataset is automatically split into train, validation, and test sets, and a YOLOv8 Nano model is trained on this data.
https://github.com/agneya-1402/aircraft_detector
artificial-intelligence computer-vision opencv yolo yolov8
Last synced: about 2 months ago
JSON representation
This project implements an Aircraft Detector using YOLOv8 to detect aircraft in images. The dataset is automatically split into train, validation, and test sets, and a YOLOv8 Nano model is trained on this data.
- Host: GitHub
- URL: https://github.com/agneya-1402/aircraft_detector
- Owner: agneya-1402
- License: mit
- Created: 2025-02-02T13:30:46.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-02T13:58:39.000Z (over 1 year ago)
- Last Synced: 2025-07-11T20:41:39.093Z (12 months ago)
- Topics: artificial-intelligence, computer-vision, opencv, yolo, yolov8
- Language: Python
- Homepage:
- Size: 49 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Aircraft Detector using YOLOv8
## Overview
This project implements an **Aircraft Detector** using **YOLOv8** to detect aircraft in images. The dataset is automatically split into **train, validation, and test sets**, and a YOLOv8 **Nano model** is trained on this data.





## Project Structure
```
├── dataset.yaml # YOLO dataset config
├── weights/
│ ├── best.pt # Best trained model
│ ├── last.pt # Last trained model
├── train_model_v2.py # Training script
├── test_v2.py # Inference script
├── README.md # Project documentation
```
## Installation
Ensure you have Python 3.8+ installed. Then, install dependencies:
```bash
pip install ultralytics numpy matplotlib opencv-python
```
## Dataset Preparation
The dataset is automatically split into **train (80%)**, **validation (10%)**, and **test (10%)** during execution.
Dataset: https://www.kaggle.com/datasets/khlaifiabilel/military-aircraft-recognition-dataset/data
## Training the Model
To train the YOLOv8 model, run:
```bash
python train_model_v2.py
```
This will:
- Load the **YOLOv8-Nano** model (`yolov8n.pt`)
- Train the model for **15 epochs** (increase to 50 if your machine can handle)
- Save trained weights in the `weights/` directory
## Testing the Model
Run inference on test images:
```bash
python test_v2.py
```
This will:
- Detect objects in all test images
- Draw bounding boxes and count objects
- Display results using Matplotlib
## Evaluation Metrics
The trained model is evaluated using:
- **Precision**
- **Recall**
- **F1 Score**
Results : 
F1 Curve : 
PRECISION Curve : 
PRECISION RECALL Curve : 
RECALL Curve : 
## Model Weights
The trained YOLOv8 model weights are saved in the `weights/` directory:
- **best.pt** – Best performing model checkpoint
- **last.pt** – Model from the last training epoch
## Author
**Agneya Pathare** – Robotics Engineer | AI & Computer Vision Developer