YOLOv8m_defence / README.md
spencercdz's picture
Update README.md
335bdf0 verified
---
license: apache-2.0
tags:
- object-detection
- yolo
- yolov8
- yolov8m
- ultralytics
- defence
- pytorch
- computer-vision
- tracking
- instance-segmentation
- image-classification
- pose-estimation
- obb
language:
- en
library_name: ultralytics
pipeline_tag: object-detection
datasets:
- private
metrics:
- mAP
model-index:
- name: YOLOv8m Defence
results:
- task:
type: object-detection
name: Object Detection
metrics:
- type: [email protected]:0.95
value: 0.598
name: Mean Average Precision
base_model:
- Ultralytics/YOLOv8
---
# YOLOv8m Defence
## Model Overview
YOLOv8m Defence is a specialized object detection model fine-tuned from the `ultralytics/YOLOv8` checkpoint for defence and transportation applications. The model was trained for over 50 epochs on a private defence-related dataset to detect 18 categories of aircraft, vehicles, and ships with high accuracy and low latency requirements.
A deployment of the model is available at [Hugging Face Spaces](https://huggingface.co/spaces/spencercdz/YOLOv8m_defence) for demonstration of its capabilities.
## Model Details
- **Model Type**: Object Detection
- **Base Architecture**: YOLOv8m
- **Framework**: PyTorch
- **Training Epochs**: 50+
- **Number of Classes**: 18
- **Input**: RGB Images
- **Output**: Bounding boxes with class predictions and confidence scores
## Supported Classes
The model detects the following 18 object categories:
| Class ID | Object Type |
|----------|-------------|
| 0 | Cargo Aircraft |
| 1 | Commercial Aircraft |
| 2 | Drone |
| 3 | Fighter Jet |
| 4 | Fighter Plane |
| 5 | Helicopter |
| 6 | Light Aircraft |
| 7 | Missile |
| 8 | Truck |
| 9 | Car |
| 10 | Tank |
| 11 | Bus |
| 12 | Van |
| 13 | Cargo Ship |
| 14 | Yacht |
| 15 | Cruise Ship |
| 16 | Warship |
| 17 | Sailboat |
## Performance
The model achieved the following performance metrics in its original evaluation environment:
- **[email protected]:0.05:0.95**: 0.598
- **Speed Score**: 0.933
*Note: These scores were achieved with the fully optimized TensorRT version. The PyTorch model provided here may have different performance characteristics.*
## Usage
### Installation
```bash
pip install ultralytics
```
### Quick Start
```python
from ultralytics import YOLO
from PIL import Image
# Load the model
model = YOLO('path/to/yolov8m_defence.pt')
# Run inference
results = model('path/to/your/image.jpg')
# Process results
for r in results:
print(f"Detected {len(r.boxes)} objects")
for box in r.boxes:
# Get bounding box coordinates
x1, y1, x2, y2 = box.xyxy[0]
bbox = [int(x1), int(y1), int(x2 - x1), int(y2 - y1)]
# Get class and confidence
class_id = int(box.cls[0])
confidence = float(box.conf[0])
class_name = model.names[class_id]
print(f" {class_name} (ID: {class_id}): {confidence:.2f} at {bbox}")
```
### Batch Inference
```python
# Run inference on multiple images
results = model(['image1.jpg', 'image2.jpg', 'image3.jpg'])
for i, r in enumerate(results):
print(f"Image {i+1}: {len(r.boxes)} detections")
```
### Visualization
```python
# Display results with bounding boxes
results = model('image.jpg')
annotated_image = results[0].plot()
# Convert BGR to RGB for display
from PIL import Image
import numpy as np
Image.fromarray(annotated_image[..., ::-1]).show()
```
## Training Details
### Dataset
- **Source**: Private defence dataset (proprietary)
- **Classes**: 18 object categories
- **Augmentations**: Mosaic, flips, color adjustments
- **Annotations**: Bounding box format
### Training Configuration
- **Base Model**: ultralytics/yolov8m
- **Training Epochs**: 50+
- **Framework**: Ultralytics YOLO
- **Optimization**: Standard YOLOv8 training pipeline
### Post-Training Optimization
The original model underwent additional optimization including:
- Model pruning
- Quantization
- TensorRT conversion (for deployment)
*This repository contains the pre-optimization PyTorch model for maximum compatibility and ease of use.*
## Intended Use Cases
### Primary Applications
- Military and defence object detection
- Transportation vehicle monitoring
- Surveillance and reconnaissance
- Aerial and maritime asset identification
### Suitable For
- Direct inference on defence-related imagery
- Transfer learning for similar detection tasks
- Baseline model for military/civilian vehicle detection
- Research and development in computer vision
## Limitations
- **Scope**: Only detects the 18 trained object categories
- **Domain**: Performance may vary on images significantly different from training data
- **Speed**: This PyTorch version is slower than the optimized TensorRT variant
- **Hardware**: No specific GPU requirements, but GPU acceleration recommended
## Ethical Considerations
This model is designed for defence and security applications. Users should:
- Ensure compliance with local laws and regulations
- Consider privacy implications when processing imagery
- Use responsibly and ethically in surveillance applications
- Respect international laws regarding military technology
## Citation
```bibtex
@misc{yolov8_ultralytics,
author = {Jocher, Glenn and Chaurasia, Ayush and Qiu, Jing},
title = {YOLO by Ultralytics},
year = {2023},
howpublished = {\url{https://github.com/ultralytics/ultralytics}},
}
```
## License
This model is released under the Apache 2.0 License.
## Model Card Contact
For questions about this model card or the model itself, please refer to the repository issues or contact the model authors.