🎥 Click on the image above to see a demo video on YouTube.
Bachelor of Software Engineering
Yoobee College of Creative Innovation, Auckland
Welcome to the Comparative Object Detection project! This project, a capstone for the Bachelor of Software Engineering at Yoobee Colleges of Creative Innovations in Auckland, New Zealand 🥝.
-
Interactive Web Application: The application, built using Streamlit, offers a user-friendly interface. Users can easily upload their data, choose from a variety of YOLO models, and get real-time detection results.
-
Multiple YOLO Versions: Users have the flexibility to evaluate pre-trained YOLO models from various versions, including v7 and v8.
-
Comparison: Engage in a detailed comparison between YOLOv7 and YOLOv8 models. Analyze their performance across various metrics, observe differences in detection accuracy and processing speed, and determine the optimal model for different use cases.
-
User Authentication & Dashboard: With a built-in authentication system, users can securely access the dashboard, view past detection results, and provide feedback.
# for Windows
# create
python -m venv myvenv
myvenv\Scripts\activate
git clone https://github.com/irinagetman1973/YOLO-Streamlit
cd YOLO-Streamlit
pip install -r requirements.txt
streamlit run main.py
Create a directory named weights
and create a subdirectory named detection
and save the downloaded YOLOv8 & YOLOv7 object detection weights inside this directory. The weight files can be downloaded from the tables below.
Model | size (pixels) |
mAPval 50-95 |
Speed CPU ONNX (ms) |
Speed A100 TensorRT (ms) |
params (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv8n | 640 | 37.3 | 80.4 | 0.99 | 3.2 | 8.7 |
YOLOv8s | 640 | 44.9 | 128.4 | 1.20 | 11.2 | 28.6 |
YOLOv8m | 640 | 50.2 | 234.7 | 1.83 | 25.9 | 78.9 |
YOLOv8l | 640 | 52.9 | 375.2 | 2.39 | 43.7 | 165.2 |
YOLOv8x | 640 | 53.9 | 479.1 | 3.53 | 68.2 | 257.8 |
Model | Test Size | APtest | AP50test | AP75test | batch 1 fps | batch 32 average time |
---|---|---|---|---|---|---|
YOLOv7 | 640 | 51.4% | 69.7% | 55.9% | 161 fps | 2.8 ms |
YOLOv7-X | 640 | 53.1% | 71.2% | 57.8% | 114 fps | 4.3 ms |
YOLOv7-W6 | 1280 | 54.9% | 72.6% | 60.1% | 84 fps | 7.6 ms |
YOLOv7-E6 | 1280 | 56.0% | 73.5% | 61.2% | 56 fps | 12.3 ms |
To begin exploring the capabilities of the YOLO Models Evaluation App, follow these simple steps:
-
Installation: Follow the installation guide above to set up the application on your local machine.
-
Model Selection: Choose between YOLOv7 and YOLOv8 models based on your requirements and the nature of your dataset.
-
Upload Your Data: Easily upload images or video streams to test the models' detection capabilities.
-
Analyze Results: Utilize the data analysis tools to interpret the models' performance and make informed decisions.
-
We love your feedback: Join discussions, share feedback, and contribute to the development of the application.
We welcome contributions of all kinds - from code improvements and bug fixes to documentation updates. Please feel free to fork the repository, make changes, and submit a pull request. Your contributions will help make this project even better!
This project is licensed under the MIT License. Feel free to use, modify, and distribute the code as per the license terms.
Enjoy exploring the world of YOLO models with the YOLO models Comparative project!
🥝 Developed with passion by Irina Getman.